Version: 9.14.0
MEDCoupling::MEDCouplingFieldDiscretizationP1 Class Reference
Inheritance diagram for MEDCoupling::MEDCouplingFieldDiscretizationP1:
Collaboration diagram for MEDCoupling::MEDCouplingFieldDiscretizationP1:

Public Member Functions

MCAuto< MEDCouplingFieldDiscretizationaggregate (std::vector< const MEDCouplingFieldDiscretization * > &fds) const override
 
void checkCompatibilityWithNature (NatureOfField nat) const override
 
MEDCouplingFieldDiscretizationclone () const override
 
std::string getClassName () const override
 
TypeOfField getEnum () const
 
MEDCouplingFieldDoublegetMeasureField (const MEDCouplingMesh *mesh, bool isAbs) const override
 
const char * getRepr () const
 
std::string getStringRepr () const
 
void getValueOn (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, const double *loc, double *res) const override
 
DataArrayDoublegetValueOnMulti (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, const double *loc, mcIdType nbOfPoints) const override
 
bool isEqualIfNotWhy (const MEDCouplingFieldDiscretization *other, double eps, std::string &reason) const override
 
void reprQuickOverview (std::ostream &stream) const
 
- Public Member Functions inherited from MEDCoupling::MEDCouplingFieldDiscretizationOnNodes
MEDCouplingMeshbuildSubMeshData (const MEDCouplingMesh *mesh, const mcIdType *start, const mcIdType *end, DataArrayIdType *&di) const
 
MEDCouplingMeshbuildSubMeshDataRange (const MEDCouplingMesh *mesh, mcIdType beginCellIds, mcIdType endCellIds, mcIdType stepCellIds, mcIdType &beginOut, mcIdType &endOut, mcIdType &stepOut, DataArrayIdType *&di) const
 
void checkCoherencyBetween (const MEDCouplingMesh *mesh, const DataArray *da) const
 
void computeMeshRestrictionFromTupleIds (const MEDCouplingMesh *mesh, const mcIdType *tupleIdsBg, const mcIdType *tupleIdsEnd, DataArrayIdType *&cellRestriction, DataArrayIdType *&trueTupleRestriction) const
 
DataArrayIdType * computeTupleIdsToSelectFromCellIds (const MEDCouplingMesh *mesh, const mcIdType *startCellIds, const mcIdType *endCellIds) const
 
DataArrayDoublegetLocalizationOfDiscValues (const MEDCouplingMesh *mesh) const
 
mcIdType getNumberOfMeshPlaces (const MEDCouplingMesh *mesh) const
 
mcIdType getNumberOfTuples (const MEDCouplingMesh *mesh) const
 
mcIdType getNumberOfTuplesExpectedRegardingCode (const std::vector< mcIdType > &code, const std::vector< const DataArrayIdType * > &idsPerType) const
 
DataArrayIdType * getOffsetArr (const MEDCouplingMesh *mesh) const
 
void getValueOnPos (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, mcIdType i, mcIdType j, mcIdType k, double *res) const
 
void renumberArraysForCell (const MEDCouplingMesh *mesh, const std::vector< DataArray * > &arrays, const mcIdType *old2NewBg, bool check)
 
void renumberValuesOnCells (double epsOnVals, const MEDCouplingMesh *mesh, const mcIdType *old2New, mcIdType newSz, DataArrayDouble *arr) const
 
void renumberValuesOnCellsR (const MEDCouplingMesh *mesh, const mcIdType *new2old, mcIdType newSz, DataArrayDouble *arr) const
 
void renumberValuesOnNodes (double epsOnVals, const mcIdType *old2New, mcIdType newNbOfNodes, DataArrayDouble *arr) const
 
- Public Member Functions inherited from MEDCoupling::MEDCouplingFieldDiscretization
virtual void checkForUnserialization (const std::vector< mcIdType > &tinyInfo, const DataArrayIdType *arr)
 
virtual void clearGaussLocalizations ()
 
virtual MEDCouplingFieldDiscretizationclonePart (const mcIdType *startCellIds, const mcIdType *endCellIds) const
 
virtual MEDCouplingFieldDiscretizationclonePartRange (mcIdType beginCellIds, mcIdType endCellIds, mcIdType stepCellIds) const
 
virtual MEDCouplingFieldDiscretizationdeepCopy () const
 
virtual void finishUnserialization (const std::vector< double > &tinyInfo)
 
virtual void getCellIdsHavingGaussLocalization (mcIdType locId, std::vector< mcIdType > &cellIds) const
 
std::vector< const BigMemoryObject * > getDirectChildrenWithNull () const
 
virtual MEDCouplingGaussLocalizationgetGaussLocalization (mcIdType locId)
 
