Hybrid ph-multigrid preconditioner.
|
| subroutine | phmg_init (this, coef, bclst, phmg_params) |
| |
| subroutine | phmg_init_from_components (this, coef, bclst, smoother_itrs, cheby_acc, crs_tamg_lvls, crs_tamg_itrs, crs_tamg_cheby_degree, pcrs_sched) |
| |
| subroutine | phmg_free (this) |
| |
| subroutine | phmg_solve (this, z, r, n) |
| |
| subroutine | phmg_update (this) |
| |
| subroutine | phmg_mg_cycle (this) |
| |
| subroutine | phmg_jacobi_smoother (z, r, w, mg, msh, ax, n, lvl) |
| | Wraps jacobi solve as a residual update relaxation method.
|
| |
| subroutine | phmg_resid_monitor (z, r, w, mg, msh, ax, lvl, typ) |
| |
| subroutine | print_phmg_info (nlvls, smoo_type, phmg) |
| |
◆ phmg_free()
◆ phmg_init()
| subroutine phmg::phmg_init |
( |
class(phmg_t), intent(inout), target |
this, |
|
|
type(coef_t), intent(in), target |
coef, |
|
|
type(bc_list_t), intent(inout), target |
bclst, |
|
|
type(json_file), intent(inout) |
phmg_params |
|
) |
| |
◆ phmg_init_from_components()
| subroutine phmg::phmg_init_from_components |
( |
class(phmg_t), intent(inout), target |
this, |
|
|
type(coef_t), intent(in), target |
coef, |
|
|
type(bc_list_t), intent(inout), target |
bclst, |
|
|
integer, intent(in) |
smoother_itrs, |
|
|
character(len=:), allocatable |
cheby_acc, |
|
|
integer, intent(in) |
crs_tamg_lvls, |
|
|
integer, intent(in) |
crs_tamg_itrs, |
|
|
integer, intent(in) |
crs_tamg_cheby_degree, |
|
|
integer, dimension(:), intent(in), allocatable |
pcrs_sched |
|
) |
| |
|
private |
Initialize Smoothers
Definition at line 153 of file phmg.f90.
◆ phmg_jacobi_smoother()
| subroutine phmg::phmg_jacobi_smoother |
( |
type(field_t), intent(inout) |
z, |
|
|
type(field_t), intent(inout) |
r, |
|
|
type(field_t), intent(inout) |
w, |
|
|
type(phmg_lvl_t) |
mg, |
|
|
type(mesh_t), intent(inout) |
msh, |
|
|
class(ax_t), intent(inout) |
ax, |
|
|
integer, intent(in) |
n, |
|
|
integer, intent(in) |
lvl |
|
) |
| |
|
private |
- Parameters
-
| z | solution vector (inout) |
| r | rhs vector |
| w | scratch work space vector |
| mg | phmg level from hierarchy |
| msh | mesh |
| Ax | matrix vector class object |
| n | vector length |
| lvl | not used |
Definition at line 486 of file phmg.f90.
◆ phmg_mg_cycle()
◆ phmg_resid_monitor()
◆ phmg_solve()
◆ phmg_update()
◆ print_phmg_info()