|
MFC
Exascale flow solver
|
Allocate memory and read initial condition data for IC extrusion. More...
Functions/Subroutines | |
| impure subroutine, public | s_apply_ib_patches (ib_markers) |
| Apply all immersed boundary patch geometries to mark interior cells in the IB marker array. | |
| subroutine | s_apply_ib_patches_grid_cell_parallelism (ib_markers) |
| subroutine | s_apply_ib_patches_ib_parallelism (ib_markers) |
| subroutine, public | s_initialize_ib_airfoils () |
| Initialize the NACA surface grids for all airfoil IB patches. Must be called after the grid is established (so dx is valid) and before s_apply_ib_patches or s_apply_levelset. | |
| subroutine, public | s_update_ib_rotation_matrix (patch_id) |
| Compute a rotation matrix for converting to the rotating frame of the boundary. | |
| subroutine | get_bounding_indices (patch, center, il, ir, jl, jr, kl, kr) |
| subroutine | get_indices_from_bounds (left_bound, right_bound, cell_centers, left_index, right_index) |
| subroutine, public | s_encode_patch_periodicity (patch_id, x_periodicity, y_periodicity, z_periodicity, encoded_patch_id) |
| Encode the patch ID with a unique offset containing periodicity information. | |
| subroutine, public | s_decode_patch_periodicity (encoded_patch_id, patch_id, x_periodicity, y_periodicity, z_periodicity) |
| Decode the encoded ID to recover the original patch ID and periodicity. | |
| subroutine, public | s_get_periodicities (xp_lower, xp_upper, yp_lower, yp_upper, zp_lower, zp_upper) |
| Determine the periodic wrapping bounds in each direction. | |
| pure elemental real(wp) function | f_r (myth, offset, a) |
| Archimedes spiral function. | |
Allocate memory and read initial condition data for IC extrusion.
This macro handles the complete initialization process for IC extrusion by:
Memory Allocation:
File Reading Operations:
Grid Structure Detection:
MPI Domain Mapping:
Data Assignment:
State Management:
Immersed boundary patch geometry constructors for 2D and 3D shapes
| pure elemental real(wp) function m_ib_patches::f_r | ( | real(wp), intent(in) | myth, |
| real(wp), intent(in) | offset, | ||
| real(wp), intent(in) | a ) |
Archimedes spiral function.
Definition at line 1390 of file m_ib_patches.fpp.f90.
| subroutine m_ib_patches::get_bounding_indices | ( | type(ib_patch_parameters), intent(in) | patch, |
| real(wp), dimension(3), intent(in) | center, | ||
| integer, intent(out) | il, | ||
| integer, intent(out) | ir, | ||
| integer, intent(out) | jl, | ||
| integer, intent(out) | jr, | ||
| integer, intent(out) | kl, | ||
| integer, intent(out) | kr ) |
Definition at line 1087 of file m_ib_patches.fpp.f90.
| impure subroutine, public m_ib_patches::s_apply_ib_patches | ( | type(integer_field), intent(inout) | ib_markers | ) |
Apply all immersed boundary patch geometries to mark interior cells in the IB marker array.
Definition at line 411 of file m_ib_patches.fpp.f90.
| subroutine m_ib_patches::s_apply_ib_patches_grid_cell_parallelism | ( | type(integer_field), intent(inout) | ib_markers | ) |
Definition at line 423 of file m_ib_patches.fpp.f90.
| subroutine m_ib_patches::s_apply_ib_patches_ib_parallelism | ( | type(integer_field), intent(inout) | ib_markers | ) |
Definition at line 649 of file m_ib_patches.fpp.f90.
| subroutine, public m_ib_patches::s_decode_patch_periodicity | ( | integer, intent(in) | encoded_patch_id, |
| integer, intent(out) | patch_id, | ||
| integer, intent(out), optional | x_periodicity, | ||
| integer, intent(out), optional | y_periodicity, | ||
| integer, intent(out), optional | z_periodicity ) |
Decode the encoded ID to recover the original patch ID and periodicity.
Definition at line 1301 of file m_ib_patches.fpp.f90.
| subroutine, public m_ib_patches::s_encode_patch_periodicity | ( | integer, intent(in) | patch_id, |
| integer, intent(in) | x_periodicity, | ||
| integer, intent(in) | y_periodicity, | ||
| integer, intent(in) | z_periodicity, | ||
| integer, intent(out) | encoded_patch_id ) |
Encode the patch ID with a unique offset containing periodicity information.
Definition at line 1267 of file m_ib_patches.fpp.f90.
| subroutine, public m_ib_patches::s_get_periodicities | ( | integer, intent(out) | xp_lower, |
| integer, intent(out) | xp_upper, | ||
| integer, intent(out) | yp_lower, | ||
| integer, intent(out) | yp_upper, | ||
| integer, intent(out), optional | zp_lower, | ||
| integer, intent(out), optional | zp_upper ) |
Determine the periodic wrapping bounds in each direction.
Definition at line 1344 of file m_ib_patches.fpp.f90.
| subroutine, public m_ib_patches::s_initialize_ib_airfoils |
Initialize the NACA surface grids for all airfoil IB patches. Must be called after the grid is established (so dx is valid) and before s_apply_ib_patches or s_apply_levelset.
Definition at line 860 of file m_ib_patches.fpp.f90.
| subroutine, public m_ib_patches::s_update_ib_rotation_matrix | ( | integer, intent(in) | patch_id | ) |
Compute a rotation matrix for converting to the rotating frame of the boundary.
Definition at line 1027 of file m_ib_patches.fpp.f90.