|
FE-Project
|
module FElib / Multigrid / Smoother base More...
Data Types | |
| type | mgsmootherbase |
| Base type for multigrid smoother. More... | |
| type | mgsmootherbase2d |
| Derived type for 2D multigrid smoother. More... | |
| interface | mgsmootherbase2d_advance_itr_1step |
| type | mgsmootherbase3d |
| Derived type for 3D multigrid smoother. More... | |
| interface | mgsmootherbase3d_advance_itr_1step |
Functions/Subroutines | |
| subroutine, public | mgsmootherbase_init (this) |
| subroutine, public | mgsmootherbase_final (this) |
| subroutine, public | mgsmootherbase2d_init (this) |
| subroutine, public | mgsmootherbase2d_final (this) |
| subroutine, public | mgsmootherbase3d_init (this) |
| subroutine, public | mgsmootherbase3d_final (this) |
| subroutine, public | mgsmootherbase_put_residual_history (this, conv_flag, is_residual_check_step, res_l2, res_max) |
| Put residual history and evaluate whether convergence is achieved. This subroutine also updates internal counters. | |
| subroutine, public | mgsmootherbase_get_statistic_lc (res_l2_lc, res_max_lc, res_lc, lmesh, elem) |
| Get residual statistics on local mesh. | |
Variables | |
| integer, parameter, public | mgsmoother_pre_id = 1 |
| ID to represent pre-smoothing. | |
| integer, parameter, public | mgsmoother_post_id = 2 |
| ID to represent post-smoothing. | |
| integer, parameter, public | mgsmoother_default_num_smooth_ite_max = 10 |
| real(rp), parameter, public | mgsmoother_default_threshold_ratio_residual_l2 = 1.0E-3_RP |
| real(rp), parameter, public | mgsmoother_default_threshold_residual_l2 = 1.0E-3_RP |
| real(rp), parameter, public | mgsmoother_default_threshold_residual_max = 1.0E-3_RP |
module FElib / Multigrid / Smoother base
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase_init | ( | class(mgsmootherbase), intent(inout) | this | ) |
Definition at line 174 of file scale_multigrid_smoother_base.F90.
References mgsmoother_default_num_smooth_ite_max, mgsmoother_default_threshold_ratio_residual_l2, mgsmoother_default_threshold_residual_l2, and mgsmoother_default_threshold_residual_max.
Referenced by scale_multigrid_smoother_base::mgsmootherbase::get_current_residual_statistics(), mgsmootherbase2d_init(), and mgsmootherbase3d_init().
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase_final | ( | class(mgsmootherbase), intent(inout) | this | ) |
Definition at line 186 of file scale_multigrid_smoother_base.F90.
Referenced by scale_multigrid_smoother_base::mgsmootherbase::get_current_residual_statistics(), mgsmootherbase2d_final(), and mgsmootherbase3d_final().
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase2d_init | ( | class(mgsmootherbase2d), intent(inout) | this | ) |
Definition at line 324 of file scale_multigrid_smoother_base.F90.
References mgsmootherbase_init().
Referenced by scale_multigrid_smoother_base::mgsmootherbase2d::set_initial_residual().
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase2d_final | ( | class(mgsmootherbase2d), intent(inout) | this | ) |
Definition at line 333 of file scale_multigrid_smoother_base.F90.
References mgsmoother_pre_id, mgsmootherbase_final(), mgsmootherbase_get_statistic_lc(), and mgsmootherbase_put_residual_history().
Referenced by scale_multigrid_smoother_base::mgsmootherbase2d::set_initial_residual().
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase3d_init | ( | class(mgsmootherbase3d), intent(inout) | this | ) |
Definition at line 463 of file scale_multigrid_smoother_base.F90.
References mgsmootherbase_init().
Referenced by scale_multigrid_smoother_base::mgsmootherbase3d::set_initial_residual().
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase3d_final | ( | class(mgsmootherbase3d), intent(inout) | this | ) |
Definition at line 472 of file scale_multigrid_smoother_base.F90.
References mgsmoother_pre_id, mgsmootherbase_final(), mgsmootherbase_get_statistic_lc(), and mgsmootherbase_put_residual_history().
Referenced by scale_multigrid_smoother_base::mgsmootherbase3d::set_initial_residual().
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase_put_residual_history | ( | class(mgsmootherbase), intent(inout) | this, |
| logical, intent(out) | conv_flag, | ||
| logical, intent(in) | is_residual_check_step, | ||
| real(rp), intent(in) | res_l2, | ||
| real(rp), intent(in) | res_max ) |
Put residual history and evaluate whether convergence is achieved. This subroutine also updates internal counters.
Definition at line 602 of file scale_multigrid_smoother_base.F90.
Referenced by scale_multigrid_smoother_base::mgsmootherbase::get_current_residual_statistics(), mgsmootherbase2d_final(), and mgsmootherbase3d_final().
| subroutine, public scale_multigrid_smoother_base::mgsmootherbase_get_statistic_lc | ( | real(rp), intent(inout) | res_l2_lc, |
| real(rp), intent(inout) | res_max_lc, | ||
| real(rp), dimension(elem%np,lmesh%nea), intent(in) | res_lc, | ||
| class(localmeshbase), intent(in), target | lmesh, | ||
| class(elementbase), intent(in), target | elem ) |
Get residual statistics on local mesh.
Definition at line 632 of file scale_multigrid_smoother_base.F90.
Referenced by scale_multigrid_smoother_base::mgsmootherbase::get_current_residual_statistics(), mgsmootherbase2d_final(), and mgsmootherbase3d_final().
| integer, parameter, public scale_multigrid_smoother_base::mgsmoother_pre_id = 1 |
ID to represent pre-smoothing.
Definition at line 46 of file scale_multigrid_smoother_base.F90.
Referenced by mgsmootherbase2d_final(), mgsmootherbase3d_final(), scale_multigrid_solver_2d::multigridsolver2d_init(), and scale_multigrid_solver_3d::multigridsolver3d_init().
| integer, parameter, public scale_multigrid_smoother_base::mgsmoother_post_id = 2 |
ID to represent post-smoothing.
Definition at line 47 of file scale_multigrid_smoother_base.F90.
Referenced by scale_multigrid_solver_2d::multigridsolver2d_init(), and scale_multigrid_solver_3d::multigridsolver3d_init().
| integer, parameter, public scale_multigrid_smoother_base::mgsmoother_default_num_smooth_ite_max = 10 |
Definition at line 80 of file scale_multigrid_smoother_base.F90.
Referenced by mgsmootherbase_init().
| real(rp), parameter, public scale_multigrid_smoother_base::mgsmoother_default_threshold_ratio_residual_l2 = 1.0E-3_RP |
Definition at line 81 of file scale_multigrid_smoother_base.F90.
Referenced by mgsmootherbase_init().
| real(rp), parameter, public scale_multigrid_smoother_base::mgsmoother_default_threshold_residual_l2 = 1.0E-3_RP |
Definition at line 82 of file scale_multigrid_smoother_base.F90.
Referenced by mgsmootherbase_init().
| real(rp), parameter, public scale_multigrid_smoother_base::mgsmoother_default_threshold_residual_max = 1.0E-3_RP |
Definition at line 83 of file scale_multigrid_smoother_base.F90.
Referenced by mgsmootherbase_init().