Neko
0.9.0
A portable framework for high-order spectral element flow simulations
|
Public Member Functions | |
procedure, pass(this) | init => fluid_pnpn_init |
procedure, pass(this) | free => fluid_pnpn_free |
procedure, pass(this) | step => fluid_pnpn_step |
procedure, pass(this) | restart => fluid_pnpn_restart |
Public Attributes | |
type(field_t) | p_res |
type(field_t) | u_res |
type(field_t) | v_res |
type(field_t) | w_res |
type(field_t) | dp |
type(field_t) | du |
type(field_t) | dv |
type(field_t) | dw |
class(ax_t), allocatable | ax_vel |
class(ax_t), allocatable | ax_prs |
type(projection_t) | proj_prs |
type(projection_t) | proj_u |
type(projection_t) | proj_v |
type(projection_t) | proj_w |
type(facet_normal_t) | bc_prs_surface |
Surface term in pressure rhs. More... | |
type(facet_normal_t) | bc_sym_surface |
Surface term in pressure rhs. More... | |
type(dirichlet_t) | bc_vel_res |
Dirichlet condition vel. res. More... | |
type(dirichlet_t) | bc_field_dirichlet_p |
Dirichlet condition vel. res. More... | |
type(dirichlet_t) | bc_field_dirichlet_u |
Dirichlet condition vel. res. More... | |
type(dirichlet_t) | bc_field_dirichlet_v |
Dirichlet condition vel. res. More... | |
type(dirichlet_t) | bc_field_dirichlet_w |
Dirichlet condition vel. res. More... | |
type(non_normal_t) | bc_vel_res_non_normal |
Dirichlet condition vel. res. More... | |
type(bc_list_t) | bclst_vel_res |
type(bc_list_t) | bclst_du |
type(bc_list_t) | bclst_dv |
type(bc_list_t) | bclst_dw |
type(bc_list_t) | bclst_dp |
class(advection_t), allocatable | adv |
logical | oifs |
type(field_t) | abx1 |
type(field_t) | aby1 |
type(field_t) | abz1 |
type(field_t) | abx2 |
type(field_t) | aby2 |
type(field_t) | abz2 |
type(field_t) | advx |
type(field_t) | advy |
type(field_t) | advz |
class(pnpn_prs_res_t), allocatable | prs_res |
Pressure residual. More... | |
class(pnpn_vel_res_t), allocatable | vel_res |
Velocity residual. More... | |
class(rhs_maker_sumab_t), allocatable | sumab |
Summation of AB/BDF contributions. More... | |
class(rhs_maker_ext_t), allocatable | makeabf |
Contributions to kth order extrapolation scheme. More... | |
class(rhs_maker_bdf_t), allocatable | makebdf |
Contributions to F from lagged BD terms. More... | |
class(rhs_maker_oifs_t), allocatable | makeoifs |
Contributions to the RHS from the OIFS method. More... | |
type(fluid_volflow_t) | vol_flow |
Adjust flow volume. More... | |
Private Member Functions | |
procedure, pass(this) | fluid_scheme_init_all |
Constructor for the base type. More... | |
procedure, pass(this) | fluid_scheme_init_common |
generic | scheme_init => fluid_scheme_init_all, fluid_scheme_init_common |
procedure, pass(this) | scheme_free => fluid_scheme_free |
Destructor for the base type. More... | |
procedure, pass(this) | validate => fluid_scheme_validate |
Validate that all components are properly allocated. More... | |
procedure, pass(this) | bc_apply_vel => fluid_scheme_bc_apply_vel |
Apply pressure boundary conditions. More... | |
procedure, pass(this) | bc_apply_prs => fluid_scheme_bc_apply_prs |
Apply velocity boundary conditions. More... | |
procedure, pass(this) | set_usr_inflow => fluid_scheme_set_usr_inflow |
Set the user inflow procedure. More... | |
procedure, pass(this) | compute_cfl => fluid_compute_cfl |
Compute the CFL number. More... | |
procedure, pass(this) | set_material_properties => fluid_scheme_set_material_properties |
Set rho and mu. More... | |
procedure, pass(this), private | set_bc_type_output => fluid_scheme_set_bc_type_output |
procedure, pass(this) | update_material_properties => fluid_scheme_update_material_properties |
Update variable material properties. More... | |
Private Attributes | |
type(field_t), pointer | u => null() |
x-component of Velocity More... | |
type(field_t), pointer | v => null() |
y-component of Velocity More... | |
type(field_t), pointer | w => null() |
z-component of Velocity More... | |
type(field_t), pointer | p => null() |
Pressure. More... | |
type(field_series_t) | ulag |
type(field_series_t) | vlag |
type(field_series_t) | wlag |
fluid field (lag) More... | |
type(space_t) | xh |
Function space \( X_h \). More... | |
type(dofmap_t) | dm_xh |
Dofmap associated with \( X_h \). More... | |
type(gs_t) | gs_xh |
Gather-scatter associated with \( X_h \). More... | |
type(coef_t) | c_xh |
Coefficients associated with \( X_h \). More... | |
type(fluid_source_term_t) | source_term |
The source term for the momentum equation. More... | |
type(field_t), pointer | f_x => null() |
X-component of the right-hand side. More... | |
type(field_t), pointer | f_y => null() |
Y-component of the right-hand side. More... | |
type(field_t), pointer | f_z => null() |
Z-component of the right-hand side. More... | |
class(ksp_t), allocatable | ksp_vel |
Krylov solver for velocity. More... | |
class(ksp_t), allocatable | ksp_prs |
Krylov solver for pressure. More... | |
class(pc_t), allocatable | pc_vel |
Velocity Preconditioner. More... | |
class(pc_t), allocatable | pc_prs |
Velocity Preconditioner. More... | |
integer | vel_projection_dim |
Size of the projection space for ksp_vel. More... | |
integer | pr_projection_dim |
Size of the projection space for ksp_pr. More... | |
integer | vel_projection_activ_step |
Steps to activate projection for ksp_vel. More... | |
integer | pr_projection_activ_step |
Steps to activate projection for ksp_pr. More... | |
type(no_slip_wall_t) | bc_wall |
No-slip wall for velocity. More... | |
class(bc_t), allocatable | bc_inflow |
Dirichlet inflow for velocity. More... | |
type(wall_model_bc_t) | bc_wallmodel |
Wall model boundary condition. More... | |
logical | if_gradient_jump_penalty |
Gradient jump panelty. More... | |
type(gradient_jump_penalty_t) | gradient_jump_penalty_u |
type(gradient_jump_penalty_t) | gradient_jump_penalty_v |
type(gradient_jump_penalty_t) | gradient_jump_penalty_w |
type(field_dirichlet_vector_t) | user_field_bc_vel |
User-computed Dirichlet velocity condition. More... | |
type(field_dirichlet_t) | user_field_bc_prs |
User-computed Dirichlet pressure condition. More... | |
type(dirichlet_t) | bc_prs |
Dirichlet pressure condition. More... | |
type(dong_outflow_t) | bc_dong |
Dong outflow condition. More... | |
type(symmetry_t) | bc_sym |
Symmetry plane for velocity. More... | |
type(shear_stress_t) | bc_sh |
Symmetry plane for velocity. More... | |
type(bc_list_t) | bclst_vel |
List of velocity conditions. More... | |
type(bc_list_t) | bclst_vel_neumann |
List of neumann velocity conditions. More... | |
type(bc_list_t) | bclst_prs |
List of pressure conditions. More... | |
type(field_t) | bdry |
Boundary markings. More... | |
type(json_file), pointer | params |
Parameters. More... | |
type(mesh_t), pointer | msh => null() |
Mesh. More... | |
type(chkp_t) | chkp |
Checkpoint. More... | |
type(mean_flow_t) | mean |
Mean flow field. More... | |
type(fluid_stats_t) | stats |
Fluid statistics. More... | |
type(mean_sqr_flow_t) | mean_sqr |
Mean squared flow field. More... | |
logical | forced_flow_rate = .false. |
Is the flow rate forced? More... | |
logical | freeze = .false. |
Freeze velocity at initial condition? More... | |
real(kind=rp) | mu |
Dynamic viscosity. More... | |
type(field_t) | mu_field |
The variable mu field. More... | |
character(len=:), allocatable | nut_field_name |
The turbulent kinematic viscosity field name. More... | |
logical | variable_material_properties = .false. |
Is mu varying in time? Currently only due to LES models. More... | |
real(kind=rp) | rho |
Density. More... | |
type(field_t) | rho_field |
The variable density field. More... | |
type(scratch_registry_t) | scratch |
Manager for temporary fields. More... | |
character(len=neko_msh_max_zlbl_len), dimension(:), allocatable | bc_labels |
Boundary condition labels (if any) More... | |
Definition at line 74 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 170 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 168 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 174 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 160 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 161 of file fluid_scheme.f90.
procedure, pass(this) fluid_pnpn::fluid_pnpn_t::free |
Definition at line 137 of file fluid_pnpn.f90.
procedure, pass(this) fluid_pnpn::fluid_pnpn_t::init |
Definition at line 136 of file fluid_pnpn.f90.
procedure, pass(this) fluid_pnpn::fluid_pnpn_t::restart |
Definition at line 139 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 164 of file fluid_scheme.f90.
|
privateinherited |
|
privateinherited |
Definition at line 186 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 176 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 172 of file fluid_scheme.f90.
procedure, pass(this) fluid_pnpn::fluid_pnpn_t::step |
Definition at line 138 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 189 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 166 of file fluid_scheme.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::abx1 |
Definition at line 109 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::abx2 |
Definition at line 110 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::aby1 |
Definition at line 109 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::aby2 |
Definition at line 110 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::abz1 |
Definition at line 109 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::abz2 |
Definition at line 110 of file fluid_pnpn.f90.
class(advection_t), allocatable fluid_pnpn::fluid_pnpn_t::adv |
Definition at line 103 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::advx |
Definition at line 112 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::advy |
Definition at line 112 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::advz |
Definition at line 112 of file fluid_pnpn.f90.
class(ax_t), allocatable fluid_pnpn::fluid_pnpn_t::ax_prs |
Definition at line 82 of file fluid_pnpn.f90.
class(ax_t), allocatable fluid_pnpn::fluid_pnpn_t::ax_vel |
Definition at line 80 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 128 of file fluid_scheme.f90.
type(dirichlet_t) fluid_pnpn::fluid_pnpn_t::bc_field_dirichlet_p |
Definition at line 92 of file fluid_pnpn.f90.
type(dirichlet_t) fluid_pnpn::fluid_pnpn_t::bc_field_dirichlet_u |
Definition at line 93 of file fluid_pnpn.f90.
type(dirichlet_t) fluid_pnpn::fluid_pnpn_t::bc_field_dirichlet_v |
Definition at line 94 of file fluid_pnpn.f90.
type(dirichlet_t) fluid_pnpn::fluid_pnpn_t::bc_field_dirichlet_w |
Definition at line 95 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 116 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 157 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 127 of file fluid_scheme.f90.
type(facet_normal_t) fluid_pnpn::fluid_pnpn_t::bc_prs_surface |
Definition at line 89 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 130 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 129 of file fluid_scheme.f90.
type(facet_normal_t) fluid_pnpn::fluid_pnpn_t::bc_sym_surface |
Definition at line 90 of file fluid_pnpn.f90.
type(dirichlet_t) fluid_pnpn::fluid_pnpn_t::bc_vel_res |
Definition at line 91 of file fluid_pnpn.f90.
type(non_normal_t) fluid_pnpn::fluid_pnpn_t::bc_vel_res_non_normal |
Definition at line 96 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 115 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 117 of file fluid_scheme.f90.
type(bc_list_t) fluid_pnpn::fluid_pnpn_t::bclst_dp |
Definition at line 101 of file fluid_pnpn.f90.
type(bc_list_t) fluid_pnpn::fluid_pnpn_t::bclst_du |
Definition at line 98 of file fluid_pnpn.f90.
type(bc_list_t) fluid_pnpn::fluid_pnpn_t::bclst_dv |
Definition at line 99 of file fluid_pnpn.f90.
type(bc_list_t) fluid_pnpn::fluid_pnpn_t::bclst_dw |
Definition at line 100 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 133 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 131 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 132 of file fluid_scheme.f90.
type(bc_list_t) fluid_pnpn::fluid_pnpn_t::bclst_vel_res |
Definition at line 97 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 134 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 98 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 137 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 96 of file fluid_scheme.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::dp |
Definition at line 77 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::du |
Definition at line 77 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::dv |
Definition at line 77 of file fluid_pnpn.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::dw |
Definition at line 77 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 102 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 104 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 106 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 141 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 142 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 120 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 121 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 122 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 97 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 119 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 108 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 107 of file fluid_scheme.f90.
class(rhs_maker_ext_t), allocatable fluid_pnpn::fluid_pnpn_t::makeabf |
Definition at line 124 of file fluid_pnpn.f90.
class(rhs_maker_bdf_t), allocatable fluid_pnpn::fluid_pnpn_t::makebdf |
Definition at line 127 of file fluid_pnpn.f90.
class(rhs_maker_oifs_t), allocatable fluid_pnpn::fluid_pnpn_t::makeoifs |
Definition at line 130 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 138 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 140 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 136 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 144 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 146 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 148 of file fluid_scheme.f90.
logical fluid_pnpn::fluid_pnpn_t::oifs |
Definition at line 106 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 93 of file fluid_scheme.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::p_res |
Definition at line 75 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 135 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 110 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 109 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 114 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 112 of file fluid_scheme.f90.
type(projection_t) fluid_pnpn::fluid_pnpn_t::proj_prs |
Definition at line 84 of file fluid_pnpn.f90.
type(projection_t) fluid_pnpn::fluid_pnpn_t::proj_u |
Definition at line 85 of file fluid_pnpn.f90.
type(projection_t) fluid_pnpn::fluid_pnpn_t::proj_v |
Definition at line 86 of file fluid_pnpn.f90.
type(projection_t) fluid_pnpn::fluid_pnpn_t::proj_w |
Definition at line 87 of file fluid_pnpn.f90.
class(pnpn_prs_res_t), allocatable fluid_pnpn::fluid_pnpn_t::prs_res |
Definition at line 115 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 152 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 154 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 155 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 100 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 139 of file fluid_scheme.f90.
class(rhs_maker_sumab_t), allocatable fluid_pnpn::fluid_pnpn_t::sumab |
Definition at line 121 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 90 of file fluid_scheme.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::u_res |
Definition at line 75 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 94 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 126 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 125 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 91 of file fluid_scheme.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::v_res |
Definition at line 75 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 150 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 113 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 111 of file fluid_scheme.f90.
class(pnpn_vel_res_t), allocatable fluid_pnpn::fluid_pnpn_t::vel_res |
Definition at line 118 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 94 of file fluid_scheme.f90.
type(fluid_volflow_t) fluid_pnpn::fluid_pnpn_t::vol_flow |
Definition at line 133 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 92 of file fluid_scheme.f90.
type(field_t) fluid_pnpn::fluid_pnpn_t::w_res |
Definition at line 75 of file fluid_pnpn.f90.
|
privateinherited |
Definition at line 94 of file fluid_scheme.f90.
|
privateinherited |
Definition at line 95 of file fluid_scheme.f90.