Elmer FEM solver
Elmer is an open source finite element software for multiphysical problems
|
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) |
subroutine itermethod_bicgstabl::c_lpcond | ( | real(kind=dp), dimension(*) | u, |
real(kind=dp), dimension(*) | v, | ||
integer, dimension(*) | ipar | ||
) |
subroutine itermethod_bicgstabl::c_matvec | ( | real(kind=dp), dimension(*) | u, |
real(kind=dp), dimension(*) | v, | ||
integer, dimension(*) | ipar | ||
) |
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().
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 | ||
) |
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 | ||
) |
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().
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().
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().
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().