| 
    Neko 1.99.1
    
   A portable framework for high-order spectral element flow simulations 
   | 
 


Public Member Functions | |
| procedure, pass(this) | init (this, msh, coef, gs, params, numerics_params, user, chkp, ulag, vlag, wlag, time_scheme, rho) | 
| Constructor.   | |
| procedure, pass(this) | restart (this, chkp) | 
| To restart.   | |
| procedure, pass(this) | free (this) | 
| Destructor.   | |
| procedure, pass(this) | step (this, time, ext_bdf, dt_controller, ksp_results) | 
| Solve for the current timestep.   | |
| procedure, pass(this) | setup_bcs_ (this, user) | 
| Setup the boundary conditions.   | |
| 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_material_properties (this, params, user) | 
| Set lambda and cp.   | |
| procedure, pass(this) | update_material_properties (this, time) | 
| Update variable material properties.   | |
| procedure(scalar_scheme_init_intrf), deferred, pass | init (this, msh, coef, gs, params, numerics_params, user, chkp, 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, time, ext_bdf, dt_controller, ksp_results) | 
| Solve for the current timestep.   | |
| procedure(scalar_scheme_restart_intrf), deferred, pass | restart (this, chkp) | 
| 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(zero_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. Also needed since a bc_list is the type that is sent to, e.g. solvers, cannot just send bc_res on its own.   | |
| class(advection_t), allocatable | adv | 
| Advection operator.   | |
| logical | oifs | 
| type(field_t) | advs | 
| class(scalar_residual_t), allocatable | res | 
Computes the residual of the equation, i.e. s_res.   | |
| 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) | abx1 | 
| Lag arrays.   | |
| type(field_t) | abx2 | 
| character(len=:), allocatable | name | 
| A name that can be used to distinguish this solver in e.g. user routines.   | |
| 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(bc_list_t) | bcs | 
| List of boundary conditions, including the user one.   | |
| type(json_file), pointer | params | 
| Case paramters.   | |
| type(mesh_t), pointer | msh => null() | 
| Mesh.   | |
| type(chkp_t), pointer | chkp => null() | 
| Checkpoint for restarts.   | |
| character(len=:), allocatable | nut_field_name | 
| The turbulent kinematic viscosity field name.   | |
| type(field_t), pointer | rho => null() | 
| Density.   | |
| type(field_t), pointer | lambda => null() | 
| Thermal diffusivity.   | |
| type(field_t), pointer | cp => null() | 
| Specific heat capacity.   | |
| type(field_t), pointer | lambda_tot => null() | 
| Total diffusivity.   | |
| real(kind=rp) | pr_turb | 
| Turbulent Prandtl number.   | |
| type(field_list_t) | material_properties | 
| Field list with cp and lambda.   | |
Static Public Attributes | |
| procedure(user_material_properties_intf), pointer, nopass | user_material_properties => null() | 
Definition at line 77 of file scalar_pnpn.f90.
Definition at line 132 of file scalar_pnpn.f90.
      
  | 
  pure virtualinherited | 
Definition at line 157 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(json_file), intent(inout), target | numerics_params, | ||
| type(user_t), intent(in), target | user, | ||
| type(chkp_t), intent(inout), target | chkp, | ||
| 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, | ||
| type(field_t), intent(in), target | rho | ||
| ) | 
Will mark a mesh zone for the bc and finalize.
| [in,out] | object | The object to be allocated. | 
| [in] | scheme | The scalar_pnpn scheme.  | 
| [in,out] | json | JSON object for initializing the bc. | 
| [in] | coef | SEM coefficients. Constructor. | 
| msh | The mesh. | |
| coef | The coefficients. | |
| gs | The gather-scatter. | |
| params | The case parameter file in json. | |
| user | Type with user-defined procedures. | |
| chkp | Set up checkpoint for restarts. | |
| ulag | Lag arrays for the x velocity component. | |
| vlag | Lag arrays for the y velocity component. | |
| wlag | Lag arrays for the z velocity component. | |
| time_scheme | The time-integration controller. | |
| rho | The fluid density. | 
Definition at line 128 of file scalar_pnpn.f90.
      
  | 
  pure virtualinherited | 
Definition at line 155 of file scalar_scheme.f90.
| procedure, pass(this) scalar_pnpn::scalar_pnpn_t::restart | ( | class(scalar_pnpn_t), intent(inout), target | this, | 
| type(chkp_t), intent(inout) | chkp | ||
| ) | 
Definition at line 130 of file scalar_pnpn.f90.
      
  | 
  pure virtualinherited | 
Definition at line 161 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 145 of file scalar_scheme.f90.
      
  | 
  inherited | 
| msh | The mesh. | 
| c_Xh | The coefficients. | 
| gs_Xh | The gather-scatter. | 
| params | The parameter dictionary in json. | 
| scheme | The name of the scalar scheme. | 
| user | Type with user-defined procedures. | 
| rho | The density of the fluid. | 
Definition at line 143 of file scalar_scheme.f90.
      
  | 
  inherited | 
