Public Member Functions | |
MCAuto< MEDCouplingUMesh > | buildRefCell () const |
void | checkConsistencyLight () const |
const double * | fillWithValues (const double *vals) |
int | getDimension () const |
double | getGaussCoord (int gaussPtIdInCell, int comp) const |
const std::vector< double > & | getGaussCoords () const |
std::size_t | getMemorySize () const |
int | getNumberOfGaussPt () const |
int | getNumberOfPtsInRefCell () const |
double | getRefCoord (int ptIdInCell, int comp) const |
const std::vector< double > & | getRefCoords () const |
std::string | getStringRepr () const |
INTERP_KERNEL::NormalizedCellType | getType () const |
double | getWeight (int gaussPtIdInCell, double newVal) const |
const std::vector< double > & | getWeights () const |
bool | isEqual (const MEDCouplingGaussLocalization &other, double eps) const |
MCAuto< DataArrayDouble > | localizePtsInRefCooForEachCell (const DataArrayDouble *ptsInRefCoo, const MEDCouplingUMesh *mesh) const |
MEDCouplingGaussLocalization (INTERP_KERNEL::NormalizedCellType type, const std::vector< double > &refCoo, const std::vector< double > &gsCoo, const std::vector< double > &w) | |
MEDCouplingGaussLocalization (INTERP_KERNEL::NormalizedCellType typ) | |
void | pushTinySerializationDblInfo (std::vector< double > &tinyInfo) const |
void | pushTinySerializationIntInfo (std::vector< int > &tinyInfo) const |
void | setGaussCoord (int gaussPtIdInCell, int comp, double newVal) |
void | setGaussCoords (const std::vector< double > &gsCoo) |
void | setRefCoord (int ptIdInCell, int comp, double newVal) |
void | setRefCoords (const std::vector< double > &refCoo) |
void | setType (INTERP_KERNEL::NormalizedCellType typ) |
void | setWeight (int gaussPtIdInCell, double newVal) |
void | setWeights (const std::vector< double > &w) |
Static Public Member Functions | |
static bool | AreAlmostEqual (const std::vector< double > &v1, const std::vector< double > &v2, double eps) |
static MEDCouplingGaussLocalization | BuildNewInstanceFromTinyInfo (int dim, const std::vector< int > &tinyData) |
MEDCouplingGaussLocalization::MEDCouplingGaussLocalization | ( | INTERP_KERNEL::NormalizedCellType | type, |
const std::vector< double > & | refCoo, | ||
const std::vector< double > & | gsCoo, | ||
const std::vector< double > & | w | ||
) |
References checkConsistencyLight().
Referenced by BuildNewInstanceFromTinyInfo().
MEDCouplingGaussLocalization::MEDCouplingGaussLocalization | ( | INTERP_KERNEL::NormalizedCellType | typ | ) |
INTERP_KERNEL::NormalizedCellType MEDCoupling::MEDCouplingGaussLocalization::getType | ( | ) | const |
void MEDCouplingGaussLocalization::setType | ( | INTERP_KERNEL::NormalizedCellType | typ | ) |
int MEDCoupling::MEDCouplingGaussLocalization::getNumberOfGaussPt | ( | ) | const |
int MEDCouplingGaussLocalization::getDimension | ( | ) | const |
Referenced by buildRefCell(), getNumberOfPtsInRefCell(), and localizePtsInRefCooForEachCell().
int MEDCouplingGaussLocalization::getNumberOfPtsInRefCell | ( | ) | const |
References getDimension().
Referenced by localizePtsInRefCooForEachCell(), and pushTinySerializationIntInfo().
std::string MEDCouplingGaussLocalization::getStringRepr | ( | ) | const |
std::size_t MEDCouplingGaussLocalization::getMemorySize | ( | ) | const |
void MEDCouplingGaussLocalization::checkConsistencyLight | ( | ) | const |
Referenced by MEDCouplingGaussLocalization().
bool MEDCouplingGaussLocalization::isEqual | ( | const MEDCouplingGaussLocalization & | other, |
double | eps | ||
) | const |
References AreAlmostEqual().
void MEDCouplingGaussLocalization::pushTinySerializationIntInfo | ( | std::vector< int > & | tinyInfo | ) | const |
Completely useless method for end user. Only for CORBA MPI serialization/unserialization. push at the end of tinyInfo its basic serialization info. The size of pushed data is always the same.
tinyInfo | inout parameter. |
References getNumberOfGaussPt(), and getNumberOfPtsInRefCell().
void MEDCouplingGaussLocalization::pushTinySerializationDblInfo | ( | std::vector< double > & | tinyInfo | ) | const |
Completely useless method for end user. Only for CORBA MPI serialization/unserialization. push at the end of tinyInfo its basic serialization info. The size of pushed data is NOT always the same contrary to pushTinySerializationIntInfo.
tinyInfo | inout parameter. |
const double * MEDCouplingGaussLocalization::fillWithValues | ( | const double * | vals | ) |
This method operates the exact inverse operation than MEDCouplingGaussLocalization::pushTinySerializationDblInfo method. This is one of the last step of unserialization process. This method should be called on an object resized by buildNewInstanceFromTinyInfo static method. This method takes in argument a pointer 'vals' that point to the begin of double data pushed remotely by pushTinySerializationDblInfo method. This method returns the pointer 'vals' with an offset of size what it has been read in this method.
MCAuto< DataArrayDouble > MEDCouplingGaussLocalization::localizePtsInRefCooForEachCell | ( | const DataArrayDouble * | ptsInRefCoo, |
const MEDCouplingUMesh * | mesh | ||
) | const |
Given points in ptsInRefCoo in the reference coordinates of this (in _ref_coord attribute) this method computes their coordinates in real world for each cells in mesh. So the returned array will contain nbCells* ptsInRefCoo->getNumberOfTuples() tuples and the number of component will be equal to the dimension of this.
This method ignores Gauss points in this and only those in ptsInRefCoo are considered here.
References MEDCoupling::DataArrayTemplate< T >::begin(), MEDCoupling::DataArrayTemplate< T >::checkAllocated(), MEDCoupling::MEDCouplingUMesh::checkConsistencyLight(), MEDCoupling::MEDCouplingPointSet::getCoords(), getDimension(), MEDCoupling::MEDCouplingUMesh::getNodalConnectivity(), MEDCoupling::MEDCouplingUMesh::getNodalConnectivityIndex(), MEDCoupling::MEDCouplingUMesh::getNumberOfCells(), MEDCoupling::DataArray::getNumberOfComponents(), getNumberOfPtsInRefCell(), MEDCoupling::DataArrayTemplate< T >::getNumberOfTuples(), MEDCoupling::MEDCouplingPointSet::getSpaceDimension(), getType(), getWeights(), and MEDCoupling::DataArrayDouble::New().
MCAuto< MEDCouplingUMesh > MEDCouplingGaussLocalization::buildRefCell | ( | ) | const |
This method returns an unstructured mesh that represents the reference cell.
References MEDCoupling::DataArrayTemplate< T >::alloc(), getDimension(), MEDCoupling::DataArrayTemplate< T >::getPointer(), getType(), MEDCoupling::DataArrayInt::iota(), MEDCoupling::MEDCoupling1SGTUMesh::New(), MEDCoupling::DataArrayDouble::New(), and MEDCoupling::DataArrayInt::New().
const std::vector<double>& MEDCoupling::MEDCouplingGaussLocalization::getRefCoords | ( | ) | const |
double MEDCouplingGaussLocalization::getRefCoord | ( | int | ptIdInCell, |
int | comp | ||
) | const |
const std::vector<double>& MEDCoupling::MEDCouplingGaussLocalization::getGaussCoords | ( | ) | const |
double MEDCouplingGaussLocalization::getGaussCoord | ( | int | gaussPtIdInCell, |
int | comp | ||
) | const |
const std::vector<double>& MEDCoupling::MEDCouplingGaussLocalization::getWeights | ( | ) | const |
double MEDCouplingGaussLocalization::getWeight | ( | int | gaussPtIdInCell, |
double | newVal | ||
) | const |
void MEDCouplingGaussLocalization::setRefCoord | ( | int | ptIdInCell, |
int | comp, | ||
double | newVal | ||
) |
This method sets the comp_th component of ptIdInCell_th point coordinate of reference element of type this->_type.
if | not 0<=ptIdInCell<nbOfNodePerCell or if not 0<=comp<dim |
void MEDCouplingGaussLocalization::setGaussCoord | ( | int | gaussPtIdInCell, |
int | comp, | ||
double | newVal | ||
) |
void MEDCouplingGaussLocalization::setWeight | ( | int | gaussPtIdInCell, |
double | newVal | ||
) |
void MEDCouplingGaussLocalization::setRefCoords | ( | const std::vector< double > & | refCoo | ) |
void MEDCouplingGaussLocalization::setGaussCoords | ( | const std::vector< double > & | gsCoo | ) |
void MEDCouplingGaussLocalization::setWeights | ( | const std::vector< double > & | w | ) |
|
static |
The format of 'tinyData' parameter is the same than pushed in method MEDCouplingGaussLocalization::pushTinySerializationIntInfo.
References MEDCouplingGaussLocalization().
Referenced by MEDCoupling::MEDCouplingFieldDiscretizationGauss::commonUnserialization().
|
static |
Referenced by isEqual(), and MEDCoupling::MEDFileFieldLoc::isEqual().