gstlearn  1.0.0
CCC
DbGrid Class Reference

#include <DbGrid.hpp>

Inheritance diagram for DbGrid:
Db AStringable ASerializable ICloneable

Public Member Functions

 DbGrid ()
 
 DbGrid (const DbGrid &r)
 
DbGridoperator= (const DbGrid &r)
 
virtual ~DbGrid ()
 
virtual String toString (const AStringFormat *strfmt=nullptr) const override
 ICloneable interface. More...
 
bool isGrid () const override
 Db Interface. More...
 
double getCoordinate (int iech, int idim, bool flag_rotate=true) const override
 
void getCoordinatesPerSampleInPlace (int iech, VectorDouble &coor, bool flag_rotate=true) const override
 
double getUnit (int idim=0) const override
 
int getNDim () const override
 
bool mayChangeSampleNumber () const override
 
void resetDims (int ncol, int nech) override
 
int reset (const VectorInt &nx, const VectorDouble &dx=VectorDouble(), const VectorDouble &x0=VectorDouble(), const VectorDouble &angles=VectorDouble(), const ELoadBy &order=ELoadBy::fromKey("SAMPLE"), const VectorDouble &tab=VectorDouble(), const VectorString &names=VectorString(), const VectorString &locatorNames=VectorString(), int flag_add_rank=1, bool flag_add_coordinates=true)
 
int resetCoveringDb (const Db *db, const VectorInt &nx=VectorInt(), const VectorDouble &dx=VectorDouble(), const VectorDouble &x0=VectorDouble(), const VectorDouble &margin=VectorDouble())
 
int resetFromPolygon (Polygons *polygon, const VectorInt &nodes, const VectorDouble &dcell, int flag_add_rank=1)
 
DbGridcoarsify (const VectorInt &nmult)
 
DbGridrefine (const VectorInt &nmult)
 
const GridgetGrid () const
 
void generateCoordinates (const String &radix="x")
 
VectorDouble getColumnSubGrid (const String &name, int idim0, int rank, bool useSel=false)
 
int gridDefine (const VectorInt &nx, const VectorDouble &dx=VectorDouble(), const VectorDouble &x0=VectorDouble(), const VectorDouble &angles=VectorDouble())
 
void gridCopyParams (int mode, const Grid &gridaux)
 
bool isSameGrid (const Grid &grid) const
 
bool isSameGridMesh (const DbGrid &dbaux) const
 
bool isSameGridRotation (const DbGrid &dbaux) const
 
bool isGridRotated () const
 
int getNTotal () const
 
double getCellSize () const
 
double getVolume () const
 
VectorDouble getExtends () const
 
double getExtend (int idim) const
 
int getNX (int idim) const
 
VectorInt getNXs () const
 
VectorInt getNXsExt (int ndimMax) const
 
bool hasSingleBlock () const
 
double getDX (int idim) const
 
VectorDouble getDXs () const
 
double getX0 (int idim) const
 
VectorDouble getX0s () const
 
double getAngle (int idim) const
 
VectorDouble getAngles () const
 
VectorDouble getRotMat () const
 
void setNX (int idim, int value)
 
void setX0 (int idim, double value)
 
void setDX (int idim, double value)
 
VectorDouble getGridAxis (int idim) const
 
VectorDouble getCoordinateFromCorner (const VectorInt &icorner) const
 
VectorDouble getCoordinatesByIndice (const VectorInt &indice, bool flag_rotate=true, const VectorInt &shift=VectorInt(), const VectorDouble &dxsPerCell=VectorDouble()) const
 
int coordinateToRank (const VectorDouble &coor, bool centered=false, double eps=EPSILON6) const
 
VectorInt coordinateToIndices (const VectorDouble &coor, bool centered=false, double eps=EPSILON6) const
 
int coordinateToIndicesInPlace (const VectorDouble &coor, VectorInt &indices, bool centered=false, double eps=EPSILON6) const
 
VectorInt getCenterIndices () const
 
int indiceToRank (const VectorInt &indice) const
 
void rankToIndice (int node, VectorInt &indices, bool minusOne=false) const
 
void rankToCoordinatesInPlace (int rank, VectorDouble &coor, const VectorDouble &percent=VectorDouble()) const
 
VectorDouble rankToCoordinates (int rank, const VectorDouble &percent=VectorDouble()) const
 
void indicesToCoordinateInPlace (const VectorInt &indice, VectorDouble &coor, const VectorDouble &percent=VectorDouble()) const
 
VectorDouble indicesToCoordinate (const VectorInt &indice, const VectorDouble &percent=VectorDouble()) const
 
bool sampleBelongsToCell (const VectorDouble &coor, int rank, const VectorDouble &dxsPerCell=VectorDouble()) const
 
int centerCoordinateInPlace (VectorDouble &coor, bool centered=false, bool stopIfOut=false, double eps=EPSILON6) const
 
VectorInt locateDataInGrid (const Db *data, const VectorInt &rankIn=VectorInt(), bool centered=false, bool useSel=false) const
 
int getMirrorIndex (int idim, int ix) const
 
VectorVectorDouble getSlice (const String &name, int pos=0, int indice=0, bool useSel=false) const
 
VectorDouble getOneSlice (const String &name, int posx=0, int posy=1, const VectorInt &corner=VectorInt(), bool useSel=false) const
 
int assignGridColumn (const String &name, int idim, int rank, double value, bool useSel=false)
 
VectorDouble getBlockExtensions (int node) const
 
VectorVectorDouble getCellEdges (int node=0, bool forceGridMesh=false) const
 
VectorVectorDouble getAllCellsEdges (bool forceGridMesh=false) const
 
VectorVectorDouble getGridEdges () const
 
VectorDouble getCodir (const VectorInt &grincr) const
 
int morpho (const EMorpho &oper, double vmin=0.5, double vmax=1.5, int option=0, const VectorInt &radius=VectorInt(), bool flagDistErode=false, bool verbose=false, const NamingConvention &namconv=NamingConvention("Morpho"))
 
int smooth (ANeigh *neigh, int type=1, double range=1., const NamingConvention &namconv=NamingConvention("Smooth"))
 
int addSelectionFromDbByMorpho (Db *db, int nmin=0, int radius=0, int option=0, const VectorInt &dilation=VectorInt(), bool verbose=false, const NamingConvention &namconv=NamingConvention("Morpho", false, false, true, ELoc::fromKey("SEL")))
 
