m_turbine_setup Module

Turbine set-up and tear-down shared by the cases that carry turbines (wind_turbine and abl). This is the only place the iturbine switch appears (at allocation time); downstream a case calls the polymorphic turbine object with no branching.


Uses

  • module~~m_turbine_setup~~UsesGraph module~m_turbine_setup m_turbine_setup module~m_adm m_adm module~m_turbine_setup->module~m_adm module~m_alm m_alm module~m_turbine_setup->module~m_alm module~m_config m_config module~m_turbine_setup->module~m_config module~m_io_manager m_io_manager module~m_turbine_setup->module~m_io_manager module~m_logger m_logger module~m_turbine_setup->module~m_logger module~m_solver m_solver module~m_turbine_setup->module~m_solver module~m_turbine_dummy m_turbine_dummy module~m_turbine_setup->module~m_turbine_dummy module~m_turbine_model m_turbine_model module~m_turbine_setup->module~m_turbine_model module~m_adm->module~m_logger module~m_adm->module~m_turbine_model m_mpi m_mpi module~m_adm->m_mpi module~m_allocator m_allocator module~m_adm->module~m_allocator module~m_base_backend m_base_backend module~m_adm->module~m_base_backend module~m_common m_common module~m_adm->module~m_common module~m_field m_field module~m_adm->module~m_field module~m_io_session m_io_session module~m_adm->module~m_io_session module~m_mesh m_mesh module~m_adm->module~m_mesh module~m_scalar_series m_scalar_series module~m_adm->module~m_scalar_series module~m_alm->module~m_logger module~m_alm->module~m_turbine_model module~m_alm->m_mpi module~m_alm->module~m_allocator module~m_alm_controller m_alm_controller module~m_alm->module~m_alm_controller module~m_alm_element m_alm_element module~m_alm->module~m_alm_element module~m_alm_output m_alm_output module~m_alm->module~m_alm_output module~m_alm_turbine m_alm_turbine module~m_alm->module~m_alm_turbine module~m_alm->module~m_base_backend module~m_alm->module~m_common module~m_alm->module~m_field module~m_alm->module~m_io_session module~m_alm->module~m_mesh module~m_alm->module~m_scalar_series module~m_config->module~m_logger iso_fortran_env iso_fortran_env module~m_config->iso_fortran_env module~m_config->module~m_common module~m_io_manager->module~m_solver module~m_io_manager->m_mpi 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_logger->iso_fortran_env module~m_logger->m_mpi module~m_solver->module~m_config module~m_solver->module~m_logger module~m_solver->module~m_allocator module~m_solver->module~m_base_backend module~m_solver->module~m_common module~m_solver->module~m_field module~m_ibm m_ibm module~m_solver->module~m_ibm module~m_les m_les module~m_solver->module~m_les module~m_solver->module~m_mesh module~m_tdsops m_tdsops module~m_solver->module~m_tdsops module~m_tdsops_setup m_tdsops_setup module~m_solver->module~m_tdsops_setup 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_turbine_dummy->module~m_turbine_model module~m_turbine_dummy->module~m_allocator module~m_turbine_dummy->module~m_base_backend module~m_turbine_dummy->module~m_common module~m_turbine_dummy->module~m_field module~m_turbine_dummy->module~m_io_session module~m_turbine_dummy->module~m_mesh module~m_turbine_model->module~m_allocator module~m_turbine_model->module~m_base_backend module~m_turbine_model->module~m_checkpoint_state module~m_turbine_model->module~m_common module~m_turbine_model->module~m_field module~m_turbine_model->module~m_mesh module~m_allocator->module~m_common module~m_allocator->module~m_field module~m_alm_controller->module~m_logger module~m_alm_controller->module~m_common module~m_alm_element->module~m_common module~m_alm_airfoil m_alm_airfoil module~m_alm_element->module~m_alm_airfoil module~m_alm_output->module~m_logger module~m_alm_output->module~m_alm_element module~m_alm_output->module~m_common module~m_alm_turbine->module~m_logger module~m_alm_turbine->module~m_alm_controller module~m_alm_turbine->module~m_alm_element module~m_alm_turbine->module~m_common module~m_alm_turbine->module~m_alm_airfoil module~m_base_backend->module~m_logger module~m_base_backend->m_mpi 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_mesh module~m_base_backend->module~m_tdsops 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_checkpoint_manager->module~m_config module~m_checkpoint_manager->module~m_logger module~m_checkpoint_manager->module~m_solver module~m_checkpoint_manager->m_mpi module~m_checkpoint_manager->module~m_checkpoint_state module~m_checkpoint_manager->module~m_common module~m_checkpoint_manager->module~m_field module~m_checkpoint_manager->module~m_io_session 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_checkpoint_state->module~m_io_session module~m_common->module~m_logger module~m_common->m_mpi module~m_field->module~m_common module~m_field->iso_c_binding module~m_ibm->module~m_logger 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_io_session module~m_ibm->module~m_mesh module~m_io_session->module~m_logger 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_backend m_io_backend module~m_io_session->module~m_io_backend module~m_io_base m_io_base module~m_io_session->module~m_io_base module~m_les->module~m_config module~m_les->module~m_logger module~m_les->module~m_base_backend module~m_les->module~m_common module~m_les->module~m_field module~m_les->module~m_mesh module~m_les->module~m_tdsops module~m_mesh->module~m_logger module~m_mesh->m_mpi module~m_mesh->module~m_common module~m_mesh->module~m_field module~m_mesh_content m_mesh_content module~m_mesh->module~m_mesh_content module~m_scalar_series->module~m_logger module~m_scalar_series->module~m_common module~m_snapshot_manager->module~m_config module~m_snapshot_manager->module~m_logger module~m_snapshot_manager->module~m_solver module~m_snapshot_manager->m_mpi module~m_snapshot_manager->module~m_common module~m_snapshot_manager->module~m_field module~m_snapshot_manager->module~m_io_session module~m_snapshot_manager->module~m_io_field_utils module~m_stats->module~m_config module~m_stats->module~m_logger module~m_stats->module~m_solver module~m_stats->module~m_common module~m_stats->module~m_field module~m_stats->module~m_io_session module~m_tdsops->module~m_logger module~m_tdsops->module~m_common module~m_tdsops_setup->module~m_logger module~m_tdsops_setup->module~m_base_backend module~m_tdsops_setup->module~m_common module~m_tdsops_setup->module~m_mesh module~m_tdsops_setup->module~m_tdsops module~m_time_integrator->module~m_logger 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_vector_calculus->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_tdsops module~m_alm_airfoil->module~m_logger module~m_alm_airfoil->module~m_common module~m_io_backend->module~m_logger module~m_io_backend->module~m_base_backend module~m_io_backend->module~m_common module~m_io_backend->module~m_field module~m_io_backend->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_io_field_utils->module~m_logger module~m_io_field_utils->module~m_solver module~m_io_field_utils->module~m_common module~m_io_field_utils->module~m_field module~m_io_field_utils->module~m_io_base module~m_nvtx m_nvtx module~m_io_field_utils->module~m_nvtx module~m_mesh_content->module~m_logger module~m_mesh_content->module~m_common module~m_poisson_fft->module~m_logger module~m_poisson_fft->module~m_common module~m_poisson_fft->module~m_field module~m_poisson_fft->module~m_mesh module~m_poisson_fft->module~m_tdsops module~m_nvtx->iso_c_binding

