LALComplex.h File Reference

#include <lal/LALAtomicDatatypes.h>

Include dependency graph for LALComplex.h:

Go to the source code of this file.

Defines

#define LAL_USE_COMPLEX_MACROS
#define LAL_REAL(z)   ((z).re)
#define LAL_IMAG(z)   ((z).im)
#define LAL_COMPLEX_EQ(z1, z2)   (((z1).re == (z2).re) && ((z1).im == (z2).im))
#define LAL_SET_COMPLEX(zp, x, y)   do {(zp)->re=(x); (zp)->im=(y);} while(0)
#define LAL_SET_REAL(zp, x)   do {(zp)->re=(x);} while(0)
#define LAL_SET_IMAG(zp, y)   do {(zp)->im=(y);} while(0)
#define LAL_COMPLEX16_ONE   (XLALCOMPLEX16Rect(1.0,0.0))
#define LAL_COMPLEX16_ZERO   (XLALCOMPLEX16Rect(0.0,0.0))
#define LAL_COMPLEX16_NEGONE   (XLALCOMPLEX16Rect(-1.0,0.0))
#define LAL_COMPLEX16_I   (XLALCOMPLEX16Rect(0.0,1.0))
#define LAL_CARG(z)   (XLALCOMPLEX16Arg(z))
#define LAL_CABS(z)   (XLALCOMPLEX16Abs(z))
#define LAL_CABS2(z)   (XLALCOMPLEX16Abs2(z))
#define LAL_CLOGABS(z)   (XLALCOMPLEX16LogAbs(z))
#define LAL_CADD(a, b)   (XLALCOMPLEX16Add((a),(b)))
#define LAL_CSUB(a, b)   (XLALCOMPLEX16Sub((a),(b)))
#define LAL_CMUL(a, b)   (XLALCOMPLEX16Mul((a),(b)))
#define LAL_CDIV(a, b)   (XLALCOMPLEX16Div((a),(b)))
#define LAL_CADD_REAL(a, x)   (XLALCOMPLEX16AddReal((a),(x)))
#define LAL_CSUB_REAL(a, x)   (XLALCOMPLEX16SubReal((a),(x)))
#define LAL_CMUL_REAL(a, x)   (XLALCOMPLEX16MulReal((a),(x)))
#define LAL_CDIV_REAL(a, x)   (XLALCOMPLEX16DivReal((a),(x)))
#define LAL_CADD_IMAG(a, y)   (XLALCOMPLEX16AddImag((a),(y)))
#define LAL_CSUB_IMAG(a, y)   (XLALCOMPLEX16SubImag((a),(y)))
#define LAL_CMUL_IMAG(a, y)   (XLALCOMPLEX16MulImag((a),(y)))
#define LAL_CDIV_IMAG(a, y)   (XLALCOMPLEX16DivImag((a),(y)))
#define LAL_CONJ(z)   (XLALCOMPLEX16Conjugate(z))
#define LAL_CINV(a)   (XLALCOMPLEX16Inverse(a))
#define LAL_CNEG(a)   (XLALCOMPLEX16Negative(a))
#define LAL_CSQRT(z)   (XLALCOMPLEX16Sqrt(z))
#define LAL_CSQRT_REAL(x)   (XLALCOMPLEX16SqrtReal(x))
#define LAL_CPOW(a, b)   (XLALCOMPLEX16Pow((a),(b)))
#define LAL_CPOW_REAL(a, x)   (XLALCOMPLEX16PowReal((a),(x)))
#define LAL_CEXP(a)   (XLALCOMPLEX16Exp(a))
#define LAL_CLOG(a)   (XLALCOMPLEX16Log(a))
#define LAL_CLOG10(a)   (XLALCOMPLEX16Log10(a))
#define LAL_CLOGB(a, b)   (XLALCOMPLEX16LogB((a),(b)))
#define LAL_CSIN(a)   (XLALCOMPLEX16Sin(a))
#define LAL_CCOS(a)   (XLALCOMPLEX16Cos(a))
#define LAL_CSEC(a)   (XLALCOMPLEX16Sec(a))
#define LAL_CCSC(a)   (XLALCOMPLEX16Csc(a))
#define LAL_CTAN(a)   (XLALCOMPLEX16Tan(a))
#define LAL_CCOT(a)   (XLALCOMPLEX16Cot(a))
#define LAL_CASIN(a)   (XLALCOMPLEX16Arcsin(a))
#define LAL_CASIN_REAL(x)   (XLALCOMPLEX16ArcsinReal(x))
#define LAL_CACOS(a)   (XLALCOMPLEX16Arccos(a))
#define LAL_CACOS_REAL(x)   (XLALCOMPLEX16ArccosReal(x))
#define LAL_CASEC(a)   (XLALCOMPLEX16Arcsec(a))
#define LAL_CASEC_REAL(x)   (XLALCOMPLEX16ArcsecReal(x))
#define LAL_CACSC(a)   (XLALCOMPLEX16Arccsc(a))
#define LAL_CACSC_REAL(x)   (XLALCOMPLEX16ArccscReal(x))
#define LAL_CATAN(a)   (XLALCOMPLEX16Arctan(a))
#define LAL_CACOT(a)   (XLALCOMPLEX16Arccot(a))
#define LAL_CSINH(a)   (XLALCOMPLEX16Sinh(a))
#define LAL_CCOSH(a)   (XLALCOMPLEX16Cosh(a))
#define LAL_CSECH(a)   (XLALCOMPLEX16Sech(a))
#define LAL_CCSCH(a)   (XLALCOMPLEX16Csch(a))
#define LAL_CTANH(a)   (XLALCOMPLEX16Tanh(a))
#define LAL_CCOTH(a)   (XLALCOMPLEX16Coth(a))
#define LAL_CASINH(a)   (XLALCOMPLEX16Arcsinh(a))
#define LAL_CACOSH(a)   (XLALCOMPLEX16Arccosh(a))
#define LAL_CACOSH_REAL(x)   (XLALCOMPLEX16ArccoshReal(x))
#define LAL_CASECH(a)   (XLALCOMPLEX16Arcsech(a))
#define LAL_CACSCH(a)   (XLALCOMPLEX16Arccsch(a))
#define LAL_CATANH(a)   (XLALCOMPLEX16Arctanh(a))
#define LAL_CATANH_REAL(x)   (XLALCOMPLEX16ArctanhReal(x))
#define LAL_CACOTH(a)   (XLALCOMPLEX16Arccoth(a))
#define LAL_COMPLEX8_ONE   (XLALCOMPLEX8Rect(1.0,0.0))
#define LAL_COMPLEX8_ZERO   (XLALCOMPLEX8Rect(0.0,0.0))
#define LAL_COMPLEX8_NEGONE   (XLALCOMPLEX8Rect(-1.0,0.0))
#define LAL_COMPLEX8_I   (XLALCOMPLEX8Rect(0.0,1.0))
#define LAL_CARGF(z)   (XLALCOMPLEX8Arg(z))
#define LAL_CABSF(z)   (XLALCOMPLEX8Abs(z))
#define LAL_CABS2F(z)   (XLALCOMPLEX8Abs2(z))
#define LAL_CLOGABSF(z)   (XLALCOMPLEX8LogAbs(z))
#define LAL_CADDF(a, b)   (XLALCOMPLEX8Add((a),(b)))
#define LAL_CSUBF(a, b)   (XLALCOMPLEX8Sub((a),(b)))
#define LAL_CMULF(a, b)   (XLALCOMPLEX8Mul((a),(b)))
#define LAL_CDIVF(a, b)   (XLALCOMPLEX8Div((a),(b)))
#define LAL_CADD_REALF(a, x)   (XLALCOMPLEX8AddReal((a),(x)))
#define LAL_CSUB_REALF(a, x)   (XLALCOMPLEX8SubReal((a),(x)))
#define LAL_CMUL_REALF(a, x)   (XLALCOMPLEX8MulReal((a),(x)))
#define LAL_CDIV_REALF(a, x)   (XLALCOMPLEX8DivReal((a),(x)))
#define LAL_CADD_IMAGF(a, y)   (XLALCOMPLEX8AddImag((a),(y)))
#define LAL_CSUB_IMAGF(a, y)   (XLALCOMPLEX8SubImag((a),(y)))
#define LAL_CMUL_IMAGF(a, y)   (XLALCOMPLEX8MulImag((a),(y)))
#define LAL_CDIV_IMAGF(a, y)   (XLALCOMPLEX8DivImag((a),(y)))
#define LAL_CONJF(z)   (XLALCOMPLEX8Conjugate(z))
#define LAL_CINVF(a)   (XLALCOMPLEX8Inverse(a))
#define LAL_CNEGF(a)   (XLALCOMPLEX8Negative(a))
#define LAL_CSQRTF(z)   (XLALCOMPLEX8Sqrt(z))
#define LAL_CSQRT_REALF(x)   (XLALCOMPLEX8SqrtReal(x))
#define LAL_CPOWF(a, b)   (XLALCOMPLEX8Pow((a),(b)))
#define LAL_CPOW_REALF(a, x)   (XLALCOMPLEX8PowReal((a),(x)))
#define LAL_CEXPF(a)   (XLALCOMPLEX8Exp(a))
#define LAL_CLOGF(a)   (XLALCOMPLEX8Log(a))
#define LAL_CLOG10F(a)   (XLALCOMPLEX8Log10(a))
#define LAL_CLOGBF(a, b)   (XLALCOMPLEX8LogB((a),(b)))
#define LAL_CSINF(a)   (XLALCOMPLEX8Sin(a))
#define LAL_CCOSF(a)   (XLALCOMPLEX8Cos(a))
#define LAL_CSECF(a)   (XLALCOMPLEX8Sec(a))
#define LAL_CCSCF(a)   (XLALCOMPLEX8Csc(a))
#define LAL_CTANF(a)   (XLALCOMPLEX8Tan(a))
#define LAL_CCOTF(a)   (XLALCOMPLEX8Cot(a))
#define LAL_CASINF(a)   (XLALCOMPLEX8Arcsin(a))
#define LAL_CASIN_REALF(x)   (XLALCOMPLEX8ArcsinReal(x))
#define LAL_CACOSF(a)   (XLALCOMPLEX8Arccos(a))
#define LAL_CACOS_REALF(x)   (XLALCOMPLEX8ArccosReal(x))
#define LAL_CASECF(a)   (XLALCOMPLEX8Arcsec(a))
#define LAL_CASEC_REALF(x)   (XLALCOMPLEX8ArcsecReal(x))
#define LAL_CACSCF(a)   (XLALCOMPLEX8Arccsc(a))
#define LAL_CACSC_REALF(x)   (XLALCOMPLEX8ArccscReal(x))
#define LAL_CATANF(a)   (XLALCOMPLEX8Arctan(a))
#define LAL_CACOTF(a)   (XLALCOMPLEX8Arccot(a))
#define LAL_CSINHF(a)   (XLALCOMPLEX8Sinh(a))
#define LAL_CCOSHF(a)   (XLALCOMPLEX8Cosh(a))
#define LAL_CSECHF(a)   (XLALCOMPLEX8Sech(a))
#define LAL_CCSCHF(a)   (XLALCOMPLEX8Csch(a))
#define LAL_CTANHF(a)   (XLALCOMPLEX8Tanh(a))
#define LAL_CCOTHF(a)   (XLALCOMPLEX8Coth(a))
#define LAL_CASINHF(a)   (XLALCOMPLEX8Arcsinh(a))
#define LAL_CACOSHF(a)   (XLALCOMPLEX8Arccosh(a))
#define LAL_CACOSH_REALF(x)   (XLALCOMPLEX8ArccoshReal(x))
#define LAL_CASECHF(a)   (XLALCOMPLEX8Arcsech(a))
#define LAL_CACSCHF(a)   (XLALCOMPLEX8Arccsch(a))
#define LAL_CATANHF(a)   (XLALCOMPLEX8Arctanh(a))
#define LAL_CATANH_REALF(x)   (XLALCOMPLEX8ArctanhReal(x))
#define LAL_CACOTHF(a)   (XLALCOMPLEX8Arccoth(a))

