m_case_abl Module


Uses

  • module~~m_case_abl~~UsesGraph module~m_case_abl m_case_abl m_mpi m_mpi module~m_case_abl->m_mpi module~m_abl m_abl module~m_case_abl->module~m_abl module~m_abl_diagnostics m_abl_diagnostics module~m_case_abl->module~m_abl_diagnostics module~m_allocator m_allocator module~m_case_abl->module~m_allocator module~m_base_backend m_base_backend module~m_case_abl->module~m_base_backend module~m_base_case m_base_case module~m_case_abl->module~m_base_case module~m_common m_common module~m_case_abl->module~m_common module~m_config m_config module~m_case_abl->module~m_config module~m_field m_field module~m_case_abl->module~m_field module~m_logger m_logger module~m_case_abl->module~m_logger module~m_mesh m_mesh module~m_case_abl->module~m_mesh module~m_abl->m_mpi module~m_abl->module~m_allocator module~m_abl->module~m_base_backend module~m_abl->module~m_common module~m_abl->module~m_config module~m_abl->module~m_field module~m_abl->module~m_logger module~m_abl->module~m_mesh iso_fortran_env iso_fortran_env module~m_abl->iso_fortran_env module~m_les m_les module~m_abl->module~m_les module~m_abl_diagnostics->m_mpi module~m_abl_diagnostics->module~m_base_backend module~m_abl_diagnostics->module~m_common module~m_abl_diagnostics->module~m_config module~m_abl_diagnostics->module~m_field module~m_abl_diagnostics->module~m_logger module~m_abl_diagnostics->module~m_mesh module~m_abl_diagnostics->module~m_les module~m_allocator->module~m_common module~m_allocator->module~m_field module~m_base_backend->module~m_allocator module~m_base_backend->module~m_common module~m_base_backend->module~m_field module~m_base_backend->module~m_logger module~m_base_backend->module~m_mesh iso_c_binding iso_c_binding module~m_base_backend->iso_c_binding module~m_poisson_fft m_poisson_fft module~m_base_backend->module~m_poisson_fft module~m_tdsops m_tdsops module~m_base_backend->module~m_tdsops module~m_base_case->m_mpi module~m_base_case->module~m_allocator module~m_base_case->module~m_base_backend module~m_base_case->module~m_common module~m_base_case->module~m_config module~m_base_case->module~m_field module~m_base_case->module~m_logger module~m_base_case->module~m_mesh module~m_io_manager m_io_manager module~m_base_case->module~m_io_manager module~m_monitoring m_monitoring module~m_base_case->module~m_monitoring module~m_postprocess m_postprocess module~m_base_case->module~m_postprocess module~m_solver m_solver module~m_base_case->module~m_solver module~m_common->m_mpi module~m_common->module~m_logger module~m_config->module~m_common module~m_config->module~m_logger module~m_field->module~m_common module~m_field->iso_c_binding module~m_logger->m_mpi module~m_logger->iso_fortran_env module~m_mesh->m_mpi module~m_mesh->module~m_common module~m_mesh->module~m_field module~m_mesh->module~m_logger module~m_mesh_content m_mesh_content module~m_mesh->module~m_mesh_content module~m_io_manager->m_mpi module~m_io_manager->module~m_solver module~m_checkpoint_manager m_checkpoint_manager module~m_io_manager->module~m_checkpoint_manager module~m_checkpoint_state m_checkpoint_state module~m_io_manager->module~m_checkpoint_state module~m_snapshot_manager m_snapshot_manager module~m_io_manager->module~m_snapshot_manager module~m_stats m_stats module~m_io_manager->module~m_stats module~m_les->module~m_base_backend module~m_les->module~m_common module~m_les->module~m_config module~m_les->module~m_field module~m_les->module~m_logger module~m_les->module~m_mesh module~m_les->module~m_tdsops module~m_mesh_content->module~m_common module~m_mesh_content->module~m_logger module~m_monitoring->module~m_common module~m_monitoring->module~m_field module~m_monitoring->module~m_logger module~m_monitoring->module~m_solver module~m_scalar_series m_scalar_series module~m_monitoring->module~m_scalar_series module~m_poisson_fft->module~m_common module~m_poisson_fft->module~m_field module~m_poisson_fft->module~m_logger module~m_poisson_fft->module~m_mesh module~m_poisson_fft->module~m_tdsops module~m_postprocess->module~m_common module~m_postprocess->module~m_field module~m_postprocess->module~m_logger module~m_postprocess->module~m_solver module~m_solver->module~m_allocator module~m_solver->module~m_base_backend module~m_solver->module~m_common module~m_solver->module~m_config module~m_solver->module~m_field module~m_solver->module~m_logger module~m_solver->module~m_mesh module~m_solver->module~m_les module~m_solver->module~m_tdsops module~m_ibm m_ibm module~m_solver->module~m_ibm module~m_time_integrator m_time_integrator module~m_solver->module~m_time_integrator module~m_vector_calculus m_vector_calculus module~m_solver->module~m_vector_calculus module~m_tdsops->module~m_common module~m_tdsops->module~m_logger module~m_checkpoint_manager->m_mpi module~m_checkpoint_manager->module~m_common module~m_checkpoint_manager->module~m_config module~m_checkpoint_manager->module~m_field module~m_checkpoint_manager->module~m_logger module~m_checkpoint_manager->module~m_solver module~m_checkpoint_manager->module~m_checkpoint_state module~m_checkpoint_manager->module~m_stats module~m_io_field_utils m_io_field_utils module~m_checkpoint_manager->module~m_io_field_utils module~m_io_session m_io_session module~m_checkpoint_manager->module~m_io_session module~m_checkpoint_state->module~m_io_session module~m_ibm->m_mpi module~m_ibm->module~m_allocator module~m_ibm->module~m_base_backend module~m_ibm->module~m_common module~m_ibm->module~m_field module~m_ibm->module~m_logger module~m_ibm->module~m_mesh module~m_ibm->module~m_io_session module~m_scalar_series->module~m_common module~m_scalar_series->module~m_logger module~m_snapshot_manager->m_mpi module~m_snapshot_manager->module~m_common module~m_snapshot_manager->module~m_config module~m_snapshot_manager->module~m_field module~m_snapshot_manager->module~m_logger module~m_snapshot_manager->module~m_solver module~m_snapshot_manager->module~m_io_field_utils module~m_snapshot_manager->module~m_io_session module~m_stats->module~m_common module~m_stats->module~m_config module~m_stats->module~m_field module~m_stats->module~m_logger module~m_stats->module~m_solver module~m_stats->module~m_io_session module~m_time_integrator->module~m_allocator module~m_time_integrator->module~m_base_backend module~m_time_integrator->module~m_common module~m_time_integrator->module~m_field module~m_time_integrator->module~m_logger module~m_vector_calculus->module~m_allocator module~m_vector_calculus->module~m_base_backend module~m_vector_calculus->module~m_common module~m_vector_calculus->module~m_field module~m_vector_calculus->module~m_logger module~m_vector_calculus->module~m_tdsops module~m_io_field_utils->module~m_common module~m_io_field_utils->module~m_field module~m_io_field_utils->module~m_logger module~m_io_field_utils->module~m_solver module~m_io_base m_io_base module~m_io_field_utils->module~m_io_base module~m_nvtx m_nvtx module~m_io_field_utils->module~m_nvtx module~m_io_session->module~m_base_backend module~m_io_session->module~m_common module~m_io_session->module~m_field module~m_io_session->module~m_logger module~m_io_backend~2 m_io_backend module~m_io_session->module~m_io_backend~2 module~m_io_session->module~m_io_base module~m_io_backend~2->module~m_base_backend module~m_io_backend~2->module~m_common module~m_io_backend~2->module~m_field module~m_io_backend~2->module~m_logger module~m_io_backend~2->module~m_io_base module~m_io_base->module~m_base_backend module~m_io_base->module~m_common module~m_io_base->module~m_field module~m_nvtx->iso_c_binding