Used by

  • module~~m_turbine_setup~~UsedByGraph module~m_turbine_setup m_turbine_setup module~m_case_abl m_case_abl module~m_case_abl->module~m_turbine_setup module~m_case_wind_turbine m_case_wind_turbine module~m_case_wind_turbine->module~m_turbine_setup module~m_case_factory m_case_factory module~m_case_factory->module~m_case_abl module~m_case_factory->module~m_case_wind_turbine module~m_memcheck_build m_memcheck_build module~m_memcheck_build->module~m_case_abl module~m_memcheck_build->module~m_case_factory program~x3d2_memcheck x3d2_memcheck program~x3d2_memcheck->module~m_memcheck_build program~xcompact xcompact program~xcompact->module~m_case_factory

Subroutines

public subroutine init_turbine_model(turbine, cfg, solver, io_mgr)

Allocate the turbine model wind_turbine_nml selects, initialise it and register it for checkpointing

Arguments

Type IntentOptional Attributes Name
class(turbine_model_t), intent(inout), pointer :: turbine
type(wind_turbine_config_t), intent(in) :: cfg
class(solver_t), intent(in) :: solver
type(io_manager_t), intent(inout) :: io_mgr

public subroutine finalise_turbine_model(turbine, io_mgr)

Release a turbine model set up by init_turbine_model; a no-op when the case has none

Arguments

Type IntentOptional Attributes Name
class(turbine_model_t), intent(inout), pointer :: turbine
type(io_manager_t), intent(inout) :: io_mgr