virtual const MEDCouplingGaussLocalizationgetGaussLocalization (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
 
std::size_t getHeapMemorySizeWithoutChildren () const
 
virtual double getIJK (const MEDCouplingMesh *mesh, const DataArrayDouble *da, mcIdType cellId, mcIdType nodeIdInCell, int compoId) const
 
virtual mcIdType getNbOfGaussLocalization () const
 
double getPrecision () const
 
virtual void getSerializationIntArray (DataArrayIdType *&arr) const
 
virtual void getTinySerializationDbleInformation (std::vector< double > &tinyInfo) const
 
virtual void getTinySerializationIntInformation (std::vector< mcIdType > &tinyInfo) const
 
virtual void integral (const MEDCouplingMesh *mesh, const DataArrayDouble *arr, bool isWAbs, double *res) const
 
virtual bool isEqual (const MEDCouplingFieldDiscretization *other, double eps) const
 
virtual bool isEqualWithoutConsideringStr (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 renumberCells (const mcIdType *old2NewBg, bool check=true)
 
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)
 
void updateTime () const
 
virtual ~MEDCouplingFieldDiscretization ()
 
- Public Member Functions inherited from MEDCoupling::RefCountObjectOnly
bool decrRef () const
 
int getRCValue () const
 
void incrRef () const
 
RefCountObjectOnlyoperator= (const RefCountObjectOnly &other)
 
- Public Member Functions inherited from MEDCoupling::BigMemoryObject
std::string debugHeapMemorySize () const
 
std::vector< const BigMemoryObject * > getAllTheProgeny () 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
 
TimeLabeloperator= (const TimeLabel &other)
 
 TimeLabel (const TimeLabel &other)=default
 

Static Public Attributes

static const char REPR [] = "P1"
 
static constexpr TypeOfField TYPE = ON_NODES
 

Protected Member Functions

void getValueInCell (const MEDCouplingMesh *mesh, mcIdType cellId, const DataArrayDouble *arr, const double *loc, double *res) const
 
- Protected Member Functions inherited from MEDCoupling::MEDCouplingFieldDiscretization
 MEDCouplingFieldDiscretization ()
 
- Protected Member Functions inherited from MEDCoupling::RefCountObject
 RefCountObject ()
 
 RefCountObject (const RefCountObject &other)
 
virtual ~RefCountObject ()
 
- Protected Member Functions inherited from MEDCoupling::RefCountObjectOnly
 RefCountObjectOnly ()
 
 RefCountObjectOnly (const RefCountObjectOnly &other)
 
virtual ~RefCountObjectOnly ()
 
- Protected Member Functions inherited from MEDCoupling::TimeLabel
void forceTimeOfThis (const TimeLabel &other) const
 
 TimeLabel ()
 
void updateTimeWith (const TimeLabel &other) const
 
virtual ~TimeLabel ()
 

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 MEDCouplingFieldDiscretizationNew (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< MEDCouplingFieldDiscretizationEasyAggregate (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)
 
- Protected Attributes inherited from MEDCoupling::MEDCouplingFieldDiscretization
double _precision
 
- Static Protected Attributes inherited from MEDCoupling::MEDCouplingFieldDiscretization
static const double DFLT_PRECISION = 1.e-12
 

Member Function Documentation

◆ getEnum()

TypeOfField MEDCouplingFieldDiscretizationP1::getEnum ( ) const
virtual

◆ getClassName()

std::string MEDCoupling::MEDCouplingFieldDiscretizationP1::getClassName ( ) const
overridevirtual

Reimplemented from MEDCoupling::BigMemoryObject.

◆ clone()

MEDCouplingFieldDiscretization * MEDCouplingFieldDiscretizationP1::clone ( ) const
overridevirtual

This method is simply called by MEDCouplingFieldDiscretization::deepCopy. It performs the deep copy of this.

See also
MEDCouplingFieldDiscretization::deepCopy.

Implements MEDCoupling::MEDCouplingFieldDiscretization.

◆ getStringRepr()

std::string MEDCouplingFieldDiscretizationP1::getStringRepr ( ) const
virtual

◆ getRepr()

const char * MEDCouplingFieldDiscretizationP1::getRepr ( ) const
virtual

◆ checkCompatibilityWithNature()

void MEDCouplingFieldDiscretizationP1::checkCompatibilityWithNature ( NatureOfField  nat) const
overridevirtual

◆ isEqualIfNotWhy()

bool MEDCouplingFieldDiscretizationP1::isEqualIfNotWhy ( const MEDCouplingFieldDiscretization other,
double  eps,
std::string &  reason 
) const
overridevirtual

◆ getMeasureField()

MEDCouplingFieldDouble * MEDCouplingFieldDiscretizationP1::getMeasureField ( const MEDCouplingMesh mesh,
bool  isAbs 
) const
overridevirtual

◆ getValueOn()

void MEDCouplingFieldDiscretizationP1::getValueOn ( const DataArrayDouble arr,
const MEDCouplingMesh mesh,
const double *  loc,
double *  res 
) const
overridevirtual

◆ getValueOnMulti()

◆ reprQuickOverview()

void MEDCouplingFieldDiscretizationP1::reprQuickOverview ( std::ostream &  stream) const
virtual

◆ aggregate()

MCAuto< MEDCouplingFieldDiscretization > MEDCouplingFieldDiscretizationP1::aggregate ( std::vector< const MEDCouplingFieldDiscretization * > &  fds) const
overridevirtual

◆ getValueInCell()

void MEDCouplingFieldDiscretizationP1::getValueInCell ( const MEDCouplingMesh mesh,
mcIdType  cellId,
const DataArrayDouble arr,
const double *  loc,
double *  res 
) const
protected

This method localizes a point defined by 'loc' in a cell with id 'cellId' into mesh 'mesh'. The result is put into res expected to be of size at least arr->getNumberOfComponents()

References MEDCoupling::MEDCouplingMesh::getCoordinatesOfNode(), MEDCoupling::MEDCouplingMesh::getNodeIdsOfCell(), MEDCoupling::DataArray::getNumberOfComponents(), MEDCoupling::MEDCouplingMesh::getSpaceDimension(), MEDCoupling::DataArrayTemplate< T >::getTuple(), and MEDCoupling::MEDCouplingMesh::getTypeOfCell().

Referenced by getValueOn(), and getValueOnMulti().

Member Data Documentation

◆ REPR

◆ TYPE