21#include "fasp_functs.h"
46void fasp_fwrapper_dcsr_pardiso_(
90void fasp_fwrapper_dcsr_strumpack_(
156 amgparam.
maxit = *maxit;
221 itsparam.
maxit = *maxit;
280 char* inputfile =
"ini/amg.dat";
285 itsparam.
maxit = *maxit;
354 itsparam.
maxit = *maxit;
424 itsparam.
maxit = *maxit;
void fasp_param_ilu_init(ILU_param *iluparam)
Initialize ILU parameters.
void fasp_param_init(const input_param *iniparam, ITS_param *itsparam, AMG_param *amgparam, ILU_param *iluparam, SWZ_param *swzparam)
Initialize parameters, global variables, etc.
void fasp_param_solver_init(ITS_param *itsparam)
Initialize ITS_param.
void fasp_param_amg_init(AMG_param *amgparam)
Initialize AMG parameters.
void fasp_dcsr_sort(dCSRmat *A)
Sort each row of A in ascending order w.r.t. column indices.
INT fasp_solver_amg(dCSRmat *A, dvector *b, dvector *x, AMG_param *param)
Solve Ax = b by algebraic multigrid methods.
INT fasp_solver_dbsr_krylov_ilu(dBSRmat *A, dvector *b, dvector *x, ITS_param *itparam, ILU_param *iluparam)
Solve Ax=b by ILUs preconditioned Krylov methods.
INT fasp_solver_dbsr_krylov_amg(dBSRmat *A, dvector *b, dvector *x, ITS_param *itparam, AMG_param *amgparam)
Solve Ax=b by AMG preconditioned Krylov methods.
INT fasp_solver_dcsr_krylov_ilu(dCSRmat *A, dvector *b, dvector *x, ITS_param *itparam, ILU_param *iluparam)
Solve Ax=b by ILUs preconditioned Krylov methods.
INT fasp_solver_dcsr_krylov_amg(dCSRmat *A, dvector *b, dvector *x, ITS_param *itparam, AMG_param *amgparam)
Solve Ax=b by AMG preconditioned Krylov methods.
void fasp_fwrapper_dcsr_amg_(INT *n, INT *nnz, INT *ia, INT *ja, REAL *a, REAL *b, REAL *u, REAL *tol, INT *maxit, INT *ptrlvl)
Solve Ax=b by Ruge and Stuben's classic AMG.
void fasp_fwrapper_dbsr_krylov_ilu_(INT *n, INT *nnz, INT *nb, INT *ia, INT *ja, REAL *a, REAL *b, REAL *u, REAL *tol, INT *maxit, INT *ptrlvl)
Solve Ax=b by Krylov method preconditioned by block ILU in BSR format.
void fasp_fwrapper_dcsr_krylov_ilu_(INT *n, INT *nnz, INT *ia, INT *ja, REAL *a, REAL *b, REAL *u, REAL *tol, INT *maxit, INT *ptrlvl)
Solve Ax=b by Krylov method preconditioned by ILUk.
void fasp_fwrapper_dcsr_krylov_amg_(INT *n, INT *nnz, INT *ia, INT *ja, REAL *a, REAL *b, REAL *u, REAL *tol, INT *maxit, INT *ptrlvl)
Solve Ax=b by Krylov method preconditioned by classic AMG.
void fasp_fwrapper_dbsr_krylov_amg_(INT *n, INT *nnz, INT *nb, INT *ia, INT *ja, REAL *a, REAL *b, REAL *u, REAL *tol, INT *maxit, INT *ptrlvl)
Solve Ax=b by Krylov method preconditioned by block AMG in BSR format.
INT fasp_solver_pardiso(dCSRmat *ptrA, dvector *b, dvector *u, const SHORT prtlvl)
Solve Ax=b by PARDISO directly.
INT fasp_solver_strumpack(dCSRmat *ptrA, dvector *b, dvector *u, const SHORT prtlvl)
Solve Au=b by UMFpack.
Main header file for the FASP project.
Header file for FASP block matrices.
Parameters for AMG methods.
SHORT print_level
print level for AMG
SHORT AMG_type
type of AMG method
REAL tol
stopping tolerance for AMG solver
INT maxit
max number of iterations of AMG
INT ILU_lfil
level of fill-in for ILUk
SHORT print_level
print level
Parameters for iterative solvers.
Block sparse row storage matrix of REAL type.
INT COL
number of cols of sub-blocks in matrix A, N
INT NNZ
number of nonzero sub-blocks in matrix A, NNZ
INT nb
dimension of each sub-block
INT * IA
integer array of row pointers, the size is ROW+1
INT ROW
number of rows of sub-blocks in matrix A, M
Sparse matrix of REAL type in CSR format.
INT col
column of matrix A, n
REAL * val
nonzero entries of A
INT row
row number of matrix A, m
INT * IA
integer array of row pointers, the size is m+1
INT nnz
number of nonzero entries
INT * JA
integer array of column indexes, the size is nnz
Vector with n entries of REAL type.
REAL * val
actual vector entries