MFC: Pre-Process
High-fidelity multiphase flow simulation
|
Mm_assign_variables | |
Mm_boundary_conditions | The purpose of the module is to apply noncharacteristic and processor boundary condiitons |
Mm_compile_specific | This module contains subroutines that are compiler specific |
Mm_constants | |
Mm_data_output | This module takes care of writing the grid and initial condition data files into the "0" time-step directory located in the folder associated with the rank of the local processor, which is a sub- directory of the case folder specified by the user in the input file pre_process.inp |
Mm_delay_file_access | |
Mm_eigen_solver | The purpose of the module is to solve an eigenvalue problem for a complex general matrix. Subroutines are imported from EISPACK (https://netlib.org/eispack/) with minor modifications for compatibility |
Mm_finite_differences | |
Mm_global_parameters | This module contains all of the parameters characterizing the computational domain, simulation algorithm, initial condition and the stiffened equation of state |
Mm_grid | This module takes care of creating the rectilinear grid on which the data for the initial condition will be laid out and on which the simulation will eventually be computed. The grid may either be uniform or non-uniform. Non-uniform grids are generated using the hyperbolic tangent function, see Johnsen (2007) for details. Alternatively to synthesizing a new grid, the user may select to read in a preexisting one. This is carried out through the module m_start_up.f90. In such a case, the responsibility of this module becomes only to allocate/deallocate the necessary grid variables for the cell-centers and cell-boundaries locations |
Mm_helper_basic | |
Mm_initial_condition | This module provides a platform that is analogous to constructive solid geometry techniques and in this way allows for the creation of a wide variety of initial conditions. Several 1D, 2D and 3D fundamental geometries are included that may further be combined into more complex shapes. This is achieved by carefully setting up the order in which the patches are laid out in the domain and specifying the priority that each patch has over the preceding ones. The resulting shapes may be identified both by the values of their primitive variables and the associated patch identities. Note that the user may choose to read in and modify a preexisting initial condition. The module m_start_up.f90 is responsible for reading in the relevant data files |
Mm_mpi_proxy | This module serves as a proxy to the parameters and subroutines available in the MPI implementation's MPI module. Specifically, the role of the proxy is to harness basic MPI commands into more complex procedures as to achieve the required pre-processing communication goals |
Mm_nvtx | |
Mm_perturbation | This module contains subroutines that compute perturbations to the initial mean flow fields |
Mm_precision_select | This file contains the definition of floating point used in MFC |
Mm_start_up | This module contains subroutines that read, and check consistency of, the user provided inputs, grid and data. This module also allocates and initializes the relevant variables sets up the mpi decomposition and initial condition procedures |