Krylov preconditioner.
More...
|
subroutine | hsmg_init (this, msh, Xh, coef, dof, gs_h, bclst, crs_pctype) |
|
subroutine | hsmg_set_h (this) |
|
subroutine | hsmg_fill_grid (dof, gs_h, Xh, coef, bclst, schwarz, e, grids, l) |
|
subroutine | hsmg_free (this) |
|
subroutine | hsmg_solve (this, z, r, n) |
| The h1mg preconditioner from Nek5000. More...
|
|
◆ hsmg_fill_grid()
subroutine hsmg::hsmg_fill_grid |
( |
type(dofmap_t), intent(in), target |
dof, |
|
|
type(gs_t), intent(in), target |
gs_h, |
|
|
type(space_t), intent(in), target |
Xh, |
|
|
type(coef_t), intent(in), target |
coef, |
|
|
type(bc_list_t), intent(in), target |
bclst, |
|
|
type(schwarz_t), intent(in), target |
schwarz, |
|
|
type(field_t), intent(in), target |
e, |
|
|
type(multigrid_t), dimension(l), intent(inout) |
grids, |
|
|
integer, intent(in) |
l |
|
) |
| |
|
private |
◆ hsmg_free()
subroutine hsmg::hsmg_free |
( |
class(hsmg_t), intent(inout) |
this | ) |
|
|
private |
◆ hsmg_init()
subroutine hsmg::hsmg_init |
( |
class(hsmg_t), intent(inout), target |
this, |
|
|
type(mesh_t), intent(inout), target |
msh, |
|
|
type(space_t), intent(inout), target |
Xh, |
|
|
type(coef_t), intent(inout), target |
coef, |
|
|
type(dofmap_t), intent(inout), target |
dof, |
|
|
type(gs_t), intent(inout), target |
gs_h, |
|
|
type(bc_list_t), intent(inout), target |
bclst, |
|
|
character(len=*), optional |
crs_pctype |
|
) |
| |
- Note
- I do not think we actually use the same grids as they do in the original!
Definition at line 137 of file pc_hsmg.f90.
◆ hsmg_set_h()
subroutine hsmg::hsmg_set_h |
( |
class(hsmg_t), intent(inout) |
this | ) |
|
|
private |
◆ hsmg_solve()
subroutine hsmg::hsmg_solve |
( |
class(hsmg_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
z, |
|
|
real(kind=rp), dimension(n), intent(inout) |
r, |
|
|
integer, intent(in) |
n |
|
) |
| |
|
private |
The h1mg preconditioner from Nek5000.
Definition at line 356 of file pc_hsmg.f90.