Neko 0.9.99
A portable framework for high-order spectral element flow simulations
|
Public Member Functions | |
procedure, pass(this) | init (this, msh, coef, gs, params, user, ulag, vlag, wlag, time_scheme, rho) |
Constructor. | |
procedure, pass(this) | restart (this, dtlag, tlag) |
To restart. | |
procedure, pass(this) | free (this) |
Destructor. | |
procedure, pass(this) | step (this, t, tstep, dt, ext_bdf, dt_controller) |
Solve for the current timestep. | |
procedure, pass(this) | scheme_init (this, msh, c_xh, gs_xh, params, scheme, user, rho) |
Constructor for the base type. | |
procedure, pass(this) | scheme_free (this) |
Destructor for the base type. | |
procedure, pass(this) | validate (this) |
Validate successful initialization. | |
procedure, pass(this) | set_user_bc (this, usr_eval) |
Assigns the evaluation function for user_bc . | |
procedure, pass(this) | set_material_properties (this, params, user) |
Set lambda and cp. | |
procedure, pass(this) | update_material_properties (this) |
Update variable material properties. | |
procedure(scalar_scheme_init_intrf), deferred, pass | init (this, msh, coef, gs, params, user, ulag, vlag, wlag, time_scheme, rho) |
Constructor. | |
procedure(scalar_scheme_free_intrf), deferred, pass | free (this) |
Destructor. | |
procedure(scalar_scheme_step_intrf), deferred, pass | step (this, t, tstep, dt, ext_bdf, dt_controller) |
Solve for the current timestep. | |
procedure(scalar_scheme_restart_intrf), deferred, pass | restart (this, dtlag, tlag) |
Restart from a checkpoint. | |
Public Attributes | |
type(field_t) | s_res |
The residual of the transport equation. | |
type(field_t) | ds |
Solution increment. | |
class(ax_t), allocatable | ax |
Helmholz operator. | |
type(projection_t) | proj_s |
Solution projection. | |
type(dirichlet_t) | bc_res |
Dirichlet conditions for the residual Collects all the Dirichlet condition facets into one bc and applies 0, Since the values never change there during the solve. | |
type(bc_list_t) | bclst_ds |
A bc list for the bc_res. Contains only that, essentially just to wrap the if statement determining whether to apply on the device or CPU. | |
class(advection_t), allocatable | adv |
Advection operator. | |
logical | oifs |
type(field_t) | abx1 |
type(field_t) | abx2 |
type(field_t) | advs |
class(scalar_residual_t), allocatable | res |
Computes the residual. | |
class(rhs_maker_ext_t), allocatable | makeext |
Contributions to kth order extrapolation scheme. | |
class(rhs_maker_bdf_t), allocatable | makebdf |
Contributions to the RHS from lagged BDF terms. | |
class(rhs_maker_oifs_t), allocatable | makeoifs |
Contributions to the RHS from the OIFS method. | |
type(field_t), pointer | u |
x-component of Velocity | |
type(field_t), pointer | v |
y-component of Velocity | |
type(field_t), pointer | w |
z-component of Velocity | |
type(field_t), pointer | s |
The scalar. | |
type(field_series_t) | slag |
Lag arrays, i.e. solutions at previous timesteps. | |
type(space_t), pointer | xh |
Function space \( X_h \). | |
type(dofmap_t), pointer | dm_xh |
Dofmap associated with \( X_h \). | |
type(gs_t), pointer | gs_xh |
Gather-scatter associated with \( X_h \). | |
type(coef_t), pointer | c_xh |
Coefficients associated with \( X_h \). | |
type(field_t), pointer | f_xh => null() |
Right-hand side. | |
type(scalar_source_term_t) | source_term |
The source term for equation. | |
class(ksp_t), allocatable | ksp |
Krylov solver. | |
integer | ksp_maxiter |
Max iterations in the Krylov solver. | |
integer | projection_dim |
Projection space size. | |
integer | projection_activ_step |
class(pc_t), allocatable | pc |
Preconditioner. | |
type(dirichlet_t), dimension(neko_msh_max_zlbls) | dir_bcs |
Dirichlet conditions. | |
type(field_dirichlet_t) | field_dir_bc |
Field Dirichlet conditions. | |
type(bc_list_t) | field_dirichlet_bcs |
List of BC objects to pass to user_dirichlet_update. | |
type(neumann_t), dimension(neko_msh_max_zlbls) | neumann_bcs |
Neumann conditions. | |
type(usr_scalar_t) | user_bc |
User Dirichlet conditions. | |
integer | n_dir_bcs = 0 |
Number of Dirichlet bcs. | |
integer | n_neumann_bcs = 0 |
Number of Neumann bcs. | |
type(bc_list_t) | bclst_dirichlet |
List of Dirichlet boundary conditions, including the user one. | |
type(bc_list_t) | bclst_neumann |
List of Neumann conditions list. | |
type(json_file), pointer | params |
Case paramters. | |
type(mesh_t), pointer | msh => null() |
Mesh. | |
type(chkp_t) | chkp |
Checkpoint for restarts. | |
real(kind=rp) | lambda |
Thermal diffusivity. | |
type(field_t) | lambda_field |
The variable lambda field. | |
character(len=:), allocatable | nut_field_name |
The turbulent kinematic viscosity field name. | |
real(kind=rp) | rho |
Density. | |
real(kind=rp) | cp |
Specific heat capacity. | |
real(kind=rp) | pr_turb |
Turbulent Prandtl number. | |
logical | variable_material_properties = .false. |
Is lambda varying in time? Currently only due to LES models. | |
character(len=neko_msh_max_zlbl_len), dimension(:), allocatable | bc_labels |
Boundary condition labels (if any) | |
logical | if_gradient_jump_penalty |
Gradient jump panelty. | |
type(gradient_jump_penalty_t) | gradient_jump_penalty |
Definition at line 72 of file scalar_pnpn.f90.
Definition at line 125 of file scalar_pnpn.f90.
|
pure virtualinherited |
Definition at line 173 of file scalar_scheme.f90.
procedure, pass(this) scalar_pnpn::scalar_pnpn_t::init | ( | class(scalar_pnpn_t), intent(inout), target | this, |
type(mesh_t), intent(in), target | msh, | ||
type(coef_t), intent(in), target | coef, | ||
type(gs_t), intent(inout), target | gs, | ||
type(json_file), intent(inout), target | params, | ||
type(user_t), intent(in), target | user, | ||
type(field_series_t), intent(in), target | ulag, | ||
type(field_series_t), intent(in), target | vlag, | ||
type(field_series_t), intent(in), target | wlag, | ||
type(time_scheme_controller_t), intent(in), target | time_scheme, | ||
real(kind=rp), intent(in) | rho | ||
) |
msh | The mesh. |
coef | The coefficients. |
gs | The gather-scatter. |
params | The case parameter file in json. |
user | Type with user-defined procedures. |
Definition at line 121 of file scalar_pnpn.f90.
|
pure virtualinherited |
Definition at line 171 of file scalar_scheme.f90.
procedure, pass(this) scalar_pnpn::scalar_pnpn_t::restart | ( | class(scalar_pnpn_t), intent(inout), target | this, |
real(kind=rp), dimension(10) | dtlag, | ||
real(kind=rp), dimension(10) | tlag | ||
) |
Definition at line 123 of file scalar_pnpn.f90.
|
pure virtualinherited |
Definition at line 177 of file scalar_scheme.f90.
|
inherited |
Definition at line 159 of file scalar_scheme.f90.
|
inherited |
msh | The mesh. |
c_Xh | The coefficients. |
gs_Xh | The gather-scatter. |
params | The case parameter file in json. |
scheme | The name of the scalar scheme. |
user | Type with user-defined procedures. |
rho | The density of the fluid. |
Definition at line 157 of file scalar_scheme.f90.
|
inherited |
params | The case parameter file. |
user | The user interface. |
Definition at line 165 of file scalar_scheme.f90.
|
inherited |
usr_eval | User specified boundary condition for scalar field |
Definition at line 163 of file scalar_scheme.f90.
procedure, pass(this) scalar_pnpn::scalar_pnpn_t::step | ( | class(scalar_pnpn_t), intent(inout) | this, |
real(kind=rp), intent(in) | t, | ||
integer, intent(in) | tstep, | ||
real(kind=rp), intent(in) | dt, | ||
type(time_scheme_controller_t), intent(in) | ext_bdf, | ||
type(time_step_controller_t), intent(in) | dt_controller | ||
) |
Definition at line 127 of file scalar_pnpn.f90.
|
pure virtualinherited |
Definition at line 175 of file scalar_scheme.f90.
|
inherited |
Definition at line 168 of file scalar_scheme.f90.
|
inherited |
Definition at line 161 of file scalar_scheme.f90.
type(field_t) scalar_pnpn::scalar_pnpn_t::abx1 |
Definition at line 102 of file scalar_pnpn.f90.
type(field_t) scalar_pnpn::scalar_pnpn_t::abx2 |
Definition at line 102 of file scalar_pnpn.f90.
class(advection_t), allocatable scalar_pnpn::scalar_pnpn_t::adv |
Definition at line 96 of file scalar_pnpn.f90.
type(field_t) scalar_pnpn::scalar_pnpn_t::advs |
Definition at line 105 of file scalar_pnpn.f90.
class(ax_t), allocatable scalar_pnpn::scalar_pnpn_t::ax |
Definition at line 81 of file scalar_pnpn.f90.
|
inherited |
Definition at line 151 of file scalar_scheme.f90.
type(dirichlet_t) scalar_pnpn::scalar_pnpn_t::bc_res |
Definition at line 89 of file scalar_pnpn.f90.
|
inherited |
Definition at line 127 of file scalar_scheme.f90.
type(bc_list_t) scalar_pnpn::scalar_pnpn_t::bclst_ds |
Definition at line 93 of file scalar_pnpn.f90.
|
inherited |
Definition at line 129 of file scalar_scheme.f90.
Definition at line 97 of file scalar_scheme.f90.
|
inherited |
Definition at line 135 of file scalar_scheme.f90.
Definition at line 145 of file scalar_scheme.f90.
|
inherited |
Definition at line 113 of file scalar_scheme.f90.
|
inherited |
Definition at line 93 of file scalar_scheme.f90.
type(field_t) scalar_pnpn::scalar_pnpn_t::ds |
Definition at line 78 of file scalar_pnpn.f90.
Definition at line 99 of file scalar_scheme.f90.
|
inherited |
Definition at line 115 of file scalar_scheme.f90.
|
inherited |
Definition at line 117 of file scalar_scheme.f90.
|
inherited |
Definition at line 154 of file scalar_scheme.f90.
Definition at line 95 of file scalar_scheme.f90.
|
inherited |
Definition at line 153 of file scalar_scheme.f90.
|
inherited |
Definition at line 103 of file scalar_scheme.f90.
|
inherited |
Definition at line 105 of file scalar_scheme.f90.
Definition at line 137 of file scalar_scheme.f90.
|
inherited |
Definition at line 139 of file scalar_scheme.f90.
class(rhs_maker_bdf_t), allocatable scalar_pnpn::scalar_pnpn_t::makebdf |
Definition at line 114 of file scalar_pnpn.f90.
class(rhs_maker_ext_t), allocatable scalar_pnpn::scalar_pnpn_t::makeext |
Definition at line 111 of file scalar_pnpn.f90.
class(rhs_maker_oifs_t), allocatable scalar_pnpn::scalar_pnpn_t::makeoifs |
Definition at line 117 of file scalar_pnpn.f90.
Definition at line 133 of file scalar_scheme.f90.
|
inherited |
Definition at line 123 of file scalar_scheme.f90.
|
inherited |
Definition at line 125 of file scalar_scheme.f90.
|
inherited |
Definition at line 119 of file scalar_scheme.f90.
|
inherited |
Definition at line 141 of file scalar_scheme.f90.
logical scalar_pnpn::scalar_pnpn_t::oifs |
Definition at line 99 of file scalar_pnpn.f90.
|
inherited |
Definition at line 131 of file scalar_scheme.f90.
|
inherited |
Definition at line 111 of file scalar_scheme.f90.
Definition at line 147 of file scalar_scheme.f90.
type(projection_t) scalar_pnpn::scalar_pnpn_t::proj_s |
Definition at line 84 of file scalar_pnpn.f90.
|
inherited |
Definition at line 109 of file scalar_scheme.f90.
|
inherited |
Steps to activate projection for ksp
Definition at line 107 of file scalar_scheme.f90.
class(scalar_residual_t), allocatable scalar_pnpn::scalar_pnpn_t::res |
Definition at line 108 of file scalar_pnpn.f90.
Definition at line 143 of file scalar_scheme.f90.
Definition at line 87 of file scalar_scheme.f90.
type(field_t) scalar_pnpn::scalar_pnpn_t::s_res |
Definition at line 75 of file scalar_pnpn.f90.
|
inherited |
Definition at line 89 of file scalar_scheme.f90.
|
inherited |
Definition at line 101 of file scalar_scheme.f90.
Definition at line 81 of file scalar_scheme.f90.
|
inherited |
Definition at line 121 of file scalar_scheme.f90.
Definition at line 83 of file scalar_scheme.f90.
|
inherited |
Definition at line 149 of file scalar_scheme.f90.
Definition at line 85 of file scalar_scheme.f90.
|
inherited |
Definition at line 91 of file scalar_scheme.f90.