void getSampleAsST (int iech, SpaceTarget &P) const
 
VectorVectorDouble getDiscretizedBlock (const VectorInt &ndiscs, int iech=0, bool flagPerCell=false, bool flagRandom=false, int seed=132433) const
 
- Public Member Functions inherited from Db
 Db ()
 
 Db (const Db &r)
 
Dboperator= (const Db &r)
 
virtual ~Db ()
 
int resetFromSamples (int nech, const ELoadBy &order=ELoadBy::fromKey("SAMPLE"), const VectorDouble &tab=VectorDouble(), const VectorString &names=VectorString(), const VectorString &locatorNames=VectorString(), int flag_add_rank=1)
 
int resetFromCSV (const String &filename, bool verbose, const CSVformat &csvfmt, int ncol_max=-1, int nrow_max=-1, int flag_add_rank=1)
 
int resetFromBox (int nech, const VectorDouble &coormin, const VectorDouble &coormax, int ndim=2, double extend=0., int seed=321415, int flag_add_rank=1)
 
int resetFromOnePoint (const VectorDouble &tab=VectorDouble(), int flag_add_rank=1)
 
int resetSamplingDb (const Db *dbin, double proportion=0, int number=0, const VectorString &names=VectorString(), int seed=23241, bool verbose=false, int flag_add_rank=1)
 
int resetReduce (const Db *dbin, const VectorString &names=VectorString(), const VectorInt &ranks=VectorInt(), bool verbose=false)
 
const VectorDoublegetArrays () const
 
String getNameByLocator (const ELoc &locatorType, int locatorIndex=0) const
 
String getNameByColIdx (int icol) const
 
String getNameByUID (int iuid) const
 
VectorString getName (const String &name) const
 
VectorString getNames (const VectorString &names) const
 
VectorString getNamesByLocator (const ELoc &locatorType) const
 
VectorString getNamesByColIdx (const VectorInt &icols) const
 
VectorString getNamesByUID (const VectorInt &iuids) const
 
VectorString getAllNames () const
 
void setName (const String &old_name, const String &name)
 
void setName (const VectorString list, const String &name)
 
void setNameByUID (int iuid, const String &name)
 
void setNameByColIdx (int icol, const String &name)
 
void setNameByLocator (const ELoc &locatorType, const String &name)
 
int getUIDMaxNumber () const
 
int getColumnNumber () const
 
int getNEloc () const
 
int getSampleNumber (bool useSel=false) const
 
int getNumberActiveAndDefined (int item) const
 
int getActiveSampleNumber () const
 
int getRankRelativeToAbsolute (int irel) const
 
int getRankAbsoluteToRelative (int iabs) const
 
VectorString expandNameList (const VectorString &names) const
 
VectorString expandNameList (const String &names) const
 
VectorString identifyNames (const VectorString &names) const
 
void clearLocators (const ELoc &locatorType)
 
void clearSelection ()
 
void setLocatorByUID (int iuid, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool cleanSameLocator=false)
 
void setLocatorByColIdx (int icol, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool cleanSameLocator=false)
 
void setLocator (const String &name, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool cleanSameLocator=false)
 
void setLocators (const VectorString &names, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool cleanSameLocator=false)
 
void setLocatorsByUID (int number, int iuid, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool cleanSameLocator=false)
 
void setLocatorsByUID (const VectorInt &iuids, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool cleanSameLocator=false)
 
void setLocatorsByColIdx (const VectorInt &icols, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool cleanSameLocator=false)
 
void addColumnsByVVD (const VectorVectorDouble tab, const String &radix, const ELoc &locatorType, int locatorIndex=0, bool useSel=false)
 
int addColumns (const VectorDouble &tab, const String &radix="New", const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool useSel=false, double valinit=0., int nvar=1)
 
int addColumnsByConstant (int nadd=1, double valinit=0., const String &radix="New", const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, int nechInit=0)
 
int addColumnsRandom (int nadd, const String &radix="New", const ELoc &locatorType=ELoc::fromKey("Z"), int locatorIndex=0, int seed=1352, int nechInit=0)
 
int addSelection (const VectorDouble &tab=VectorDouble(), const String &name="NewSel", const String &combine="set")
 
int addSelectionByRanks (const VectorInt &ranks, const String &name="NewSel", const String &combine="set")
 
int addSelectionByLimit (const String &testvar, const Limits &limits=Limits(), const String &name="NewSel", const String &combine="set")
 
int addSelectionFromDbByConvexHull (Db *db, double dilate=0., bool verbose=false, const NamingConvention &namconv=NamingConvention("Hull", true, true, true, ELoc::fromKey("SEL")))
 
int addSelectionRandom (double prop, int seed=138213, const String &name="NewSel", const String &combine="set")
 
int addSamples (int nadd, double valinit)
 
int deleteSample (int e_del)
 
int deleteSamples (const VectorInt &e_dels)
 
void switchLocator (const ELoc &locatorTypein, const ELoc &locatorTypeout)
 
int getLastUID (int number=0) const
 
String getLastName (int number=0) const
 
int getColIdx (const String &name) const
 
int getColIdxByUID (int iuid) const
 
int getColIdxByLocator (const ELoc &locatorType, int locatorIndex=0) const
 
VectorInt getColIdxs (const String &name) const
 
VectorInt getColIdxs (const VectorString &names) const
 
VectorInt getColIdxsByUID (const VectorInt iuids) const
 
VectorInt getColIdxsByLocator (const ELoc &locatorType) const
 
void setColumn (const VectorDouble &tab, const String &name, const ELoc &locatorType=ELoc::fromKey("UNKNOWN"), int locatorIndex=0, bool useSel=false)
 
void setColumnByUIDOldStyle (const double *tab, int iuid, bool useSel=false)
 
void setColumnByUID (const VectorDouble &tab, int iuid, bool useSel=false)
 
void setColumnByColIdx (const VectorDouble &tab, int icol, bool useSel=false)
 
void setColumnsByColIdx (const VectorDouble &tabs, const VectorInt &icols, bool useSel=false)
 
void setColumnByColIdxOldStyle (const double *tab, int icol, bool useSel=false)
 
void duplicateColumnByUID (int iuid_in, int iuid_out)
 
VectorVectorDouble getItem (const VectorInt &rows, const VectorString &colnames, bool useSel=false) const
 
