Child helper class for ucd mesh, e.g. CAM_SE (HOMME) or MPAS. More...
#include <NCHelper.hpp>
Public Member Functions | |
UcdNCHelper (ReadNC *readNC, int fileId, const FileOptions &opts, EntityHandle fileSet) | |
virtual | ~UcdNCHelper () |
Public Member Functions inherited from moab::NCHelper | |
NCHelper (ReadNC *readNC, int fileId, const FileOptions &opts, EntityHandle fileSet) | |
virtual | ~NCHelper () |
virtual ErrorCode | init_mesh_vals ()=0 |
Interfaces to be implemented in child classes. More... | |
virtual ErrorCode | check_existing_mesh ()=0 |
virtual ErrorCode | create_mesh (Range &faces)=0 |
virtual std::string | get_mesh_type_name ()=0 |
ErrorCode | create_conventional_tags (const std::vector< int > &tstep_nums) |
Create NC conventional tags. More... | |
ErrorCode | update_time_tag_vals () |
Update time tag values if timesteps spread across files. More... | |
Protected Member Functions | |
template<typename T > | |
void | kji_to_jik_stride (size_t, size_t nj, size_t nk, void *dest, T *source, Range &localGid) |
This version takes as input the moab range, from which we actually need just the size of each sequence, for a proper transpose of the data. More... | |
Protected Member Functions inherited from moab::NCHelper | |
ErrorCode | read_variables_setup (std::vector< std::string > &var_names, std::vector< int > &tstep_nums, std::vector< ReadNC::VarData > &vdatas, std::vector< ReadNC::VarData > &vsetdatas) |
Separate set and non-set variables (common to scd mesh and ucd mesh) More... | |
ErrorCode | read_variables_to_set (std::vector< ReadNC::VarData > &vdatas, std::vector< int > &tstep_nums) |
Read set variables (common to scd mesh and ucd mesh) More... | |
ErrorCode | read_coordinate (const char *var_name, int lmin, int lmax, std::vector< double > &cvals) |
ErrorCode | get_tag_to_set (ReadNC::VarData &var_data, int tstep_num, Tag &tagh) |
ErrorCode | get_tag_to_nonset (ReadNC::VarData &var_data, int tstep_num, Tag &tagh, int num_lev) |
ErrorCode | create_attrib_string (const std::map< std::string, ReadNC::AttData > &attMap, std::string &attString, std::vector< int > &attLen) |
Create a character string attString of attMap. with '\0' terminating each attribute name, ';' separating the data type and value, and ';' separating one name/data type/value from the next'. attLen stores the end position for each name/data type/ value. More... | |
ErrorCode | create_dummy_variables () |
For a dimension that does not have a corresponding coordinate variable (e.g. ncol for HOMME), create a dummy variable with a sparse tag to store the dimension length. More... | |
Protected Attributes | |
int | nCells |
Dimensions of global grid in file. More... | |
int | nEdges |
int | nVertices |
int | nLocalCells |
Dimensions of my local part of grid. More... | |
int | nLocalEdges |
int | nLocalVertices |
std::vector< double > | xVertVals |
Coordinate values for vertices. More... | |
std::vector< double > | yVertVals |
std::vector< double > | zVertVals |
int | cDim |
Dimension numbers for nCells, nEdges and nVertices. More... | |
int | eDim |
int | vDim |
Range | localGidCells |
Local global ID for cells, edges and vertices. More... | |
Range | localGidEdges |
Range | localGidVerts |
Protected Attributes inherited from moab::NCHelper | |
ReadNC * | _readNC |
Allow NCHelper to directly access members of ReadNC. More... | |
int | _fileId |
Cache some information from ReadNC. More... | |
const FileOptions & | _opts |
EntityHandle | _fileSet |
int | nTimeSteps |
Dimensions of time and level. More... | |
int | nLevels |
std::vector< double > | tVals |
Values for time and level. More... | |
std::vector< double > | levVals |
int | tDim |
Dimension numbers for time and level. More... | |
int | levDim |
std::set< std::string > | ignoredVarNames |
Ignored variables. More... | |
std::set< std::string > | dummyVarNames |
Dummy variables. More... | |
Private Member Functions | |
virtual ErrorCode | read_variables (std::vector< std::string > &var_names, std::vector< int > &tstep_nums) |
Implementation of NCHelper::read_variables() More... | |
virtual ErrorCode | read_ucd_variables_to_nonset_allocate (std::vector< ReadNC::VarData > &vdatas, std::vector< int > &tstep_nums)=0 |
Read non-set variables for ucd mesh (implemented differently in child classes) More... | |
virtual ErrorCode | read_ucd_variables_to_nonset (std::vector< ReadNC::VarData > &vdatas, std::vector< int > &tstep_nums)=0 |
Additional Inherited Members | |
Static Public Member Functions inherited from moab::NCHelper | |
static ReadNC::NCFormatType | get_nc_format (ReadNC *readNC, int fileId) |
Get appropriate format to read the file. More... | |
static std::string | get_default_ncformat_options (ReadNC::NCFormatType format) |
Get appropriate format to read the file. More... | |
static NCHelper * | get_nc_helper (ReadNC *readNC, int fileId, const FileOptions &opts, EntityHandle fileSet) |
Get appropriate helper instance for ReadNC class. More... | |
Child helper class for ucd mesh, e.g. CAM_SE (HOMME) or MPAS.
Definition at line 209 of file NCHelper.hpp.
|
inline |
Definition at line 212 of file NCHelper.hpp.
|
inlinevirtual |
Definition at line 217 of file NCHelper.hpp.
|
inlineprotected |
This version takes as input the moab range, from which we actually need just the size of each sequence, for a proper transpose of the data.
Definition at line 238 of file NCHelper.hpp.
References moab::Range::pair_begin(), and moab::Range::pair_end().
Referenced by moab::NCHelperHOMME::read_ucd_variables_to_nonset().
|
privatepure virtual |
Implemented in moab::NCHelperMPAS, moab::NCHelperHOMME, moab::NCHelperGCRM, and moab::NCHelperESMF.
Referenced by read_variables().
|
privatepure virtual |
Read non-set variables for ucd mesh (implemented differently in child classes)
Implemented in moab::NCHelperMPAS, moab::NCHelperHOMME, moab::NCHelperGCRM, and moab::NCHelperESMF.
|
privatevirtual |
Implementation of NCHelper::read_variables()
Implements moab::NCHelper.
Definition at line 1411 of file NCHelper.cpp.
References ErrorCode, MB_CHK_SET_ERR, MB_SUCCESS, read_ucd_variables_to_nonset(), moab::NCHelper::read_variables_setup(), and moab::NCHelper::read_variables_to_set().
|
protected |
Dimension numbers for nCells, nEdges and nVertices.
Definition at line 271 of file NCHelper.hpp.
Referenced by moab::NCHelperESMF::init_mesh_vals(), moab::NCHelperGCRM::init_mesh_vals(), and moab::NCHelperMPAS::init_mesh_vals().
|
protected |
Definition at line 271 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::init_mesh_vals(), and moab::NCHelperMPAS::init_mesh_vals().
|
protected |
Local global ID for cells, edges and vertices.
Definition at line 274 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::check_existing_mesh(), moab::NCHelperMPAS::check_existing_mesh(), moab::NCHelperESMF::create_local_cells(), moab::NCHelperMPAS::create_local_cells(), moab::NCHelperGCRM::create_local_edges(), moab::NCHelperMPAS::create_local_edges(), moab::NCHelperESMF::create_mesh(), moab::NCHelperGCRM::create_mesh(), moab::NCHelperMPAS::create_mesh(), moab::NCHelperESMF::create_padded_local_cells(), moab::NCHelperGCRM::create_padded_local_cells(), moab::NCHelperMPAS::create_padded_local_cells(), moab::NCHelperGCRM::read_ucd_variables_to_nonset(), moab::NCHelperMPAS::read_ucd_variables_to_nonset(), moab::NCHelperGCRM::read_ucd_variables_to_nonset_allocate(), and moab::NCHelperMPAS::read_ucd_variables_to_nonset_allocate().
|
protected |
Definition at line 274 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::check_existing_mesh(), moab::NCHelperMPAS::check_existing_mesh(), moab::NCHelperGCRM::create_local_edges(), moab::NCHelperMPAS::create_local_edges(), moab::NCHelperGCRM::read_ucd_variables_to_nonset(), moab::NCHelperMPAS::read_ucd_variables_to_nonset(), moab::NCHelperGCRM::read_ucd_variables_to_nonset_allocate(), and moab::NCHelperMPAS::read_ucd_variables_to_nonset_allocate().
|
protected |
Definition at line 274 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::check_existing_mesh(), moab::NCHelperHOMME::check_existing_mesh(), moab::NCHelperMPAS::check_existing_mesh(), moab::NCHelperESMF::create_local_cells(), moab::NCHelperMPAS::create_local_cells(), moab::NCHelperGCRM::create_local_edges(), moab::NCHelperMPAS::create_local_edges(), moab::NCHelperESMF::create_local_vertices(), moab::NCHelperGCRM::create_local_vertices(), moab::NCHelperMPAS::create_local_vertices(), moab::NCHelperHOMME::create_mesh(), moab::NCHelperESMF::create_padded_local_cells(), moab::NCHelperGCRM::create_padded_local_cells(), moab::NCHelperMPAS::create_padded_local_cells(), moab::NCHelperGCRM::read_ucd_variables_to_nonset(), moab::NCHelperHOMME::read_ucd_variables_to_nonset(), moab::NCHelperMPAS::read_ucd_variables_to_nonset(), moab::NCHelperGCRM::read_ucd_variables_to_nonset_allocate(), moab::NCHelperHOMME::read_ucd_variables_to_nonset_allocate(), and moab::NCHelperMPAS::read_ucd_variables_to_nonset_allocate().
|
protected |
Dimensions of global grid in file.
Definition at line 258 of file NCHelper.hpp.
Referenced by moab::NCHelperMPAS::create_gather_set_cells(), moab::NCHelperESMF::create_mesh(), moab::NCHelperGCRM::create_mesh(), moab::NCHelperHOMME::create_mesh(), moab::NCHelperMPAS::create_mesh(), moab::NCHelperGCRM::create_padded_gather_set_cells(), moab::NCHelperMPAS::create_padded_gather_set_cells(), moab::NCHelperGCRM::create_padded_local_cells(), moab::NCHelperMPAS::create_padded_local_cells(), moab::NCHelperESMF::init_mesh_vals(), moab::NCHelperGCRM::init_mesh_vals(), moab::NCHelperHOMME::init_mesh_vals(), and moab::NCHelperMPAS::init_mesh_vals().
|
protected |
Definition at line 259 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::create_gather_set_edges(), moab::NCHelperMPAS::create_gather_set_edges(), moab::NCHelperGCRM::create_local_edges(), moab::NCHelperMPAS::create_local_edges(), moab::NCHelperGCRM::init_mesh_vals(), and moab::NCHelperMPAS::init_mesh_vals().
|
protected |
Dimensions of my local part of grid.
Definition at line 263 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::check_existing_mesh(), moab::NCHelperMPAS::check_existing_mesh(), moab::NCHelperESMF::create_local_cells(), moab::NCHelperMPAS::create_local_cells(), moab::NCHelperGCRM::create_local_edges(), moab::NCHelperMPAS::create_local_edges(), moab::NCHelperESMF::create_mesh(), moab::NCHelperGCRM::create_mesh(), moab::NCHelperMPAS::create_mesh(), moab::NCHelperESMF::create_padded_local_cells(), moab::NCHelperGCRM::create_padded_local_cells(), moab::NCHelperMPAS::create_padded_local_cells(), moab::NCHelperGCRM::read_ucd_variables_to_nonset_allocate(), and moab::NCHelperMPAS::read_ucd_variables_to_nonset_allocate().
|
protected |
Definition at line 264 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::check_existing_mesh(), moab::NCHelperMPAS::check_existing_mesh(), moab::NCHelperGCRM::create_local_edges(), moab::NCHelperMPAS::create_local_edges(), moab::NCHelperGCRM::read_ucd_variables_to_nonset_allocate(), and moab::NCHelperMPAS::read_ucd_variables_to_nonset_allocate().
|
protected |
Definition at line 265 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::check_existing_mesh(), moab::NCHelperHOMME::check_existing_mesh(), moab::NCHelperMPAS::check_existing_mesh(), moab::NCHelperESMF::create_local_vertices(), moab::NCHelperGCRM::create_local_vertices(), moab::NCHelperMPAS::create_local_vertices(), moab::NCHelperHOMME::create_mesh(), moab::NCHelperGCRM::read_ucd_variables_to_nonset_allocate(), moab::NCHelperHOMME::read_ucd_variables_to_nonset_allocate(), and moab::NCHelperMPAS::read_ucd_variables_to_nonset_allocate().
|
protected |
Definition at line 260 of file NCHelper.hpp.
Referenced by moab::NCHelperGCRM::create_gather_set_vertices(), moab::NCHelperMPAS::create_gather_set_vertices(), moab::NCHelperGCRM::create_local_vertices(), moab::NCHelperMPAS::create_local_vertices(), moab::NCHelperHOMME::create_mesh(), moab::NCHelperESMF::init_mesh_vals(), moab::NCHelperGCRM::init_mesh_vals(), moab::NCHelperHOMME::init_mesh_vals(), and moab::NCHelperMPAS::init_mesh_vals().
|
protected |
Definition at line 271 of file NCHelper.hpp.
Referenced by moab::NCHelperESMF::init_mesh_vals(), moab::NCHelperGCRM::init_mesh_vals(), moab::NCHelperHOMME::init_mesh_vals(), and moab::NCHelperMPAS::init_mesh_vals().
|
protected |
Coordinate values for vertices.
Definition at line 268 of file NCHelper.hpp.
Referenced by moab::NCHelperHOMME::create_mesh(), and moab::NCHelperHOMME::init_mesh_vals().
|
protected |
Definition at line 268 of file NCHelper.hpp.
Referenced by moab::NCHelperHOMME::create_mesh(), and moab::NCHelperHOMME::init_mesh_vals().
|
protected |
Definition at line 268 of file NCHelper.hpp.