13 logical :: file_exists
14 real(wp) :: start, finish, time_avg, time_final
15 real(wp),
allocatable,
dimension(:) :: proc_time
31 time_avg = abs(finish - start)
33 call s_save_data(proc_time, time_avg, time_final, file_exists)
35 deallocate (proc_time)
Defines global parameters for the computational domain, simulation algorithm, and initial conditions.
integer num_procs
Number of processors.
Reads and validates user inputs, loads existing grid/IC data, and initializes pre-process modules.
impure subroutine, public s_initialize_modules
Initialize all pre-process modules, allocate data structures, and set I/O procedure pointers.
impure subroutine, public s_save_data(proc_time, time_avg, time_final, file_exists)
Gather processor timing data and write elapsed wall-clock time to a summary file.
impure subroutine, public s_apply_initial_condition(start, finish)
Generate or read the initial condition, apply relaxation if needed, and write output data files.
impure subroutine, public s_read_grid()
Read an existing grid from data files or generate a new grid from user inputs.
impure subroutine, public s_initialize_mpi_domain
Initialize MPI, read and validate user inputs on rank 0, and decompose the computational domain.
impure subroutine, public s_finalize_modules
Finalize all pre-process modules, deallocate resources, and shut down MPI.
program p_main
Set up the initial condition and grid data for the multicomponent flow code.