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

Preconditioners for dCSRmat matrices. More...

#include "fasp.h"
#include "fasp_functs.h"
#include "PreMGUtil.inl"

Go to the source code of this file.

Functions

precondfasp_precond_setup (const SHORT precond_type, AMG_param *amgparam, ILU_param *iluparam, dCSRmat *A)
 Setup preconditioner interface for iterative methods. More...
 
void fasp_precond_diag (REAL *r, REAL *z, void *data)
 Diagonal preconditioner z=inv(D)*r. More...
 
void fasp_precond_ilu (REAL *r, REAL *z, void *data)
 ILU preconditioner. More...
 
void fasp_precond_ilu_forward (REAL *r, REAL *z, void *data)
 ILU preconditioner: only forward sweep. More...
 
void fasp_precond_ilu_backward (REAL *r, REAL *z, void *data)
 ILU preconditioner: only backward sweep. More...
 
void fasp_precond_swz (REAL *r, REAL *z, void *data)
 get z from r by Schwarz More...
 
void fasp_precond_amg (REAL *r, REAL *z, void *data)
 AMG preconditioner. More...
 
void fasp_precond_famg (REAL *r, REAL *z, void *data)
 Full AMG preconditioner. More...
 
void fasp_precond_amli (REAL *r, REAL *z, void *data)
 AMLI AMG preconditioner. More...
 
void fasp_precond_namli (REAL *r, REAL *z, void *data)
 Nonlinear AMLI AMG preconditioner. More...
 
void fasp_precond_amg_nk (REAL *r, REAL *z, void *data)
 AMG with extra near kernel solve as preconditioner. More...
 

Detailed Description

Preconditioners for dCSRmat matrices.

Note
This file contains Level-4 (Pre) functions. It requires: AuxArray.c, AuxMemory.c, AuxParam.c, AuxVector.c, BlaILUSetupCSR.c, BlaSchwarzSetup.c, BlaSparseCSR.c, BlaSpmvCSR.c, KrySPcg.c, KrySPvgmres.c, PreAMGSetupRS.c, PreAMGSetupSA.c, PreAMGSetupUA.c, PreDataInit.c, PreMGCycle.c, PreMGCycleFull.c, and PreMGRecurAMLI.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 PreCSR.c.

Function Documentation

◆ fasp_precond_amg()

void fasp_precond_amg ( REAL r,
REAL z,
void *  data 
)

AMG preconditioner.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Chensong Zhang
Date
04/06/2010

Definition at line 416 of file PreCSR.c.

◆ fasp_precond_amg_nk()

void fasp_precond_amg_nk ( REAL r,
REAL z,
void *  data 
)

AMG with extra near kernel solve as preconditioner.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Xiaozhe Hu
Date
05/26/2014

Definition at line 548 of file PreCSR.c.

◆ fasp_precond_amli()

void fasp_precond_amli ( REAL r,
REAL z,
void *  data 
)

AMLI AMG preconditioner.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Xiaozhe Hu
Date
01/23/2011

Definition at line 482 of file PreCSR.c.

◆ fasp_precond_diag()

void fasp_precond_diag ( REAL r,
REAL z,
void *  data 
)

Diagonal preconditioner z=inv(D)*r.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Chensong Zhang
Date
04/06/2010

Definition at line 172 of file PreCSR.c.

◆ fasp_precond_famg()

void fasp_precond_famg ( REAL r,
REAL z,
void *  data 
)

Full AMG preconditioner.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Xiaozhe Hu
Date
02/27/2011

Definition at line 449 of file PreCSR.c.

◆ fasp_precond_ilu()

void fasp_precond_ilu ( REAL r,
REAL z,
void *  data 
)

ILU preconditioner.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Shiquan Zhang
Date
04/06/2010

Definition at line 198 of file PreCSR.c.

◆ fasp_precond_ilu_backward()

void fasp_precond_ilu_backward ( REAL r,
REAL z,
void *  data 
)

ILU preconditioner: only backward sweep.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Xiaozhe Hu, Shiquan Zhang
Date
04/06/2010

Definition at line 317 of file PreCSR.c.

◆ fasp_precond_ilu_forward()

void fasp_precond_ilu_forward ( REAL r,
REAL z,
void *  data 
)

ILU preconditioner: only forward sweep.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Xiaozhe Hu, Shiquang Zhang
Date
04/06/2010

Definition at line 263 of file PreCSR.c.

◆ fasp_precond_namli()

void fasp_precond_namli ( REAL r,
REAL z,
void *  data 
)

Nonlinear AMLI AMG preconditioner.

Parameters
rPointer to the vector needs preconditioning
zPointer to preconditioned vector
dataPointer to precondition data
Author
Xiaozhe Hu
Date
04/25/2011

Definition at line 515 of file PreCSR.c.

◆ fasp_precond_setup()

precond * fasp_precond_setup ( const SHORT  precond_type,
AMG_param amgparam,
ILU_param iluparam,
dCSRmat A 
)

Setup preconditioner interface for iterative methods.

Parameters
precond_typePreconditioner type
amgparamPointer to AMG parameters
iluparamPointer to ILU parameters
APointer to the coefficient matrix
Returns
Pointer to preconditioner
Author
Feiteng Huang
Date
05/18/2009

Definition at line 46 of file PreCSR.c.

◆ fasp_precond_swz()

void fasp_precond_swz ( REAL r,
REAL z,
void *  data 
)

get z from r by Schwarz

Parameters
rPointer to residual
zPointer to preconditioned residual
dataPointer to precondition data
Author
Xiaozhe Hu
Date
03/22/2010
Note
Change Schwarz interface by Zheng Li on 11/18/2014

Definition at line 371 of file PreCSR.c.