| params | The case file configuration dictionary. | 
| user | The user interface. | 
Definition at line 149 of file scalar_scheme.f90.
| procedure, pass(this) scalar_pnpn::scalar_pnpn_t::setup_bcs_ | ( | class(scalar_pnpn_t), intent(inout) | this, | 
| type(user_t), intent(in), target | user | ||
| ) | 
| user | The user object binding the user-defined routines. | 
Definition at line 136 of file scalar_pnpn.f90.
| procedure, pass(this) scalar_pnpn::scalar_pnpn_t::step | ( | class(scalar_pnpn_t), intent(inout) | this, | 
| type(time_state_t), intent(in) | time, | ||
| type(time_scheme_controller_t), intent(in) | ext_bdf, | ||
| type(time_step_controller_t), intent(in) | dt_controller, | ||
| type(ksp_monitor_t), intent(inout) | ksp_results | ||
| ) | 
Definition at line 134 of file scalar_pnpn.f90.
      
  | 
  pure virtualinherited | 
Definition at line 159 of file scalar_scheme.f90.
      
  | 
  inherited | 
| t | Time value. | 
| tstep | Current time step. | 
Definition at line 152 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 147 of file scalar_scheme.f90.
| type(field_t) scalar_pnpn::scalar_pnpn_t::abx1 | 
Definition at line 124 of file scalar_pnpn.f90.
| type(field_t) scalar_pnpn::scalar_pnpn_t::abx2 | 
Definition at line 124 of file scalar_pnpn.f90.
| class(advection_t), allocatable scalar_pnpn::scalar_pnpn_t::adv | 
Definition at line 103 of file scalar_pnpn.f90.
| type(field_t) scalar_pnpn::scalar_pnpn_t::advs | 
Definition at line 109 of file scalar_pnpn.f90.
| class(ax_t), allocatable scalar_pnpn::scalar_pnpn_t::ax | 
Definition at line 86 of file scalar_pnpn.f90.
| type(zero_dirichlet_t) scalar_pnpn::scalar_pnpn_t::bc_res | 
Definition at line 94 of file scalar_pnpn.f90.
| type(bc_list_t) scalar_pnpn::scalar_pnpn_t::bclst_ds | 
Definition at line 100 of file scalar_pnpn.f90.
      
  | 
  inherited | 
Definition at line 118 of file scalar_scheme.f90.
Definition at line 102 of file scalar_scheme.f90.
Definition at line 124 of file scalar_scheme.f90.
Definition at line 132 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 98 of file scalar_scheme.f90.
| type(field_t) scalar_pnpn::scalar_pnpn_t::ds | 
Definition at line 83 of file scalar_pnpn.f90.
Definition at line 104 of file scalar_scheme.f90.
Definition at line 100 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 108 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 110 of file scalar_scheme.f90.
Definition at line 130 of file scalar_scheme.f90.
Definition at line 134 of file scalar_scheme.f90.
| class(rhs_maker_bdf_t), allocatable scalar_pnpn::scalar_pnpn_t::makebdf | 
Definition at line 118 of file scalar_pnpn.f90.
| class(rhs_maker_ext_t), allocatable scalar_pnpn::scalar_pnpn_t::makeext | 
Definition at line 115 of file scalar_pnpn.f90.
| class(rhs_maker_oifs_t), allocatable scalar_pnpn::scalar_pnpn_t::makeoifs | 
Definition at line 121 of file scalar_pnpn.f90.
      
  | 
  inherited | 
Definition at line 138 of file scalar_scheme.f90.
Definition at line 122 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 84 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 126 of file scalar_scheme.f90.
| logical scalar_pnpn::scalar_pnpn_t::oifs | 
Definition at line 106 of file scalar_pnpn.f90.
      
  | 
  inherited | 
Definition at line 120 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 116 of file scalar_scheme.f90.
Definition at line 136 of file scalar_scheme.f90.
| type(projection_t) scalar_pnpn::scalar_pnpn_t::proj_s | 
Definition at line 89 of file scalar_pnpn.f90.
      
  | 
  inherited | 
Definition at line 114 of file scalar_scheme.f90.
      
  | 
  inherited | 
Steps to activate projection for ksp
Definition at line 112 of file scalar_scheme.f90.
| class(scalar_residual_t), allocatable scalar_pnpn::scalar_pnpn_t::res | 
Definition at line 112 of file scalar_pnpn.f90.
Definition at line 128 of file scalar_scheme.f90.
Definition at line 92 of file scalar_scheme.f90.
| type(field_t) scalar_pnpn::scalar_pnpn_t::s_res | 
Definition at line 80 of file scalar_pnpn.f90.
      
  | 
  inherited | 
Definition at line 94 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 106 of file scalar_scheme.f90.
Definition at line 86 of file scalar_scheme.f90.
      
  | 
  staticinherited | 
Definition at line 139 of file scalar_scheme.f90.
Definition at line 88 of file scalar_scheme.f90.
Definition at line 90 of file scalar_scheme.f90.
      
  | 
  inherited | 
Definition at line 96 of file scalar_scheme.f90.