MFC:Post_process  v1.0
m_data_output Module Reference

This module enables the restructuring of the raw simulation data file(s) into formatted database file(s). The formats that may be chosen from include Silo-HDF5 and Binary. Each of these database structures contains information about the grid as well as each of the flow variable(s) that were chosen by the user to be included. More...

Functions/Subroutines

subroutine, public s_initialize_data_output_module ()
 Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the module. More...
 
subroutine, public s_open_formatted_database_file (t_step)
 This subroutine opens a new formatted database file, or replaces an old one, and readies it for the data storage of the grid and the flow variable(s) associated with the current time-step, t_step. This is performed by all the local process(es). The root processor, in addition, must also generate a master formatted database file whose job will be to link, and thus combine, the data from all of the local process(es). Note that for the Binary format, this extra task that is assigned to the root process is not performed in multidimensions. More...
 
subroutine s_coarsen_variable ()
 The purpose of this subroutine is to coarsen any variable that is to be written to the formatted database file by averaging every two cells together into a single value. This averaging is done separately in each dimension. More...
 
subroutine, public s_close_formatted_database_file ()
 The purpose of this subroutine is to close any formatted database file(s) that may be opened at the time-step that is currently being post-processed. The root process must typically close two files, one associated with the local sub-domain and the other with the entire domain. The non- root process(es) must close one file, which is associated with the local sub-domain. Note that for the Binary data- base format and multidimensional data, the root process only has to close the file associated with the local sub- domain, because one associated with the entire domain is not generated. More...
 
subroutine, public s_finalize_data_output_module ()
 Deallocation procedures for the module. More...
 

Variables

integer, dimension(:), allocatable dims
 For Silo-HDF5 database format, this variable is used to keep track of the number of cell-boundaries, for the grid associated with the local process, in each of the active coordinate directions. More...
 
integer dbvars
 The total number of flow variable(s) to be stored in a formatted database file. Note that this is only needed when using the Binary format. More...
 
Generic storage for flow variable(s) that are to be written to formatted

database file(s). Note that for 1D simulations, q_root_sf is employed to gather the flow variable(s) from all sub-domains on to the root process. If the run is not parallel, but serial, then q_root_sf is equal to q_sf.

real(kind(0d0)), dimension(:,:,:), allocatable, public q_sf
 
real(kind(0d0)), dimension(:,:,:), allocatable, public dft_q_sf
 
real(kind(0d0)), dimension(:,:,:), allocatable coarse_x_q_sf
 
real(kind(0d0)), dimension(:,:,:), allocatable coarse_xy_q_sf
 
real(kind(0d0)), dimension(:,:,:), allocatable coarse_xyz_q_sf
 
real(kind(0d0)), dimension(:,:,:), allocatable q_root_sf
 
real(kind(0d0)), dimension(:,:,:), allocatable cyl_q_sf
 
real(kind(0d0)), dimension(:,:,:), allocatable cyl_coarse_q_sf
 
The spatial and data extents array variables contain information about the

minimum and maximum values of the grid and flow variable(s), respectively. The purpose of bookkeeping this information is to boost the visualization of the Silo-HDF5 database file(s) in VisIt.

real(kind(0d0)), dimension(:,:), allocatable spatial_extents
 
real(kind(0d0)), dimension(:,:), allocatable data_extents
 
The size of the ghost zone layer at beginning of each coordinate direction

(lo) and at end of each coordinate direction (hi). Adding this information to Silo-HDF5 database file(s) is recommended since it supplies VisIt with connectivity information between the sub-domains of a parallel data set.

integer, dimension(:), allocatable lo_offset
 
integer, dimension(:), allocatable hi_offset
 
Locations of various folders in the case's directory tree, associated with

the choice of the formatted database format. These include, in order, the location of the folder named after the selected formatted database format, and the locations of two sub-directories of the latter, the first of which is named after the local processor rank, while the second is named 'root'. The folder associated with the local processor rank contains only the data pertaining to the part of the domain taken care of by the local processor. The root directory, on the other hand, will contain either the information about the connectivity required to put the entire domain back together, or the actual data associated with the entire computational domain. This all depends on dimensionality and the choice of the formatted database format.

character(len=path_len+name_len) dbdir
 
character(len=path_len+2 *name_len) proc_rank_dir
 
character(len=path_len+2 *name_len) rootdir
 
Handles of the formatted database master/root file, slave/local processor

file and options list. The list of options is explicitly used in the Silo- HDF5 database format to provide additional details about the contents of a formatted database file, such as the previously described spatial and data extents.

integer dbroot
 
integer dbfile
 
integer optlist
 
Generic error flags utilized in the handling, checking and the reporting

of the input and output operations errors with a formatted database file

integer, private err
 
integer, private ierr
 

Detailed Description

This module enables the restructuring of the raw simulation data file(s) into formatted database file(s). The formats that may be chosen from include Silo-HDF5 and Binary. Each of these database structures contains information about the grid as well as each of the flow variable(s) that were chosen by the user to be included.

Function/Subroutine Documentation

◆ s_close_formatted_database_file()

subroutine, public m_data_output::s_close_formatted_database_file ( )