Used by

  • module~~m_case_abl~~UsedByGraph module~m_case_abl m_case_abl program~xcompact xcompact program~xcompact->module~m_case_abl

Interfaces

public interface case_abl_t

  • public function case_abl_init(backend, mesh, host_allocator) result(flow_case)

    Arguments

    Type IntentOptional Attributes Name
    class(base_backend_t), intent(inout), target :: backend
    type(mesh_t), intent(inout), target :: mesh
    type(allocator_t), intent(inout), target :: host_allocator

    Return Value type(case_abl_t)


Derived Types

type, public, extends(base_case_t) ::  case_abl_t

Components

Type Visibility Attributes Name Initial
class(solver_t), public, allocatable :: solver
type(io_manager_t), public :: io_mgr
type(monitoring_t), public :: monitoring
class(field_t), public, pointer :: bc_start_u_x => null()
class(field_t), public, pointer :: bc_start_v_x => null()
class(field_t), public, pointer :: bc_start_w_x => null()
class(field_t), public, pointer :: bc_end_u_x => null()
class(field_t), public, pointer :: bc_end_v_x => null()
class(field_t), public, pointer :: bc_end_w_x => null()
class(field_t), public, pointer :: bc_start_u_y => null()
class(field_t), public, pointer :: bc_start_v_y => null()
class(field_t), public, pointer :: bc_start_w_y => null()
class(field_t), public, pointer :: bc_end_u_y => null()
class(field_t), public, pointer :: bc_end_v_y => null()
class(field_t), public, pointer :: bc_end_w_y => null()
type(abl_config_t), public :: abl_cfg
type(abl_t), public :: abl
type(abl_diagnostics_t), public :: diagnostics

