Neko  0.8.1
A portable framework for high-order spectral element flow simulations
hsmg::hsmg_t Type Reference
Inheritance diagram for hsmg::hsmg_t:
Collaboration diagram for hsmg::hsmg_t:

Public Member Functions

procedure, pass(this) init => hsmg_init
 
procedure, pass(this) free => hsmg_free
 
procedure, pass(this) solve => hsmg_solve
 
procedure, pass(this) update => hsmg_set_h
 

Public Attributes

type(mesh_t), pointer msh
 
integer nlvls
 Number of levels in the multigrid. More...
 
type(multigrid_t), dimension(:), allocatable grids
 array for multigrids More...
 
type(gs_tgs_crs
 
type(gs_tgs_mg
 gather scatter for lower levels More...
 
type(space_txh_crs
 
type(space_txh_mg
 spaces for lower levels More...
 
type(dofmap_tdm_crs
 
type(dofmap_tdm_mg
 
type(coef_tc_crs
 
type(coef_tc_mg
 
type(dirichlet_tbc_crs
 
type(dirichlet_tbc_mg
 
type(dirichlet_tbc_reg
 
type(bc_list_tbclst_crs
 
type(bc_list_tbclst_mg
 
type(bc_list_tbclst_reg
 
type(schwarz_tschwarz
 
type(schwarz_tschwarz_mg
 
type(schwarz_tschwarz_crs
 Schwarz decompostions. More...
 
type(field_te
 
type(field_te_mg
 
type(field_te_crs
 Solve fields. More...
 
type(field_twf
 Work fields. More...
 
class(ksp_t), allocatable crs_solver
 Solver for course problem. More...
 
integer niter = 10
 Number of iter of crs sovlve. More...
 
class(pc_t), allocatable pc_crs
 Some basic precon for crs. More...
 
class(ax_t), allocatable ax
 Matrix for crs solve. More...
 
real(kind=rp), dimension(:), allocatable r
 Residual work array. More...
 
type(interpolator_tinterp_fine_mid
 
type(interpolator_tinterp_mid_crs
 
real(kind=rp), dimension(:), allocatable w
 work array More...
 
type(c_ptr) w_d = C_NULL_PTR
 
type(c_ptr) r_d = C_NULL_PTR
 
type(c_ptr) hsmg_event
 
type(c_ptr) gs_event
 

Detailed Description

Definition at line 102 of file pc_hsmg.f90.

Member Function/Subroutine Documentation

◆ free()

procedure, pass(this) hsmg::hsmg_t::free

Definition at line 129 of file pc_hsmg.f90.

◆ init()

procedure, pass(this) hsmg::hsmg_t::init

Definition at line 128 of file pc_hsmg.f90.

◆ solve()

procedure, pass(this) hsmg::hsmg_t::solve

Definition at line 130 of file pc_hsmg.f90.

◆ update()

procedure, pass(this) hsmg::hsmg_t::update

Definition at line 131 of file pc_hsmg.f90.

Member Data Documentation

◆ ax

class(ax_t), allocatable hsmg::hsmg_t::ax

Matrix for crs solve.

Definition at line 118 of file pc_hsmg.f90.

◆ bc_crs

type(dirichlet_t) hsmg::hsmg_t::bc_crs

Definition at line 110 of file pc_hsmg.f90.

◆ bc_mg

type(dirichlet_t) hsmg::hsmg_t::bc_mg

Definition at line 110 of file pc_hsmg.f90.

◆ bc_reg

type(dirichlet_t) hsmg::hsmg_t::bc_reg

Definition at line 110 of file pc_hsmg.f90.

◆ bclst_crs

type(bc_list_t) hsmg::hsmg_t::bclst_crs

Definition at line 111 of file pc_hsmg.f90.

◆ bclst_mg

type(bc_list_t) hsmg::hsmg_t::bclst_mg

Definition at line 111 of file pc_hsmg.f90.

◆ bclst_reg

type(bc_list_t) hsmg::hsmg_t::bclst_reg

Definition at line 111 of file pc_hsmg.f90.

◆ c_crs

type(coef_t) hsmg::hsmg_t::c_crs

Definition at line 109 of file pc_hsmg.f90.

◆ c_mg

type(coef_t) hsmg::hsmg_t::c_mg

Definition at line 109 of file pc_hsmg.f90.

◆ crs_solver

class(ksp_t), allocatable hsmg::hsmg_t::crs_solver

Solver for course problem.

Definition at line 115 of file pc_hsmg.f90.

◆ dm_crs

type(dofmap_t) hsmg::hsmg_t::dm_crs

Definition at line 108 of file pc_hsmg.f90.

◆ dm_mg

type(dofmap_t) hsmg::hsmg_t::dm_mg

Definition at line 108 of file pc_hsmg.f90.

◆ e

type(field_t) hsmg::hsmg_t::e

Definition at line 113 of file pc_hsmg.f90.

◆ e_crs

type(field_t) hsmg::hsmg_t::e_crs

Solve fields.

Definition at line 113 of file pc_hsmg.f90.

◆ e_mg

type(field_t) hsmg::hsmg_t::e_mg

Definition at line 113 of file pc_hsmg.f90.

◆ grids

type(multigrid_t), dimension(:), allocatable hsmg::hsmg_t::grids

array for multigrids

Definition at line 105 of file pc_hsmg.f90.

◆ gs_crs

type(gs_t) hsmg::hsmg_t::gs_crs

Definition at line 106 of file pc_hsmg.f90.

◆ gs_event

type(c_ptr) hsmg::hsmg_t::gs_event

Definition at line 126 of file pc_hsmg.f90.

◆ gs_mg

type(gs_t) hsmg::hsmg_t::gs_mg

gather scatter for lower levels

Definition at line 106 of file pc_hsmg.f90.

◆ hsmg_event

type(c_ptr) hsmg::hsmg_t::hsmg_event

Definition at line 125 of file pc_hsmg.f90.

◆ interp_fine_mid

type(interpolator_t) hsmg::hsmg_t::interp_fine_mid

Definition at line 120 of file pc_hsmg.f90.

◆ interp_mid_crs

type(interpolator_t) hsmg::hsmg_t::interp_mid_crs

Definition at line 121 of file pc_hsmg.f90.

◆ msh

type(mesh_t), pointer hsmg::hsmg_t::msh

Definition at line 103 of file pc_hsmg.f90.

◆ niter

integer hsmg::hsmg_t::niter = 10

Number of iter of crs sovlve.

Definition at line 116 of file pc_hsmg.f90.

◆ nlvls

integer hsmg::hsmg_t::nlvls

Number of levels in the multigrid.

Definition at line 104 of file pc_hsmg.f90.

◆ pc_crs

class(pc_t), allocatable hsmg::hsmg_t::pc_crs

Some basic precon for crs.

Definition at line 117 of file pc_hsmg.f90.

◆ r

real(kind=rp), dimension(:), allocatable hsmg::hsmg_t::r

Residual work array.

Definition at line 119 of file pc_hsmg.f90.

◆ r_d

type(c_ptr) hsmg::hsmg_t::r_d = C_NULL_PTR

Definition at line 124 of file pc_hsmg.f90.

◆ schwarz

type(schwarz_t) hsmg::hsmg_t::schwarz

Definition at line 112 of file pc_hsmg.f90.

◆ schwarz_crs

type(schwarz_t) hsmg::hsmg_t::schwarz_crs

Schwarz decompostions.

Definition at line 112 of file pc_hsmg.f90.

◆ schwarz_mg

type(schwarz_t) hsmg::hsmg_t::schwarz_mg

Definition at line 112 of file pc_hsmg.f90.

◆ w

real(kind=rp), dimension(:), allocatable hsmg::hsmg_t::w

work array

Definition at line 122 of file pc_hsmg.f90.

◆ w_d

type(c_ptr) hsmg::hsmg_t::w_d = C_NULL_PTR

Definition at line 123 of file pc_hsmg.f90.

◆ wf

type(field_t) hsmg::hsmg_t::wf

Work fields.

Definition at line 114 of file pc_hsmg.f90.

◆ xh_crs

type(space_t) hsmg::hsmg_t::xh_crs

Definition at line 107 of file pc_hsmg.f90.

◆ xh_mg

type(space_t) hsmg::hsmg_t::xh_mg

spaces for lower levels

Definition at line 107 of file pc_hsmg.f90.


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