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


Public Member Functions | |
| procedure, pass(this) | init (this, msh, lx, params, user, chkp) |
| Boundary condition factory for density. | |
| procedure, pass(this) | free (this) |
| Free allocated memory and cleanup. | |
| procedure, pass(this) | step (this, time, dt_controller) |
| Advance the fluid simulation one timestep. | |
| procedure, pass(this) | restart (this, chkp) |
| Restart the simulation from saved state. | |
| procedure, pass(this) | setup_bcs (this, user, params) |
| Set up boundary conditions. | |
| procedure, pass(this) | compute_h (this) |
| Copied from les_model_compute_delta in les_model.f90 TODO: move to a separate module Compute characteristic mesh size h. | |
| procedure, pass(this) | scheme_init (this, msh, lx, params, scheme, user) |
| Constructors. | |
| procedure, pass(this) | scheme_free (this) |
| Destructor for the base type. | |
| procedure, pass(this) | validate (this) |
| Validate that all components are properly allocated. | |
| procedure(validate_intrf), deferred, pass | validate (this) |
| Set the user inflow. | |
| procedure, pass(this) | compute_cfl (this, dt) |
| Compute the CFL number. | |
| procedure(fluid_scheme_base_compute_cfl_intrf), deferred, pass | compute_cfl (this, dt) |
| Compute the CFL number. | |
| procedure, pass(this) | update_material_properties (this, time) |
| Set rho and mu. | |
| procedure(update_material_properties), deferred, pass | update_material_properties (this, time) |
| Set rho and mu. | |
| procedure, pass(this) | compute_entropy (this) |
| Compute entropy field. | |
| procedure, pass(this) | compute_max_wave_speed (this) |
| Compute maximum wave speed. | |
| procedure, pass(this) | log_solver_info (this, params, scheme, lx) |
| Log solver information. | |
| procedure(fluid_scheme_base_init_intrf), deferred, pass | init (this, msh, lx, params, user, chkp) |
| Constructor. | |
| procedure(fluid_scheme_base_free_intrf), deferred, pass | free (this) |
| Destructor. | |
| procedure(fluid_scheme_base_step_intrf), deferred, pass | step (this, time, dt_controller) |
| Advance one step in time. | |
| procedure(fluid_scheme_base_restart_intrf), deferred, pass | restart (this, chkp) |
| Restart from a checkpoint. | |
| procedure(fluid_scheme_setup_bcs_intrf), deferred, pass | setup_bcs (this, user, params) |
Public Attributes | |
| type(field_t) | rho_res |
| type(field_t) | m_x_res |
| type(field_t) | m_y_res |
| type(field_t) | m_z_res |
| type(field_t) | m_e_res |
| type(field_t) | drho |
| type(field_t) | dm_x |
| type(field_t) | dm_y |
| type(field_t) | dm_z |
| type(field_t) | de |
| type(field_t) | h |
| real(kind=rp) | c_avisc_low |
| class(advection_t), allocatable | adv |
| class(ax_t), allocatable | ax |
| class(euler_rhs_t), allocatable | euler_rhs |
| type(runge_kutta_time_scheme_t) | rk_scheme |
| type(bc_list_t) | bcs_density |
| type(field_t), pointer | m_x => null() |
| The momentum field. | |
| type(field_t), pointer | m_y => null() |
| y-component of Momentum | |
| type(field_t), pointer | m_z => null() |
| z-component of Momentum | |
| type(field_t), pointer | e => null() |
| Total energy. | |
| type(field_t), pointer | max_wave_speed => null() |
| Maximum wave speed field. | |
| type(field_t), pointer | s => null() |
| Entropy field. | |
| real(kind=rp) | gamma |
| integer(kind=i8) | glb_n_points |
| Global number of GLL points for the fluid (not unique) | |
| integer(kind=i8) | glb_unique_points |
| Global number of GLL points for the fluid (unique) | |
| character(len=:), allocatable | name |
| A name that can be used to distinguish this solver in e.g. user routines. | |
| type(space_t) | xh |
| Function space \( X_h \). | |
| type(dofmap_t) | dm_xh |
| Dofmap associated with \( X_h \). | |
| type(gs_t) | gs_xh |
| Gather-scatter associated with \( X_h \). | |
| type(coef_t) | c_xh |
| Coefficients associated with \( X_h \). | |
| type(time_scheme_controller_t), allocatable | ext_bdf |
| type(field_t), pointer | u => null() |
| The velocity field. | |
| type(field_t), pointer | v => null() |
| y-component of Velocity | |
| type(field_t), pointer | w => null() |
| z-component of Velocity | |
| type(field_t), pointer | p => null() |
| Pressure. | |
| type(field_series_t) | ulag |
| type(field_series_t) | vlag |
| type(field_series_t) | wlag |
| fluid field (lag) | |
| type(chkp_t), pointer | chkp => null() |
| Checkpoint. | |
| type(field_t), pointer | f_x => null() |
| X-component of the right-hand side. | |
| type(field_t), pointer | f_y => null() |
| Y-component of the right-hand side. | |
| type(field_t), pointer | f_z => null() |
| Z-component of the right-hand side. | |
| type(bc_list_t) | bcs_prs |
| Boundary conditions. | |
| type(bc_list_t) | bcs_vel |
| type(json_file), pointer | params |
| Parameters. | |
| type(mesh_t), pointer | msh => null() |
| Mesh. | |
| character(len=neko_msh_max_zlbl_len), dimension(:), allocatable | bc_labels |
| Boundary condition labels (if any) | |
| type(field_t), pointer | rho => null() |
| Density field. | |
| type(field_t), pointer | mu => null() |
| The dynamic viscosity. | |
| type(field_list_t) | material_properties |
| A helper that packs material properties to pass to the user routine. | |
| logical | freeze = .false. |
| Is the fluid frozen at the moment. | |
Static Public Attributes | |
| procedure(user_material_properties_intf), pointer, nopass | user_material_properties => null() |
| User material properties routine. | |
Definition at line 68 of file fluid_scheme_compressible_euler.f90.
|
pure virtualinherited |
Definition at line 129 of file fluid_scheme_base.f90.
|
inherited |
| this | The compressible fluid scheme object |
| dt | Current timestep size |
Definition at line 87 of file fluid_scheme_compressible.f90.
|
inherited |
| this | The compressible fluid scheme object |
Definition at line 93 of file fluid_scheme_compressible.f90.
| procedure, pass(this) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::compute_h | ( | class(fluid_scheme_compressible_euler_t), intent(inout) | this | ) |
| this | The fluid scheme object |
Definition at line 89 of file fluid_scheme_compressible_euler.f90.
|
inherited |
| this | The compressible fluid scheme object |
Definition at line 96 of file fluid_scheme_compressible.f90.
|
pure virtualinherited |
Definition at line 118 of file fluid_scheme_base.f90.
| procedure, pass(this) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::free | ( | class(fluid_scheme_compressible_euler_t), intent(inout) | this | ) |
| this | The fluid scheme object to destroy |
Definition at line 83 of file fluid_scheme_compressible_euler.f90.
|
pure virtualinherited |
Definition at line 116 of file fluid_scheme_base.f90.
| procedure, pass(this) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::init | ( | class(fluid_scheme_compressible_euler_t), intent(inout), target | this, |
| type(mesh_t), intent(inout), target | msh, | ||
| integer, intent(in) | lx, | ||
| type(json_file), intent(inout), target | params, | ||
| type(user_t), intent(in), target | user, | ||
| type(chkp_t), intent(inout), target | chkp | ||
| ) |
Will mark a mesh zone for the bc and finalize.
| [in,out] | object | The object to be allocated. |
| [in] | scheme | The fluid_scheme_compressible_euler_t scheme. |
| [in,out] | json | JSON object for initializing the bc. |
| [in] | coef | SEM coefficients. |
| [in] | user | The user interface. Boundary condition factory for pressure. |
Will mark a mesh zone for the bc and finalize.
| [in,out] | object | The object to be allocated. |
| [in] | scheme | The fluid_scheme_compressible_euler_t scheme. |
| [in,out] | json | JSON object for initializing the bc. |
| [in] | coef | SEM coefficients. |
| [in] | user | The user interface. Boundary condition factory for velocity |
Will mark a mesh zone for the bc and finalize.
| [in,out] | object | The object to be allocated. |
| [in] | scheme | The fluid_scheme_compressible_euler_t scheme. |
| [in,out] | json | JSON object for initializing the bc. |
| [in] | coef | SEM coefficients. |
| [in] | user | The user interface. Initialize the compressible Euler fluid scheme |
| this | The fluid scheme object | |
| msh | Mesh data structure | |
| lx | Polynomial order in x-direction | |
| params | JSON configuration parameters | |
| user | User-defined parameters and functions | |
| chkp | Checkpoint to write to |
Definition at line 82 of file fluid_scheme_compressible_euler.f90.
|
inherited |
| this | The compressible fluid scheme object |
| params | JSON configuration parameters |
| scheme | Name of the numerical scheme |
| lx | Polynomial order in x-direction |
Definition at line 99 of file fluid_scheme_compressible.f90.
|
pure virtualinherited |
Definition at line 122 of file fluid_scheme_base.f90.
| procedure, pass(this) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::restart | ( | class(fluid_scheme_compressible_euler_t), intent(inout), target | this, |
| type(chkp_t), intent(inout) | chkp | ||
| ) |
| this | The fluid scheme object |
| dtlag | Previous timestep sizes |
| tlag | Previous time values |
Definition at line 85 of file fluid_scheme_compressible_euler.f90.
|
inherited |
| this | The compressible fluid scheme object to destroy |
Definition at line 82 of file fluid_scheme_compressible.f90.
|
inherited |
| this | The compressible fluid scheme object |
| msh | Mesh data structure |
| lx | Polynomial order in x-direction |
| params | JSON configuration parameters |
| scheme | Name of the numerical scheme |
| user | User-defined parameters and functions |
Definition at line 80 of file fluid_scheme_compressible.f90.
|
pure virtualinherited |
Definition at line 124 of file fluid_scheme_base.f90.
| procedure, pass(this) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::setup_bcs | ( | class(fluid_scheme_compressible_euler_t), intent(inout), target | this, |
| type(user_t), intent(in), target | user, | ||
| type(json_file), intent(inout) | params | ||
| ) |
| this | The fluid scheme object |
| user | User-defined boundary conditions |
| params | Configuration parameters |
Definition at line 87 of file fluid_scheme_compressible_euler.f90.
|
pure virtualinherited |
Definition at line 120 of file fluid_scheme_base.f90.
| procedure, pass(this) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::step | ( | class(fluid_scheme_compressible_euler_t), intent(inout), target | this, |
| type(time_state_t), intent(in) | time, | ||
| type(time_step_controller_t), intent(in) | dt_controller | ||
| ) |
| this | The fluid scheme object |
| time | Current simulation time state |
| ext_bdf | Time integration controller |
| dt_controller | Timestep size controller |
Definition at line 84 of file fluid_scheme_compressible_euler.f90.
|
pure virtualinherited |
Definition at line 131 of file fluid_scheme_base.f90.
|
inherited |
| this | The compressible fluid scheme object |
Definition at line 90 of file fluid_scheme_compressible.f90.
|
pure virtualinherited |
Definition at line 127 of file fluid_scheme_base.f90.
|
inherited |
| this | The compressible fluid scheme object |
Definition at line 85 of file fluid_scheme_compressible.f90.
| class(advection_t), allocatable fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::adv |
Definition at line 74 of file fluid_scheme_compressible_euler.f90.
| class(ax_t), allocatable fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::ax |
Definition at line 75 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 96 of file fluid_scheme_base.f90.
| type(bc_list_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::bcs_density |
Definition at line 80 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 88 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 90 of file fluid_scheme_base.f90.
Definition at line 73 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 65 of file fluid_scheme_base.f90.
Definition at line 77 of file fluid_scheme_base.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::de |
Definition at line 71 of file fluid_scheme_compressible_euler.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::dm_x |
Definition at line 71 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 63 of file fluid_scheme_base.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::dm_y |
Definition at line 71 of file fluid_scheme_compressible_euler.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::dm_z |
Definition at line 71 of file fluid_scheme_compressible_euler.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::drho |
Definition at line 71 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 67 of file fluid_scheme_compressible.f90.
| class(euler_rhs_t), allocatable fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::euler_rhs |
Definition at line 76 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 67 of file fluid_scheme_base.f90.
Definition at line 80 of file fluid_scheme_base.f90.
Definition at line 82 of file fluid_scheme_base.f90.
Definition at line 84 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 108 of file fluid_scheme_base.f90.
Definition at line 71 of file fluid_scheme_compressible.f90.
Definition at line 74 of file fluid_scheme_compressible.f90.
|
inherited |
Definition at line 76 of file fluid_scheme_compressible.f90.
|
inherited |
Definition at line 64 of file fluid_scheme_base.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::h |
Definition at line 72 of file fluid_scheme_compressible_euler.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::m_e_res |
Definition at line 70 of file fluid_scheme_compressible_euler.f90.
|
inherited |
x-component of Momentum
Definition at line 64 of file fluid_scheme_compressible.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::m_x_res |
Definition at line 70 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 65 of file fluid_scheme_compressible.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::m_y_res |
Definition at line 70 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 66 of file fluid_scheme_compressible.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::m_z_res |
Definition at line 70 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 105 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 68 of file fluid_scheme_compressible.f90.
Definition at line 93 of file fluid_scheme_base.f90.
Definition at line 102 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 60 of file fluid_scheme_base.f90.
Definition at line 73 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 92 of file fluid_scheme_base.f90.
Definition at line 99 of file fluid_scheme_base.f90.
| type(field_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::rho_res |
Definition at line 70 of file fluid_scheme_compressible_euler.f90.
| type(runge_kutta_time_scheme_t) fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_t::rk_scheme |
Definition at line 77 of file fluid_scheme_compressible_euler.f90.
|
inherited |
Definition at line 69 of file fluid_scheme_compressible.f90.
x-component of Velocity
Definition at line 70 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 74 of file fluid_scheme_base.f90.
|
staticinherited |
Definition at line 111 of file fluid_scheme_base.f90.
Definition at line 71 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 74 of file fluid_scheme_base.f90.
Definition at line 72 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 74 of file fluid_scheme_base.f90.
|
inherited |
Definition at line 62 of file fluid_scheme_base.f90.