

Public Member Functions | |
| void | checkNoOrphanCells () const |
| const DataArrayIdType * | getArrayOfDiscIds () const |
| void | setArrayOfDiscIds (const DataArrayIdType *adids) |
| std::vector< DataArrayIdType * > | splitIntoSingleGaussDicrPerCellType (std::vector< mcIdType > &locIds) const |
Public Member Functions inherited from MEDCoupling::MEDCouplingFieldDiscretization | |
| virtual MCAuto< MEDCouplingFieldDiscretization > | aggregate (std::vector< const MEDCouplingFieldDiscretization * > &fds) const =0 |
| virtual MEDCouplingMesh * | buildSubMeshData (const MEDCouplingMesh *mesh, const mcIdType *start, const mcIdType *end, DataArrayIdType *&di) const =0 |
| virtual MEDCouplingMesh * | buildSubMeshDataRange (const MEDCouplingMesh *mesh, mcIdType beginCellIds, mcIdType endCellIds, mcIdType stepCellIds, mcIdType &beginOut, mcIdType &endOut, mcIdType &stepOut, DataArrayIdType *&di) const |
| virtual void | checkCompatibilityWithNature (NatureOfField nat) const =0 |
| virtual void | checkForUnserialization (const std::vector< mcIdType > &tinyInfo, const DataArrayIdType *arr) |
| virtual void | clearGaussLocalizations () |
| virtual MEDCouplingFieldDiscretization * | clone () const =0 |
| virtual MEDCouplingFieldDiscretization * | clonePart (const mcIdType *startCellIds, const mcIdType *endCellIds) const |
| virtual MEDCouplingFieldDiscretization * | clonePartRange (mcIdType beginCellIds, mcIdType endCellIds, mcIdType stepCellIds) const |
| virtual void | computeMeshRestrictionFromTupleIds (const MEDCouplingMesh *mesh, const mcIdType *tupleIdsBg, const mcIdType *tupleIdsEnd, DataArrayIdType *&cellRestriction, DataArrayIdType *&trueTupleRestriction) const =0 |
| virtual DataArrayIdType * | computeTupleIdsToSelectFromCellIds (const MEDCouplingMesh *mesh, const mcIdType *startCellIds, const mcIdType *endCellIds) const =0 |
| virtual MEDCouplingFieldDiscretization * | deepCopy () const |
| virtual void | finishUnserialization (const std::vector< double > &tinyInfo) |
| virtual void | getCellIdsHavingGaussLocalization (mcIdType locId, std::vector< mcIdType > &cellIds) const |
| virtual TypeOfField | getEnum () const =0 |
| virtual MEDCouplingGaussLocalization & | getGaussLocalization (mcIdType locId) |
| virtual const MEDCouplingGaussLocalization & | getGaussLocalization (mcIdType locId) const |
| virtual mcIdType | getGaussLocalizationIdOfOneCell (mcIdType cellId) const |
| virtual mcIdType | getGaussLocalizationIdOfOneType (INTERP_KERNEL::NormalizedCellType type) const |
| virtual std::set< mcIdType > | getGaussLocalizationIdsOfOneType (INTERP_KERNEL::NormalizedCellType type) const |
| virtual double | getIJK (const MEDCouplingMesh *mesh, const DataArrayDouble *da, mcIdType cellId, mcIdType nodeIdInCell, int compoId) const |
| virtual DataArrayDouble * | getLocalizationOfDiscValues (const MEDCouplingMesh *mesh) const =0 |
| virtual MEDCouplingFieldDouble * | getMeasureField (const MEDCouplingMesh *mesh, bool isAbs) const =0 |
| virtual mcIdType | getNbOfGaussLocalization () const |
| virtual mcIdType | getNumberOfMeshPlaces (const MEDCouplingMesh *mesh) const =0 |
| virtual mcIdType | getNumberOfTuples (const MEDCouplingMesh *mesh) const =0 |
| virtual mcIdType | getNumberOfTuplesExpectedRegardingCode (const std::vector< mcIdType > &code, const std::vector< const DataArrayIdType * > &idsPerType) const =0 |
| virtual DataArrayIdType * | getOffsetArr (const MEDCouplingMesh *mesh) const =0 |
| double | getPrecision () const |
| virtual const char * | getRepr () const =0 |
| virtual void | getSerializationIntArray (DataArrayIdType *&arr) const |
| virtual std::string | getStringRepr () const =0 |
| virtual void | getTinySerializationDbleInformation (std::vector< double > &tinyInfo) const |
| virtual void | getTinySerializationIntInformation (std::vector< mcIdType > &tinyInfo) const |
| virtual void | getValueOn (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, const double *loc, double *res) const =0 |
| virtual DataArrayDouble * | getValueOnMulti (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, const double *loc, mcIdType nbOfPoints) const =0 |
| virtual void | getValueOnPos (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, mcIdType i, mcIdType j, mcIdType k, double *res) const =0 |
| virtual void | integral (const MEDCouplingMesh *mesh, const DataArrayDouble *arr, bool isWAbs, double *res) const |
| virtual bool | isEqual (const MEDCouplingFieldDiscretization *other, double eps) const |
| virtual void | normL1 (const MEDCouplingMesh *mesh, const DataArrayDouble *arr, double *res) const |
| virtual void | normL2 (const MEDCouplingMesh *mesh, const DataArrayDouble *arr, double *res) const |
| virtual void | renumberArraysForCell (const MEDCouplingMesh *mesh, const std::vector< DataArray * > &arrays, const mcIdType *old2NewBg, bool check)=0 |
| virtual void | renumberValuesOnCells (double epsOnVals, const MEDCouplingMesh *mesh, const mcIdType *old2New, mcIdType newSz, DataArrayDouble *arr) const =0 |
| virtual void | renumberValuesOnCellsR (const MEDCouplingMesh *mesh, const mcIdType *new2old, mcIdType newSz, DataArrayDouble *arr) const =0 |
| virtual void | renumberValuesOnNodes (double epsOnVals, const mcIdType *old2New, mcIdType newNbOfNodes, DataArrayDouble *arr) const =0 |
| virtual void | reprQuickOverview (std::ostream &stream) const =0 |
| virtual void | resizeForUnserialization (const std::vector< mcIdType > &tinyInfo, DataArrayIdType *&arr) |
| virtual void | setGaussLocalizationOnCells (const MEDCouplingMesh *m, const mcIdType *begin, const mcIdType *end, const std::vector< double > &refCoo, const std::vector< double > &gsCoo, const std::vector< double > &wg) |
| virtual void | setGaussLocalizationOnType (const MEDCouplingMesh *m, INTERP_KERNEL::NormalizedCellType type, const std::vector< double > &refCoo, const std::vector< double > &gsCoo, const std::vector< double > &wg) |
| void | setPrecision (double val) |
| virtual | ~MEDCouplingFieldDiscretization () |
Public Member Functions inherited from MEDCoupling::RefCountObjectOnly | |
| bool | decrRef () const |
| int | getRCValue () const |
| void | incrRef () const |
| RefCountObjectOnly & | operator= (const RefCountObjectOnly &other) |
Public Member Functions inherited from MEDCoupling::BigMemoryObject | |
| std::string | debugHeapMemorySize () const |
| std::vector< const BigMemoryObject * > | getAllTheProgeny () const |
| virtual std::string | getClassName () const |
| std::vector< const BigMemoryObject * > | getDirectChildren () const |
| std::size_t | getHeapMemorySize () const |
| std::string | getHeapMemorySizeStr () const |
| bool | isObjectInTheProgeny (const BigMemoryObject *obj) const |
| virtual | ~BigMemoryObject () |
Public Member Functions inherited from MEDCoupling::TimeLabel | |
| void | declareAsNew () const |
| std::size_t | getTimeOfThis () const |
| TimeLabel & | operator= (const TimeLabel &other) |
| TimeLabel (const TimeLabel &other)=default | |
Protected Attributes | |
| DataArrayIdType * | _discr_per_cell |
Protected Attributes inherited from MEDCoupling::MEDCouplingFieldDiscretization | |
| double | _precision |
Static Protected Attributes | |
| static const mcIdType | DFT_INVALID_LOCID_VALUE = -1 |
Static Protected Attributes inherited from MEDCoupling::MEDCouplingFieldDiscretization | |
| static const double | DFLT_PRECISION = 1.e-12 |
Additional Inherited Members | |
Static Public Member Functions inherited from MEDCoupling::MEDCouplingFieldDiscretization | |
| static TypeOfField | GetTypeOfFieldFromStringRepr (const std::string &repr) |
| static std::string | GetTypeOfFieldRepr (TypeOfField type) |
| static MEDCouplingFieldDiscretization * | New (TypeOfField type) |
Static Public Member Functions inherited from MEDCoupling::BigMemoryObject | |
| static std::size_t | GetHeapMemorySizeOfObjs (const std::vector< const BigMemoryObject * > &objs) |
Static Protected Member Functions inherited from MEDCoupling::MEDCouplingFieldDiscretization | |
| template<class FIELD_DISC > | |
| static MCAuto< MEDCouplingFieldDiscretization > | EasyAggregate (std::vector< const MEDCouplingFieldDiscretization * > &fds) |
| static void | RenumberEntitiesFromN2OArr (const mcIdType *new2OldPtr, mcIdType new2OldSz, DataArrayDouble *arr, const std::string &msg) |
| static void | RenumberEntitiesFromO2NArr (double epsOnVals, const mcIdType *old2NewPtr, mcIdType newNbOfEntity, DataArrayDouble *arr, const std::string &msg) |
This class abstracts MEDCouplingFieldDiscretization that needs an information on each cell to perform their job. All classes that inherits from this are more linked to mesh.
|
protected |
|
protected |
This constructor deep copies MEDCoupling::DataArrayIdType instance from other (if any).
References _discr_per_cell.
|
protected |
References _discr_per_cell.
|
protected |
References _discr_per_cell.
|
protected |
References _discr_per_cell.
| const DataArrayIdType * MEDCouplingFieldDiscretizationPerCell::getArrayOfDiscIds | ( | ) | const |
References _discr_per_cell.
| void MEDCouplingFieldDiscretizationPerCell::setArrayOfDiscIds | ( | const DataArrayIdType * | adids | ) |
References _discr_per_cell, and MEDCoupling::TimeLabel::declareAsNew().
| void MEDCouplingFieldDiscretizationPerCell::checkNoOrphanCells | ( | ) | const |
References _discr_per_cell, and DFT_INVALID_LOCID_VALUE.
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::getLocalizationOfDiscValues().
| std::vector< DataArrayIdType * > MEDCouplingFieldDiscretizationPerCell::splitIntoSingleGaussDicrPerCellType | ( | std::vector< mcIdType > & | locIds | ) | const |
This method is useful when 'this' describes a field discretization with several gauss discretization on a same cell type. For example same NORM_TRI3 cells having 6 gauss points and others with 12 gauss points. This method returns 2 arrays with same size : the return value and 'locIds' output parameter. For a given i into [0,locIds.size) ret[i] represents the set of cell ids of i_th set an locIds[i] represents the set of discretisation of the set. The return vector contains a set of newly created instance to deal with. The returned vector represents a partition of cells ids with a gauss discretization set.
If no descretization is set in 'this' and exception will be thrown.
References _discr_per_cell.
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::getLocalizationOfDiscValues(), and MEDCoupling::MEDCouplingFieldDiscretizationGauss::getMeasureField().
|
protectedvirtual |
Excepted for MEDCouplingFieldDiscretizationPerCell no underlying TimeLabel object : nothing to do in generally.
Reimplemented from MEDCoupling::MEDCouplingFieldDiscretization.
References _discr_per_cell, and MEDCoupling::TimeLabel::updateTimeWith().
|
protectedvirtual |
Reimplemented from MEDCoupling::MEDCouplingFieldDiscretization.
Reimplemented in MEDCoupling::MEDCouplingFieldDiscretizationGauss.
References MEDCoupling::MEDCouplingFieldDiscretization::getHeapMemorySizeWithoutChildren().
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::getHeapMemorySizeWithoutChildren().
|
protectedvirtual |
Reimplemented from MEDCoupling::MEDCouplingFieldDiscretization.
References _discr_per_cell, and MEDCoupling::MEDCouplingFieldDiscretization::getDirectChildrenWithNull().
|
protectedvirtual |
Implements MEDCoupling::MEDCouplingFieldDiscretization.
Reimplemented in MEDCoupling::MEDCouplingFieldDiscretizationGauss.
References _discr_per_cell, and MEDCoupling::MEDCouplingMesh::getNumberOfCells().
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::checkCoherencyBetween().
|
overrideprotectedvirtual |
Implements MEDCoupling::MEDCouplingFieldDiscretization.
Reimplemented in MEDCoupling::MEDCouplingFieldDiscretizationGauss.
References _discr_per_cell.
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::isEqualIfNotWhy().
|
protectedvirtual |
Reimplemented from MEDCoupling::MEDCouplingFieldDiscretization.
Reimplemented in MEDCoupling::MEDCouplingFieldDiscretizationGauss.
References _discr_per_cell.
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::isEqualWithoutConsideringStr().
|
protectedvirtual |
This method is typically the first step of renumbering. The impact on _discr_per_cell is necessary here. virtually by this method.
Reimplemented from MEDCoupling::MEDCouplingFieldDiscretization.
References _discr_per_cell.
|
protected |
|
protected |
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::aggregate(), buildDiscrPerCellIfNecessary(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::buildNbOfGaussPointPerCellField(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::buildSubMeshDataRange(), checkCoherencyBetween(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::checkCoherencyBetween(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::checkForUnserialization(), checkNoOrphanCells(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::clearGaussLocalizations(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::computeTupleIdsToSelectFromCellIds(), getArrayOfDiscIds(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getCellIdsHavingGaussLocalization(), getDirectChildrenWithNull(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getGaussLocalizationIdOfOneCell(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getGaussLocalizationIdsOfOneType(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getMeasureField(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getNumberOfTuples(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getNumberOfTuplesExpectedRegardingCode(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getOffsetArr(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getOffsetOfCell(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getSerializationIntArray(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getStringRepr(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::getTinySerializationIntInformation(), isEqualIfNotWhy(), isEqualWithoutConsideringStr(), MEDCouplingFieldDiscretizationPerCell(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::renumberArraysForCell(), renumberCells(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::resizeForUnserialization(), setArrayOfDiscIds(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::setGaussLocalizationOnCells(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::setGaussLocalizationOnType(), splitIntoSingleGaussDicrPerCellType(), updateTime(), MEDCoupling::MEDCouplingFieldDiscretizationGauss::zipGaussLocalizations(), and ~MEDCouplingFieldDiscretizationPerCell().
|
staticprotected |