run Subroutine

public subroutine run(self)

Runs the solver forwards in time from t=t_0 to t=T, performing postprocessing/IO and reporting diagnostics.

Type Bound

base_case_t

Arguments

Type IntentOptional Attributes Name
class(base_case_t), intent(inout) :: self

Calls

proc~~run~~CallsGraph proc~run m_base_case::base_case_t%run boundary_conditions boundary_conditions proc~run->boundary_conditions forcings forcings proc~run->forcings none~body m_ibm::ibm_t%body proc~run->none~body none~handle_io_step m_io_manager::io_manager_t%handle_io_step proc~run->none~handle_io_step none~is_restart~2 m_io_manager::io_manager_t%is_restart proc~run->none~is_restart~2 postprocess postprocess proc~run->postprocess pre_correction pre_correction proc~run->pre_correction proc~case_finalise m_base_case::base_case_t%case_finalise proc~run->proc~case_finalise proc~get_block m_allocator::allocator_t%get_block proc~run->proc~get_block proc~is_root m_mesh_content::par_t%is_root proc~run->proc~is_root proc~pressure_correction m_solver::solver_t%pressure_correction proc~run->proc~pressure_correction proc~release_block m_allocator::allocator_t%release_block proc~run->proc~release_block vecmult vecmult none~body->vecmult none~handle_checkpoint_step m_checkpoint_manager::checkpoint_manager_t%handle_checkpoint_step none~handle_io_step->none~handle_checkpoint_step none~handle_snapshot_step m_snapshot_manager::snapshot_manager_t%handle_snapshot_step none~handle_io_step->none~handle_snapshot_step none~is_restart m_checkpoint_manager::checkpoint_manager_t%is_restart none~is_restart~2->none~is_restart proc~case_finalise->proc~is_root none~finalise~7 m_io_manager::io_manager_t%finalise proc~case_finalise->none~finalise~7 proc~create_block m_allocator::allocator_t%create_block proc~get_block->proc~create_block proc~set_shape m_field::field_t%set_shape proc~get_block->proc~set_shape proc~pressure_correction->proc~get_block proc~pressure_correction->proc~release_block proc~divergence_v2p m_solver::solver_t%divergence_v2p proc~pressure_correction->proc~divergence_v2p proc~gradient_p2v m_solver::solver_t%gradient_p2v proc~pressure_correction->proc~gradient_p2v vecadd vecadd proc~pressure_correction->vecadd none~finalise~4 m_checkpoint_manager::checkpoint_manager_t%finalise none~finalise~7->none~finalise~4 mpi_comm_rank mpi_comm_rank none~handle_checkpoint_step->mpi_comm_rank none~is_session_functional m_io_session::io_session_base_t%is_session_functional none~handle_checkpoint_step->none~is_session_functional none~write_data m_io_session::writer_session_t%write_data none~handle_checkpoint_step->none~write_data proc~cleanup_field_arrays m_io_field_utils::cleanup_field_arrays none~handle_checkpoint_step->proc~cleanup_field_arrays proc~get_dims m_mesh::mesh_t%get_dims none~handle_checkpoint_step->proc~get_dims proc~get_global_dims m_mesh::mesh_t%get_global_dims none~handle_checkpoint_step->proc~get_global_dims proc~get_output_dimensions m_io_field_utils::get_output_dimensions none~handle_checkpoint_step->proc~get_output_dimensions proc~prepare_field_buffers m_io_field_utils::prepare_field_buffers none~handle_checkpoint_step->proc~prepare_field_buffers proc~setup_field_arrays m_io_field_utils::setup_field_arrays none~handle_checkpoint_step->proc~setup_field_arrays proc~write_single_field_to_buffer m_io_field_utils::write_single_field_to_buffer none~handle_checkpoint_step->proc~write_single_field_to_buffer none~handle_snapshot_step->mpi_comm_rank none~handle_snapshot_step->none~is_session_functional none~write_attribute m_io_session::writer_session_t%write_attribute none~handle_snapshot_step->none~write_attribute none~handle_snapshot_step->none~write_data none~handle_snapshot_step->proc~cleanup_field_arrays proc~get_coordinates m_mesh::mesh_t%get_coordinates none~handle_snapshot_step->proc~get_coordinates none~handle_snapshot_step->proc~get_dims none~handle_snapshot_step->proc~get_global_dims none~handle_snapshot_step->proc~get_output_dimensions none~handle_snapshot_step->proc~prepare_field_buffers none~handle_snapshot_step->proc~setup_field_arrays none~handle_snapshot_step->proc~write_single_field_to_buffer proc~divergence_v2c m_vector_calculus::vector_calculus_t%divergence_v2c proc~divergence_v2p->proc~divergence_v2c proc~gradient_c2v m_vector_calculus::vector_calculus_t%gradient_c2v proc~gradient_p2v->proc~gradient_c2v proc~cleanup_field_buffers m_io_field_utils::cleanup_field_buffers none~finalise~4->proc~cleanup_field_buffers none~write_attribute~2 m_io_base::io_writer_t%write_attribute none~write_attribute->none~write_attribute~2 none~write_data~2 m_io_base::io_writer_t%write_data none~write_data->none~write_data~2 proc~cleanup_field_arrays->proc~release_block proc~divergence_v2c->proc~get_block proc~divergence_v2c->proc~release_block proc~divergence_v2c->vecadd reorder reorder proc~divergence_v2c->reorder tds_solve tds_solve proc~divergence_v2c->tds_solve proc~get_dims_dataloc m_mesh::get_dims_dataloc proc~get_dims->proc~get_dims_dataloc proc~get_global_dims->proc~get_dims_dataloc proc~gradient_c2v->proc~get_block proc~gradient_c2v->proc~release_block proc~gradient_c2v->reorder proc~gradient_c2v->tds_solve proc~prepare_field_buffers->proc~get_dims proc~prepare_field_buffers->proc~get_global_dims proc~prepare_field_buffers->proc~get_output_dimensions proc~setup_field_arrays->proc~get_block proc~setup_field_arrays->proc~is_root proc~get_field_data m_base_backend::base_backend_t%get_field_data proc~setup_field_arrays->proc~get_field_data proc~write_single_field_to_buffer->proc~get_dims proc~write_single_field_to_buffer->proc~get_global_dims proc~write_single_field_to_buffer->proc~get_output_dimensions proc~stride_data_to_buffer m_io_field_utils::stride_data_to_buffer proc~write_single_field_to_buffer->proc~stride_data_to_buffer proc~get_field_data->proc~get_block proc~get_field_data->proc~release_block proc~get_field_data->reorder copy_f_to_data copy_f_to_data proc~get_field_data->copy_f_to_data proc~get_rdr_from_dirs m_common::get_rdr_from_dirs proc~get_field_data->proc~get_rdr_from_dirs

Called by

proc~~run~~CalledByGraph proc~run m_base_case::base_case_t%run program~xcompact xcompact program~xcompact->proc~run