Neko  0.9.0
A portable framework for high-order spectral element flow simulations
gmres::gmres_t Type Reference

Standard preconditioned generalized minimal residual method. More...

Inheritance diagram for gmres::gmres_t:
Collaboration diagram for gmres::gmres_t:

Public Member Functions

procedure, pass(this) init => gmres_init
 
procedure, pass(this) free => gmres_free
 
procedure, pass(this) solve => gmres_solve
 
procedure, pass(this) solve_coupled => gmres_solve_coupled
 
procedure, pass(this) ksp_init => krylov_init
 Base type constructor. More...
 
procedure, pass(this) ksp_free => krylov_free
 Base type destructor. More...
 
procedure, pass(this) set_pc => krylov_set_pc
 Set preconditioner. More...
 
procedure, pass(this) monitor_start => krylov_monitor_start
 Monitor start. More...
 
procedure, pass(this) monitor_stop => krylov_monitor_stop
 Monitor stop. More...
 
procedure, pass(this) monitor_iter => krylov_monitor_iter
 Monitor iteration. More...
 

Public Attributes

integer lgmres
 
real(kind=rp), dimension(:), allocatable w
 
real(kind=rp), dimension(:), allocatable r
 
real(kind=rp), dimension(:,:), allocatable z
 
real(kind=rp), dimension(:,:), allocatable v
 
real(kind=xp), dimension(:,:), allocatable h
 reduction variables, extra prec More...
 
real(kind=xp), dimension(:), allocatable s
 
real(kind=xp), dimension(:), allocatable gam
 
real(kind=xp), dimension(:), allocatable c
 
class(pc_t), pointer m => null()
 Preconditioner. More...
 
real(kind=rp) rel_tol
 Relative tolerance. More...
 
real(kind=rp) abs_tol
 Absolute tolerance. More...
 
integer max_iter
 Maximum number of iterations. More...
 
class(pc_t), allocatable m_ident
 Internal preconditioner (Identity) More...
 
logical monitor
 Turn on/off monitoring. More...
 

Detailed Description

Definition at line 49 of file gmres.f90.

Member Function/Subroutine Documentation

◆ free()

procedure, pass(this) gmres::gmres_t::free

Definition at line 62 of file gmres.f90.

◆ init()

procedure, pass(this) gmres::gmres_t::init

Definition at line 61 of file gmres.f90.

◆ ksp_free()

procedure, pass(this) krylov::ksp_t::ksp_free
inherited

Definition at line 77 of file krylov.f90.

◆ ksp_init()

procedure, pass(this) krylov::ksp_t::ksp_init
inherited

Definition at line 75 of file krylov.f90.

◆ monitor_iter()

procedure, pass(this) krylov::ksp_t::monitor_iter
inherited

Definition at line 89 of file krylov.f90.

◆ monitor_start()

procedure, pass(this) krylov::ksp_t::monitor_start
inherited

Definition at line 85 of file krylov.f90.

◆ monitor_stop()

procedure, pass(this) krylov::ksp_t::monitor_stop
inherited

Definition at line 87 of file krylov.f90.

◆ set_pc()

procedure, pass(this) krylov::ksp_t::set_pc
inherited

Definition at line 79 of file krylov.f90.

◆ solve()

procedure, pass(this) gmres::gmres_t::solve

Definition at line 63 of file gmres.f90.

◆ solve_coupled()

procedure, pass(this) gmres::gmres_t::solve_coupled

Definition at line 64 of file gmres.f90.

Member Data Documentation

◆ abs_tol

real(kind=rp) krylov::ksp_t::abs_tol
inherited

Definition at line 69 of file krylov.f90.

◆ c

real(kind=xp), dimension(:), allocatable gmres::gmres_t::c

Definition at line 59 of file gmres.f90.

◆ gam

real(kind=xp), dimension(:), allocatable gmres::gmres_t::gam

Definition at line 58 of file gmres.f90.

◆ h

real(kind=xp), dimension(:,:), allocatable gmres::gmres_t::h

Definition at line 56 of file gmres.f90.

◆ lgmres

integer gmres::gmres_t::lgmres

Definition at line 50 of file gmres.f90.

◆ m

class(pc_t), pointer krylov::ksp_t::m => null()
inherited

Definition at line 67 of file krylov.f90.

◆ m_ident

class(pc_t), allocatable krylov::ksp_t::m_ident
inherited

Definition at line 71 of file krylov.f90.

◆ max_iter

integer krylov::ksp_t::max_iter
inherited

Definition at line 70 of file krylov.f90.

◆ monitor

logical krylov::ksp_t::monitor
inherited

Definition at line 72 of file krylov.f90.

◆ r

real(kind=rp), dimension(:), allocatable gmres::gmres_t::r

Definition at line 52 of file gmres.f90.

◆ rel_tol

real(kind=rp) krylov::ksp_t::rel_tol
inherited

Definition at line 68 of file krylov.f90.

◆ s

real(kind=xp), dimension(:), allocatable gmres::gmres_t::s

Definition at line 57 of file gmres.f90.

◆ v

real(kind=rp), dimension(:,:), allocatable gmres::gmres_t::v

Definition at line 54 of file gmres.f90.

◆ w

real(kind=rp), dimension(:), allocatable gmres::gmres_t::w

Definition at line 51 of file gmres.f90.

◆ z

real(kind=rp), dimension(:,:), allocatable gmres::gmres_t::z

Definition at line 53 of file gmres.f90.


The documentation for this type was generated from the following file: