Loading [MathJax]/jax/input/TeX/config.js
MFC: Pre-Process
High-fidelity multiphase flow simulation
All Classes Namespaces Files Functions Variables Pages
m_initial_condition Module Reference

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. More...

Functions/Subroutines

subroutine s_initialize_initial_condition_module
 Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the module.
 
subroutine s_finalize_initial_condition_module
 Deallocation procedures for the module.
 
subroutine s_generate_initial_condition
 This subroutine peruses the patches and depending on the type of geometry associated with a particular patch, it calls the related subroutine to setup the said geometry on the grid using the primitive variables included with the patch parameters. The subroutine is complete once the primitive variables are converted to conservative ones.
 

Variables

type(scalar_field), dimension(:), allocatable q_prim_vf
 primitive variables
 
type(scalar_field), dimension(:), allocatable q_cons_vf
 conservative variables
 
type(scalar_fieldq_t_sf
 Temperature field.
 
integer, dimension(:, :, :), allocatable patch_id_fp
 Bookkepping variable used to track the patch identities (id) associated with each of the cells in the computational domain. Note that only one patch identity may be associated with any one cell.
 
type(integer_fieldib_markers
 Bookkepping variable used to track whether a given cell is within an immersed boundary. The default is 0, otherwise the value is assigned to the patch ID of the immersed boundary.
 
type(levelset_fieldlevelset
 
type(levelset_norm_fieldlevelset_norm
 

Detailed Description

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.

Function/Subroutine Documentation

◆ s_finalize_initial_condition_module()

subroutine m_initial_condition::s_finalize_initial_condition_module

Deallocation procedures for the module.

◆ s_generate_initial_condition()

subroutine m_initial_condition::s_generate_initial_condition

This subroutine peruses the patches and depending on the type of geometry associated with a particular patch, it calls the related subroutine to setup the said geometry on the grid using the primitive variables included with the patch parameters. The subroutine is complete once the primitive variables are converted to conservative ones.

ICPP Patches

IB Patches

ICPP Patches

IB Patches

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

◆ s_initialize_initial_condition_module()

subroutine m_initial_condition::s_initialize_initial_condition_module

Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the module.

Here is the caller graph for this function:

Variable Documentation

◆ ib_markers

type(integer_field) m_initial_condition::ib_markers

Bookkepping variable used to track whether a given cell is within an immersed boundary. The default is 0, otherwise the value is assigned to the patch ID of the immersed boundary.

◆ levelset

type(levelset_field) m_initial_condition::levelset

◆ levelset_norm

type(levelset_norm_field) m_initial_condition::levelset_norm

◆ patch_id_fp

integer, dimension(:, :, :), allocatable m_initial_condition::patch_id_fp

Bookkepping variable used to track the patch identities (id) associated with each of the cells in the computational domain. Note that only one patch identity may be associated with any one cell.

◆ q_cons_vf

type(scalar_field), dimension(:), allocatable m_initial_condition::q_cons_vf

conservative variables

◆ q_prim_vf

type(scalar_field), dimension(:), allocatable m_initial_condition::q_prim_vf

primitive variables

◆ q_t_sf

type(scalar_field) m_initial_condition::q_t_sf

Temperature field.