#include <MEDCouplingFieldDiscretization.hxx>

Public Member Functions | |
| MEDCouplingFieldDiscretizationGauss () | |
| TypeOfField | getEnum () const |
| bool | isEqual (const MEDCouplingFieldDiscretization *other, double eps) const |
| bool | isEqualWithoutConsideringStr (const MEDCouplingFieldDiscretization *other, double eps) const |
| MEDCouplingFieldDiscretization * | clone () const |
| const char * | getStringRepr () const |
| int | getNumberOfTuples (const MEDCouplingMesh *mesh) const |
| int | getNumberOfMeshPlaces (const MEDCouplingMesh *mesh) const |
| DataArrayInt * | getOffsetArr (const MEDCouplingMesh *mesh) const |
| void | renumberArraysForCell (const MEDCouplingMesh *mesh, const std::vector< DataArrayDouble * > &arrays, const int *old2NewBg, bool check) throw (INTERP_KERNEL::Exception) |
| DataArrayDouble * | getLocalizationOfDiscValues (const MEDCouplingMesh *mesh) const |
| void | computeMeshRestrictionFromTupleIds (const MEDCouplingMesh *mesh, const int *partBg, const int *partEnd, DataArrayInt *&cellRest) |
| void | checkCompatibilityWithNature (NatureOfField nat) const throw (INTERP_KERNEL::Exception) |
| void | getTinySerializationIntInformation (std::vector< int > &tinyInfo) const |
| void | getTinySerializationDbleInformation (std::vector< double > &tinyInfo) const |
| void | finishUnserialization (const std::vector< double > &tinyInfo) |
| void | getSerializationIntArray (DataArrayInt *&arr) const |
| void | resizeForUnserialization (const std::vector< int > &tinyInfo, DataArrayInt *&arr) |
| double | getIJK (const MEDCouplingMesh *mesh, const DataArrayDouble *da, int cellId, int nodeIdInCell, int compoId) const throw (INTERP_KERNEL::Exception) |
| void | checkCoherencyBetween (const MEDCouplingMesh *mesh, const DataArrayDouble *da) const throw (INTERP_KERNEL::Exception) |
| MEDCouplingFieldDouble * | getMeasureField (const MEDCouplingMesh *mesh, bool isAbs) const |
| void | getValueOn (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, const double *loc, double *res) const |
| void | getValueOnPos (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, int i, int j, int k, double *res) const |
| DataArrayDouble * | getValueOnMulti (const DataArrayDouble *arr, const MEDCouplingMesh *mesh, const double *loc, int nbOfPoints) const |
| MEDCouplingMesh * | buildSubMeshData (const MEDCouplingMesh *mesh, const int *start, const int *end, DataArrayInt *&di) const |
| void | renumberValuesOnNodes (double epsOnVals, const int *old2New, DataArrayDouble *arr) const |
| void | renumberValuesOnCells (double epsOnVals, const MEDCouplingMesh *mesh, const int *old2New, DataArrayDouble *arr) const |
| void | renumberValuesOnCellsR (const MEDCouplingMesh *mesh, const int *new2old, int newSz, DataArrayDouble *arr) const |
| void | setGaussLocalizationOnType (const MEDCouplingMesh *m, INTERP_KERNEL::NormalizedCellType type, const std::vector< double > &refCoo, const std::vector< double > &gsCoo, const std::vector< double > &wg) throw (INTERP_KERNEL::Exception) |
| void | setGaussLocalizationOnCells (const MEDCouplingMesh *m, const int *begin, const int *end, const std::vector< double > &refCoo, const std::vector< double > &gsCoo, const std::vector< double > &wg) throw (INTERP_KERNEL::Exception) |
| void | clearGaussLocalizations () throw (INTERP_KERNEL::Exception) |
| MEDCouplingGaussLocalization & | getGaussLocalization (int locId) throw (INTERP_KERNEL::Exception) |
| int | getNbOfGaussLocalization () const throw (INTERP_KERNEL::Exception) |
| int | getGaussLocalizationIdOfOneCell (int cellId) const throw (INTERP_KERNEL::Exception) |
| int | getGaussLocalizationIdOfOneType (INTERP_KERNEL::NormalizedCellType type) const throw (INTERP_KERNEL::Exception) |
| void | getCellIdsHavingGaussLocalization (int locId, std::vector< int > &cellIds) const throw (INTERP_KERNEL::Exception) |
| const MEDCouplingGaussLocalization & | getGaussLocalization (int locId) const throw (INTERP_KERNEL::Exception) |
| std::vector< DataArrayInt * > | splitIntoSingleGaussDicrPerCellType (std::vector< std::vector< int > > &locIds) const throw (INTERP_KERNEL::Exception) |
| DataArrayInt * | buildNbOfGaussPointPerCellField () const throw (INTERP_KERNEL::Exception) |
Static Public Attributes | |
| static const char | REPR [] = "GAUSS" |
| static const TypeOfField | TYPE = ON_GAUSS_PT |
Protected Member Functions | |
| MEDCouplingFieldDiscretizationGauss (const MEDCouplingFieldDiscretizationGauss &other) | |
| void | zipGaussLocalizations () |
| int | getOffsetOfCell (int cellId) const throw (INTERP_KERNEL::Exception) |
| void | checkLocalizationId (int locId) const throw (INTERP_KERNEL::Exception) |
Private Attributes | |
| std::vector < MEDCouplingGaussLocalization > | _loc |
| MEDCouplingFieldDiscretizationGauss::MEDCouplingFieldDiscretizationGauss | ( | ) |
| MEDCouplingFieldDiscretizationGauss::MEDCouplingFieldDiscretizationGauss | ( | const MEDCouplingFieldDiscretizationGauss & | other | ) | [protected] |
| TypeOfField MEDCouplingFieldDiscretizationGauss::getEnum | ( | ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationGauss.TYPE.
| bool MEDCouplingFieldDiscretizationGauss::isEqual | ( | const MEDCouplingFieldDiscretization * | other, |
| double | eps | ||
| ) | const [virtual] |
| bool MEDCouplingFieldDiscretizationGauss::isEqualWithoutConsideringStr | ( | const MEDCouplingFieldDiscretization * | other, |
| double | eps | ||
| ) | const [virtual] |
| MEDCouplingFieldDiscretization * MEDCouplingFieldDiscretizationGauss::clone | ( | ) | const [virtual] |
| const char * MEDCouplingFieldDiscretizationGauss::getStringRepr | ( | ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationGauss.REPR.
| int MEDCouplingFieldDiscretizationGauss::getNumberOfTuples | ( | const MEDCouplingMesh * | mesh | ) | const [virtual] |
| int MEDCouplingFieldDiscretizationGauss::getNumberOfMeshPlaces | ( | const MEDCouplingMesh * | mesh | ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingMesh.getNumberOfCells().
| DataArrayInt * MEDCouplingFieldDiscretizationGauss::getOffsetArr | ( | const MEDCouplingMesh * | mesh | ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell._discr_per_cell, ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc, ParaMEDMEM.DataArrayInt.alloc(), ParaMEDMEM.DataArrayInt.getConstPointer(), ParaMEDMEM.MEDCouplingMesh.getNumberOfCells(), ParaMEDMEM.DataArrayInt.getPointer(), ParaMEDMEM.MEDCouplingFieldDiscretization.New(), and testMEDMEM.ret.
| void MEDCouplingFieldDiscretizationGauss::renumberArraysForCell | ( | const MEDCouplingMesh * | mesh, |
| const std::vector< DataArrayDouble * > & | arrays, | ||
| const int * | old2NewBg, | ||
| bool | check | ||
| ) | throw (INTERP_KERNEL::Exception) [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.DataArrayInt.CheckAndPreparePermutation(), Med_Gen_test.it, and MED_test2.mesh.
| DataArrayDouble * MEDCouplingFieldDiscretizationGauss::getLocalizationOfDiscValues | ( | const MEDCouplingMesh * | mesh | ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc, INTERP_KERNEL.GaussCoords.addGaussInfo(), ParaMEDMEM.DataArrayDouble.alloc(), med_test1.begin, ParaMEDMEM.MEDCouplingFieldDiscretizationGauss.buildNbOfGaussPointPerCellField(), ParaMEDMEM.MEDCouplingMesh.buildUnstructured(), INTERP_KERNEL.GaussCoords.calculateCoords(), ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell.checkNoOrphanCells(), testRenumbering.conn, coords, ParaMEDMEM.DataArray.copyStringInfoFrom(), INTERP_KERNEL.CellModel.GetCellModel(), ParaMEDMEM.MEDCouplingGaussLocalization.getGaussCoords(), ParaMEDMEM.MEDCouplingFieldDiscretizationGauss.getNumberOfTuples(), ParaMEDMEM.DataArrayDouble.getPointer(), ParaMEDMEM.MEDCouplingGaussLocalization.getRefCoords(), ParaMEDMEM.MEDCouplingMesh.getSpaceDimension(), ParaMEDMEM.MEDCouplingGaussLocalization.getType(), ParaMEDMEM.MEDCouplingGaussLocalization.getWeights(), Med_Gen_test.it, ParaMEDMEM.MEDCouplingFieldDiscretization.New(), testMEDMEM.ret, batchmode_medcorba_test.spaceDim, and ParaMEDMEM.MEDCouplingFieldDiscretizationGauss.splitIntoSingleGaussDicrPerCellType().
| void MEDCouplingFieldDiscretizationGauss::computeMeshRestrictionFromTupleIds | ( | const MEDCouplingMesh * | mesh, |
| const int * | partBg, | ||
| const int * | partEnd, | ||
| DataArrayInt *& | cellRest | ||
| ) | [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::checkCompatibilityWithNature | ( | NatureOfField | nat | ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Empty : not a bug
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::getTinySerializationIntInformation | ( | std::vector< int > & | tinyInfo | ) | const [virtual] |
| void MEDCouplingFieldDiscretizationGauss::getTinySerializationDbleInformation | ( | std::vector< double > & | tinyInfo | ) | const [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc.
| void MEDCouplingFieldDiscretizationGauss::finishUnserialization | ( | const std::vector< double > & | tinyInfo | ) | [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc.
| void MEDCouplingFieldDiscretizationGauss::getSerializationIntArray | ( | DataArrayInt *& | arr | ) | const [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell._discr_per_cell.
| void MEDCouplingFieldDiscretizationGauss::resizeForUnserialization | ( | const std::vector< int > & | tinyInfo, |
| DataArrayInt *& | arr | ||
| ) | [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell._discr_per_cell, ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc, ParaMEDMEM.DataArrayInt.alloc(), ParaMEDMEM.MEDCouplingGaussLocalization.BuildNewInstanceFromTinyInfo(), and ParaMEDMEM.MEDCouplingFieldDiscretization.New().
| double MEDCouplingFieldDiscretizationGauss::getIJK | ( | const MEDCouplingMesh * | mesh, |
| const DataArrayDouble * | da, | ||
| int | cellId, | ||
| int | nodeIdInCell, | ||
| int | compoId | ||
| ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::checkCoherencyBetween | ( | const MEDCouplingMesh * | mesh, |
| const DataArrayDouble * | da | ||
| ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell.
References ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell.checkCoherencyBetween(), and MED_test2.mesh.
| MEDCouplingFieldDouble * MEDCouplingFieldDiscretizationGauss::getMeasureField | ( | const MEDCouplingMesh * | mesh, |
| bool | isAbs | ||
| ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::getValueOn | ( | const DataArrayDouble * | arr, |
| const MEDCouplingMesh * | mesh, | ||
| const double * | loc, | ||
| double * | res | ||
| ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::getValueOnPos | ( | const DataArrayDouble * | arr, |
| const MEDCouplingMesh * | mesh, | ||
| int | i, | ||
| int | j, | ||
| int | k, | ||
| double * | res | ||
| ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| DataArrayDouble * MEDCouplingFieldDiscretizationGauss::getValueOnMulti | ( | const DataArrayDouble * | arr, |
| const MEDCouplingMesh * | mesh, | ||
| const double * | loc, | ||
| int | nbOfPoints | ||
| ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| MEDCouplingMesh * MEDCouplingFieldDiscretizationGauss::buildSubMeshData | ( | const MEDCouplingMesh * | mesh, |
| const int * | start, | ||
| const int * | end, | ||
| DataArrayInt *& | di | ||
| ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::renumberValuesOnNodes | ( | double | epsOnVals, |
| const int * | old2New, | ||
| DataArrayDouble * | arr | ||
| ) | const [virtual] |
No implementation needed !
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::renumberValuesOnCells | ( | double | epsOnVals, |
| const MEDCouplingMesh * | mesh, | ||
| const int * | old2New, | ||
| DataArrayDouble * | arr | ||
| ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::renumberValuesOnCellsR | ( | const MEDCouplingMesh * | mesh, |
| const int * | new2old, | ||
| int | newSz, | ||
| DataArrayDouble * | arr | ||
| ) | const [virtual] |
Implements ParaMEDMEM.MEDCouplingFieldDiscretization.
| void MEDCouplingFieldDiscretizationGauss::setGaussLocalizationOnType | ( | const MEDCouplingMesh * | m, |
| INTERP_KERNEL::NormalizedCellType | type, | ||
| const std::vector< double > & | refCoo, | ||
| const std::vector< double > & | gsCoo, | ||
| const std::vector< double > & | wg | ||
| ) | throw (INTERP_KERNEL::Exception) [virtual] |
| void MEDCouplingFieldDiscretizationGauss::setGaussLocalizationOnCells | ( | const MEDCouplingMesh * | m, |
| const int * | begin, | ||
| const int * | end, | ||
| const std::vector< double > & | refCoo, | ||
| const std::vector< double > & | gsCoo, | ||
| const std::vector< double > & | wg | ||
| ) | throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
References med_test1.begin, med_test1.end, testGaussLocalization.gsCoo, TestMedCorba2.m, testGaussLocalization.refCoo, and medClient_test.type.
| void MEDCouplingFieldDiscretizationGauss::clearGaussLocalizations | ( | ) | throw (INTERP_KERNEL::Exception) [virtual] |
| MEDCouplingGaussLocalization & MEDCouplingFieldDiscretizationGauss::getGaussLocalization | ( | int | locId | ) | throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
| int MEDCouplingFieldDiscretizationGauss::getNbOfGaussLocalization | ( | ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
References ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc.
| int MEDCouplingFieldDiscretizationGauss::getGaussLocalizationIdOfOneCell | ( | int | cellId | ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
| int MEDCouplingFieldDiscretizationGauss::getGaussLocalizationIdOfOneType | ( | INTERP_KERNEL::NormalizedCellType | type | ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
References testMEDMEM.ret, and medClient_test.type.
| void MEDCouplingFieldDiscretizationGauss::getCellIdsHavingGaussLocalization | ( | int | locId, |
| std::vector< int > & | cellIds | ||
| ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
| const MEDCouplingGaussLocalization & MEDCouplingFieldDiscretizationGauss::getGaussLocalization | ( | int | locId | ) | const throw (INTERP_KERNEL::Exception) [virtual] |
Reimplemented from ParaMEDMEM.MEDCouplingFieldDiscretization.
| std::vector< DataArrayInt * > MEDCouplingFieldDiscretizationGauss::splitIntoSingleGaussDicrPerCellType | ( | std::vector< std::vector< int > > & | locIds | ) | const throw (INTERP_KERNEL::Exception) |
This method is usefull 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 ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell._discr_per_cell, ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc, ParaMEDMEM.DataArrayInt.alloc(), ParaMEDMEM.DataArrayInt.getConstPointer(), ParaMEDMEM.DataArrayInt.getIdsNotEqual(), ParaMEDMEM.DataArrayInt.getPointer(), Med_Gen_test.it, ParaMEDMEM.MEDCouplingFieldDiscretization.New(), and testMEDMEM.ret.
| DataArrayInt * MEDCouplingFieldDiscretizationGauss::buildNbOfGaussPointPerCellField | ( | ) | const throw (INTERP_KERNEL::Exception) |
This method do the assumption that there is no orphan cell. If there is an exception is thrown. This method makes the assumption too that '_discr_per_cell' is defined. If not an exception is thrown. This method returns a newly created array with number of tuples equals to '_discr_per_cell->getNumberOfTuples' and number of components equal to 1. The i_th tuple in returned array is the number of gauss point if the corresponding cell.
References ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell._discr_per_cell, ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc, ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell.DFT_INVALID_LOCID_VALUE, ParaMEDMEM.DataArrayInt.getConstPointer(), ParaMEDMEM.DataArray.getNumberOfTuples(), ParaMEDMEM.MEDCouplingFieldDiscretization.New(), and testMEDMEM.ret.
| void MEDCouplingFieldDiscretizationGauss::zipGaussLocalizations | ( | ) | [protected] |
This method makes the assumption that _discr_per_cell is set. This method reduces as much as possible number size of _loc. This method is usefull when several set on same cells has been done and that some Gauss Localization are no more used.
References ParaMEDMEM.MEDCouplingFieldDiscretizationPerCell._discr_per_cell, ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc, MEDMEM.fill(), ParaMEDMEM.DataArrayInt.getConstPointer(), ParaMEDMEM.DataArray.getNumberOfTuples(), and ParaMEDMEM.DataArrayInt.getPointer().
| int MEDCouplingFieldDiscretizationGauss::getOffsetOfCell | ( | int | cellId | ) | const throw (INTERP_KERNEL::Exception) [protected] |
References testMEDMEM.ret.
| void MEDCouplingFieldDiscretizationGauss::checkLocalizationId | ( | int | locId | ) | const throw (INTERP_KERNEL::Exception) [protected] |
const char MEDCouplingFieldDiscretizationGauss::REPR = "GAUSS" [static] |
const TypeOfField MEDCouplingFieldDiscretizationGauss::TYPE = ON_GAUSS_PT [static] |
std::vector<MEDCouplingGaussLocalization> ParaMEDMEM.MEDCouplingFieldDiscretizationGauss._loc [private] |