VectorVectorDouble getItem (const VectorInt &rows, const String &colname, bool useSel=false) const
 
VectorVectorDouble getItem (const VectorInt &rows, const ELoc &locatorType, bool useSel=false) const
 
VectorVectorDouble getItem (const VectorString &colnames, bool useSel=false) const
 
VectorVectorDouble getItem (const String &colname, bool useSel=false) const
 
VectorVectorDouble getItem (const ELoc &locatorType, bool useSel=false) const
 
VectorString getItemNames (const VectorString &colnames)
 
VectorString getItemNames (const String &colname)
 
VectorString getItemNames (const ELoc &locatorType)
 
int setItem (const VectorInt &rows, const VectorString &colnames, const VectorVectorDouble &values, bool useSel=false)
 
int setItem (const VectorInt &rows, const ELoc &locatorType, const VectorVectorDouble &values, bool useSel=false)
 
int setItem (const VectorString &colnames, const VectorVectorDouble &values, bool useSel=false)
 
int setItem (const ELoc &locatorType, const VectorVectorDouble &values, bool useSel=false)
 
int setItem (const VectorInt &rows, const String &colname, const VectorDouble &values, bool useSel=false)
 
int setItem (const String &colname, const VectorDouble &values, bool useSel=false)
 
bool getLocator (const String &name, ELoc *ret_locatorType, int *ret_locatorIndex) const
 
bool getLocatorByColIdx (int icol, ELoc *ret_locatorType, int *ret_locatorIndex) const
 
bool getLocatorByUID (int iuid, ELoc *ret_locatorType, int *ret_locatorIndex) const
 
VectorString getLocators (bool anyLocator=true, const ELoc &locatorType=ELoc::fromKey("UNKNOWN")) const
 
int getLocatorNumber (const ELoc &locatorType) const
 
bool isUIDDefined (int iuid) const
 
int getUID (const String &name) const
 
int getUIDByColIdx (int icol) const
 
int getUIDByLocator (const ELoc &locatorType, int locatorIndex=0) const
 
VectorInt getUIDs (const VectorString &names) const
 
VectorInt getUIDsByLocator (const ELoc &locatorType) const
 
VectorInt getUIDsByColIdx (const VectorInt &icols) const
 
VectorInt getAllUIDs () const
 
int getFaciesNumber (void) const
 
bool hasLocatorDefined (const String &name, const ELoc &locatorType, int locatorIndex=0) const
 
VectorDouble getSampleCoordinates (int iech) const
 
void getSampleCoordinatesAsSP (int iech, SpacePoint &P) const
 
void getSampleAsST (int iech, SpaceTarget &P) const
 
void getSampleCoordinatesInPlace (int iech, VectorDouble &coor) const
 
VectorDouble getSampleLocators (const ELoc &locatorType, int iech) const
 
VectorDouble getCoordinates (int idim, bool useSel=false, bool flag_rotate=true) const
 
VectorVectorDouble getAllCoordinates (bool useSel=false) const
 
void setCoordinate (int iech, int idim, double value)
 
double getDistance1D (int iech, int jech, int idim, bool flagAbs=false) const
 
double getDistance (int iech, int jech) const
 
int getDistanceVec (int iech, int jech, VectorDouble &dd, const Db *db2=nullptr) const
 
double getValue (const String &name, int iech) const
 
void setValue (const String &name, int iech, double value)
 
double getArray (int iech, int iuid) const
 
void setArray (int iech, int iuid, double value)
 
void updArray (int iech, int iuid, int oper, double value)
 
VectorDouble getArrayByUID (int iuid, bool useSel=false) const
 
VectorDouble getArrayBySample (int iech) const
 
void setArrayBySample (int iech, const VectorDouble &vec)
 
std::vector< SpacePointgetSamplesAsSP (bool useSel=false) const
 
int getFromLocatorNumber (const ELoc &locatorType) const
 
double getFromLocator (const ELoc &locatorType, int iech, int locatorIndex=0) const
 
void setFromLocator (const ELoc &locatorType, int iech, int locatorIndex, double value)
 
double getValueByColIdx (int iech, int icol) const
 
void setValueByColIdx (int iech, int icol, double value)
 
VectorDouble getValuesByNames (const VectorInt &iechs, const VectorString &names, bool bySample=false) const
 
VectorDouble getValuesByColIdx (const VectorInt &iechs, const VectorInt &icols, bool bySample=false) const
 
void setValuesByNames (const VectorInt &iechs, const VectorString &names, const VectorDouble &values, bool bySample=false)
 
void setValuesByColIdx (const VectorInt &iechs, const VectorInt &icols, const VectorDouble &values, bool bySample=false)
 
int getLocNumber (const ELoc &loctype) const
 
bool hasLocVariable (const ELoc &loctype) const
 
double getLocVariable (const ELoc &loctype, int iech, int item) const
 
void setLocVariable (const ELoc &loctype, int iech, int item, double value)
 
void updLocVariable (const ELoc &loctype, int iech, int item, int oper, double value)
 
bool isVariableNumberComparedTo (int nvar, int compare=0) const
 
bool isIsotopic (int iech, int nvar_max=-1) const
 
bool isAllUndefined (int iech) const
 
void setInterval (int iech, int item, double rklow=TEST, double rkup=TEST)
 
int getIntervalNumber () const
 
void setBound (int iech, int item, double lower=TEST, double upper=TEST)
 
VectorDouble getWithinBounds (int item, bool useSel=false) const
 
VectorDouble getGradient (int item, bool useSel=false) const
 
VectorDouble getTangent (int item, bool useSel=false) const
 
VectorDouble getCodeList (void)
 
int getSelection (int iech) const
 
VectorDouble getSelections (void) const
 
VectorInt getSelectionRanks () const
 
double getWeight (int iech) const
 
VectorDouble getWeights (bool useSel=false) const
 
int getSimvarRank (int isimu, int ivar, int icase, int nbsimu, int nvar)
 
double getSimvar (const ELoc &locatorType, int iech, int isimu, int ivar, int icase, int nbsimu, int nvar) const
 
void setSimvar (const ELoc &locatorType, int iech, int isimu, int ivar, int icase, int nbsimu, int nvar, double value)
 
void updSimvar (const ELoc &locatorType, int iech, int isimu, int ivar, int icase, int nbsimu, int nvar, int oper, double value)
 
bool isActive (int iech) const
 
bool isActiveDomain (int iech) const
 
