aimsdata  5.1.2
Neuroimaging data handling
gausslu.h File Reference
Include dependency graph for gausslu.h:

Go to the source code of this file.

Namespaces

 carto
 

Functions

LU decomposition of matrix.

The source matrix is a.

As output, a is the LU decomposition. indx is an output vector that records the row permutation effected by the partial pivoting. d is output as +1 or -1 depending wether the number of row interchanges was even or odd.

float AimsDecompositionLU (carto::VolumeRef< float > &a, carto::VolumeRef< int32_t > &indx)
 
LU forward and backward substitution.

Solves the set of N linear equations A.X=B.

Here a is input but in LU form. indx is input as the permutation vector returned by LU decomposition. b is input as the right-hand side vector B, and returns with the solution vector X.

void AimsBackSubstitutionLU (const carto::VolumeRef< float > &a, const carto::VolumeRef< int32_t > &indx, carto::VolumeRef< float > &b)
 
Inverse of a matrix.
carto::VolumeRef< float > AimsInversionLU (const carto::VolumeRef< float > &matrix)
 Inverse of a float matrix. More...
 
carto::VolumeRef< cfloatAimsInversionLU (const carto::VolumeRef< cfloat > &matrix)
 Inverse of a complex float matrix. More...
 
Resolution of the linear equation A.X = B.
carto::VolumeRef< float > AimsLinearResolutionLU (const carto::VolumeRef< float > &matrix, const carto::VolumeRef< float > &b)
 Resolution in float. More...
 
carto::VolumeRef< cfloatAimsLinearResolutionLU (const carto::VolumeRef< cfloat > &matrix, const carto::VolumeRef< cfloat > &b)
 Resolution in complex float. More...
 
Determinant of a matrix.
float AimsDeterminantLU (const carto::VolumeRef< float > &matrix)
 
Linear resolution of Toeplitz like system.
void AimsToeplitz (const carto::VolumeRef< float > &r, const carto::VolumeRef< float > &y, carto::VolumeRef< float > &x)
 Resolution of system R.x = y where R is a toeplitz matrix decomposed in r=[r(-(N-1)), ...., r(-1), r(0), r(1), ..., r(N-1)]. More...
 

Function Documentation

◆ AimsBackSubstitutionLU()

void AimsBackSubstitutionLU ( const carto::VolumeRef< float > &  a,
const carto::VolumeRef< int32_t > &  indx,
carto::VolumeRef< float > &  b 
)

◆ AimsDecompositionLU()

float AimsDecompositionLU ( carto::VolumeRef< float > &  a,
carto::VolumeRef< int32_t > &  indx 
)

◆ AimsDeterminantLU()

float AimsDeterminantLU ( const carto::VolumeRef< float > &  matrix)

◆ AimsInversionLU() [1/2]

carto::VolumeRef< cfloat > AimsInversionLU ( const carto::VolumeRef< cfloat > &  matrix)

Inverse of a complex float matrix.

◆ AimsInversionLU() [2/2]

carto::VolumeRef<float> AimsInversionLU ( const carto::VolumeRef< float > &  matrix)

Inverse of a float matrix.

◆ AimsLinearResolutionLU() [1/2]

carto::VolumeRef< cfloat > AimsLinearResolutionLU ( const carto::VolumeRef< cfloat > &  matrix,
const carto::VolumeRef< cfloat > &  b 
)

Resolution in complex float.

◆ AimsLinearResolutionLU() [2/2]

carto::VolumeRef<float> AimsLinearResolutionLU ( const carto::VolumeRef< float > &  matrix,
const carto::VolumeRef< float > &  b 
)

Resolution in float.

◆ AimsToeplitz()

void AimsToeplitz ( const carto::VolumeRef< float > &  r,
const carto::VolumeRef< float > &  y,
carto::VolumeRef< float > &  x 
)

Resolution of system R.x = y where R is a toeplitz matrix decomposed in r=[r(-(N-1)), ...., r(-1), r(0), r(1), ..., r(N-1)].

The result is given in x