Functions

 NRCSID (LALCOMPLEXH,"$Id: LALComplex.h,v 1.3 2007/06/08 14:41:52 bema Exp $")
COMPLEX16 XLALCOMPLEX16Rect (REAL8 x, REAL8 y)
COMPLEX16 XLALCOMPLEX16Polar (REAL8 x, REAL8 y)
REAL8 XLALCOMPLEX16Arg (COMPLEX16 z)
REAL8 XLALCOMPLEX16Abs (COMPLEX16 z)
REAL8 XLALCOMPLEX16Abs2 (COMPLEX16 z)
REAL8 XLALCOMPLEX16LogAbs (COMPLEX16 z)
COMPLEX16 XLALCOMPLEX16Add (COMPLEX16 a, COMPLEX16 b)
COMPLEX16 XLALCOMPLEX16Sub (COMPLEX16 a, COMPLEX16 b)
COMPLEX16 XLALCOMPLEX16Mul (COMPLEX16 a, COMPLEX16 b)
COMPLEX16 XLALCOMPLEX16Div (COMPLEX16 a, COMPLEX16 b)
COMPLEX16 XLALCOMPLEX16AddReal (COMPLEX16 a, REAL8 x)
COMPLEX16 XLALCOMPLEX16SubReal (COMPLEX16 a, REAL8 x)
COMPLEX16 XLALCOMPLEX16MulReal (COMPLEX16 a, REAL8 x)
COMPLEX16 XLALCOMPLEX16DivReal (COMPLEX16 a, REAL8 x)
COMPLEX16 XLALCOMPLEX16AddImag (COMPLEX16 a, REAL8 y)
COMPLEX16 XLALCOMPLEX16SubImag (COMPLEX16 a, REAL8 y)
COMPLEX16 XLALCOMPLEX16MulImag (COMPLEX16 a, REAL8 y)
COMPLEX16 XLALCOMPLEX16DivImag (COMPLEX16 a, REAL8 y)
COMPLEX16 XLALCOMPLEX16Conjugate (COMPLEX16 z)
COMPLEX16 XLALCOMPLEX16Inverse (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Negative (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Sqrt (COMPLEX16 z)
COMPLEX16 XLALCOMPLEX16SqrtReal (REAL8 x)
COMPLEX16 XLALCOMPLEX16Pow (COMPLEX16 a, COMPLEX16 b)
COMPLEX16 XLALCOMPLEX16PowReal (COMPLEX16 a, REAL8 x)
COMPLEX16 XLALCOMPLEX16Exp (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Log (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Log10 (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16LogB (COMPLEX16 a, COMPLEX16 b)
COMPLEX16 XLALCOMPLEX16Sin (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Cos (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Sec (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Csc (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Tan (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Cot (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Arcsin (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16ArcsinReal (REAL8 x)
COMPLEX16 XLALCOMPLEX16Arccos (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16ArccosReal (REAL8 x)
COMPLEX16 XLALCOMPLEX16Arcsec (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16ArcsecReal (REAL8 x)
COMPLEX16 XLALCOMPLEX16Arccsc (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16ArccscReal (REAL8 x)
COMPLEX16 XLALCOMPLEX16Arctan (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Arccot (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Sinh (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Cosh (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Sech (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Csch (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Tanh (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Coth (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Arcsinh (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Arccosh (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16ArccoshReal (REAL8 x)
COMPLEX16 XLALCOMPLEX16Arcsech (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Arccsch (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16Arctanh (COMPLEX16 a)
COMPLEX16 XLALCOMPLEX16ArctanhReal (REAL8 x)
COMPLEX16 XLALCOMPLEX16Arccoth (COMPLEX16 a)
COMPLEX8 XLALCOMPLEX8Rect (REAL4 x, REAL4 y)
COMPLEX8 XLALCOMPLEX8Polar (REAL4 x, REAL4 y)
REAL4 XLALCOMPLEX8Arg (COMPLEX8 z)
REAL4 XLALCOMPLEX8Abs (COMPLEX8 z)
REAL4 XLALCOMPLEX8Abs2 (COMPLEX8 z)
REAL4 XLALCOMPLEX8LogAbs (COMPLEX8 z)
COMPLEX8 XLALCOMPLEX8Add (COMPLEX8 a, COMPLEX8 b)
COMPLEX8 XLALCOMPLEX8Sub (COMPLEX8 a, COMPLEX8 b)
COMPLEX8 XLALCOMPLEX8Mul (COMPLEX8 a, COMPLEX8 b)
COMPLEX8 XLALCOMPLEX8Div (COMPLEX8 a, COMPLEX8 b)
COMPLEX8 XLALCOMPLEX8AddReal (COMPLEX8 a, REAL4 x)
COMPLEX8 XLALCOMPLEX8SubReal (COMPLEX8 a, REAL4 x)
COMPLEX8 XLALCOMPLEX8MulReal (COMPLEX8 a, REAL4 x)
COMPLEX8 XLALCOMPLEX8DivReal (COMPLEX8 a, REAL4 x)
COMPLEX8 XLALCOMPLEX8AddImag (COMPLEX8 a, REAL4 y)
COMPLEX8 XLALCOMPLEX8SubImag (COMPLEX8 a, REAL4 y)
COMPLEX8 XLALCOMPLEX8MulImag (COMPLEX8 a, REAL4 y)
COMPLEX8 XLALCOMPLEX8DivImag (COMPLEX8 a, REAL4 y)
COMPLEX8 XLALCOMPLEX8Conjugate (COMPLEX8 z)
COMPLEX8 XLALCOMPLEX8Inverse (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Negative (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Sqrt (COMPLEX8 z)
COMPLEX8 XLALCOMPLEX8SqrtReal (REAL4 x)
COMPLEX8 XLALCOMPLEX8Pow (COMPLEX8 a, COMPLEX8 b)
COMPLEX8 XLALCOMPLEX8PowReal (COMPLEX8 a, REAL4 x)
COMPLEX8 XLALCOMPLEX8Exp (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Log (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Log10 (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8LogB (COMPLEX8 a, COMPLEX8 b)
COMPLEX8 XLALCOMPLEX8Sin (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Cos (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Sec (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Csc (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Tan (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Cot (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Arcsin (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8ArcsinReal (REAL4 x)
COMPLEX8 XLALCOMPLEX8Arccos (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8ArccosReal (REAL4 x)
COMPLEX8 XLALCOMPLEX8Arcsec (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8ArcsecReal (REAL4 x)
COMPLEX8 XLALCOMPLEX8Arccsc (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8ArccscReal (REAL4 x)
COMPLEX8 XLALCOMPLEX8Arctan (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Arccot (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Sinh (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Cosh (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Sech (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Csch (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Tanh (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Coth (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Arcsinh (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Arccosh (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8ArccoshReal (REAL4 x)
COMPLEX8 XLALCOMPLEX8Arcsech (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Arccsch (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8Arctanh (COMPLEX8 a)
COMPLEX8 XLALCOMPLEX8ArctanhReal (REAL4 x)
COMPLEX8 XLALCOMPLEX8Arccoth (COMPLEX8 a)


Define Documentation

#define LAL_USE_COMPLEX_MACROS

Definition at line 42 of file LALComplex.h.

#define LAL_REAL ( z   )     ((z).re)

Definition at line 47 of file LALComplex.h.

#define LAL_IMAG ( z   )     ((z).im)

Definition at line 48 of file LALComplex.h.

#define LAL_COMPLEX_EQ ( z1,
z2   )     (((z1).re == (z2).re) && ((z1).im == (z2).im))

Definition at line 49 of file LALComplex.h.

#define LAL_SET_COMPLEX ( zp,
x,
y   )     do {(zp)->re=(x); (zp)->im=(y);} while(0)

Definition at line 51 of file LALComplex.h.

#define LAL_SET_REAL ( zp,
x   )     do {(zp)->re=(x);} while(0)

Definition at line 52 of file LALComplex.h.

#define LAL_SET_IMAG ( zp,
y   )     do {(zp)->im=(y);} while(0)

Definition at line 53 of file LALComplex.h.

#define LAL_COMPLEX16_ONE   (XLALCOMPLEX16Rect(1.0,0.0))

Definition at line 55 of file LALComplex.h.

#define LAL_COMPLEX16_ZERO   (XLALCOMPLEX16Rect(0.0,0.0))

Definition at line 56 of file LALComplex.h.

#define LAL_COMPLEX16_NEGONE   (XLALCOMPLEX16Rect(-1.0,0.0))

Definition at line 57 of file LALComplex.h.

#define LAL_COMPLEX16_I   (XLALCOMPLEX16Rect(0.0,1.0))

Definition at line 58 of file LALComplex.h.

#define LAL_CARG ( z   )     (XLALCOMPLEX16Arg(z))

Definition at line 85 of file LALComplex.h.

#define LAL_CABS ( z   )     (XLALCOMPLEX16Abs(z))

Definition at line 86 of file LALComplex.h.

#define LAL_CABS2 ( z   )     (XLALCOMPLEX16Abs2(z))

Definition at line 87 of file LALComplex.h.

#define LAL_CLOGABS ( z   )     (XLALCOMPLEX16LogAbs(z))

Definition at line 88 of file LALComplex.h.

#define LAL_CADD ( a,
 )     (XLALCOMPLEX16Add((a),(b)))

Definition at line 117 of file LALComplex.h.