Neko
0.8.1
A portable framework for high-order spectral element flow simulations
|
Base type of all fluid formulations. More...
Public Member Functions | |
procedure, pass(this) | fluid_scheme_init_all |
procedure, pass(this) | fluid_scheme_init_uvw |
procedure, pass(this) | scheme_free => fluid_scheme_free |
procedure, pass(this) | validate => fluid_scheme_validate |
procedure, pass(this) | bc_apply_vel => fluid_scheme_bc_apply_vel |
procedure, pass(this) | bc_apply_prs => fluid_scheme_bc_apply_prs |
procedure, pass(this) | set_usr_inflow => fluid_scheme_set_usr_inflow |
procedure, pass(this) | compute_cfl => fluid_compute_cfl |
procedure(fluid_scheme_init_intrf), deferred, pass | init |
procedure(fluid_scheme_free_intrf), deferred, pass | free |
procedure(fluid_scheme_step_intrf), deferred, pass | step |
procedure(fluid_scheme_restart_intrf), deferred, pass | restart |
generic | scheme_init => fluid_scheme_init_all, fluid_scheme_init_uvw |
Public 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(inflow_t), allocatable | bc_inflow |
Dirichlet inflow for velocity. More... | |
type(field_dirichlet_vector_t) | bc_field_vel |
Field Dirichlet velocity condition. More... | |
type(field_dirichlet_t) | bc_field_prs |
Field Dirichlet pressure condition. More... | |
procedure(field_dirichlet_update), pointer, nopass | dirichlet_update_ => null() |
Pointer to user_dirichlet_update to be called in fluid_scheme_step. More... | |
type(bc_list_t) | field_dirichlet_bcs |
List of BC objects to pass to user_dirichlet_update. More... | |
type(field_list_t) | field_dirichlet_fields |
List of fields to pass to user_dirichlet_update. 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(bc_list_t) | bclst_vel |
List of 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), pointer | mu => null() |
Dynamic viscosity. More... | |
real(kind=rp), pointer | rho => null() |
Density. 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... | |
Base type of all fluid formulations.
Definition at line 82 of file fluid_scheme.f90.
procedure, pass(this) fluid_scheme::fluid_scheme_t::bc_apply_prs |
Definition at line 146 of file fluid_scheme.f90.
procedure, pass(this) fluid_scheme::fluid_scheme_t::bc_apply_vel |
Definition at line 145 of file fluid_scheme.f90.
procedure, pass(this) fluid_scheme::fluid_scheme_t::compute_cfl |
Definition at line 148 of file fluid_scheme.f90.
procedure, pass(this) fluid_scheme::fluid_scheme_t::fluid_scheme_init_all |
Definition at line 141 of file fluid_scheme.f90.
procedure, pass(this) fluid_scheme::fluid_scheme_t::fluid_scheme_init_uvw |
Definition at line 142 of file fluid_scheme.f90.
procedure(fluid_scheme_free_intrf), deferred, pass fluid_scheme::fluid_scheme_t::free |
Definition at line 150 of file fluid_scheme.f90.
procedure(fluid_scheme_init_intrf), deferred, pass fluid_scheme::fluid_scheme_t::init |
Definition at line 149 of file fluid_scheme.f90.
procedure(fluid_scheme_restart_intrf), deferred, pass fluid_scheme::fluid_scheme_t::restart |
Definition at line 152 of file fluid_scheme.f90.
procedure, pass(this) fluid_scheme::fluid_scheme_t::scheme_free |
Definition at line 143 of file fluid_scheme.f90.
generic fluid_scheme::fluid_scheme_t::scheme_init |
procedure, pass(this) fluid_scheme::fluid_scheme_t::set_usr_inflow |
Definition at line 147 of file fluid_scheme.f90.
procedure(fluid_scheme_step_intrf), deferred, pass fluid_scheme::fluid_scheme_t::step |
Definition at line 151 of file fluid_scheme.f90.
procedure, pass(this) fluid_scheme::fluid_scheme_t::validate |
Definition at line 144 of file fluid_scheme.f90.
type(dong_outflow_t) fluid_scheme::fluid_scheme_t::bc_dong |
Dong outflow condition.
Definition at line 120 of file fluid_scheme.f90.
type(field_dirichlet_t) fluid_scheme::fluid_scheme_t::bc_field_prs |
Field Dirichlet pressure condition.
Definition at line 113 of file fluid_scheme.f90.
type(field_dirichlet_vector_t) fluid_scheme::fluid_scheme_t::bc_field_vel |
Field Dirichlet velocity condition.
Definition at line 112 of file fluid_scheme.f90.
class(inflow_t), allocatable fluid_scheme::fluid_scheme_t::bc_inflow |
Dirichlet inflow for velocity.
Definition at line 109 of file fluid_scheme.f90.
character(len=neko_msh_max_zlbl_len), dimension(:), allocatable fluid_scheme::fluid_scheme_t::bc_labels |
Boundary condition labels (if any)
Definition at line 139 of file fluid_scheme.f90.
type(dirichlet_t) fluid_scheme::fluid_scheme_t::bc_prs |
Dirichlet pressure condition.
Definition at line 119 of file fluid_scheme.f90.
type(symmetry_t) fluid_scheme::fluid_scheme_t::bc_sym |
Symmetry plane for velocity.
Definition at line 121 of file fluid_scheme.f90.
type(no_slip_wall_t) fluid_scheme::fluid_scheme_t::bc_wall |
No-slip wall for velocity.
Definition at line 108 of file fluid_scheme.f90.
type(bc_list_t) fluid_scheme::fluid_scheme_t::bclst_prs |
List of pressure conditions.
Definition at line 123 of file fluid_scheme.f90.
type(bc_list_t) fluid_scheme::fluid_scheme_t::bclst_vel |
List of velocity conditions.
Definition at line 122 of file fluid_scheme.f90.
type(field_t) fluid_scheme::fluid_scheme_t::bdry |
Boundary markings.
Definition at line 124 of file fluid_scheme.f90.
type(coef_t) fluid_scheme::fluid_scheme_t::c_xh |
Coefficients associated with \( X_h \).
Definition at line 91 of file fluid_scheme.f90.
type(chkp_t) fluid_scheme::fluid_scheme_t::chkp |
Checkpoint.
Definition at line 127 of file fluid_scheme.f90.
procedure(field_dirichlet_update), pointer, nopass fluid_scheme::fluid_scheme_t::dirichlet_update_ => null() |
Pointer to user_dirichlet_update to be called in fluid_scheme_step.
Definition at line 114 of file fluid_scheme.f90.
type(dofmap_t) fluid_scheme::fluid_scheme_t::dm_xh |
Dofmap associated with \( X_h \).
Definition at line 89 of file fluid_scheme.f90.
type(field_t), pointer fluid_scheme::fluid_scheme_t::f_x => null() |
X-component of the right-hand side.
Definition at line 95 of file fluid_scheme.f90.
type(field_t), pointer fluid_scheme::fluid_scheme_t::f_y => null() |
Y-component of the right-hand side.
Definition at line 97 of file fluid_scheme.f90.
type(field_t), pointer fluid_scheme::fluid_scheme_t::f_z => null() |
Z-component of the right-hand side.
Definition at line 99 of file fluid_scheme.f90.
type(bc_list_t) fluid_scheme::fluid_scheme_t::field_dirichlet_bcs |
List of BC objects to pass to user_dirichlet_update.
Definition at line 116 of file fluid_scheme.f90.
type(field_list_t) fluid_scheme::fluid_scheme_t::field_dirichlet_fields |
List of fields to pass to user_dirichlet_update.
Definition at line 117 of file fluid_scheme.f90.
logical fluid_scheme::fluid_scheme_t::forced_flow_rate = .false. |
Is the flow rate forced?
Definition at line 131 of file fluid_scheme.f90.
logical fluid_scheme::fluid_scheme_t::freeze = .false. |
Freeze velocity at initial condition?
Definition at line 132 of file fluid_scheme.f90.
type(gs_t) fluid_scheme::fluid_scheme_t::gs_xh |
Gather-scatter associated with \( X_h \).
Definition at line 90 of file fluid_scheme.f90.
class(ksp_t), allocatable fluid_scheme::fluid_scheme_t::ksp_prs |
Krylov solver for pressure.
Definition at line 101 of file fluid_scheme.f90.
class(ksp_t), allocatable fluid_scheme::fluid_scheme_t::ksp_vel |
Krylov solver for velocity.
Definition at line 100 of file fluid_scheme.f90.
type(mean_flow_t) fluid_scheme::fluid_scheme_t::mean |
Mean flow field.
Definition at line 128 of file fluid_scheme.f90.
type(mean_sqr_flow_t) fluid_scheme::fluid_scheme_t::mean_sqr |
Mean squared flow field.
Definition at line 130 of file fluid_scheme.f90.
type(mesh_t), pointer fluid_scheme::fluid_scheme_t::msh => null() |
Mesh.
Definition at line 126 of file fluid_scheme.f90.
real(kind=rp), pointer fluid_scheme::fluid_scheme_t::mu => null() |
Dynamic viscosity.
Definition at line 134 of file fluid_scheme.f90.
type(field_t), pointer fluid_scheme::fluid_scheme_t::p => null() |
Pressure.
Definition at line 86 of file fluid_scheme.f90.
type(json_file), pointer fluid_scheme::fluid_scheme_t::params |
Parameters.
Definition at line 125 of file fluid_scheme.f90.
class(pc_t), allocatable fluid_scheme::fluid_scheme_t::pc_prs |
Velocity Preconditioner.
Definition at line 103 of file fluid_scheme.f90.
class(pc_t), allocatable fluid_scheme::fluid_scheme_t::pc_vel |
Velocity Preconditioner.
Definition at line 102 of file fluid_scheme.f90.
integer fluid_scheme::fluid_scheme_t::pr_projection_activ_step |
Steps to activate projection for ksp_pr.
Definition at line 107 of file fluid_scheme.f90.
integer fluid_scheme::fluid_scheme_t::pr_projection_dim |
Size of the projection space for ksp_pr.
Definition at line 105 of file fluid_scheme.f90.
real(kind=rp), pointer fluid_scheme::fluid_scheme_t::rho => null() |
Density.
Definition at line 136 of file fluid_scheme.f90.
type(scratch_registry_t) fluid_scheme::fluid_scheme_t::scratch |
Manager for temporary fields.
Definition at line 137 of file fluid_scheme.f90.
type(fluid_source_term_t) fluid_scheme::fluid_scheme_t::source_term |
The source term for the momentum equation.
Definition at line 93 of file fluid_scheme.f90.
type(fluid_stats_t) fluid_scheme::fluid_scheme_t::stats |
Fluid statistics.
Definition at line 129 of file fluid_scheme.f90.
type(field_t), pointer fluid_scheme::fluid_scheme_t::u => null() |
x-component of Velocity
Definition at line 83 of file fluid_scheme.f90.
type(field_series_t) fluid_scheme::fluid_scheme_t::ulag |
Definition at line 87 of file fluid_scheme.f90.
type(field_t), pointer fluid_scheme::fluid_scheme_t::v => null() |
y-component of Velocity
Definition at line 84 of file fluid_scheme.f90.
integer fluid_scheme::fluid_scheme_t::vel_projection_activ_step |
Steps to activate projection for ksp_vel.
Definition at line 106 of file fluid_scheme.f90.
integer fluid_scheme::fluid_scheme_t::vel_projection_dim |
Size of the projection space for ksp_vel.
Definition at line 104 of file fluid_scheme.f90.
type(field_series_t) fluid_scheme::fluid_scheme_t::vlag |
Definition at line 87 of file fluid_scheme.f90.
type(field_t), pointer fluid_scheme::fluid_scheme_t::w => null() |
z-component of Velocity
Definition at line 85 of file fluid_scheme.f90.
type(field_series_t) fluid_scheme::fluid_scheme_t::wlag |
fluid field (lag)
Definition at line 87 of file fluid_scheme.f90.
type(space_t) fluid_scheme::fluid_scheme_t::xh |
Function space \( X_h \).
Definition at line 88 of file fluid_scheme.f90.