Fast Auxiliary Space Preconditioning 2.7.7 Aug/28/2022
Loading...
Searching...
No Matches
SolBLC.c File Reference

Iterative solvers for dBLCmat matrices. More...

#include <math.h>
#include <time.h>
#include "fasp.h"
#include "fasp_block.h"
#include "fasp_functs.h"
#include "KryUtil.inl"

Go to the source code of this file.

Functions

INT fasp_solver_dblc_itsolver (dBLCmat *A, dvector *b, dvector *x, precond *pc, ITS_param *itparam)
 Solve Ax = b by standard Krylov methods. More...
 
INT fasp_solver_dblc_krylov (dBLCmat *A, dvector *b, dvector *x, ITS_param *itparam)
 Solve Ax = b by standard Krylov methods. More...
 
INT fasp_solver_dblc_krylov_block3 (dBLCmat *A, dvector *b, dvector *x, ITS_param *itparam, AMG_param *amgparam, dCSRmat *A_diag)
 Solve Ax = b by standard Krylov methods. More...
 
INT fasp_solver_dblc_krylov_block4 (dBLCmat *A, dvector *b, dvector *x, ITS_param *itparam, AMG_param *amgparam, dCSRmat *A_diag)
 Solve Ax = b by standard Krylov methods. More...
 
INT fasp_solver_dblc_krylov_sweeping (dBLCmat *A, dvector *b, dvector *x, ITS_param *itparam, INT NumLayers, dBLCmat *Ai, dCSRmat *local_A, ivector *local_index)
 Solve Ax = b by standard Krylov methods. More...
 

Detailed Description

Iterative solvers for dBLCmat matrices.

Note
This file contains Level-5 (Sol) functions. It requires: AuxMemory.c, AuxMessage.c, AuxTiming.c, AuxVector.c, BlaSparseCSR.c, KryPbcgs.c, KryPgmres.c, KryPminres.c, KryPvfgmres.c, KryPvgmres.c, PreAMGSetupRS.c, PreAMGSetupSA.c, PreAMGSetupUA.c, PreBLC.c, and PreDataInit.c

Copyright (C) 2009–Present by the FASP team. All rights reserved.

Released under the terms of the GNU Lesser General Public License 3.0 or later.

Definition in file SolBLC.c.

Function Documentation

◆ fasp_solver_dblc_itsolver()

INT fasp_solver_dblc_itsolver ( dBLCmat A,
dvector b,
dvector x,
precond pc,
ITS_param itparam 
)

Solve Ax = b by standard Krylov methods.

Parameters
APointer to the coeff matrix in dBLCmat format
bPointer to the right hand side in dvector format
xPointer to the approx solution in dvector format
pcPointer to the preconditioning action
itparamPointer to parameters for iterative solvers
Returns
Iteration number if converges; ERROR otherwise.
Author
Chensong Zhang
Date
11/25/2010

Modified by Chunsheng Feng on 03/04/2016: add VBiCGstab solver

Definition at line 54 of file SolBLC.c.

◆ fasp_solver_dblc_krylov()

INT fasp_solver_dblc_krylov ( dBLCmat A,
dvector b,
dvector x,
ITS_param itparam 
)

Solve Ax = b by standard Krylov methods.

Parameters
APointer to the coeff matrix in dBLCmat format
bPointer to the right hand side in dvector format
xPointer to the approx solution in dvector format
itparamPointer to parameters for iterative solvers
Returns
Iteration number if converges; ERROR otherwise.
Author
Xiaozhe Hu
Date
07/18/2010

Definition at line 139 of file SolBLC.c.

◆ fasp_solver_dblc_krylov_block3()

INT fasp_solver_dblc_krylov_block3 ( dBLCmat A,
dvector b,
dvector x,
ITS_param itparam,
AMG_param amgparam,
dCSRmat A_diag 
)

Solve Ax = b by standard Krylov methods.

Parameters
APointer to the coeff matrix in dBLCmat format
bPointer to the right hand side in dvector format
xPointer to the approx solution in dvector format
itparamPointer to parameters for iterative solvers
amgparamPointer to parameters for AMG solvers
A_diagDigonal blocks of A
Returns
Iteration number if converges; ERROR otherwise.
Author
Xiaozhe Hu
Date
07/10/2014
Warning
Only works for 3X3 block problems!! – Xiaozhe Hu

Definition at line 188 of file SolBLC.c.

◆ fasp_solver_dblc_krylov_block4()

INT fasp_solver_dblc_krylov_block4 ( dBLCmat A,
dvector b,
dvector x,
ITS_param itparam,
AMG_param amgparam,
dCSRmat A_diag 
)

Solve Ax = b by standard Krylov methods.

Parameters
APointer to the coeff matrix in dBLCmat format
bPointer to the right hand side in dvector format
xPointer to the approx solution in dvector format
itparamPointer to parameters for iterative solvers
amgparamPointer to parameters for AMG solvers
A_diagDigonal blocks of A
Returns
Iteration number if converges; ERROR otherwise.
Author
Xiaozhe Hu
Date
07/06/2014
Warning
Only works for 4 by 4 block dCSRmat problems!! – Xiaozhe Hu

Definition at line 390 of file SolBLC.c.

◆ fasp_solver_dblc_krylov_sweeping()

INT fasp_solver_dblc_krylov_sweeping ( dBLCmat A,
dvector b,
dvector x,
ITS_param itparam,
INT  NumLayers,
dBLCmat Ai,
dCSRmat local_A,
ivector local_index 
)

Solve Ax = b by standard Krylov methods.

Parameters
APointer to the coeff matrix in dBLCmat format
bPointer to the right hand side in dvector format
xPointer to the approx solution in dvector format
itparamPointer to parameters for iterative solvers
NumLayersNumber of layers used for sweeping preconditioner
AiPointer to the coeff matrix for the preconditioner in dBLCmat format
local_APointer to the local coeff matrices in the dCSRmat format
local_indexPointer to the local index in ivector format
Returns
Iteration number if converges; ERROR otherwise.
Author
Xiaozhe Hu
Date
05/01/2014

Definition at line 507 of file SolBLC.c.