MFC
Exascale flow solver
Loading...
Searching...
No Matches
m_start_up Module Reference

Reads input files, loads initial conditions and grid data, and orchestrates solver initialization and finalization. More...

Functions/Subroutines

impure subroutine, public s_read_data_files (q_cons_vf)
 Read data files. Dispatch subroutine that replaces procedure pointer.
impure subroutine, public s_read_input_file
 The purpose of this procedure is to first verify that an input file has been made available by the user. Provided that this is so, the input file is then read in.
impure subroutine, public s_check_input_file
 The goal of this procedure is to verify that each of the user provided inputs is valid and that their combination constitutes a meaningful configuration for the simulation.
impure subroutine, public s_read_serial_data_files (q_cons_vf)
 Reads serial initial condition and grid data files and computes cell-width distributions.
impure subroutine, public s_read_parallel_data_files (q_cons_vf)
 Reads parallel initial condition and grid data files via MPI I/O.
subroutine, public s_initialize_internal_energy_equations (v_vf)
 The purpose of this procedure is to initialize the values of the internal-energy equations of each phase from the mass of each phase, the mixture momentum and mixture-total-energy equations.
impure subroutine, public s_perform_time_step (t_step, time_avg)
 Advances the simulation by one time step, handling CFL-based dt and time-stepper dispatch.
impure subroutine, public s_save_performance_metrics (time_avg, time_final, io_time_avg, io_time_final, proc_time, io_proc_time, file_exists)
 Collects per-process wall-clock times and writes aggregate performance metrics to file.
impure subroutine, public s_save_data (t_step, start, finish, io_time_avg, nt)
 Saves conservative variable data to disk at the current time step.
impure subroutine, public s_initialize_modules
 Initializes all simulation sub-modules in the required dependency order.
impure subroutine, public s_initialize_mpi_domain
 Sets up the MPI execution environment, binds GPUs, and decomposes the computational domain.
subroutine, public s_initialize_gpu_vars
 Transfers initial conservative variable and model parameter data to the GPU device.
impure subroutine, public s_finalize_modules
 Finalizes and deallocates all simulation sub-modules in reverse initialization order.

Variables

type(scalar_field), dimension(:), allocatable q_cons_temp
real(wpdt_init

Detailed Description

Reads input files, loads initial conditions and grid data, and orchestrates solver initialization and finalization.

Function/Subroutine Documentation

◆ s_check_input_file()

impure subroutine, public m_start_up::s_check_input_file

The goal of this procedure is to verify that each of the user provided inputs is valid and that their combination constitutes a meaningful configuration for the simulation.

Definition at line 536 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_finalize_modules()

impure subroutine, public m_start_up::s_finalize_modules

Finalizes and deallocates all simulation sub-modules in reverse initialization order.

Definition at line 1931 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_initialize_gpu_vars()

subroutine, public m_start_up::s_initialize_gpu_vars

Transfers initial conservative variable and model parameter data to the GPU device.

Definition at line 1650 of file m_start_up.fpp.f90.

Here is the caller graph for this function:

◆ s_initialize_internal_energy_equations()

subroutine, public m_start_up::s_initialize_internal_energy_equations ( type(scalar_field), dimension(sys_size), intent(inout) v_vf)

The purpose of this procedure is to initialize the values of the internal-energy equations of each phase from the mass of each phase, the mixture momentum and mixture-total-energy equations.

Parameters
v_vfconservative variables

Definition at line 1034 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_initialize_modules()

impure subroutine, public m_start_up::s_initialize_modules

Initializes all simulation sub-modules in the required dependency order.

Definition at line 1457 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_initialize_mpi_domain()

impure subroutine, public m_start_up::s_initialize_mpi_domain

Sets up the MPI execution environment, binds GPUs, and decomposes the computational domain.

Definition at line 1572 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_perform_time_step()

impure subroutine, public m_start_up::s_perform_time_step ( integer, intent(inout) t_step,
real(wp), intent(inout) time_avg )

Advances the simulation by one time step, handling CFL-based dt and time-stepper dispatch.

Definition at line 1097 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_read_data_files()

impure subroutine, public m_start_up::s_read_data_files ( type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf)

Read data files. Dispatch subroutine that replaces procedure pointer.

Parameters
q_cons_vfConservative variables

Definition at line 414 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_read_input_file()

impure subroutine, public m_start_up::s_read_input_file

The purpose of this procedure is to first verify that an input file has been made available by the user. Provided that this is so, the input file is then read in.

Definition at line 431 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_read_parallel_data_files()

impure subroutine, public m_start_up::s_read_parallel_data_files ( type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf)

Reads parallel initial condition and grid data files via MPI I/O.

Parameters
q_cons_vfConservative variables

Definition at line 725 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_read_serial_data_files()

impure subroutine, public m_start_up::s_read_serial_data_files ( type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf)

Reads serial initial condition and grid data files and computes cell-width distributions.

Parameters
q_cons_vfCell-averaged conservative variables

Definition at line 560 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_save_data()

impure subroutine, public m_start_up::s_save_data ( integer, intent(inout) t_step,
real(wp), intent(inout) start,
real(wp), intent(inout) finish,
real(wp), intent(inout) io_time_avg,
integer, intent(inout) nt )

Saves conservative variable data to disk at the current time step.

Definition at line 1263 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_save_performance_metrics()

impure subroutine, public m_start_up::s_save_performance_metrics ( real(wp), intent(inout) time_avg,
real(wp), intent(inout) time_final,
real(wp), intent(inout) io_time_avg,
real(wp), intent(inout) io_time_final,
real(wp), dimension(:), intent(inout) proc_time,
real(wp), dimension(:), intent(inout) io_proc_time,
logical, intent(inout) file_exists )

Collects per-process wall-clock times and writes aggregate performance metrics to file.

Definition at line 1201 of file m_start_up.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ dt_init

real(wp) m_start_up::dt_init

Definition at line 408 of file m_start_up.fpp.f90.

◆ q_cons_temp

type(scalar_field), dimension(:), allocatable m_start_up::q_cons_temp

Definition at line 406 of file m_start_up.fpp.f90.