c8lib
c8lib,
a MATLAB code which
implements certain
elementary functions for "C8" or
complex 64 bit variables.
The symbol "C8" is used to suggest a complex 64 bit
variable. Here the 8 indicates that the underlying pair of
real numbers each use 8 bytes = 64 bits of storage.
C8LIB contains routines that operate on scalars, vectors or
doubly dimensioned arrays of C8's. A vector of C8's is denoted
a C8VEC, and a doubly dimensioned array is a C8MAT.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the MIT license
Languages:
c8lib is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
a Python version..
Related Programs:
c8lib_test
i4lib,
a MATLAB code which
contains many utility routines, using "I4" or "single precision integer"
arithmetic.
quaternions,
a MATLAB code which
carries out some simple arithmetic operations for quaternions.
r8lib,
a MATLAB code which
contains many utility routines, using "R8" or
"double precision real" arithmetic.
Source Code:
-
c8_abs.m,
returns the absolute value of a C8;
-
c8_acos.m,
returns the inverse cosine of a C8;
-
c8_acosh.m,
returns the inverse hyperbolic cosine of a C8;
-
c8_add.m,
adds two C8's.
-
c8_arg.m,
returns the argument of a C8;
-
c8_asin.m,
returns the inverse sine of a C8;
-
c8_asinh.m,
returns the inverse hyperbolic sine of a C8;
-
c8_atan.m,
returns the inverse tangent of a C8;
-
c8_atanh.m,
returns the inverse hyperbolic tangent of a C8;
-
c8_conj.m,
returns the complex conjugate of a C8;
-
c8_cos.m,
returns the cosine of a C8;
-
c8_cosh.m,
returns the hyperbolic cosine of a C8;
-
c8_cube_root.m,
returns the cube root of a C8;
-
c8_div.m,
divides one C8 by another.
-
c8_div_r8.m,
divides a C8 by an R8.
-
c8_exp.m,
computes the exponential of a C8.
-
c8_i.m,
returns the value of the imaginary unit, i as a C8.
-
c8_imag.m,
returns the imaginary part of a C8.
-
c8_inv.m,
returns the inverse of a C8.
-
c8_le_l1.m,
( X <= Y ) for C8's, and the L1 norm.
-
c8_le_l2.m,
( X <= Y ) for C8's, and the L2 norm.
-
c8_le_li.m,
( X <= Y ) for C8's, and the L-oo norm.
-
c8_log.m,
returns the logarithm of a C8;
-
c8_mag.m,
returns the magnitude of a C8;
-
c8_mul.m,
returns the product of two C8's.
-
c8_nint.m,
rounds a C8 to the nearest complex integer.
-
c8_norm_l1.m,
computes the L1 norm of a C8.
-
c8_norm_l2.m,
computes the L2 norm of a C8.
-
c8_norm_li.m,
computes the L-oo norm of a C8.
-
c8_normal_01.m,
returns a unit pseudonormal C8.
-
c8_one.m,
returns the value of 1 as a C8.
-
c8_print.m,
prints a C8.
-
c8_real.m,
returns the real part of a C8;
-
c8_sin.m
returns the sine of a C8.
-
c8_sinh.m
returns the hyperbolic sine of a C8.
-
c8_sqrt.m,
returns the square root of a C8;
-
c8_sub.m,
subtracts one C8 from another.
-
c8_tan.m,
returns the tangent of a C8.
-
c8_tanh.m,
returns the hyperbolic tangent of a C8.
-
c8_to_cartesian.m,
converts a C8 to Cartesian form.
-
c8_to_polar.m,
converts a C8 to polar form.
-
c8_uniform_01.m,
returns a unit pseudorandom C8.
-
c8_zero.m,
returns the value of zero as a C8.
-
c8mat_add.m,
combines two C8MAT's with scalar factors.
-
c8mat_copy.m,
copies a C8MAT.
-
c8mat_fss.m,
factors and solves a system with multiple right hand sides.
-
c8mat_identity.m,
returns the C8MAT identity matrix.
-
c8mat_indicator.m,
returns the C8MAT indicator matrix.
-
c8mat_minvm.m,
computes inverse(A) * B for C8MAT's.
-
c8mat_nint.m,
rounds the entries of a C8MAT to the nearest complex integer.
-
c8mat_norm_fro.m,
returns the Frobenius norm of a C8MAT.
-
c8mat_norm_l1.m,
returns the L1 norm of a C8MAT.
-
c8mat_norm_li.m,
returns the L-infinity norm of a C8MAT.
-
c8mat_print.m,
prints a C8MAT.
-
c8mat_print_some.m,
prints some of a C8MAT.
-
c8mat_scale.m,
scales a C8MAT by a scalar factor.
-
c8mat_uniform_01.m,
returns a unit pseudorandom C8MAT.
-
c8mat_zero.m,
returns the C8MAT zero matrix.
-
c8vec_indicator.m,
sets a C8VEC to the indicator vector.
-
c8vec_nint.m,
rounds the entries of a C8VEC.
-
c8vec_norm_l1.m,
returns the L1 norm of a C8VEC.
-
c8vec_norm_l2.m,
returns the L2 norm of a C8VEC.
-
c8vec_norm_li.m,
returns the Loo norm of a C8VEC.
-
c8vec_print.m,
prints a C8VEC.
-
c8vec_print_part.m,
prints part of a C8VEC.
-
c8vec_print_some.m,
prints some of a C8VEC.
-
c8vec_sort_a_l1.m,
ascending sorts a C8VEC by the L1 norm.
-
c8vec_sort_a_l2.m,
ascending sorts a C8VEC by the L2 norm.
-
c8vec_sort_a_li.m,
ascending sorts a C8VEC by the L-oo norm.
-
c8vec_spiral.m,
returns N points on a spiral between C1 and C2.
-
c8vec_uniform_01.m,
returns a unit pseudorandom C8VEC.
-
c8vec_unity.m,
returns the N roots of unity.
-
cartesian_to_c8.m,
converts a Cartesian complex number to C8 format.
-
polar_to_c8.m,
converts a polar form complex number to C8 format.
-
r8_sign.m,
returns the sign of an R8;
-
r8_uniform_01.m,
returns a unit pseudorandom R8;
-
r8poly2_root.m,
returns the two roots of a quadratic polynomial.
-
r8poly3_root.m,
returns the three roots of a cubic polynomial.
-
r8poly4_root.m,
returns the four roots of a quartic polynomial.
-
sort_heap_external.m,
externally sorts a list of values into ascending order;
Last revised on 06 December 2018.