lsd_mkb/lsd_mkb_superlu/superlu_seq/slu_dcomplex.h File Reference

Header file for complex operations. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  doublecomplex

Defines

#define z_add(c, a, b)
 Complex Addition c = a + b.
#define z_sub(c, a, b)
 Complex Subtraction c = a - b.
#define zd_mult(c, a, b)
 Complex-Double Multiplication.
#define zz_mult(c, a, b)
 Complex-Complex Multiplication.
#define zz_conj(a, b)
#define z_eq(a, b)   ( (a)->r == (b)->r && (a)->i == (b)->i )
 Complex equality testing.

Functions

void z_div (doublecomplex *, doublecomplex *, doublecomplex *)
 Complex Division c = a/b.
double z_abs (doublecomplex *)
 Returns sqrt(z.r^2 + z.i^2).
double z_abs1 (doublecomplex *)
 Approximates the abs. Returns abs(z.r) + abs(z.i).
void z_exp (doublecomplex *, doublecomplex *)
 Return the exponentiation.
void d_cnjg (doublecomplex *r, doublecomplex *z)
 Return the complex conjugate.
double d_imag (doublecomplex *)
 Return the imaginary part.
doublecomplex z_sgn (doublecomplex *)
 SIGN functions for complex number. Returns z/abs(z).
doublecomplex z_sqrt (doublecomplex *)
 Square-root of a complex number.

Detailed Description

Header file for complex operations.

 
  -- SuperLU routine (version 2.0) --
 Univ. of California Berkeley, Xerox Palo Alto Research Center,
 and Lawrence Berkeley National Lab.
 November 15, 1997
 Contains definitions for various complex operations.
 This header file is to be included in source files z*.c
 

Define Documentation

#define z_add ( c,
a,
 ) 
Value:
{ (c)->r = (a)->r + (b)->r; \
             (c)->i = (a)->i + (b)->i; }

Complex Addition c = a + b.

#define z_eq ( a,
 )     ( (a)->r == (b)->r && (a)->i == (b)->i )

Complex equality testing.

#define z_sub ( c,
a,
 ) 
Value:
{ (c)->r = (a)->r - (b)->r; \
             (c)->i = (a)->i - (b)->i; }

Complex Subtraction c = a - b.

#define zd_mult ( c,
a,
 ) 
Value:
{ (c)->r = (a)->r * (b); \
                           (c)->i = (a)->i * (b); }

Complex-Double Multiplication.

#define zz_conj ( a,
 ) 
Value:
{ \
        (a)->r = (b)->r; \
        (a)->i = -((b)->i); \
    }
#define zz_mult ( c,
a,
 ) 
Value:
{ \
    double cr, ci; \
        cr = (a)->r * (b)->r - (a)->i * (b)->i; \
        ci = (a)->i * (b)->r + (a)->r * (b)->i; \
        (c)->r = cr; \
        (c)->i = ci; \
    }

Complex-Complex Multiplication.


Function Documentation

void d_cnjg ( doublecomplex r,
doublecomplex z 
)

Return the complex conjugate.

double d_imag ( doublecomplex  ) 

Return the imaginary part.

double z_abs ( doublecomplex  ) 

Returns sqrt(z.r^2 + z.i^2).

Here is the caller graph for this function:

double z_abs1 ( doublecomplex  ) 

Approximates the abs. Returns abs(z.r) + abs(z.i).

Here is the caller graph for this function:

void z_div ( doublecomplex ,
doublecomplex ,
doublecomplex  
)

Complex Division c = a/b.

Here is the caller graph for this function:

void z_exp ( doublecomplex ,
doublecomplex  
)

Return the exponentiation.

Here is the call graph for this function:

doublecomplex z_sgn ( doublecomplex  ) 

SIGN functions for complex number. Returns z/abs(z).

Here is the call graph for this function:

Here is the caller graph for this function:

doublecomplex z_sqrt ( doublecomplex  ) 

Square-root of a complex number.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Jun 2020 for ModFEM by  doxygen 1.6.1