bool isActiveAndDefined (int iech, int item) const
 
int getActiveAndDefinedNumber (int item) const
 
int getActiveAndDefinedNumber (const String &name) const
 
VectorBool getActiveArray () const
 
VectorInt getSortArray () const
 
double getCosineToDirection (int iech1, int iech2, const VectorDouble &codir) const
 
VectorDouble getColumn (const String &name, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnByUID (int iuid, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnByLocator (const ELoc &locatorType, int locatorIndex=0, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnByColIdx (int icol, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getAllColumns (bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumns (const VectorString &names=VectorString(), bool useSel=false, bool flagCompress=true) const
 
VectorVectorDouble getColumnsAsVVD (const VectorString &names=VectorString(), bool useSel=false, bool flagCompress=true) const
 
MatrixRectangular getColumnsAsMatrix (const VectorString &names, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnsByColIdx (const VectorInt &icols=VectorInt(), bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnsByColIdxInterval (int icol_beg, int icol_end, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnsByLocator (const ELoc &locatorType, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnsByUID (const VectorInt &iuids, bool useSel=false, bool flagCompress=true) const
 
VectorDouble getColumnsByUIDRange (int iuid_beg, int iuid_end, bool useSel=false, bool flagCompress=true) const
 
void setAllColumns (const VectorVectorDouble &tabs)
 
void deleteColumn (const String &name)
 
void deleteColumnByUID (int iuid_del)
 
void deleteColumnByColIdx (int icol_del)
 
void deleteColumns (const VectorString &names)
 
void deleteColumnsByLocator (const ELoc &locatorType)
 
void deleteColumnsByUID (const VectorInt &iuids)
 
void deleteColumnsByColIdx (const VectorInt &icols)
 
VectorDouble getExtrema (int idim, bool useSel=false) const
 
VectorVectorDouble getExtremas (bool useSel=false) const
 
VectorDouble getCoorMinimum (bool useSel=false) const
 
VectorDouble getCoorMaximum (bool useSel=false) const
 
double getExtension (int idim, bool useSel=false) const
 
double getExtensionDiagonal (bool useSel=false) const
 
double getCenter (int idim, bool useSel=false) const
 
VectorDouble getCenters (bool useSel=false) const
 
void getExtensionInPlace (VectorDouble &mini, VectorDouble &maxi, bool useSel=false)
 
double getMinimum (const String &name, bool useSel=false) const
 
double getMaximum (const String &name, bool useSel=false) const
 
VectorDouble getRange (const String &name, bool useSel=false) const
 
double getMean (const String &name, bool useSel=false) const
 
double getVariance (const String &name, bool useSel=false) const
 
double getStdv (const String &name, bool useSel=false) const
 
double getCorrelation (const String &name1, const String &name2, bool useSel=false) const
 
bool hasSameDimension (const Db *dbaux) const
 
bool hasLargerDimension (const Db *dbaux) const
 
bool isColIdxValid (int icol) const
 
bool isUIDValid (int iuid) const
 
bool isSampleIndexValid (int iech) const
 
bool isSampleIndicesValid (const VectorInt &iechs, bool useSel=false) const
 
bool isLocatorIndexValid (const ELoc &locatorType, int locatorIndex) const
 
bool isDimensionIndexValid (int idim) const
 
void combineSelection (VectorDouble &sel, const String &combine="set") const
 
void generateRank (const String &radix="rank")
 
VectorInt shrinkToValidRows (const VectorInt &rows)
 
VectorInt shrinkToValidCols (const VectorInt &cols)
 
void statisticsBySample (const VectorString &names, const std::vector< EStatOption > &opers=EStatOption::fromKeys({ "MEAN" }), bool flagIso=true, double vmin=TEST, double vmax=TEST, double proba=TEST, const NamingConvention &namconv=NamingConvention("Stats"))
 
VectorDouble statisticsMulti (const VectorString &names, bool flagIso=true, bool verbose=false, const String &title="")
 
bool areSame (const String &name1, const String &name2, double eps=EPSILON3, bool useSel=true, bool verbose=false)
 
VectorInt filter (const String &name, const Interval &interval, int belowRow=ITEST, int aboveRow=ITEST) const
 
VectorInt getSampleRanks () const
 
- Public Member Functions inherited from AStringable
 AStringable ()
 
 AStringable (const AStringable &r)
 
AStringableoperator= (const AStringable &r)
 
virtual ~AStringable ()
 
virtual void display (const AStringFormat *strfmt=nullptr) const final
 
virtual void display (int level) const final
 
- Public Member Functions inherited from ASerializable
 ASerializable ()
 
 ASerializable (const ASerializable &r)
 
ASerializableoperator= (const ASerializable &r)
 
virtual ~ASerializable ()
 
bool deserialize (std::istream &is, bool verbose=true)
 
bool serialize (std::ostream &os, bool verbose=true) const
 
bool dumpToNF (const String &neutralFilename, bool verbose=false) const
 
- Public Member Functions inherited from ICloneable
 ICloneable ()
 
virtual ~ICloneable ()
 
virtual ICloneableclone () const =0
 

Static Public Member Functions

static DbGridcreateFromNF (const String &neutralFilename, bool verbose=true)
 
static DbGridcreate (const VectorInt &nx, const VectorDouble &dx=VectorDouble(), const VectorDouble &x0=VectorDouble(), const VectorDouble &angles=VectorDouble(), const ELoadBy &order=ELoadBy::fromKey("SAMPLE"), const VectorDouble &tab=VectorDouble(), const VectorString &names=VectorString(), const VectorString &locatorNames=VectorString(), int flag_add_rank=1, bool flag_add_coordinates=true)
 
static DbGridcreateCoveringDb (const Db *dbin, const VectorInt &nx=VectorInt(), const VectorDouble &dx=VectorDouble(), const VectorDouble &x0=VectorDouble(), const VectorDouble &margin=VectorDouble())
 
static DbGridcreateFromPolygon (Polygons *polygon, const VectorInt &nodes, const VectorDouble &dcell, int flag_add_rank=1)
 
static DbGridcreateCoarse (DbGrid *dbin, const VectorInt &nmult, int flag_cell=1, int flag_add_rank=1)
 
static DbGridcreateRefine (DbGrid *dbin, const VectorInt &nmult, int flag_cell=1, int flag_add_rank=1)
 
static DbGridcreateFromGridExtend (const DbGrid &gridIn, const VectorString &tops, const VectorString &bots, const VectorInt &nxnew, bool verbose=false, double eps=EPSILON3)
 
static DbGridcreateFromGridShrink (const DbGrid &gridIn, const VectorInt &deletedRanks)
 
static DbGridcreateGrid2D (const ELoadBy &order, int nx, int ny, double x0=0., double y0=0., double dx=1., double dy=1., double angle=0., int flag_add_rank=1, const VectorDouble &tab=VectorDouble())
 
static bool migrateAllVariables (Db *dbin, Db *dbout, int flag_add_rank=1)
 
- Static Public Member Functions inherited from Db
static Dbcreate ()
 
static DbcreateFromNF (const String &neutralFilename, bool verbose=true)
 
static DbcreateFromSamples (int nech, const ELoadBy &order=ELoadBy::fromKey("SAMPLE"), const VectorDouble &tab=VectorDouble(), const VectorString &names=VectorString(), const VectorString &locatorNames=VectorString(), int flag_add_rank=1)
 
static DbcreateFromCSV (const String &filename, const CSVformat &csv=CSVformat(), bool verbose=false, int ncol_max=-1, int nrow_max=-1, int flag_add_rank=1)
 
static DbcreateFromBox (int nech, const VectorDouble &coormin, const VectorDouble &coormax, int seed=43241, bool flag_exact=true, bool flag_repulsion=false, double range=0., double beta=0., double extend=0., int flag_add_rank=1)
 
static DbcreateFromOnePoint (const VectorDouble &tab=VectorDouble(), int flag_add_rank=1)
 
static DbcreateSamplingDb (const Db *dbin, double proportion=0., int number=0, const VectorString &names=VectorString(), int seed=23241, bool verbose=false, int flag_add_rank=1)
 
static DbcreateFromDbGrid (int nech, DbGrid *dbgrid, int seed=432423, bool flag_exact=true, bool flag_repulsion=false, double range=0., double beta=0., int flag_add_rank=1)
 
static DbcreateReduce (const Db *dbin, const VectorString &names=VectorString(), const VectorInt &ranks=VectorInt(), bool verbose=false)
 
static DbcreateFillRandom (int ndat, int ndim=2, int nvar=1, int nfex=0, int ncode=0, double varmax=0., double selRatio=0., const VectorDouble &heteroRatio=VectorDouble(), const VectorDouble &coormin=VectorDouble(), const VectorDouble &coormax=VectorDouble(), int seed=124234, int flag_add_rank=1)
 
- Static Public Member Functions inherited from ASerializable
static String buildFileName (int status, const String &filename, bool ensureDirExist=false)
 
static String getHomeDirectory (const String &sub="")
 
static String getWorkingDirectory ()
 
static String getTestData (const String &subdir, const String &filename)
 
static String getFileIdentity (const String &filename, bool verbose=false)
 
static void setContainerName (bool useDefault, const String &containerName="", bool verbose=false)
 
static void unsetContainerName ()
 
static void setPrefixName (const String &prefixName)
 
static void unsetPrefixName ()
 
static const StringgetContainerName ()
 
static const StringgetPrefixName ()
 
static bool createDirectory (const String &dir)
 
static String getExecDirectory ()
 
static String getDirectory (const String &path)
 

Protected Member Functions

virtual bool _deserialize (std::istream &is, bool verbose=false) override
 Interface for ASerializable. More...
 
virtual bool _serialize (std::ostream &os, bool verbose=false) const override
 
String _getNFName () const override
 
- Protected Member Functions inherited from Db
void _clear ()
 
void _createRank (int icol=0)
 
void _addRank (int nech)
 
void _loadData (const VectorDouble &tab, const VectorString &names, const VectorString &locatorNames, const ELoadBy &order, int shift)
 
void _loadData (const ELoadBy &order, int flag_add_rank, const VectorDouble &tab)
 
void _defineDefaultNames (int shift, const VectorString &names)
 
void _defineDefaultLocators (int shift, const VectorString &locatorNames)
 
void _setNameByColIdx (int icol, const String &name)
 
String _toStringCommon (const AStringFormat *strfmt) const
 
String _summaryString (void) const
 
void _defineVariableAndLocators (const Db *dbin, const VectorString &names, int shift=0)
 
void _loadValues (const Db *db, const VectorString &names, const VectorInt &ranks, int shift=0)
 
- Protected Member Functions inherited from ASerializable
bool _fileOpenWrite (const String &filename, std::ofstream &os, bool verbose=false) const
 
bool _fileOpenRead (const String &filename, std::ifstream &is, bool verbose=false) const
 

Private Member Functions

void _createCoordinatesGrid (int icol0)
 

Private Attributes

Grid _grid
 Grid characteristics. More...
 

Additional Inherited Members

- Public Attributes inherited from Db
 DECLARE_TOTL
 Has a specific implementation in the Target language. More...
 
- Static Protected Member Functions inherited from ASerializable
static bool _commentWrite (std::ostream &os, const String &comment)
 
template<typename T >
static bool _recordWrite (std::ostream &os, const String &title, const T &val)
 
template<typename T >
static bool _recordWriteVec (std::ostream &os, const String &title, const VectorT< T > &vec)
 
template<typename T >
static bool _recordRead (std::istream &is, const String &title, T &val)
 
template<typename T >
static bool _recordReadVec (std::istream &is, const String &title, VectorT< T > &vec, int nvalues)
 
static bool _onlyBlanks (char *string)
 
static bool _tableRead (std::istream &is, const String &string, int ntab, double *tab)
 
static bool _tableWrite (std::ostream &os, const String &string, int ntab, const VectorDouble &tab)
 

Detailed Description

Class containing a Data Set organized as a regular Grid

Constructor & Destructor Documentation

◆ DbGrid() [1/2]

DbGrid::DbGrid ( )

◆ DbGrid() [2/2]

DbGrid::DbGrid ( const DbGrid r)

◆ ~DbGrid()

DbGrid::~DbGrid ( )
virtual

Member Function Documentation

◆ _createCoordinatesGrid()

void DbGrid::_createCoordinatesGrid ( int  icol0)
private

Paint the ndim columns starting from 'icol0' with grid coordinates

Parameters
icol0Starting column

◆ _deserialize()

bool DbGrid::_deserialize ( std::istream &  is,
bool  verbose = false 
)
overrideprotectedvirtual

Interface for ASerializable.

Reimplemented from Db.

◆ _getNFName()

String DbGrid::_getNFName ( ) const
inlineoverrideprotectedvirtual

Reimplemented from Db.

◆ _serialize()

bool DbGrid::_serialize ( std::ostream &  os,
bool  verbose = false 
) const
overrideprotectedvirtual

Reimplemented from Db.

◆ addSelectionFromDbByMorpho()

int DbGrid::addSelectionFromDbByMorpho ( Db db,
int  nmin = 0,
int  radius = 0,
int  option = 0,
const VectorInt dilation = VectorInt(),
bool  verbose = false,
const NamingConvention namconv = NamingConvention("Morpho", false, false, true,                                     ELoc::fromKey("SEL")) 
)

Create a selection based on the count of active samples of 'db'

Parameters
dbDb used for statistics
nminMinimum number of samples
radiusRadius of the cell neighborhood used when counting the samples
optionType of structuring element: 0 for Cross and 1 for Block
dilationVector giving the radius extension for Dilation operation
verboseVerbose flag
namconvNaming convention
Returns

◆ assignGridColumn()

int DbGrid::assignGridColumn ( const String name,
int  idim,
int  rank,
double  value,
bool  useSel = false 
)

Set all elements of a column (1-D) along a given space dimension to a constant value

Parameters
nameName of the target variable
idimRank of the Space dimension
rankRank of the target Column
valueAssigned value
useSelUse the selection

◆ centerCoordinateInPlace()

int DbGrid::centerCoordinateInPlace ( VectorDouble coor,
bool  centered = false,
bool  stopIfOut = false,
double  eps = EPSILON6 
) const

◆ coarsify()

DbGrid * DbGrid::coarsify ( const VectorInt nmult)

◆ coordinateToIndices()

VectorInt DbGrid::coordinateToIndices ( const VectorDouble coor,
bool  centered = false,
double  eps = EPSILON6 
) const

◆ coordinateToIndicesInPlace()

int DbGrid::coordinateToIndicesInPlace ( const VectorDouble coor,
VectorInt indices,
bool  centered = false,
double  eps = EPSILON6 
) const

◆ coordinateToRank()

int DbGrid::coordinateToRank ( const VectorDouble coor,
bool  centered = false,
double  eps = EPSILON6 
) const

◆ create()

DbGrid * DbGrid::create ( const VectorInt nx,
const VectorDouble dx = VectorDouble(),
const VectorDouble x0 = VectorDouble(),
const VectorDouble angles = VectorDouble(),
const ELoadBy &  order = ELoadBy::fromKey("SAMPLE"),
const VectorDouble tab = VectorDouble(),
const VectorString names = VectorString(),
const VectorString locatorNames = VectorString(),
int  flag_add_rank = 1,
bool  flag_add_coordinates = true 
)
static

◆ createCoarse()

DbGrid * DbGrid::createCoarse ( DbGrid dbin,
const VectorInt nmult,
int  flag_cell = 1,
int  flag_add_rank = 1 
)
static

◆ createCoveringDb()

DbGrid * DbGrid::createCoveringDb ( const Db dbin,
const VectorInt nx = VectorInt(),
const VectorDouble dx = VectorDouble(),
const VectorDouble x0 = VectorDouble(),
const VectorDouble margin = VectorDouble() 
)
static

◆ createFromGridExtend()

DbGrid * DbGrid::createFromGridExtend ( const DbGrid gridIn,
const VectorString tops,
const VectorString bots,
const VectorInt nxnew,
bool  verbose = false,
double  eps = EPSILON3 
)
static

Create a new Grid, starting from an initial Grid, and extending its space dimensions A set of Top and Bottom variables is provided which serve in designing the Top and Bottom of the new coordinates.

Parameters
gridInInitial
topsVector of Variable names which define the Tops
botsVector of Variable names which define the Bottoms
nxnewVector giving the number of meshes for each additional space dimension
verboseVerbose flag
epsEach new coordinate is calculated from the top to bottom extension inflated by eps
Returns

◆ createFromGridShrink()

DbGrid * DbGrid::createFromGridShrink ( const DbGrid gridIn,
const VectorInt deletedRanks 
)
static

Create a new grid, from an Initial Grid, by suppressing a set of space dimensions

Parameters
gridInInitial grid
deletedRanksVector of indices of space dimensions to be suppressed
Returns

◆ createFromNF()

DbGrid * DbGrid::createFromNF ( const String neutralFilename,
bool  verbose = true 
)
static

Create a Db by loading the contents of a Neutral File

Parameters
neutralFilenameName of the Neutral File (Db format)
verboseVerbose
Remarks
The name does not need to be completed in particular when defined by absolute path
or read from the Data Directory (in the gstlearn distribution)

◆ createFromPolygon()

DbGrid * DbGrid::createFromPolygon ( Polygons polygon,
const VectorInt nodes,
const VectorDouble dcell,
int  flag_add_rank = 1 
)
static

◆ createGrid2D()

DbGrid * DbGrid::createGrid2D ( const ELoadBy &  order,
int  nx,
int  ny,
double  x0 = 0.,
double  y0 = 0.,
double  dx = 1.,
double  dy = 1.,
double  angle = 0.,
int  flag_add_rank = 1,
const VectorDouble tab = VectorDouble() 
)
static

Create a 2-D Db structure

Returns
Pointer to the newly created 2-D Db grid structure
Parameters
[in]orderManner in which values in tab are ordered (ELoadBy)
[in]flag_add_rank1 to add 'rank' as a supplementary field
[in]nxNumber of grid nodes along X
[in]nyNumber of grid nodes along Y
[in]x0Grid origin along X
[in]y0Grid origin along Y
[in]dxGrid mesh along X
[in]dyGrid mesh along Y
[in]angleRotation angle
[in]tabArray containing the data

◆ createRefine()

DbGrid * DbGrid::createRefine ( DbGrid dbin,
const VectorInt nmult,
int  flag_cell = 1,
int  flag_add_rank = 1 
)
static

◆ generateCoordinates()

void DbGrid::generateCoordinates ( const String radix = "x")

◆ getAllCellsEdges()

VectorVectorDouble DbGrid::getAllCellsEdges ( bool  forceGridMesh = false) const

◆ getAngle()

double DbGrid::getAngle ( int  idim) const
inline

◆ getAngles()

VectorDouble DbGrid::getAngles ( ) const
inline

◆ getBlockExtensions()

VectorDouble DbGrid::getBlockExtensions ( int  node) const

◆ getCellEdges()

VectorVectorDouble DbGrid::getCellEdges ( int  node = 0,
bool  forceGridMesh = false 
) const

Return the VectorVectorDouble containing the borders of a cell

Parameters
nodeTarget cell
forceGridMeshWhen TRUE, returns the edges of the standard grid mesh even if a variable block extension is defined
Returns

◆ getCellSize()

double DbGrid::getCellSize ( ) const
inline

◆ getCenterIndices()

VectorInt DbGrid::getCenterIndices ( ) const
inline

◆ getCodir()

VectorDouble DbGrid::getCodir ( const VectorInt grincr) const

◆ getColumnSubGrid()

VectorDouble DbGrid::getColumnSubGrid ( const String name,
int  idim0,
int  rank,
bool  useSel = false 
)

◆ getCoordinate()

double DbGrid::getCoordinate ( int  iech,
int  idim,
bool  flag_rotate = true 
) const
overridevirtual

Return the coordinate of a sample along one Space Dimension

Parameters
iechRank of the sample
idimRank of the Space Dimension
flag_rotateUse the rotation (only for Grid)
Returns

Reimplemented from Db.

◆ getCoordinateFromCorner()

VectorDouble DbGrid::getCoordinateFromCorner ( const VectorInt icorner) const
inline

◆ getCoordinatesByIndice()

VectorDouble DbGrid::getCoordinatesByIndice ( const VectorInt indice,
bool  flag_rotate = true,
const VectorInt shift = VectorInt(),
const VectorDouble dxsPerCell = VectorDouble() 
) const
inline

◆ getCoordinatesPerSampleInPlace()

void DbGrid::getCoordinatesPerSampleInPlace ( int  iech,
VectorDouble coor,
bool  flag_rotate = true 
) const
overridevirtual

Reimplemented from Db.

◆ getDiscretizedBlock()

VectorVectorDouble DbGrid::getDiscretizedBlock ( const VectorInt ndiscs,
int  iech = 0,
bool  flagPerCell = false,
bool  flagRandom = false,
int  seed = 132433 
) const

Generate a set of discretization locations, relative to the block center Dimension: number of discretization locations, space dimension

Parameters
ndiscsNumber of discretization (per space dimension)
iechRank of the target sample (used if flagPerCell = true)
flagPerCellTRUE when the cell dimension are read from the Db (BLEX)
flagRandomTRUE if the discretization location must be randomized
seedSeed for random number generator
Returns
Remarks
: Although randomization can be performed, this process does not consume random numbers.

◆ getDX()

double DbGrid::getDX ( int  idim) const
inline

◆ getDXs()

VectorDouble DbGrid::getDXs ( ) const
inline

◆ getExtend()

double DbGrid::getExtend ( int  idim) const
inline

◆ getExtends()

VectorDouble DbGrid::getExtends ( ) const
inline

◆ getGrid()

const Grid& DbGrid::getGrid ( ) const
inline

◆ getGridAxis()

VectorDouble DbGrid::getGridAxis ( int  idim) const
inline

◆ getGridEdges()

VectorVectorDouble DbGrid::getGridEdges ( ) const

Return the VectorVectorDouble containing the borders of the grid

Returns

◆ getMirrorIndex()

int DbGrid::getMirrorIndex ( int  idim,
int  ix 
) const
inline

◆ getNDim()

int DbGrid::getNDim ( ) const
overridevirtual

Reimplemented from Db.

◆ getNTotal()

int DbGrid::getNTotal ( ) const
inline

◆ getNX()

int DbGrid::getNX ( int  idim) const
inline

◆ getNXs()

VectorInt DbGrid::getNXs ( ) const
inline

◆ getNXsExt()

VectorInt DbGrid::getNXsExt ( int  ndimMax) const

◆ getOneSlice()

VectorDouble DbGrid::getOneSlice ( const String name,
int  posx = 0,
int  posy = 1,
const VectorInt corner = VectorInt(),
bool  useSel = false 
) const

Returns the contents of one slice extracted from a DbGrid

Parameters
nameName of the targte variable
posxRank of the first extracted coordinate (in [0, ndim[)
posyRank of the second extracted coordinate (in [0, ndim[)
cornerVector giving a reference node that belongs to the extracted section
useSelUse of the current Selection
Returns
Remarks
The argument 'corner' gives the indices of a node that belongs to the
extracted section. Obviously corner[posx] and corner[posy] are not used

◆ getRotMat()

VectorDouble DbGrid::getRotMat ( ) const
inline

◆ getSampleAsST()

void DbGrid::getSampleAsST ( int  iech,
SpaceTarget P 
) const

◆ getSlice()

VectorVectorDouble DbGrid::getSlice ( const String name,
int  pos = 0,
int  indice = 0,
bool  useSel = false 
) const

Extracts a slice from a 3-D Grid

Parameters
nameName of the target variable
posType of section: 0 for YoZ; 1 for XoZ and 2 for XoY
indiceRank of the section
useSelUse the active selection
Returns
A VectorVectorDouble with 4 columns, i.e: X, Y, Z, Var
Remarks
In presence of a selection and if useSel is TRUE,
values are returned but set to TEST

◆ getUnit()

double DbGrid::getUnit ( int  idim = 0) const
overridevirtual

Return a Unit calculated for a Db (in a given Space dimension)

Parameters
idimRank of the Space dimension
Returns
Remarks
This unit is defined as 1/1000 of the extension in the given space dimension

Reimplemented from Db.

◆ getVolume()

double DbGrid::getVolume ( ) const
inline

◆ getX0()

double DbGrid::getX0 ( int  idim) const
inline

◆ getX0s()

VectorDouble DbGrid::getX0s ( ) const
inline

◆ gridCopyParams()

void DbGrid::gridCopyParams ( int  mode,
const Grid gridaux 
)

◆ gridDefine()

int DbGrid::gridDefine ( const VectorInt nx,
const VectorDouble dx = VectorDouble(),
const VectorDouble x0 = VectorDouble(),
const VectorDouble angles = VectorDouble() 
)

◆ hasSingleBlock()

bool DbGrid::hasSingleBlock ( ) const

◆ indicesToCoordinate()

VectorDouble DbGrid::indicesToCoordinate ( const VectorInt indice,
const VectorDouble percent = VectorDouble() 
) const
inline

◆ indicesToCoordinateInPlace()

void DbGrid::indicesToCoordinateInPlace ( const VectorInt indice,
VectorDouble coor,
const VectorDouble percent = VectorDouble() 
) const
inline

◆ indiceToRank()

int DbGrid::indiceToRank ( const VectorInt indice) const
inline

◆ isGrid()

bool DbGrid::isGrid ( ) const
inlineoverridevirtual

Db Interface.

Reimplemented from Db.

◆ isGridRotated()

bool DbGrid::isGridRotated ( ) const

◆ isSameGrid()

bool DbGrid::isSameGrid ( const Grid grid) const

◆ isSameGridMesh()

bool DbGrid::isSameGridMesh ( const DbGrid dbaux) const

◆ isSameGridRotation()

bool DbGrid::isSameGridRotation ( const DbGrid dbaux) const

◆ locateDataInGrid()

VectorInt DbGrid::locateDataInGrid ( const Db data,
const VectorInt rankIn = VectorInt(),
bool  centered = false,
bool  useSel = false 
) const

◆ mayChangeSampleNumber()

bool DbGrid::mayChangeSampleNumber ( ) const
inlineoverridevirtual

Reimplemented from Db.

◆ migrateAllVariables()

bool DbGrid::migrateAllVariables ( Db dbin,
Db dbout,
int  flag_add_rank = 1 
)
static

Migrate all the variables (Z_locator) from 'dbin' on the nodes of 'dbout' (grid)

Parameters
dbinInput Db
dboutOutput db
flag_add_rank1 if the rank of the samples must be aaded
Returns

◆ morpho()

int DbGrid::morpho ( const EMorpho &  oper,
double  vmin = 0.5,
double  vmax = 1.5,
int  option = 0,
const VectorInt radius = VectorInt(),
bool  flagDistErode = false,
bool  verbose = false,
const NamingConvention namconv = NamingConvention("Morpho") 
)

◆ operator=()

DbGrid & DbGrid::operator= ( const DbGrid r)

◆ rankToCoordinates()

VectorDouble DbGrid::rankToCoordinates ( int  rank,
const VectorDouble percent = VectorDouble() 
) const
inline

◆ rankToCoordinatesInPlace()

void DbGrid::rankToCoordinatesInPlace ( int  rank,
VectorDouble coor,
const VectorDouble percent = VectorDouble() 
) const
inline

◆ rankToIndice()

void DbGrid::rankToIndice ( int  node,
VectorInt indices,
bool  minusOne = false 
) const
inline

◆ refine()

DbGrid * DbGrid::refine ( const VectorInt nmult)

◆ reset()

int DbGrid::reset ( const VectorInt nx,
const VectorDouble dx = VectorDouble(),
const VectorDouble x0 = VectorDouble(),
const VectorDouble angles = VectorDouble(),
const ELoadBy &  order = ELoadBy::fromKey("SAMPLE"),
const VectorDouble tab = VectorDouble(),
const VectorString names = VectorString(),
const VectorString locatorNames = VectorString(),
int  flag_add_rank = 1,
bool  flag_add_coordinates = true 
)

Creating a Db regular grid of any dimension

Parameters
nxA vector of the number of grid meshes. The number of items in this argument gives the dimension of the space. (size = ndim)
dxVector cell meshes size in each direction (size = ndim) (by default, use 1)
x0Vector of origin coordinates (size = ndim) (by default, use 0)
anglesArray giving the rotation angles (only for dimension 2 or 3). The first angle corresponds to the rotation around OZ axis, the second to a rotation around OY'and the third one around Ox. The dimension of this array cannot exceed the space dimension.
orderFlag for values order in 'tab' (defined ELoadBy.hpp)
tabVariable values array (size = nvar * nsamples)
namesVariable names (size = nvar)
locatorNamesLocators for each variable (size = nvar)
flag_add_rankIf 1, add an automatic rank variable
flag_add_coordinatesIf TRUE, add the grid coordinates

◆ resetCoveringDb()

int DbGrid::resetCoveringDb ( const Db db,
const VectorInt nx = VectorInt(),
const VectorDouble dx = VectorDouble(),
const VectorDouble x0 = VectorDouble(),
const VectorDouble margin = VectorDouble() 
)

Creating a Grid Db which covers the extension of the input 'Db'

Parameters
dbInput Db from which the newly created Db is constructed
nxVector of the expected number of grid nodes (default = 10)
dxVector of the expected sizes for the grid meshes (in distance)
x0Vector of the expected origin of the grid (in coordinate)
marginVector of the expected margins of the grid (in distance)
Remarks
Arguments 'nodes' and 'dcell' are disjunctive. If both defined, 'dcell' prevails

Load the data

◆ resetDims()

void DbGrid::resetDims ( int  ncol,
int  nech 
)
overridevirtual

Set dimension

Parameters
ncolNumber of columns (= variables)
nechNumber of samples (ignore in case of Grid)

Reimplemented from Db.

◆ resetFromPolygon()

int DbGrid::resetFromPolygon ( Polygons polygon,
const VectorInt nodes,
const VectorDouble dcell,
int  flag_add_rank = 1 
)

Creating a regular grid Db which covers the input Polygon

Parameters
polygonPointer to the input Polygon
nodesVector of the expected number of nodes
dcellVector of the expected dimensions for the grid cells
flag_add_rank1 if the sample rank must be generated

Load the data

◆ sampleBelongsToCell()

bool DbGrid::sampleBelongsToCell ( const VectorDouble coor,
int  rank,
const VectorDouble dxsPerCell = VectorDouble() 
) const
inline

◆ setDX()

void DbGrid::setDX ( int  idim,
double  value 
)
inline

◆ setNX()

void DbGrid::setNX ( int  idim,
int  value 
)
inline

◆ setX0()

void DbGrid::setX0 ( int  idim,
double  value 
)
inline

◆ smooth()

int DbGrid::smooth ( ANeigh neigh,
int  type = 1,
double  range = 1.,
const NamingConvention namconv = NamingConvention("Smooth") 
)

◆ toString()

String DbGrid::toString ( const AStringFormat strfmt = nullptr) const
overridevirtual

ICloneable interface.

AStringable Interface

Reimplemented from Db.

Member Data Documentation

◆ _grid

Grid DbGrid::_grid
private

Grid characteristics.


The documentation for this class was generated from the following files: