Elmer FEM solver
Elmer is an open source finite element software for multiphysical problems
 All Classes Files Functions Variables Typedefs Macros Groups Pages
IterativeMethods.src File Reference

Data Types

module  iterativemethods
 

Functions/Subroutines

subroutine sgs (n, A, x, b, Rounds, MinTolerance, MaxTolerance, Residual, Converged, Diverged, OutputInterval, Omega)
 
subroutine jacobi (n, A, x, b, Rounds, MinTolerance, MaxTolerance, Residual, Converged, Diverged, OutputInterval)
 
subroutine richardson (n, A, x, b, Rounds, MinTolerance, MaxTolerance, Residual, Converged, Diverged, OutputInterval)
 
subroutine c_matvec (u, v, ipar)
 
subroutine c_lpcond (u, v, ipar)
 
subroutine realbicgstabl (n, A, x, b, MaxRounds, Tol, MaxTol, Converged, Diverged, OutputInterval, l, StoppingCriterionType)
 
subroutine gcr (n, A, x, b, Rounds, MinTolerance, MaxTolerance, Residual, Converged, Diverged, OutputInterval, m)
 
subroutine gcr_z (n, A, x, b, Rounds, MinTolerance, MaxTolerance, Residual, Converged, Diverged, OutputInterval, m)
 
subroutine complexbicgstabl (n, A, x, b, MaxRounds, Tol, MaxTol, Converged, Diverged, OutputInterval, l, StoppingCriterionType)
 

Function/Subroutine Documentation

subroutine itermethod_bicgstabl::c_lpcond ( real(kind=dp), dimension(*)  u,
real(kind=dp), dimension(*)  v,
integer, dimension(*)  ipar 
)

Referenced by realbicgstabl().

Here is the caller graph for this function:

subroutine itermethod_bicgstabl::c_matvec ( real(kind=dp), dimension(*)  u,
real(kind=dp), dimension(*)  v,
integer, dimension(*)  ipar 
)

Referenced by realbicgstabl().

Here is the caller graph for this function:

subroutine itermethod_z_bicgstabl::complexbicgstabl ( integer  n,
type(matrix_t), pointer  A,
complex(kind=dp), dimension(n)  x,
complex(kind=dp), dimension(n)  b,
integer  MaxRounds,
real(kind=dp)  Tol,
real(kind=dp)  MaxTol,
logical  Converged,
logical  Diverged,
integer  OutputInterval,
integer  l,
integer, optional  StoppingCriterionType 
)

References messages::fatal().

Referenced by innerouteriteration(), iterativemethods::itermethod_z_bicgstabl(), monolithicsolve(), and preconditioningiteration().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine itermethod_gcr::gcr ( integer  n,
type(matrix_t), pointer  A,
real(kind=dp), dimension(n)  x,
real(kind=dp), dimension(n)  b,
integer  Rounds,
real(kind=dp)  MinTolerance,
real(kind=dp)  MaxTolerance,
real(kind=dp)  Residual,
logical  Converged,
logical  Diverged,
integer  OutputInterval,
integer  m 
)

Referenced by iterativemethods::itermethod_gcr().

Here is the caller graph for this function:

subroutine itermethod_z_gcr::gcr_z ( integer  n,
type(matrix_t), pointer  A,
complex(kind=dp), dimension(n)  x,
complex(kind=dp), dimension(n)  b,
integer  Rounds,
real(kind=dp)  MinTolerance,
real(kind=dp)  MaxTolerance,
real(kind=dp)  Residual,
logical  Converged,
logical  Diverged,
integer  OutputInterval,
integer  m 
)

Referenced by iterativemethods::itermethod_z_gcr().

Here is the caller graph for this function:

subroutine itermethod_jacobi::jacobi ( integer  n,
type(matrix_t), pointer  A,
real(kind=dp), dimension(n)  x,
real(kind=dp), dimension(n)  b,
integer  Rounds,
real(kind=dp)  MinTolerance,
real(kind=dp)  MaxTolerance,
real(kind=dp)  Residual,
logical  Converged,
logical  Diverged,
integer  OutputInterval 
)

Referenced by iterativemethods::itermethod_jacobi(), and smoothers::mgsmooth().

Here is the caller graph for this function:

subroutine itermethod_bicgstabl::realbicgstabl ( integer  n,
type(matrix_t), pointer  A,
real(kind=dp), dimension(n)  x,
real(kind=dp), dimension(n)  b,
integer  MaxRounds,
real(kind=dp)  Tol,
real(kind=dp)  MaxTol,
logical  Converged,
logical  Diverged,
integer  OutputInterval,
integer  l,
integer, optional  StoppingCriterionType 
)

The subroutine has been written using as a starting point the work of D.R. Fokkema (subroutine zbistbl v1.1 1998). Dr. Fokkema has given the right to distribute the derived work under GPL and hence the original more conservative copyright notice of the subroutine has been removed accordingly.

References c_lpcond(), c_matvec(), and messages::fatal().

Referenced by iterativemethods::itermethod_bicgstabl().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine itermethod_richardson::richardson ( integer  n,
type(matrix_t), pointer  A,
real(kind=dp), dimension(n)  x,
real(kind=dp), dimension(n)  b,
integer  Rounds,
real(kind=dp)  MinTolerance,
real(kind=dp)  MaxTolerance,
real(kind=dp)  Residual,
logical  Converged,
logical  Diverged,
integer  OutputInterval 
)

Referenced by iterativemethods::itermethod_richardson().

Here is the caller graph for this function:

subroutine itermethod_sgs::sgs ( integer  n,
type(matrix_t), pointer  A,
real(kind=dp), dimension(n)  x,
real(kind=dp), dimension(n)  b,
integer  Rounds,
real(kind=dp)  MinTolerance,
real(kind=dp)  MaxTolerance,
real(kind=dp)  Residual,
logical  Converged,
logical  Diverged,
integer  OutputInterval,
real(kind=dp)  Omega 
)

Referenced by iterativemethods::itermethod_sgs(), and smoothers::mgsmooth().

Here is the caller graph for this function: