15 logical :: file_exists
16 real(wp) :: start, finish, time_avg, time_final
17 real(wp),
allocatable,
dimension(:) :: proc_time
33 time_avg = abs(finish - start)
35 call s_save_data(proc_time, time_avg, time_final, file_exists)
37 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
Initializes all pre-process modules, allocates data structures, and sets I/O procedure pointers.
impure subroutine, public s_save_data(proc_time, time_avg, time_final, file_exists)
Gathers processor timing data and writes elapsed wall-clock time to a summary file.
impure subroutine, public s_apply_initial_condition(start, finish)
Generates or reads the initial condition, applies relaxation if needed, and writes output data files.
impure subroutine, public s_read_grid()
Reads an existing grid from data files or generates a new grid from user inputs.
impure subroutine, public s_initialize_mpi_domain
Initializes MPI, reads and validates user inputs on rank 0, and decomposes the computational domain.
impure subroutine, public s_finalize_modules
Finalizes all pre-process modules, deallocates resources, and shuts down MPI.
program p_main
This program takes care of setting up the initial condition and grid data for the multicomponent flow...