STARS-H
Software for Testing Accuracy, Reliability and Scalability of Hierarchical computations
Iterative solvers

Set of iterative solvers. More...

Functions

int starsh_itersolvers__dcg_omp (STARSH_blrm *matrix, int nrhs, double *B, int ldb, double *X, int ldx, double tol, double *work)
 Conjugate gradient method for STARSH_blrm object. More...
 
int starsh_itersolvers__dcg_mpi (STARSH_blrm *matrix, int nrhs, double *B, int ldb, double *X, int ldx, double tol, double *work)
 Conjugate gradient method for STARSH_blrm object on MPI nodes. More...
 

Detailed Description

Set of iterative solvers.

/ *

Function Documentation

◆ starsh_itersolvers__dcg_mpi()

int starsh_itersolvers__dcg_mpi ( STARSH_blrm matrix,
int  nrhs,
double *  B,
int  ldb,
double *  X,
int  ldx,
double  tol,
double *  work 
)

Conjugate gradient method for STARSH_blrm object on MPI nodes.

Parameters
[in]matrixBlock-wise low-rank matrix.
[in]nrhsNumber of right havd sides.
[in]BRight hand side.
[in]ldbLeading dimension of B.
[in,out]XInitial solution as input, total solution as output.
[in]ldxLeading dimension of X.
[in]tolRelative error threshold for residual.
[out]workTemporary array of size 3*n.
Returns
Number of iterations or -1 if not converged.

◆ starsh_itersolvers__dcg_omp()

int starsh_itersolvers__dcg_omp ( STARSH_blrm matrix,
int  nrhs,
double *  B,
int  ldb,
double *  X,
int  ldx,
double  tol,
double *  work 
)

Conjugate gradient method for STARSH_blrm object.

Parameters
[in]matrixBlock-wise low-rank matrix.
[in]nrhsNumber of right havd sides.
[in]BRight hand side.
[in]ldbLeading dimension of B.
[in,out]XInitial solution as input, total solution as output.
[in]ldxLeading dimension of X.
[in]tolRelative error threshold for residual.
[out]workTemporary array of size 3*n.
Returns
Number of iterations or -1 if not converged.