![]() |
Fast Auxiliary Space Preconditioning 2.7.7 Aug/28/2022
|
Smoothers for dSTRmat matrices. More...
Go to the source code of this file.
Functions | |
void | fasp_smoother_dstr_jacobi (dSTRmat *A, dvector *b, dvector *u) |
Jacobi method as the smoother. More... | |
void | fasp_smoother_dstr_jacobi1 (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv) |
Jacobi method as the smoother with diag_inv given. More... | |
void | fasp_smoother_dstr_gs (dSTRmat *A, dvector *b, dvector *u, const INT order, INT *mark) |
Gauss-Seidel method as the smoother. More... | |
void | fasp_smoother_dstr_gs1 (dSTRmat *A, dvector *b, dvector *u, const INT order, INT *mark, REAL *diaginv) |
Gauss-Seidel method as the smoother with diag_inv given. More... | |
void | fasp_smoother_dstr_gs_ascend (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv) |
Gauss-Seidel method as the smoother in the ascending manner. More... | |
void | fasp_smoother_dstr_gs_descend (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv) |
Gauss-Seidel method as the smoother in the descending manner. More... | |
void | fasp_smoother_dstr_gs_order (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv, INT *mark) |
Gauss method as the smoother in the user-defined order. More... | |
void | fasp_smoother_dstr_gs_cf (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv, INT *mark, const INT order) |
Gauss method as the smoother in the C-F manner. More... | |
void | fasp_smoother_dstr_sor (dSTRmat *A, dvector *b, dvector *u, const INT order, INT *mark, const REAL weight) |
SOR method as the smoother. More... | |
void | fasp_smoother_dstr_sor1 (dSTRmat *A, dvector *b, dvector *u, const INT order, INT *mark, REAL *diaginv, const REAL weight) |
SOR method as the smoother. More... | |
void | fasp_smoother_dstr_sor_ascend (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv, REAL weight) |
SOR method as the smoother in the ascending manner. More... | |
void | fasp_smoother_dstr_sor_descend (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv, REAL weight) |
SOR method as the smoother in the descending manner. More... | |
void | fasp_smoother_dstr_sor_order (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv, INT *mark, REAL weight) |
SOR method as the smoother in the user-defined order. More... | |
void | fasp_smoother_dstr_sor_cf (dSTRmat *A, dvector *b, dvector *u, REAL *diaginv, INT *mark, const INT order, const REAL weight) |
SOR method as the smoother in the C-F manner. More... | |
void | fasp_generate_diaginv_block (dSTRmat *A, ivector *neigh, dvector *diaginv, ivector *pivot) |
Generate inverse of diagonal block for block smoothers. More... | |
void | fasp_smoother_dstr_swz (dSTRmat *A, dvector *b, dvector *u, dvector *diaginv, ivector *pivot, ivector *neigh, ivector *order) |
Smoothers for dSTRmat matrices.
Copyright (C) 2009–Present by the FASP team. All rights reserved.
Definition in file ItrSmootherSTR.c.
void fasp_generate_diaginv_block | ( | dSTRmat * | A, |
ivector * | neigh, | ||
dvector * | diaginv, | ||
ivector * | pivot | ||
) |
Generate inverse of diagonal block for block smoothers.
A | Pointer to dCSRmat: the coefficient matrix |
neigh | Pointer to ivector: neighborhoods |
diaginv | Pointer to dvector: the inverse of the diagonals |
pivot | Pointer to ivector: the pivot of diagonal blocks |
Definition at line 1543 of file ItrSmootherSTR.c.
Gauss-Seidel method as the smoother.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
order | Flag to indicate the order for smoothing If mark = NULL ASCEND 12: in ascending manner DESCEND 21: in descending manner If mark != NULL USERDEFINED 0 : in the user-defined manner CPFIRST 1 : C-points first and then F-points FPFIRST -1 : F-points first and then C-points |
mark | Pointer to the user-defined ordering(when order=0) or CF_marker array(when order!=0) |
Definition at line 217 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_gs1 | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
const INT | order, | ||
INT * | mark, | ||
REAL * | diaginv | ||
) |
Gauss-Seidel method as the smoother with diag_inv given.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
order | Flag to indicate the order for smoothing If mark = NULL ASCEND 12: in ascending manner DESCEND 21: in descending manner If mark != NULL USERDEFINED 0 : in the user-defined manner CPFIRST 1 : C-points first and then F-points FPFIRST -1 : F-points first and then C-points |
mark | Pointer to the user-defined ordering(when order=0) or CF_marker array(when order!=0) |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
Definition at line 277 of file ItrSmootherSTR.c.
Gauss-Seidel method as the smoother in the ascending manner.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
Definition at line 322 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_gs_cf | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
REAL * | diaginv, | ||
INT * | mark, | ||
const INT | order | ||
) |
Gauss method as the smoother in the C-F manner.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
mark | Pointer to the user-defined order array |
order | Flag to indicate the order for smoothing CPFIRST 1 : C-points first and then F-points FPFIRST -1 : F-points first and then C-points |
Definition at line 680 of file ItrSmootherSTR.c.
Gauss-Seidel method as the smoother in the descending manner.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
Definition at line 438 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_gs_order | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
REAL * | diaginv, | ||
INT * | mark | ||
) |
Gauss method as the smoother in the user-defined order.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
mark | Pointer to the user-defined order array |
Definition at line 556 of file ItrSmootherSTR.c.
Jacobi method as the smoother.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
Definition at line 43 of file ItrSmootherSTR.c.
Jacobi method as the smoother with diag_inv given.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
Definition at line 92 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_sor | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
const INT | order, | ||
INT * | mark, | ||
const REAL | weight | ||
) |
SOR method as the smoother.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
order | Flag to indicate the order for smoothing If mark = NULL ASCEND 12: in ascending manner DESCEND 21: in descending manner If mark != NULL USERDEFINED 0 : in the user-defined manner CPFIRST 1 : C-points first and then F-points FPFIRST -1 : F-points first and then C-points |
mark | Pointer to the user-defined ordering(when order=0) or CF_marker array(when order!=0) |
weight | Over-relaxation weight |
Definition at line 873 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_sor1 | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
const INT | order, | ||
INT * | mark, | ||
REAL * | diaginv, | ||
const REAL | weight | ||
) |
SOR method as the smoother.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
order | Flag to indicate the order for smoothing If mark = NULL ASCEND 12: in ascending manner DESCEND 21: in descending manner If mark != NULL USERDEFINED 0 : in the user-defined manner CPFIRST 1 : C-points first and then F-points FPFIRST -1 : F-points first and then C-points |
mark | Pointer to the user-defined ordering(when order=0) or CF_marker array(when order!=0) |
diaginv | Inverse of the diagonal entries |
weight | Over-relaxation weight |
Definition at line 935 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_sor_ascend | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
REAL * | diaginv, | ||
REAL | weight | ||
) |
SOR method as the smoother in the ascending manner.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
weight | Over-relaxation weight |
Definition at line 981 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_sor_cf | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
REAL * | diaginv, | ||
INT * | mark, | ||
const INT | order, | ||
const REAL | weight | ||
) |
SOR method as the smoother in the C-F manner.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
mark | Pointer to the user-defined order array |
order | Flag to indicate the order for smoothing CPFIRST 1 : C-points first and then F-points FPFIRST -1 : F-points first and then C-points |
weight | Over-relaxation weight |
Definition at line 1355 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_sor_descend | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
REAL * | diaginv, | ||
REAL | weight | ||
) |
SOR method as the smoother in the descending manner.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
weight | Over-relaxation weight |
Definition at line 1102 of file ItrSmootherSTR.c.
void fasp_smoother_dstr_sor_order | ( | dSTRmat * | A, |
dvector * | b, | ||
dvector * | u, | ||
REAL * | diaginv, | ||
INT * | mark, | ||
REAL | weight | ||
) |
SOR method as the smoother in the user-defined order.
A | Pointer to dCSRmat: the coefficient matrix |
b | Pointer to dvector: the right hand side |
u | Pointer to dvector: the unknowns |
diaginv | All the inverse matrices for all the diagonal block of A when (A->nc)>1, and NULL when (A->nc)=1 |
mark | Pointer to the user-defined order array |
weight | Over-relaxation weight |
Definition at line 1224 of file ItrSmootherSTR.c.