DOUG 0.2
Data Types | Functions/Subroutines

RobustCoarseMtx_mod Module Reference

Method for creating robust coarse spaces. More...

Data Types

type  SumOfInversedSubMtx
 This represents matrix consisting of the sum of smaller inversed matrices. More...

Functions/Subroutines

type(SumOfInversedSubMtxCoarseProjectionMtxsBuild (A, R, naggr)
 Creates restrict matrices for the Robust Coarse Space algorithm from the restrict matrix of the aggregation and smoothing result.
subroutine SOISMtx_pmvm (y, A, x)
 Matrix-vector multiplication.
subroutine RobustRestrictMtxBuild (A, g, R)
 Get robust restrict matrix.

Detailed Description

Method for creating robust coarse spaces.


Function/Subroutine Documentation

type(SumOfInversedSubMtx) RobustCoarseMtx_mod::CoarseProjectionMtxsBuild ( type(SpMtx),intent(inout)  A,
type(SpMtx),intent(in)  R,
integer,intent(in)  naggr 
)

Creates restrict matrices for the Robust Coarse Space algorithm from the restrict matrix of the aggregation and smoothing result.

Parameters:
Rrestrict matrix from usual aggregate with smoothing
naggrnumber of aggregates

Definition at line 53 of file RobustCoarseMtx.f90.

References getConstrainedEnergyMatrix().

Referenced by CoarsePreconditioner_robust_mod::CoarsePreconditioner_robust_Init().

subroutine RobustCoarseMtx_mod::RobustRestrictMtxBuild ( type(SumOfInversedSubMtx),intent(inout)  A,
real(kind=rk),dimension(:),pointer  g,
type(SpMtx),intent(out)  R 
)

Get robust restrict matrix.

Parameters:
Asystem matrix
gsolution of the equation $ B g = 1 $
Rrestriction matrix

Definition at line 176 of file RobustCoarseMtx.f90.

References subsolvers::sparse_singlesolve(), SpMtx_op_Ax::SpMtx_Ax(), SpMtx_class::SpMtx_newInit(), and SpMtx_util::SpMtx_printRaw().

Referenced by CoarsePreconditioner_robust_mod::CoarsePreconditioner_robust_Init().

subroutine RobustCoarseMtx_mod::SOISMtx_pmvm ( real(kind=rk),dimension(:),pointer  y,
type(SumOfInversedSubMtx),intent(inout)  A,
real(kind=rk),dimension(:),pointer  x 
)

Matrix-vector multiplication.

Parameters:
yResult
ASystem matrix
xVector

Definition at line 141 of file RobustCoarseMtx.f90.

References not, subsolvers::sparse_singlesolve(), and SpMtx_op_Ax::SpMtx_Ax().

Referenced by pcgRobust_mod::pcg_forRCS().