Fesapi
2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
|
Proxy class for an abstract grid representation. More...
#include <AbstractGridRepresentation.h>
Public Member Functions | |
virtual | ~AbstractGridRepresentation ()=default |
virtual uint64_t | getCellCount () const =0 |
std::vector< class GridConnectionSetRepresentation * > | getGridConnectionSetRepresentationSet () const |
unsigned int | getGridConnectionSetRepresentationCount () const |
class GridConnectionSetRepresentation * | getGridConnectionSetRepresentation (unsigned int index) const |
AbstractGridRepresentation * | getParentGrid () const |
common::DataObjectReference | getParentGridDor () const |
std::vector< resqml2::AbstractGridRepresentation * > | getChildGridSet () const |
unsigned int | getChildGridCount () const |
AbstractGridRepresentation * | getChildGrid (unsigned int index) const |
void | setParentWindow (uint64_t *cellIndices, uint64_t cellIndexCount, class UnstructuredGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr) |
void | setParentWindow (unsigned int *columnIndices, unsigned int columnIndexCount, unsigned int kLayerIndexRegridStart, unsigned int *childCellCountPerInterval, unsigned int *parentCellCountPerInterval, unsigned int intervalCount, class AbstractColumnLayerGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *childCellWeights=nullptr) |
void | setParentWindow (unsigned int iCellIndexRegridStart, unsigned int *childCellCountPerIInterval, unsigned int *parentCellCountPerIInterval, unsigned int iIntervalCount, unsigned int jCellIndexRegridStart, unsigned int *childCellCountPerJInterval, unsigned int *parentCellCountPerJInterval, unsigned int jIntervalCount, unsigned int kCellIndexRegridStart, unsigned int *childCellCountPerKInterval, unsigned int *parentCellCountPerKInterval, unsigned int kIntervalCount, class AbstractIjkGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
void | setParentWindow (unsigned int iCellIndexRegridStart, unsigned int constantChildCellCountPerIInterval, unsigned int constantParentCellCountPerIInterval, unsigned int iIntervalCount, unsigned int jCellIndexRegridStart, unsigned int constantChildCellCountPerJInterval, unsigned int constantParentCellCountPerJInterval, unsigned int jIntervalCount, unsigned int kCellIndexRegridStart, unsigned int constantChildCellCountPerKInterval, unsigned int constantParentCellCountPerKInterval, unsigned int kIntervalCount, class AbstractIjkGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
Indicates that this grid takes place into another IJK parent grid. This method assumes that the count of cells per regrid interval is constant in both child and parent grids. More... | |
void | setParentWindow (unsigned int iCellIndexRegridStart, unsigned int iChildCellCount, unsigned int iParentCellCount, unsigned int jCellIndexRegridStart, unsigned int jChildCellCount, unsigned int jParentCellCount, unsigned int kCellIndexRegridStart, unsigned int kChildCellCount, unsigned int kParentCellCount, class AbstractIjkGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
void | setForcedNonRegridedParentCell (uint64_t *cellIndices, uint64_t cellIndexCount) |
void | setCellOverlap (uint64_t parentChildCellPairCount, uint64_t *parentChildCellPair, const std::string &volumeUom, double *overlapVolumes=nullptr) |
int64_t | getParentCellIndexCount () const |
void | getParentCellIndices (uint64_t *parentCellIndices) const |
int64_t | getParentColumnIndexCount () const |
void | getParentColumnIndices (uint64_t *parentColumnIndices) const |
uint64_t | getRegridStartIndexOnParentGrid (char dimension) const |
uint64_t | getRegridIntervalCount (char dimension) const |
bool | isRegridCellCountPerIntervalConstant (char dimension, bool childVsParentCellCount) const |
uint64_t | getRegridConstantCellCountPerInterval (char dimension, bool childVsParentCellCount) const |
void | getRegridCellCountPerInterval (char dimension, uint64_t *childCellCountPerInterval, bool childVsParentCellCount) const |
bool | hasRegridChildCellWeights (char dimension) const |
void | getRegridChildCellWeights (char dimension, double *childCellWeights) const |
bool | hasForcedNonRegridedParentCell () const |
void | setCellAssociationWithStratigraphicOrganizationInterpretation (uint64_t *stratiUnitIndices, uint64_t nullValue, class AbstractStratigraphicOrganizationInterpretation *stratiOrgInterp) |
class AbstractStratigraphicOrganizationInterpretation * | getStratigraphicOrganizationInterpretation () const |
virtual common::DataObjectReference | getStratigraphicOrganizationInterpretationDor () const |
bool | hasCellStratigraphicUnitIndices () const |
uint64_t | getCellStratigraphicUnitIndices (uint64_t *stratiUnitIndices) |
void | setCellAssociationWithRockFluidOrganizationInterpretation (uint64_t *rockFluidUnitIndices, uint64_t nullValue, class RockFluidOrganizationInterpretation *rockFluidOrgInterp) |
class RockFluidOrganizationInterpretation * | getRockFluidOrganizationInterpretation () const |
virtual common::DataObjectReference | getRockFluidOrganizationInterpretationDor () const |
bool | hasCellFluidPhaseUnitIndices () const |
uint64_t | getCellFluidPhaseUnitIndices (uint64_t *rockfluidUnitIndices) |
bool | isTruncated () const |
uint64_t | getTruncatedFaceCount () const |
void | getNodeIndicesOfTruncatedFaces (uint64_t *nodeIndices) const |
void | getCumulativeNodeCountPerTruncatedFace (uint64_t *nodeCountPerFace) const |
void | getNodeCountPerTruncatedFace (uint64_t *nodeCountPerFace) const |
uint64_t | getTruncatedCellCount () const |
void | getTruncatedCellIndices (uint64_t *cellIndices) const |
void | getTruncatedFaceIndicesOfTruncatedCells (uint64_t *faceIndices) const |
void | getCumulativeTruncatedFaceCountPerTruncatedCell (uint64_t *cumulativeFaceCountPerCell) const |
void | getTruncatedFaceCountPerTruncatedCell (uint64_t *faceCountPerCell) const |
void | getNonTruncatedFaceIndicesOfTruncatedCells (uint64_t *faceIndices) const |
void | getCumulativeNonTruncatedFaceCountPerTruncatedCell (uint64_t *cumulativeFaceCountPerCell) const |
void | getNonTruncatedFaceCountPerTruncatedCell (uint64_t *faceCountPerCell) const |
void | getTruncatedFaceIsRightHanded (unsigned char *cellFaceIsRightHanded) const |
void | loadTargetRelationships () |
Public Member Functions inherited from resqml2::AbstractRepresentation | |
virtual | ~AbstractRepresentation ()=default |
class AbstractLocal3dCrs * | getLocalCrs (unsigned int patchIndex) const |
virtual common::DataObjectReference | getLocalCrsDor (unsigned int patchIndex) const |
virtual common::DataObjectReference | getHdfProxyDor () const =0 |
Gets the data object reference of the HDF proxy which is used for storing the numerical values of this representation (i.e. its geometry). More... | |
std::vector< class AbstractProperty * > | getPropertySet () const |
void | setInterpretation (class AbstractFeatureInterpretation *interp) |
class AbstractFeatureInterpretation * | getInterpretation () const |
common::DataObjectReference | getInterpretationDor () const |
virtual uint64_t | getXyzPointCountOfPatch (unsigned int patchIndex) const =0 |
uint64_t | getXyzPointCountOfAllPatches () const |
virtual void | getXyzPointsOfPatch (unsigned int patchIndex, double *xyzPoints) const =0 |
Gets all the xyz points of a particular patch of this representation. xyz points are given in the local CRS. More... | |
void | getXyzPointsOfPatchInGlobalCrs (unsigned int patchIndex, double *xyzPoints) const |
Gets all the xyz points of a particular patch of this representation. xyz points are given in the global CRS. More... | |
void | getXyzPointsOfAllPatches (double *xyzPoints) const |
Gets all the xyz points of all patches of this representation. xyz points are given in the local CRS. More... | |
bool | isInSingleLocalCrs () const |
bool | isInSingleGlobalCrs () const |
void | getXyzPointsOfAllPatchesInGlobalCrs (double *xyzPoints) const |
AbstractRepresentation * | getSeismicSupportOfPatch (const unsigned int &patchIndex) const |
std::set< AbstractRepresentation * > | getAllSeismicSupport () const |
virtual unsigned int | getPatchCount () const =0 |
void | pushBackIntoRepresentationSet (class RepresentationSetRepresentation *repSet) |
void | addSeismic3dCoordinatesToPatch (unsigned int patchIndex, double *inlines, double *crosslines, unsigned int pointCount, resqml2::AbstractRepresentation *seismicSupport, eml2::AbstractHdfProxy *proxy) |
void | addSeismic3dCoordinatesToPatch (unsigned int patchIndex, double startInline, double incrInline, unsigned int countInline, double startCrossline, double incrCrossline, unsigned int countCrossline, resqml2::AbstractRepresentation *seismicSupport) |
void | addSeismic2dCoordinatesToPatch (unsigned int patchIndex, double *lineAbscissa, resqml2::AbstractRepresentation *seismicSupport, eml2::AbstractHdfProxy *proxy) |
void | getSeismicLineAbscissaOfPointsOfPatch (unsigned int patchIndex, double *values) const |
void | getInlinesOfPointsOfPatch (unsigned int patchIndex, double *values) const |
void | getCrosslinesOfPointsOfPatch (unsigned int patchIndex, double *values) const |
Public Member Functions inherited from common::AbstractObject | |
bool | isPartial () const |
virtual bool | isTopLevelElement () const |
std::string | getUuid () const |
std::string | getTitle () const |
std::string | getEditor () const |
time_t | getCreation () const |
tm | getCreationAsTimeStructure () const |
std::string | getOriginator () const |
std::string | getDescription () const |
time_t | getLastUpdate () const |
tm | getLastUpdateAsTimeStructure () const |
std::string | getFormat () const |
std::string | getDescriptiveKeywords () const |
std::string | getVersion () const |
void | setTitle (const std::string &title) |
void | setEditor (const std::string &editor) |
void | setCreation (time_t creation) |
void | setCreation (const tm &creation) |
void | setOriginator (const std::string &originator) |
void | setDescription (const std::string &description) |
void | setLastUpdate (time_t lastUpdate) |
void | setLastUpdate (const tm &lastUpdate) |
void | setDescriptiveKeywords (const std::string &descriptiveKeywords) |
void | setVersion (const std::string &version) |
void | setMetadata (const std::string &title, const std::string &editor, time_t creation, const std::string &originator, const std::string &description, time_t lastUpdate, const std::string &descriptiveKeywords) |
void | serializeIntoStream (std::ostream *stream) |
void | setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *gsoapProxy) |
void | setGsoapProxy (gsoap_eml2_1::eml21__AbstractObject *gsoapProxy) |
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * | getEml20GsoapProxy () const |
gsoap_eml2_1::eml21__AbstractObject * | getEml21GsoapProxy () const |
gsoap_eml2_2::eml22__AbstractObject * | getEml22GsoapProxy () const |
void | setGsoapProxy (gsoap_eml2_2::eml22__AbstractObject *gsoapProxy) |
gsoap_eml2_3::eml23__AbstractObject * | getEml23GsoapProxy () const |
void | setGsoapProxy (gsoap_eml2_3::eml23__AbstractObject *gsoapProxy) |
soap * | getGsoapContext () const |
int | getGsoapType () const |
gsoap_resqml2_0_1::eml20__DataObjectReference * | newResqmlReference () const |
gsoap_eml2_1::eml21__DataObjectReference * | newEmlReference () const |
gsoap_eml2_2::eml22__DataObjectReference * | newEml22Reference () const |
gsoap_eml2_3::eml23__DataObjectReference * | newEml23Reference () const |
gsoap_resqml2_0_1::resqml20__ContactElementReference * | newContactElementReference2_0_1 () const |
gsoap_eml2_3::resqml22__ContactElement * | newContactElementReference2_2 () const |
common::DataObjectRepository * | getRepository () const |
virtual std::string | getXmlNamespace () const =0 |
virtual std::string | getXmlTag () const =0 |
virtual std::string | getXmlNamespaceVersion () const |
virtual std::string | getContentType () const |
virtual std::string | getQualifiedType () const |
virtual std::string | getPartNameInEpcDocument () const |
std::string | serializeIntoString () |
void | addAlias (const std::string &authority, const std::string &title) |
unsigned int | getAliasCount () const |
std::string | getAliasAuthorityAtIndex (unsigned int index) const |
std::string | getAliasTitleAtIndex (unsigned int index) const |
std::vector< eml2::Activity * > | getActivitySet () const |
unsigned int | getActivityCount () const |
eml2::Activity * | getActivity (unsigned int index) const |
void | pushBackExtraMetadata (const std::string &key, const std::string &value) |
std::unordered_map< std::string, std::string > | getExtraMetadataSet () const |
std::vector< std::string > | getExtraMetadata (const std::string &key) const |
unsigned int | getExtraMetadataCount () const |
std::string | getExtraMetadataKeyAtIndex (unsigned int index) const |
std::string | getExtraMetadataStringValueAtIndex (unsigned int index) const |
Static Public Attributes | |
static const char * | XML_TAG |
Static Public Attributes inherited from resqml2::AbstractRepresentation | |
static const char * | XML_TAG |
Additional Inherited Members | |
Public Types inherited from resqml2::AbstractRepresentation | |
enum | indexableElement { NODE = 0 , EDGE = 1 , FACE = 2 , VOLUME = 3 , PILLAR = 4 } |
Public Types inherited from common::AbstractObject | |
enum | hdfDatatypeEnum { UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , LONG_64 = 3 , ULONG_64 = 4 , INT = 5 , UINT = 6 , SHORT = 7 , USHORT = 8 , CHAR = 9 , UCHAR = 10 } |
Static Public Member Functions inherited from common::AbstractObject | |
static void | setFormat (const std::string &vendor, const std::string &applicationName, const std::string &applicationVersionNumber) |
Proxy class for an abstract grid representation.
|
virtualdefault |
Destructor does nothing since the memory is managed by the gsoap context.
|
pure virtual |
Gets the count of (volumetric) cells in the grid.
std::range_error | If the cell count is strictly greater than unsigned int max. |
std::logic_error | If this grid is partial. |
Implemented in resqml2::UnstructuredGridRepresentation, resqml2_2::UnstructuredGridRepresentation, resqml2_0_1::UnstructuredGridRepresentation, and resqml2::AbstractIjkGridRepresentation.
uint64_t resqml2::AbstractGridRepresentation::getCellFluidPhaseUnitIndices | ( | uint64_t * | rockfluidUnitIndices | ) |
Gets the rock fluid unit indices (regarding the associated rock fluid organization interpretation) of each cell of this grid representation.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the associated stratigraphic unit indices are not stored in a HDF5 integer array. |
std::invalid_argument | If the cells of this grid are not associated with rock fluid units indices. |
[out] | rockfluidUnitIndices | An array to receive the rock fluid unit indices associated to the cells of this grid? It must be allocated with a count equal to getCellCount(). It will be filled in with the rock fluid unit indices ordered as grid cells are ordered. |
uint64_t resqml2::AbstractGridRepresentation::getCellStratigraphicUnitIndices | ( | uint64_t * | stratiUnitIndices | ) |
Gets the stratigraphic unit indices (regarding the associated stratigraphic organization interpretation) of each cell of this grid representation.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the associated stratigraphic unit indices are not stored in a HDF5 integer array. |
std::invalid_argument | If the cells of this grid are not associated with stratigraphic units indices. |
[out] | stratiUnitIndices | An array to receive the stratigraphic unit indices associated to the cells of this grid. It must be preallocated with a count equal to getCellCount(). It will be filled in with the stratigraphic unit indices ordered as grid cells are ordered. |
AbstractGridRepresentation* resqml2::AbstractGridRepresentation::getChildGrid | ( | unsigned int | index | ) | const |
Gets a particular child grid of this grid.
std::out_of_range | If index >= getChildGridCount(). |
index | Zero-based index of the the child grid we look for. |
index
. unsigned int resqml2::AbstractGridRepresentation::getChildGridCount | ( | ) | const |
Gets the count of child grids of this grid.
std::range_error | If the count of child grids is strictly greater than unsigned int max. |
std::vector<resqml2::AbstractGridRepresentation *> resqml2::AbstractGridRepresentation::getChildGridSet | ( | ) | const |
Gets the vector of all child grids of this grid.
void resqml2::AbstractGridRepresentation::getCumulativeNodeCountPerTruncatedFace | ( | uint64_t * | nodeCountPerFace | ) | const |
Gets the cumulative node count per truncated face. First value is the count of nodes in the first face. Second value is the count of nodes in the first and in the second face. Third value is the count of nodes in the first and in the second and in the third face. Etc... The length of the output array is equal to getTruncatedFaceCount(). A single node count should be at least 3.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
std::range_error | If the cumulative length of nodes count per cells is constant (it is stored in a constant integer array). |
[in] | nodeCountPerFace | An array to receive the cumulative node count per truncated face. It must be preallocated with getTruncatedFaceCount() (equals to last value of getCumulativeTruncatedFaceCountPerTruncatedCell()) |
void resqml2::AbstractGridRepresentation::getCumulativeNonTruncatedFaceCountPerTruncatedCell | ( | uint64_t * | cumulativeFaceCountPerCell | ) | const |
Get the cumulative non truncated face count per truncated cell. It does not take into account the truncated face indices of a truncated cell. First value is the count of faces in the first cell. Second value is the count of faces in the first and in the second cell. Third value is the count of faces in the first and in the second and in the third cell. Etc... Count of this array is equal to getTruncatedCellCount(). A single face count should be at least 4.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
std::range_error | If the cumulative length of non truncated faces count per cells is constant (it is stored in a constant integer array) while there is more than one cell in the grid. |
[out] | cumulativeFaceCountPerCell | An array to receive the cumulative non truncated face count per truncated cell. It must be preallocated with getTruncatedCellCount() |
void resqml2::AbstractGridRepresentation::getCumulativeTruncatedFaceCountPerTruncatedCell | ( | uint64_t * | cumulativeFaceCountPerCell | ) | const |
Gets the cumulative truncated face count per truncated cell. It does not take into account the non truncated face of a truncated cell. First value is the count of faces in the first cell. Second value is the count of faces in the first and in the second cell. Third value is the count of faces in the first and in the second and in the third cell. Etc... The length of the output array is equal to getTruncatedCellCount(). A single face count should be at least 4.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
std::range_error | If the cumulative length of truncated faces count per cells is constant (it is stored in a constant integer array) while there is more than one cell in the grid. |
[out] | cumulativeFaceCountPerCell | An array to receive the cumulative truncated face count per truncated cell. It must be pre allocated with getTruncatedCellCount(). |
class GridConnectionSetRepresentation* resqml2::AbstractGridRepresentation::getGridConnectionSetRepresentation | ( | unsigned int | index | ) | const |
Gets a particular grid connection set representation associated to this grid representation.
std::out_of_range | If index is out of range (greater than getGridConnectionSetRepresentationCount()). |
index | Zero-based index of the grid connection set representation we look for. |
index
. unsigned int resqml2::AbstractGridRepresentation::getGridConnectionSetRepresentationCount | ( | ) | const |
Gets the count of grid connection set representations associated to this grid instance.
std::range_error | If the count of grid connection set representations is strictly greater than unsigned int max. |
std::vector<class GridConnectionSetRepresentation*> resqml2::AbstractGridRepresentation::getGridConnectionSetRepresentationSet | ( | ) | const |
Gets the vector of all grid connection set representations associated to this grid instance.
void resqml2::AbstractGridRepresentation::getNodeCountPerTruncatedFace | ( | uint64_t * | nodeCountPerFace | ) | const |
Get the node count per truncated face. This method is less efficient than getCumulativeNodeCountPerTruncatedFace(). First value is the count of nodes in the first face. Second value is the count of nodes in the second face. etc...
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
std::range_error | If the cumulative length of nodes count per cells is constant (it is stored in a constant integer array). |
[out] | nodeCountPerFace | An array to receive the node count per truncated face. It must be preallocated with getTruncatedFaceCount() (equals to last value of getCumulativeTruncatedFaceCountPerTruncatedCell()). |
void resqml2::AbstractGridRepresentation::getNodeIndicesOfTruncatedFaces | ( | uint64_t * | nodeIndices | ) | const |
Gets all the node indices of the truncated faces.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the node indices of the truncated faces are not stored in a HDF5 integer array. |
std::invalid_argument | If this grid is not truncated. |
[out] | nodeIndices | An array to receive the node indices of the truncated faces. It must be preallocated with the last value returned by getCumulativeNodeCountOfTruncatedFaces(). |
void resqml2::AbstractGridRepresentation::getNonTruncatedFaceCountPerTruncatedCell | ( | uint64_t * | faceCountPerCell | ) | const |
Gets the non truncated face count per cell. This method is less efficient than getCumulativeNonTruncatedFaceCountPerTruncatedCell(). First value is the count of faces in the first cell. Second value is the count of faces in the second cell. etc...
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
std::range_error | If the cumulative length of non truncated faces count per cells is constant (it is stored in a constant integer array) while there is more than one cell in the grid. |
[out] | faceCountPerCell | An array to receive the non truncated face count per truncated cell. It must be pre allocated with getTruncatedCellCount() |
void resqml2::AbstractGridRepresentation::getNonTruncatedFaceIndicesOfTruncatedCells | ( | uint64_t * | faceIndices | ) | const |
Gets all the non truncated face indices of all the truncated cells. It does not get the truncated face indices of a truncated cell. Please use getTruncatedFaceIndicesOfTruncatedCells() in addition to this method in order to get the full list of face indices for a truncated cell.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the non truncated face indices are not stored in a HDF5 integer array. |
std::invalid_argument | If this grid is not truncated. |
[out] | faceIndices | An array to receive the non truncated face indices of all the truncated cells.It must be pre allocated with the last value returned by getCumulativeNonTruncatedFaceCountPerTruncatedCell() |
int64_t resqml2::AbstractGridRepresentation::getParentCellIndexCount | ( | ) | const |
Gets the count of parent grid cells which are regridded. Please only run this method for an unstructured parent grid. Please use regrid information for IJK parent grid or (regrid information and columIndexCount) for strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is not an unstructured parent window. |
std::invalid_argument | If the list of regridded cells is not stored in an HDF5 file. |
void resqml2::AbstractGridRepresentation::getParentCellIndices | ( | uint64_t * | parentCellIndices | ) | const |
Gets the indices of the parent grid cells which are regridded. Please only run this method for an unstructured parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is not an unstructured parent window. |
std::invalid_argument | If the list of regridded cells is not stored in an HDF5 file. |
[out] | parentCellIndices | An array for receiving the regridded cells indices. This array must have been preallocated with a size of getParentCellIndexCount(). |
int64_t resqml2::AbstractGridRepresentation::getParentColumnIndexCount | ( | ) | const |
Gets the count of parent grid columns which are regridded. Please only run this method for a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is not a column layer parent window. |
std::invalid_argument | If the list of regridded cells is not stored in an HDF5 file. |
void resqml2::AbstractGridRepresentation::getParentColumnIndices | ( | uint64_t * | parentColumnIndices | ) | const |
Gets the indices of the parent grid columns which are regridded. Please only run this method for a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is not a column layer parent window. |
std::invalid_argument | If the list of regridded cells is not stored in an HDF5 file. |
[out] | parentColumnIndices | An array for collecting the regridded column indices. This array must have been preallocated with a size of getParentColumnIndexCount(). |
AbstractGridRepresentation* resqml2::AbstractGridRepresentation::getParentGrid | ( | ) | const |
Gets the parent grid of this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the parent window of this grid is neither an IJK, column layer nor cell window. |
common::DataObjectReference resqml2::AbstractGridRepresentation::getParentGridDor | ( | ) | const |
Gets the data object reference of the parent grid of this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the parent window of this grid is neither an IJK, column layer nor cell window. |
void resqml2::AbstractGridRepresentation::getRegridCellCountPerInterval | ( | char | dimension, |
uint64_t * | childCellCountPerInterval, | ||
bool | childVsParentCellCount | ||
) | const |
Gets the regrid cell count per interval (in the child grid or in the parent grid) against a particular dimension. Intervals are portions of cells to regrid which does not overlap with each others. Please only run this method for an IJK parent grid or a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the cell count per interval in dimension dimension is neither an integer constant array nor a HDF5 integer array. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If dimension differs from 'i', 'j' or 'k' (upper or lower case) for an IJK parent window or if it differs from 'k' (upper or lower case) for a column layer parent window. |
std::invalid_argument | If there exists no regrid interval in dimension dimension . |
dimension | The dimension of the interval we look for. It must be either 'i', 'j' ou 'k' (upper or lower case) for an IJK parent grid or 'k' for a strict column layer parent grid. | |
[in] | childCellCountPerInterval | An array to receive the regrid cell count per interval. It must have been preallocated with a size of getRegridIntervalCount(). |
childVsParentCellCount | If true, gets the child cell count per interval. If false, gets the parent cell count per interval. |
void resqml2::AbstractGridRepresentation::getRegridChildCellWeights | ( | char | dimension, |
double * | childCellWeights | ||
) | const |
Gets the regrid child cell weights for a given dimension. Please only run this method for an IJK parent grid or a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If dimension differs from 'i', 'j' or 'k' (upper or lower case) for an IJK parent window or if it differs from 'k' (upper or lower case) for a column layer parent window. |
std::invalid_argument | If there exists no regrid interval in dimension dimension . |
std::invalid_argument | If the regrid child cell weights in dimension dimension are not stored in an HDF5 file. |
dimension | The dimension from which we look for regrid child cell weights. It must be either 'i', 'j' ou 'k' (upper or lower case) for an IJK parent grid or 'k' for a strict column layer parent grid. | |
[in,out] | childCellWeights | An array for receiving the regrid child cell weights. It must have been preallocated with a size equal to the sum of regrid child cell count per interval (using getRegridCellCountPerInterval()). |
uint64_t resqml2::AbstractGridRepresentation::getRegridConstantCellCountPerInterval | ( | char | dimension, |
bool | childVsParentCellCount | ||
) | const |
Gets the constant cell count per interval (in the child grid or in the parent grid) against a particular dimension. Intervals are portions of cells to regrid which does not overlap with each others. Please only run this method for an IJK parent grid or a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the cell count per interval in dimension dimension is neither an integer constant array nor a HDF5 integer array. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If dimension differs from 'i', 'j' or 'k' (upper or lower case) for an IJK parent window or if it differs from 'k' (upper or lower case) for a column layer parent window. |
std::invalid_argument | If there exists no regrid interval in dimension dimension . |
dimension | The dimension of the interval we look for. It must be either 'i', 'j' ou 'k' (upper or lower case) for an IJK parent grid or 'k' for a strict column layer parent grid. |
childVsParentCellCount | If true, gets the constant child cell count per interval. If false, gets the constant parent cell count per interval. |
dimension
. uint64_t resqml2::AbstractGridRepresentation::getRegridIntervalCount | ( | char | dimension | ) | const |
Gets the count of intervals which are regridded on a particular dimension. Intervals are portions of cells to regrid which does not overlap with each others. Please only run this method for an IJK parent grid or a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If dimension differs from 'i', 'j' or 'k' (upper or lower case) for an IJK parent window or if it differs from 'k' (upper or lower case) for a column layer parent window. |
dimension | The dimension of the interval count we look for. It must be either 'i', 'j' or 'k' (upper or lower case) for an IJK parent grid or 'k' for a strict column layer parent grid. |
dimension
. uint64_t resqml2::AbstractGridRepresentation::getRegridStartIndexOnParentGrid | ( | char | dimension | ) | const |
Get the I, J or K index of the first parent grid cell to be regridded. Please only run this method for an IJK parent grid or a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If dimension differs from 'i', 'j' or 'k' (upper or lower case) for an IJK parent window or if it differs from 'k' (upper or lower case) for a column layer parent window. |
dimension | The dimension of the index we look for. It must be either 'i', 'j' or 'k' (upper or lower case) for an IJK parent grid or 'k' for a strict column layer parent grid. |
dimension
. class RockFluidOrganizationInterpretation* resqml2::AbstractGridRepresentation::getRockFluidOrganizationInterpretation | ( | ) | const |
Gets rock fluid organization interpretation which is associated to this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
|
virtual |
Gets the data object reference of the rock fluid organization interpretation associated to this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
class AbstractStratigraphicOrganizationInterpretation* resqml2::AbstractGridRepresentation::getStratigraphicOrganizationInterpretation | ( | ) | const |
Gets the stratigraphic organization interpretation which is associated to this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
|
virtual |
Gets the data object reference of the stratigraphic organization interpretation associated to this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
Reimplemented in resqml2::AbstractColumnLayerGridRepresentation.
uint64_t resqml2::AbstractGridRepresentation::getTruncatedCellCount | ( | ) | const |
Gets the truncated cell count.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
void resqml2::AbstractGridRepresentation::getTruncatedCellIndices | ( | uint64_t * | cellIndices | ) | const |
Gets the parent cell index for each of the truncation cells.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the parent cell indices are stored neither in a HDF5 integer array nor in a constant integer array. |
std::invalid_argument | If this grid is not truncated. |
[out] | cellIndices | An array to receive the parent cell index of each truncation cell. It must be preallocated with getTruncatedCellCount. |
uint64_t resqml2::AbstractGridRepresentation::getTruncatedFaceCount | ( | ) | const |
Gets the truncated face count. It does not include face of truncated cells which are not truncated.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
void resqml2::AbstractGridRepresentation::getTruncatedFaceCountPerTruncatedCell | ( | uint64_t * | faceCountPerCell | ) | const |
Gets the truncated face count per truncated cell. This method is less efficient than getCumulativeTruncatedFaceCountPerTruncatedCell(). First value is the count of faces in the first cell. Second value is the count of faces in the second cell. etc...
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If this grid is not truncated. |
std::range_error | If the cumulative length of faces count per cells is constant (it is stored in a constant integer array) while there is more than one cell in the grid. |
[out] | faceCountPerCell | An array to receive the truncated face count per truncated cell. It must be preallocated with getTruncatedCellCount() |
void resqml2::AbstractGridRepresentation::getTruncatedFaceIndicesOfTruncatedCells | ( | uint64_t * | faceIndices | ) | const |
Gets all the truncated face indices of all the truncated cells. It does not get the non truncated face indices of a truncated cell. Please use getNonTruncatedFaceIndicesOfTruncatedCells() in addition to this method in order to get the full list of face indices for a truncated cell.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the truncated face indices are not stored in a HDF5 integer array. |
std::invalid_argument | If this grid is not truncated. |
[out] | faceIndices | An array to receive the truncated face indices of all the truncated cells. It must be preallocated with the last value returned by getCumulativeTruncatedFaceCountPerTruncatedCell() |
void resqml2::AbstractGridRepresentation::getTruncatedFaceIsRightHanded | ( | unsigned char * | cellFaceIsRightHanded | ) | const |
Retrieves the orientation of each truncated face (i.e. if each truncated face is right handed or not).
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::logic_error | If the orientation of the truncated faces is neither stored in a HDF5 boolean array nor in a boolean constant array. |
std::invalid_argument | If this grid is not truncated. |
[out] | cellFaceIsRightHanded | An array to receive the orientation of truncated faces. Value '0' means left handed and value other than '0' means right handed. It must be preallocated with getTruncatedFaceCount() |
bool resqml2::AbstractGridRepresentation::hasCellFluidPhaseUnitIndices | ( | ) | const |
Queries if there exists some association between fluid phase unit indices and the cells of this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
bool resqml2::AbstractGridRepresentation::hasCellStratigraphicUnitIndices | ( | ) | const |
Queries if there exists some association between stratigraphic unit indices and the cells of this grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
bool resqml2::AbstractGridRepresentation::hasForcedNonRegridedParentCell | ( | ) | const |
When a parent windows has been defined, this method checks if some parent cells have been noted to be forced not to be regridded. It mainly occurs in case of non-rectangular local grids.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined. |
bool resqml2::AbstractGridRepresentation::hasRegridChildCellWeights | ( | char | dimension | ) | const |
Checks if regrid child cell weights have been defined for a given dimension. Please only run this method for an IJK parent grid or a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If dimension differs from 'i', 'j' or 'k' (upper or lower case) for an IJK parent window or if it differs from 'k' (upper or lower case) for a column layer parent window. |
std::invalid_argument | If there exists no regrid interval in dimension dimension . |
dimension | The dimension from which we look for regrid child cell weights. It must be either 'i', 'j' ou 'k' (upper or lower case) for an IJK parent grid or 'k' for a strict column layer parent grid. |
dimension
, false if not. bool resqml2::AbstractGridRepresentation::isRegridCellCountPerIntervalConstant | ( | char | dimension, |
bool | childVsParentCellCount | ||
) | const |
Checks if the cell count per interval (in the child grid or in the parent grid) is constant against a particular dimension. Intervals are portions of cells to regrid which does not overlap with each others. Please only run this method for an IJK parent grid or a strict column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If dimension differs from 'i', 'j' or 'k' (upper or lower case) for an IJK parent window or if it differs from 'k' (upper or lower case) for a column layer parent window. |
std::invalid_argument | If there exists no regrid interval in dimension dimension . |
dimension | The dimension of the interval we look for. It must be either 'i', 'j' ou 'k' (upper or lower case) for an IJK parent grid or 'k' for a strict column layer parent grid. |
childVsParentCellCount | If true, checks if the child cell count per interval is constant. If false, checks if the parent cell count per interval is constant. |
dimension
, false if not. bool resqml2::AbstractGridRepresentation::isTruncated | ( | ) | const |
Indicates whether this grid instance contains truncated pillars or not.
|
virtual |
Loads target relationships
Reimplemented from resqml2::AbstractRepresentation.
void resqml2::AbstractGridRepresentation::setCellAssociationWithRockFluidOrganizationInterpretation | ( | uint64_t * | rockFluidUnitIndices, |
uint64_t | nullValue, | ||
class RockFluidOrganizationInterpretation * | rockFluidOrgInterp | ||
) |
Sets the rock fluid organization interpretation which is associated to this grid representation.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no default HDF proxy is defined in the repository. |
[in] | rockFluidUnitIndices | Index of the rock fluid unit of a given rock fluid column for each cell. Array length is the number of cells in the grid or the blocked well. |
nullValue | The value which is used to tell the association between a cell and a rock fluid unit is unavailable. | |
[in] | rockFluidOrgInterp | The rock fluid organization interpretation which is associated to this grid representation. |
void resqml2::AbstractGridRepresentation::setCellAssociationWithStratigraphicOrganizationInterpretation | ( | uint64_t * | stratiUnitIndices, |
uint64_t | nullValue, | ||
class AbstractStratigraphicOrganizationInterpretation * | stratiOrgInterp | ||
) |
Sets the stratigraphic organization interpretation which is associated to this grid representation.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no default HDF proxy is defined in the repository. |
[in] | stratiUnitIndices | Index of the stratigraphic unit of a given stratigraphic column for each cell. Array length is the number of cells in the grid or the blocked well. |
nullValue | The value which is used to tell the association between a cell and a stratigraphic unit is unavailable. | |
[in] | stratiOrgInterp | The stratigraphic organization interpretation which is associated to this grid representation. |
void resqml2::AbstractGridRepresentation::setCellOverlap | ( | uint64_t | parentChildCellPairCount, |
uint64_t * | parentChildCellPair, | ||
const std::string & | volumeUom, | ||
double * | overlapVolumes = nullptr |
||
) |
Set optional cell overlap information between the current grid (the child) and the parent grid. Use this data-object when the child grid has an explicitly defined geometry, and these relationships cannot be inferred from the regrid descriptions. An overlap volume information can be associated to each overlapping (parent cell, child cell) pair.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined. |
std::invalid_argument | If parentChildCellPairCount is 0 or parentChildCellPair is nullptr. |
std::invalid_argument | If no default HDF proxy is defined in the repository. |
parentChildCellPairCount | Number of (parent cell, child cell) pairs that overlap. | |
[in] | parentChildCellPair | The (parent cell index, child cell index) pair for each overlap. The size is 2 * parentChildCellPairCount . parentChildCellPair[2i] are parent cell indices and parentChildCellPair[2i+1] are child cell indices. |
volumeUom | The volume unit of measure. | |
[in] | overlapVolumes | (Optional) The overlapping volume for each (parent cell, child cell) that overlaps. Size is parentChildCellPairCount . Default value is nullptr. |
void resqml2::AbstractGridRepresentation::setForcedNonRegridedParentCell | ( | uint64_t * | cellIndices, |
uint64_t | cellIndexCount | ||
) |
When a parent windows has been defined, this method allows to force some parent cells to be noted as non regridded. It mainly allows non-rectangular local grids to be specified.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If no parent window is already defined of if the defined parent window is neither an IJK nor a column layer parent window. |
std::invalid_argument | If cellIndices is nullptr or cellIndexCount is 0. |
std::invalid_argument | If an HDF proxy is required and no default HDF proxy is defined in the repository. |
[in] | cellIndices | The indices of the parent cells to be noted as non regridded. The size is cellIndexCount . |
cellIndexCount | Number of cells to be noted as non regridded. |
void resqml2::AbstractGridRepresentation::setParentWindow | ( | uint64_t * | cellIndices, |
uint64_t | cellIndexCount, | ||
class UnstructuredGridRepresentation * | parentGrid, | ||
eml2::AbstractHdfProxy * | proxy = nullptr |
||
) |
Indicates that this grid takes place into another unstructured parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If cellIndexCount is 0 or cellIndices is nullptr or parentGrid is nullptr. |
std::invalid_argument | If cellIndexCount > 1 and proxy is nullptr and no default HDF proxy is defined in the repository. |
[in] | cellIndices | Identifies the cells (of the parent grid) which are regridded. |
cellIndexCount | Identifies the count of cells (of the parent grid) which are regridded. | |
[in] | parentGrid | The parent grid which is regridded. |
[in,out] | proxy | (Optional) The HDF proxy where to store the numerical values. If nullptr (default), then the proxy will be the default proxy of the repository. This parameter is unused if cellIndexCount is 1 since no numerical value need to be store in an HDF proxy (pure XML). |
void resqml2::AbstractGridRepresentation::setParentWindow | ( | unsigned int * | columnIndices, |
unsigned int | columnIndexCount, | ||
unsigned int | kLayerIndexRegridStart, | ||
unsigned int * | childCellCountPerInterval, | ||
unsigned int * | parentCellCountPerInterval, | ||
unsigned int | intervalCount, | ||
class AbstractColumnLayerGridRepresentation * | parentGrid, | ||
eml2::AbstractHdfProxy * | proxy = nullptr , |
||
double * | childCellWeights = nullptr |
||
) |
Indicates that this grid takes place into another column layer parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If columnIndices is nullptr or columnIndexCount is 0 or childCellCountPerInterval is nullptr or parentCellCountPerInterval is nullptr or intervalCount is 0 or parentGrid is nullptr. |
std::invalid_argument | If an HDF proxy is required to store numerical values but proxy is nullptr and no default HDF proxy is defined in the repository. |
[in] | columnIndices | Identifies the columns (of the parent grid) which are regridded. The size is columnIndexCount . |
columnIndexCount | Identifies the count of columns (of the parent grid) which are regridded. | |
kLayerIndexRegridStart | K index of the first K layer of all above parent grid columns to be regridded. | |
[in] | childCellCountPerInterval | The count of cells per K interval in this (child) grid. The size is intervalCount . |
[in] | parentCellCountPerInterval | The count of cells per K interval in the parent grid. The size is intervalCount . |
intervalCount | The count of intervals on K dimension. Intervals are portions of cells to regrid which does not overlap with each others. Intervals are the same for all the regridded columns. | |
[in] | parentGrid | The parent grid which is regridded. |
[in,out] | proxy | (Optional) The HDF proxy where to store the numerical values. If nullptr (default), then the proxy will be the default proxy of the repository. This parameter is unused if no numerical value need to be store in an HDF proxy (pure XML). |
[in] | childCellWeights | (Optional) The weights that are proportional to the relative K sizes of child cells within each K interval. This is useful to set up child cells of different K sizes inside the intervals. The weights need not to be normalized. The count of double values must be equal to the count of all child cells on K dimension (sum of child cells per interval). Default value is nullptr. |
void resqml2::AbstractGridRepresentation::setParentWindow | ( | unsigned int | iCellIndexRegridStart, |
unsigned int * | childCellCountPerIInterval, | ||
unsigned int * | parentCellCountPerIInterval, | ||
unsigned int | iIntervalCount, | ||
unsigned int | jCellIndexRegridStart, | ||
unsigned int * | childCellCountPerJInterval, | ||
unsigned int * | parentCellCountPerJInterval, | ||
unsigned int | jIntervalCount, | ||
unsigned int | kCellIndexRegridStart, | ||
unsigned int * | childCellCountPerKInterval, | ||
unsigned int * | parentCellCountPerKInterval, | ||
unsigned int | kIntervalCount, | ||
class AbstractIjkGridRepresentation * | parentGrid, | ||
eml2::AbstractHdfProxy * | proxy = nullptr , |
||
double * | iChildCellWeights = nullptr , |
||
double * | jChildCellWeights = nullptr , |
||
double * | kChildCellWeights = nullptr |
||
) |
Indicates that this grid takes place into another IJK parent grid.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If childCellCountPerIInterval is nullptr or parentCellCountPerIInterval is nullptr or iIntervalCount is 0 or childCellCountPerJInterval is nullptr or parentCellCountPerJInterval is nullptr or jIntervalCount is 0 or childCellCountPerKInterval is nullptr or parentCellCountPerKInterval is nullptr or kIntervalCount is 0 or parentGrid is nullptr. |
std::invalid_argument | If an HDF proxy is required to store numerical values but proxy is nullptr and no default HDF proxy is defined in the repository. |
iCellIndexRegridStart | I index of the first parent grid cell to be regridded. | |
[in] | childCellCountPerIInterval | The count of cells per I interval in this (child) grid. The size is iIntervalCount . |
[in] | parentCellCountPerIInterval | The count of cells per I interval in the parent grid. The size is iIntervalCount . |
iIntervalCount | The count of intervals on I dimension. Intervals are portions of cells to regrid which does not overlap with each others. | |
jCellIndexRegridStart | J index of the first parent grid cell to be regridded. | |
[in] | childCellCountPerJInterval | The count of cells per J interval in this (child) grid. The size is jIntervalCount . |
[in] | parentCellCountPerJInterval | The count of cells per J interval in the parent grid. The size is jIntervalCount . |
jIntervalCount | The count of intervals on J dimension. Intervals are portions of cells to regrid which does not overlap with each others. | |
kCellIndexRegridStart | K index of the first parent grid cell to be regridded. | |
[in] | childCellCountPerKInterval | The count of cells per K interval in this (child) grid. The size is kIntervalCount . |
[in] | parentCellCountPerKInterval | The count of cells per K interval in the parent grid. The size is kIntervalCount . |
kIntervalCount | The count of intervals on K dimension. Intervals are portions of cells to regrid which does not overlap with each others. | |
[in] | parentGrid | The parent grid which is regridded. |
[in,out] | proxy | (Optional) The HDF proxy where to store the numerical values. If nullptr (default), then the proxy will be the default proxy of the repository. This parameter is unused if no numerical value need to be store in an HDF proxy (pure XML). |
[in] | iChildCellWeights | (Optional) The weights that are proportional to the relative I sizes of child cells within each I interval. This is useful to set up child cells of different I sizes inside the intervals. The weights need not to be normalized. The count of double values must be equal to the count of all child cells on I dimension (sum of child cells per interval). Default value is nullptr. |
[in] | jChildCellWeights | (Optional) The weights that are proportional to the relative J sizes of child cells within each J interval. This is useful to set up child cells of different J sizes inside the intervals. The weights need not to be normalized. The count of double values must be equal to the count of all child cells on J dimension (sum of child cells per interval). Default value is nullptr. |
[in] | kChildCellWeights | (Optional) The weights that are proportional to the relative K sizes of child cells within each K interval. This is useful to set up child cells of different K sizes inside the intervals. The weights need not to be normalized. The count of double values must be equal to the count of all child cells on K dimension (sum of child cells per interval). Default value is nullptr. |
void resqml2::AbstractGridRepresentation::setParentWindow | ( | unsigned int | iCellIndexRegridStart, |
unsigned int | constantChildCellCountPerIInterval, | ||
unsigned int | constantParentCellCountPerIInterval, | ||
unsigned int | iIntervalCount, | ||
unsigned int | jCellIndexRegridStart, | ||
unsigned int | constantChildCellCountPerJInterval, | ||
unsigned int | constantParentCellCountPerJInterval, | ||
unsigned int | jIntervalCount, | ||
unsigned int | kCellIndexRegridStart, | ||
unsigned int | constantChildCellCountPerKInterval, | ||
unsigned int | constantParentCellCountPerKInterval, | ||
unsigned int | kIntervalCount, | ||
class AbstractIjkGridRepresentation * | parentGrid, | ||
eml2::AbstractHdfProxy * | proxy = nullptr , |
||
double * | iChildCellWeights = nullptr , |
||
double * | jChildCellWeights = nullptr , |
||
double * | kChildCellWeights = nullptr |
||
) |
Indicates that this grid takes place into another IJK parent grid. This method assumes that the count of cells per regrid interval is constant in both child and parent grids.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If constantChildCellCountPerIInterval is 0 or constantParentCellCountPerIInterval is 0 or iIntervalCount is 0 or constantChildCellCountPerJInterval is 0 or constantParentCellCountPerJInterval is 0 or jIntervalCount is 0 or constantChildCellCountPerKInterval is 0 or constantParentCellCountPerKInterval is 0 or kIntervalCount is 0 or parentGrid is nullptr. |
std::invalid_argument | If an HDF proxy is required to store numerical values but proxy is nullptr and no default HDF proxy is defined in the repository. |
iCellIndexRegridStart | I index of the first parent grid cell to be regridded. | |
constantChildCellCountPerIInterval | The constant count of cells per I interval in this (child) grid. | |
constantParentCellCountPerIInterval | The constant count of cells per I interval in the parent grid. | |
iIntervalCount | The count of intervals on I dimension. Intervals are portions of cells to regrid which does not overlap with each others. | |
jCellIndexRegridStart | J index of the first parent grid cell to be regridded. | |
constantChildCellCountPerJInterval | The constant count of cells per J interval in this (child) grid. | |
constantParentCellCountPerJInterval | The constant count of cells per J interval in the parent grid. | |
jIntervalCount | The count of intervals on J dimension. Intervals are portions of cells to regrid which does not overlap with each others. | |
kCellIndexRegridStart | K index of the first parent grid cell to be regridded. | |
constantChildCellCountPerKInterval | The constant count of cells per K interval in this (child) grid. | |
constantParentCellCountPerKInterval | The constant count of cells per K interval in the parent grid. | |
kIntervalCount | The count of intervals on K dimension. Intervals are portions of cells to regrid which does not overlap with each others. | |
[in] | parentGrid | The parent grid which is regridded. |
[in,out] | proxy | (Optional) The HDF proxy where to store the numerical values. If nullptr (default), then the proxy will be the default proxy of the repository. This parameter is unused if no numerical value need to be store in an HDF proxy (pure XML). |
[in] | iChildCellWeights | (Optional) The weights that are proportional to the relative I sizes of child cells within each I interval. This is useful to set up child cells of different I sizes inside the intervals. The weights need not to be normalized. The count of double values must be equal to the count of all child cells on I dimension (constantChildCellCountPerIInterval * iIntervalCount ). Default value is nullptr. |
[in] | jChildCellWeights | (Optional) The weights that are proportional to the relative J sizes of child cells within each J interval. This is useful to set up child cells of different J sizes inside the intervals. The weights need not to be normalized. The count of double values must be equal to the count of all child cells on J dimension (constantChildCellCountPerJInterval * jIntervalCount ). |
[in] | kChildCellWeights | (Optional) The weights that are proportional to the relative K sizes of child cells within each K interval. This is useful to set up child cells of different K sizes inside the intervals. The weights need not to be normalized. The count of double values must be equal to the count of all child cells on K dimension (constantChildCellCountPerKInterval * kIntervalCount ). |
void resqml2::AbstractGridRepresentation::setParentWindow | ( | unsigned int | iCellIndexRegridStart, |
unsigned int | iChildCellCount, | ||
unsigned int | iParentCellCount, | ||
unsigned int | jCellIndexRegridStart, | ||
unsigned int | jChildCellCount, | ||
unsigned int | jParentCellCount, | ||
unsigned int | kCellIndexRegridStart, | ||
unsigned int | kChildCellCount, | ||
unsigned int | kParentCellCount, | ||
class AbstractIjkGridRepresentation * | parentGrid, | ||
eml2::AbstractHdfProxy * | proxy = nullptr , |
||
double * | iChildCellWeights = nullptr , |
||
double * | jChildCellWeights = nullptr , |
||
double * | kChildCellWeights = nullptr |
||
) |
Indicates that this grid takes place into another IJK parent grid. This method assumes that there is only one regrid interval per dimension.
std::logic_error | If the underlying gSOAP instance is not a RESQML2.0 one. |
std::invalid_argument | If iChildCellCount is 0 or iParentCellCount is 0 or jChildCellCount is 0 or jParentCellCount is 0 or kChildCellCount is 0 or kParentCellCount is 0 or parentGrid is nullptr. |
std::invalid_argument | If an HDF proxy is required to store numerical values but proxy is nullptr and no default HDF proxy is defined in the repository. |
iCellIndexRegridStart | I index of the first parent grid cell to be regridded. | |
iChildCellCount | The count of cells for the unique I interval in this (child) grid. | |
iParentCellCount | The count of cells for the unique I interval in the parent grid. | |
jCellIndexRegridStart | J index of the first parent grid cell to be regridded. | |
jChildCellCount | The count of cells for the unique J interval in this (child) grid. | |
jParentCellCount | The count of cells for the unique J interval in the parent grid. | |
kCellIndexRegridStart | K index of the first parent grid cell to be regridded. | |
kChildCellCount | The count of cells for the unique K interval in this (child) grid. | |
kParentCellCount | The count of cells for the unique K interval in the parent grid. | |
[in] | parentGrid | The parent grid which is regridded. |
[in,out] | proxy | (Optional) The HDF proxy where to store the numerical values. If nullptr (default), then the proxy will be the default proxy of the repository. This parameter is unused if no numerical value need to be store in an HDF proxy (pure XML). |
[in] | iChildCellWeights | (Optional) The weights that are proportional to the relative I sizes of child cells. This is useful to set up child cells of different I sizes inside the unique interval. The weights need not to be normalized. The count of double values must be equal to iChildCellCount . Default value is nullptr. |
[in] | jChildCellWeights | (Optional) The weights that are proportional to the relative J sizes of child cells. This is useful to set up child cells of different J sizes inside the unique interval. The weights need not to be normalized. The count of double values must be equal to jChildCellCount . Default value is nullptr. |
[in] | kChildCellWeights | (Optional) The weights that are proportional to the relative K sizes of child cells. This is useful to set up child cells of different K sizes inside the unique interval. The weights need not to be normalized. The count of double values must be equal to kChildCellCount . Default value is nullptr. |
|
static |
The standard XML tag without XML namespace for serializing this data object