#include <NCWriteESMF.hpp>
Inheritance diagram for moab::NCWriteESMF:
Collaboration diagram for moab::NCWriteESMF:Public Member Functions | |
| NCWriteESMF (WriteNC *writeNC, int fileId, const FileOptions &opts, EntityHandle fileSet) | |
| virtual | ~NCWriteESMF () override |
| ErrorCode | collect_mesh_info () override |
| Collect necessary info about local mesh (implemented in child classes) More... | |
| ErrorCode | init_file (std::vector< std::string > &var_names, std::vector< std::string > &desired_names, bool _append) override |
| Initialize file: this is where all defines are done. Virtual so that grid-output writers (NCWriteScrip / NCWriteESMF / NCWriteDomain) can synthesize a fresh schema from mesh state instead of going through the climate var_names plumbing. More... | |
| ErrorCode | write_values (std::vector< std::string > &var_names, std::vector< int > &tstep_nums) override |
| Take the info from VarData and write first non-set variables, then set variables. Virtual for the same reason as init_file. More... | |
Public Member Functions inherited from moab::NCWriteHelper | |
| NCWriteHelper (WriteNC *writeNC, int fileId, const FileOptions &opts, EntityHandle fileSet) | |
| virtual | ~NCWriteHelper () |
| virtual ErrorCode | collect_variable_data (std::vector< std::string > &var_names, std::vector< int > &tstep_nums) |
| Collect data for specified variables (partially implemented in child classes) More... | |
Protected Member Functions | |
| ErrorCode | write_nonset_variables (std::vector< WriteNC::VarData > &vdatas, std::vector< int > &tstep_nums) override |
Private Attributes | |
| long | mLocalCells |
| long | mGlobalCells |
| long | mGlobalNodes |
| int | mMaxCornersGlobal |
| int | mCoordDim |
| bool | mHasAreas |
| bool | mHasMask |
| std::vector< int > | mLocalCellGids |
| std::vector< double > | mNodeLon |
| std::vector< double > | mNodeLat |
| std::vector< int > | mNodeGids |
| std::vector< int > | mElementConn |
| std::vector< int > | mElementNumNodes |
| std::vector< double > | mCenterLon |
| std::vector< double > | mCenterLat |
| std::vector< double > | mAreas |
| std::vector< int > | mMask |
| int | mDimNodeCount |
| int | mDimElementCount |
| int | mDimMaxNodePElement |
| int | mDimCoordDim |
| int | mVarNodeCoords |
| int | mVarElementConn |
| int | mVarNumElementConn |
| int | mVarCenterCoords |
| int | mVarElementArea |
| int | mVarElementMask |
Additional Inherited Members | |
Static Public Member Functions inherited from moab::NCWriteHelper | |
| static NCWriteHelper * | get_nc_helper (WriteNC *writeNC, int fileId, const FileOptions &opts, EntityHandle fileSet) |
| Get appropriate helper instance for WriteNC class based on some info in the file set. More... | |
Protected Attributes inherited from moab::NCWriteHelper | |
| WriteNC * | _writeNC |
| Allow NCWriteHelper to directly access members of WriteNC. More... | |
| int | _fileId |
| Cache some information from WriteNC. More... | |
| const FileOptions & | _opts |
| EntityHandle | _fileSet |
| int | nTimeSteps |
| Dimensions of time and level. More... | |
| int | nLevels |
| int | tDim |
| Dimension numbers for time and level. More... | |
| int | levDim |
| Range | localCellsOwned |
| Local owned cells, edges and vertices. More... | |
| Range | localEdgesOwned |
| Range | localVertsOwned |
| std::vector< double > | timeStepVals |
| Time values of output timesteps. More... | |
Definition at line 36 of file NCWriteESMF.hpp.
|
inline |
Definition at line 39 of file NCWriteESMF.hpp.
|
overridevirtual |
Definition at line 22 of file NCWriteESMF.cpp.
|
overridevirtual |
Collect necessary info about local mesh (implemented in child classes)
Implements moab::NCWriteHelper.
Definition at line 51 of file NCWriteESMF.cpp.
References moab::NCWriteHelper::_fileSet, moab::NCWriteHelper::_writeNC, moab::Range::begin(), moab::WriteNC::dbgOut, moab::Range::empty(), moab::Range::end(), moab::ParallelComm::filter_pstatus(), moab::Interface::get_connectivity(), moab::Interface::get_coords(), moab::Interface::get_entities_by_dimension(), moab::WriteNC::isParallel, moab::NCWriteHelper::localCellsOwned, mAreas, MB_CHK_SET_ERR, MB_SET_ERR, MB_SUCCESS, MB_TYPE_DOUBLE, MB_TYPE_INTEGER, moab::WriteNC::mbImpl, mCenterLat, mCenterLon, mElementConn, mElementNumNodes, mGlobalCells, moab::WriteNC::mGlobalIdTag, mGlobalNodes, mHasAreas, mHasMask, mLocalCellGids, mLocalCells, mMask, mMaxCornersGlobal, mNodeGids, mNodeLat, mNodeLon, moab::ParallelComm::proc_config(), moab::ProcConfig::proc_size(), PSTATUS_NOT, PSTATUS_NOT_OWNED, moab::Range::size(), moab::Interface::tag_get_data(), moab::Interface::tag_get_handle(), moab::DebugOutput::tprintf(), and moab::anonymous_namespace{NCWriteESMF.cpp}::xyz_to_latlon_deg().
|
overridevirtual |
Initialize file: this is where all defines are done. Virtual so that grid-output writers (NCWriteScrip / NCWriteESMF / NCWriteDomain) can synthesize a fresh schema from mesh state instead of going through the climate var_names plumbing.
Reimplemented from moab::NCWriteHelper.
Definition at line 238 of file NCWriteESMF.cpp.
References moab::NCWriteHelper::_fileId, MB_SET_ERR, MB_SUCCESS, mCoordDim, mDimCoordDim, mDimElementCount, mDimMaxNodePElement, mDimNodeCount, mGlobalCells, mGlobalNodes, mHasAreas, mHasMask, mMaxCornersGlobal, mVarCenterCoords, mVarElementArea, mVarElementConn, mVarElementMask, mVarNodeCoords, mVarNumElementConn, and NCFUNC.
|
overrideprotectedvirtual |
Implements moab::NCWriteHelper.
Definition at line 530 of file NCWriteESMF.cpp.
References MB_SUCCESS.
|
overridevirtual |
Take the info from VarData and write first non-set variables, then set variables. Virtual for the same reason as init_file.
Reimplemented from moab::NCWriteHelper.
Definition at line 303 of file NCWriteESMF.cpp.
References moab::NCWriteHelper::_fileId, moab::NCWriteHelper::_writeNC, moab::WriteNC::dbgOut, ErrorCode, moab::WriteNC::isParallel, mAreas, MB_SET_ERR, MB_SUCCESS, mCenterLat, mCenterLon, mCoordDim, mElementConn, mElementNumNodes, mGlobalCells, mHasAreas, mHasMask, mLocalCellGids, mLocalCells, mMask, mMaxCornersGlobal, mNodeGids, mNodeLat, mNodeLon, mVarCenterCoords, mVarElementArea, mVarElementConn, mVarElementMask, mVarNodeCoords, mVarNumElementConn, NCFUNCAP, and moab::DebugOutput::tprintf().
|
private |
Definition at line 80 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 79 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 78 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 66 of file NCWriteESMF.hpp.
Referenced by init_file(), and write_values().
|
private |
Definition at line 86 of file NCWriteESMF.hpp.
Referenced by init_file().
|
private |
Definition at line 84 of file NCWriteESMF.hpp.
Referenced by init_file().
|
private |
Definition at line 85 of file NCWriteESMF.hpp.
Referenced by init_file().
|
private |
Definition at line 83 of file NCWriteESMF.hpp.
Referenced by init_file().
|
private |
Definition at line 76 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 77 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 63 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), init_file(), and write_values().
|
private |
Definition at line 64 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and init_file().
|
private |
Definition at line 67 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), init_file(), and write_values().
|
private |
Definition at line 68 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), init_file(), and write_values().
|
private |
Definition at line 71 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 62 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 81 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 65 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), init_file(), and write_values().
|
private |
Definition at line 74 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 73 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 72 of file NCWriteESMF.hpp.
Referenced by collect_mesh_info(), and write_values().
|
private |
Definition at line 90 of file NCWriteESMF.hpp.
Referenced by init_file(), and write_values().
|
private |
Definition at line 91 of file NCWriteESMF.hpp.
Referenced by init_file(), and write_values().
|
private |
Definition at line 88 of file NCWriteESMF.hpp.
Referenced by init_file(), and write_values().
|
private |
Definition at line 92 of file NCWriteESMF.hpp.
Referenced by init_file(), and write_values().
|
private |
Definition at line 87 of file NCWriteESMF.hpp.
Referenced by init_file(), and write_values().
|
private |
Definition at line 89 of file NCWriteESMF.hpp.
Referenced by init_file(), and write_values().