Constructor

public function case_abl_init (backend, mesh, host_allocator)

Type-Bound Procedures

procedure, public :: case_init
procedure, public :: case_finalise
procedure, public :: finalise_case_specific => finalise_case_specific_default
procedure, public :: set_init
procedure, public :: run
procedure, public :: define_BC => define_BC_abl
procedure, public :: initial_conditions => initial_conditions_abl
procedure, public :: forcings => forcings_abl
procedure, public :: apply_BC => apply_BC_abl
procedure, public :: postprocess => postprocess_abl

Functions

public function case_abl_init(backend, mesh, host_allocator) result(flow_case)

Arguments

Type IntentOptional Attributes Name
class(base_backend_t), intent(inout), target :: backend
type(mesh_t), intent(inout), target :: mesh
type(allocator_t), intent(inout), target :: host_allocator

Return Value type(case_abl_t)


Subroutines

public subroutine initial_conditions_abl(self)

Arguments

Type IntentOptional Attributes Name
class(case_abl_t) :: self

public subroutine define_BC_abl(self)

Arguments

Type IntentOptional Attributes Name
class(case_abl_t) :: self

public subroutine forcings_abl(self, du, dv, dw, iter)

Arguments

Type IntentOptional Attributes Name
class(case_abl_t) :: self
class(field_t), intent(inout) :: du
class(field_t), intent(inout) :: dv
class(field_t), intent(inout) :: dw
integer, intent(in) :: iter

public subroutine apply_BC_abl(self, u, v, w)

Arguments

Type IntentOptional Attributes Name
class(case_abl_t) :: self
class(field_t), intent(inout) :: u
class(field_t), intent(inout) :: v
class(field_t), intent(inout) :: w

public subroutine postprocess_abl(self, iter, t)

Arguments

Type IntentOptional Attributes Name
class(case_abl_t) :: self
integer, intent(in) :: iter
real(kind=dp), intent(in) :: t