# DSPF_dp_cholesky_solver_cmplx [DSPF_dp_cholesky_cmplx]

Collaboration diagram for DSPF_dp_cholesky_solver_cmplx:

## Functions

int DSPF_dp_cholesky_solver_cmplx (const int Nrows, double *restrict L, double *restrict y, double *restrict b, double *restrict x)

## Function Documentation

 int DSPF_dp_cholesky_solver_cmplx ( const int Nrows, double *restrict L, double *restrict y, double *restrict b, double *restrict x )

This function solves A*x=b for x using forward and backward substitution using the decomposed lower triangular matrix L as shown in the following steps. The values stored in the matrices are assumed to be double precision floating point values. 1. A*x = L*U*b = L*L_transpose*x = b 2. y = inverse(L)*b - done using forward substitution 3. x = inverse(L_transpose)*y - done using backward substitution

Parameters:
 Nrows = Nrows of square matrix A L = pointer to input square matrix L[Nrows*Nrows] y = pointer to intermediate vector y[Nrows] b = pointer to input vector b[Nrows] x = pointer to output vector x[Nrows]
Algorithm:
DSPF_dp_cholesky_cmplx_cn.c is the natural C equivalent of the optimized intrinsic C code without restrictions. Note that the intrinsic C code is optimized and restrictions may apply.
Assumptions:
1. The decomposed lower triangular matrix L is available as input.
2. The arrays consist of complex number entries with alternating real and imaginary parts: real0,imag0,real1,imag1,...
Implementation Notes:
Interruptibility : The code is interruptible.
Endian support : supports both Little and Big endian modes.