The purpose of this subroutine is to close any formatted database file(s) that may be opened at the time-step that is currently being post-processed. The root process must typically close two files, one associated with the local sub-domain and the other with the entire domain. The non- root process(es) must close one file, which is associated with the local sub-domain. Note that for the Binary data- base format and multidimensional data, the root process only has to close the file associated with the local sub- domain, because one associated with the entire domain is not generated.

Definition at line 1166 of file m_data_output.f90.

Here is the caller graph for this function:

◆ s_coarsen_variable()

subroutine m_data_output::s_coarsen_variable ( )

The purpose of this subroutine is to coarsen any variable that is to be written to the formatted database file by averaging every two cells together into a single value. This averaging is done separately in each dimension.

Definition at line 1114 of file m_data_output.f90.

◆ s_finalize_data_output_module()

subroutine, public m_data_output::s_finalize_data_output_module ( )

Deallocation procedures for the module.

Definition at line 1186 of file m_data_output.f90.

Here is the caller graph for this function:

◆ s_initialize_data_output_module()

subroutine, public m_data_output::s_initialize_data_output_module ( )

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

Definition at line 149 of file m_data_output.f90.

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

◆ s_open_formatted_database_file()

subroutine, public m_data_output::s_open_formatted_database_file ( integer, intent(in)  t_step)

This subroutine opens a new formatted database file, or replaces an old one, and readies it for the data storage of the grid and the flow variable(s) associated with the current time-step, t_step. This is performed by all the local process(es). The root processor, in addition, must also generate a master formatted database file whose job will be to link, and thus combine, the data from all of the local process(es). Note that for the Binary format, this extra task that is assigned to the root process is not performed in multidimensions.

Parameters
t_stepTime-step that is currently being post-processed

Definition at line 517 of file m_data_output.f90.

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

Variable Documentation

◆ coarse_x_q_sf

real(kind(0d0)), dimension(:,:,:), allocatable m_data_output::coarse_x_q_sf

Definition at line 75 of file m_data_output.f90.

◆ coarse_xy_q_sf

real(kind(0d0)), dimension(:,:,:), allocatable m_data_output::coarse_xy_q_sf

Definition at line 76 of file m_data_output.f90.

◆ coarse_xyz_q_sf

real(kind(0d0)), dimension(:,:,:), allocatable m_data_output::coarse_xyz_q_sf

Definition at line 77 of file m_data_output.f90.

◆ cyl_coarse_q_sf

real(kind(0d0)), dimension(:,:,:), allocatable m_data_output::cyl_coarse_q_sf

Definition at line 80 of file m_data_output.f90.

◆ cyl_q_sf

real(kind(0d0)), dimension(:,:,:), allocatable m_data_output::cyl_q_sf

Definition at line 79 of file m_data_output.f90.

◆ data_extents

real(kind(0d0)), dimension(:,:), allocatable m_data_output::data_extents

Definition at line 89 of file m_data_output.f90.

◆ dbdir

character(len = path_len + name_len) m_data_output::dbdir

Definition at line 118 of file m_data_output.f90.

◆ dbfile

integer m_data_output::dbfile

Definition at line 130 of file m_data_output.f90.

◆ dbroot

integer m_data_output::dbroot

Definition at line 129 of file m_data_output.f90.

◆ dbvars

integer m_data_output::dbvars

The total number of flow variable(s) to be stored in a formatted database file. Note that this is only needed when using the Binary format.

Definition at line 134 of file m_data_output.f90.

◆ dft_q_sf

real(kind(0d0)), dimension(:,:,:), allocatable, public m_data_output::dft_q_sf

Definition at line 74 of file m_data_output.f90.

◆ dims

integer, dimension(:), allocatable m_data_output::dims

For Silo-HDF5 database format, this variable is used to keep track of the number of cell-boundaries, for the grid associated with the local process, in each of the active coordinate directions.

Definition at line 101 of file m_data_output.f90.

◆ err

integer, private m_data_output::err
private

Definition at line 141 of file m_data_output.f90.

◆ hi_offset

integer, dimension(:), allocatable m_data_output::hi_offset

Definition at line 98 of file m_data_output.f90.

◆ ierr

integer, private m_data_output::ierr
private

Definition at line 141 of file m_data_output.f90.

◆ lo_offset

integer, dimension(:), allocatable m_data_output::lo_offset

Definition at line 97 of file m_data_output.f90.

◆ optlist

integer m_data_output::optlist

Definition at line 131 of file m_data_output.f90.

◆ proc_rank_dir

character(len = path_len + 2*name_len) m_data_output::proc_rank_dir

Definition at line 119 of file m_data_output.f90.

◆ q_root_sf

real(kind(0d0)), dimension(:,:,:), allocatable m_data_output::q_root_sf

Definition at line 78 of file m_data_output.f90.

◆ q_sf

real(kind(0d0)), dimension(:,:,:), allocatable, public m_data_output::q_sf

Definition at line 73 of file m_data_output.f90.

◆ rootdir

character(len = path_len + 2*name_len) m_data_output::rootdir

Definition at line 120 of file m_data_output.f90.

◆ spatial_extents

real(kind(0d0)), dimension(:,:), allocatable m_data_output::spatial_extents

Definition at line 88 of file m_data_output.f90.