| gmsh-TingyuanDoc
    0.1
    An Open-Source Timing-driven Analytical Mixed-size FPGA Placer | 
 
 
 
Go to the documentation of this file.
   16 #define VAL_INF 1.e200 
   66   virtual bool finalize(
bool computeMinMax = 
true,
 
   67                         const std::string &interpolationScheme = 
"");
 
   94   virtual double getTime(
int step) { 
return 0.; }
 
   97   virtual double getMin(
int step = -1, 
bool onlyVisible = 
false,
 
   98                         int tensorRep = 0, 
int forceNumComponents = 0,
 
   99                         int componentMap[9] = 
nullptr) = 0;
 
  100   virtual double getMax(
int step = -1, 
bool onlyVisible = 
false,
 
  101                         int tensorRep = 0, 
int forceNumComponents = 0,
 
  102                         int componentMap[9] = 
nullptr) = 0;
 
  141   virtual int getNode(
int step, 
int ent, 
int ele, 
int nod, 
double &x, 
double &y,
 
  146   virtual void setNode(
int step, 
int ent, 
int ele, 
int nod, 
double x, 
double y,
 
  148   virtual void tagNode(
int step, 
int ent, 
int ele, 
int nod, 
int tag) {}
 
  159   virtual void getValue(
int step, 
int ent, 
int ele, 
int idx, 
double &val) {}
 
  163   virtual void getValue(
int step, 
int ent, 
int ele, 
int nod, 
int comp,
 
  167   virtual void setValue(
int step, 
int ent, 
int ele, 
int nod, 
int comp,
 
  174   void getScalarValue(
int step, 
int ent, 
int ele, 
int nod, 
double &val,
 
  175                       int tensorRep = 0, 
int forceNumComponents = 0,
 
  176                       int componentMap[9] = 
nullptr);
 
  183   virtual int getType(
int step, 
int ent, 
int ele) { 
return 0; }
 
  190   virtual void getString2D(
int i, 
int step, std::string &str, 
double &x,
 
  191                            double &y, 
double &style)
 
  194   virtual void getString3D(
int i, 
int step, std::string &str, 
double &x,
 
  195                            double &y, 
double &
z, 
double &style)
 
  203   virtual bool empty();
 
  207   virtual bool skipElement(
int step, 
int ent, 
int ele,
 
  208                            bool checkVisibility = 
false, 
int samplingRate = 1);
 
  232                              int step, 
int level, 
double tol, 
int npart,
 
  272   virtual void setXY(std::vector<double> &x, std::vector<double> &y) {}
 
  275   virtual void setXYZV(std::vector<double> &x, std::vector<double> &y,
 
  276                        std::vector<double> &
z, std::vector<double> &v)
 
  307   bool searchScalar(
double x, 
double y, 
double z, 
double *values, 
int step = -1,
 
  308                     double *size = 
nullptr, 
int qn = 0, 
double *qx = 
nullptr,
 
  309                     double *qy = 
nullptr, 
double *qz = 
nullptr,
 
  310                     bool grad = 
false, 
int dim = -1);
 
  311   bool searchVector(
double x, 
double y, 
double z, 
double *values, 
int step = -1,
 
  312                     double *size = 
nullptr, 
int qn = 0, 
double *qx = 
nullptr,
 
  313                     double *qy = 
nullptr, 
double *qz = 
nullptr,
 
  314                     bool grad = 
false, 
int dim = -1);
 
  315   bool searchTensor(
double x, 
double y, 
double z, 
double *values, 
int step = -1,
 
  316                     double *size = 
nullptr, 
int qn = 0, 
double *qx = 
nullptr,
 
  317                     double *qy = 
nullptr, 
double *qz = 
nullptr,
 
  318                     bool grad = 
false, 
int dim = -1);
 
  326                            double *values, 
int step = -1,
 
  327                            double *size = 
nullptr, 
int qn = 0, 
double *qx = 
nullptr,
 
  328                            double *qy = 
nullptr, 
double *qz = 
nullptr,
 
  329                            bool grad = 
false, 
int dim = -1);
 
  331                            double *values, 
int step = -1,
 
  332                            double *size = 
nullptr, 
int qn = 0, 
double *qx = 
nullptr,
 
  333                            double *qy = 
nullptr, 
double *qz = 
nullptr,
 
  334                            bool grad = 
false, 
int dim = -1);
 
  336                            double *values, 
int step = -1,
 
  337                            double *size = 
nullptr, 
int qn = 0, 
double *qx = 
nullptr,
 
  338                            double *qy = 
nullptr, 
double *qz = 
nullptr,
 
  339                            bool grad = 
false, 
int dim = -1);
 
  342   virtual bool writeSTL(
const std::string &fileName);
 
  343   virtual bool writeTXT(
const std::string &fileName);
 
  344   virtual bool writePOS(
const std::string &fileName, 
bool binary = 
false,
 
  345                         bool parsed = 
true, 
bool append = 
false);
 
  346   virtual bool writeMSH(
const std::string &fileName, 
double version = 2.2,
 
  347                         bool binary = 
false, 
bool saveMesh = 
true,
 
  348                         bool multipleView = 
false, 
int partitionNum = -1,
 
  349                         bool saveInterpolationMatrices = 
true,
 
  350                         bool forceNodeData = 
false,
 
  351                         bool forceElementData = 
false);
 
  352   virtual bool writeMED(
const std::string &fileName);
 
  353   virtual bool toVector(std::vector<std::vector<double> > &vec);
 
  354   virtual bool fromVector(
const std::vector<std::vector<double> > &vec);
 
  355   virtual void importLists(
int N[24], std::vector<double> *V[24]);
 
  
 
virtual bool toVector(std::vector< std::vector< double > > &vec)
virtual int getNumEdges(int step, int ent, int ele)
virtual int getNumPolygons(int step=-1)
virtual void getString3D(int i, int step, std::string &str, double &x, double &y, double &z, double &style)
bool searchVector(double x, double y, double z, double *values, int step=-1, double *size=nullptr, int qn=0, double *qx=nullptr, double *qy=nullptr, double *qz=nullptr, bool grad=false, int dim=-1)
virtual int getNumLines(int step=-1)
virtual bool writeSTL(const std::string &fileName)
virtual int getNumPyramids(int step=-1)
virtual bool writeTXT(const std::string &fileName)
virtual bool skipElement(int step, int ent, int ele, bool checkVisibility=false, int samplingRate=1)
double distance(MVertex *v1, MVertex *v2)
virtual int getNumStrings3D()
virtual bool combineSpace(nameData &nd)
virtual int getNumStrings2D()
virtual int getNumTimeSteps()=0
virtual void setValue(int step, int ent, int ele, int nod, int comp, double val)
virtual bool isNodeData()
virtual int getNode(int step, int ent, int ele, int nod, double &x, double &y, double &z)
int getInterpolationMatrices(int type, std::vector< fullMatrix< double > * > &p)
virtual void getValue(int step, int ent, int ele, int idx, double &val)
bool searchVectorClosest(double x, double y, double z, double &distance, double *values, int step=-1, double *size=nullptr, int qn=0, double *qx=nullptr, double *qy=nullptr, double *qz=nullptr, bool grad=false, int dim=-1)
virtual int getNumPoints(int step=-1)
virtual bool writePOS(const std::string &fileName, bool binary=false, bool parsed=true, bool append=false)
std::string _interpolationSchemeName
virtual int getNumValues(int step, int ent, int ele)
virtual bool hasMultipleMeshes()
interpolationMatrices _interpolation
virtual bool writeMED(const std::string &fileName)
virtual bool hasModel(GModel *model, int step=-1)
virtual void reverseElement(int step, int ent, int ele)
virtual void setNode(int step, int ent, int ele, int nod, double x, double y, double z)
virtual int getNumEntities(int step=-1)
bool haveInterpolationMatrices(int type=0)
virtual bool hasPartition(int step, int part)
virtual void setFileName(const std::string &val)
adaptiveData * getAdaptiveData()
bool searchScalarClosest(double x, double y, double z, double &distance, double *values, int step=-1, double *size=nullptr, int qn=0, double *qx=nullptr, double *qy=nullptr, double *qz=nullptr, bool grad=false, int dim=-1)
virtual bool isListBased()
void initAdaptiveData(int step, int level, double tol)
virtual int getDimension(int step, int ent, int ele)
void setInterpolationMatrices(int type, const fullMatrix< double > &coefVal, const fullMatrix< double > &expVal)
virtual double getTime(int step)
virtual double getMax(int step=-1, bool onlyVisible=false, int tensorRep=0, int forceNumComponents=0, int componentMap[9]=nullptr)=0
virtual void tagNode(int step, int ent, int ele, int nod, int tag)
virtual int getType(int step, int ent, int ele)
virtual int getNumHexahedra(int step=-1)
SPoint3CloudAdaptor< SPoint3Cloud > _pc2kdtree
virtual SBoundingBox3d getBoundingBox(int step=-1)=0
void getScalarValue(int step, int ent, int ele, int nod, double &val, int tensorRep=0, int forceNumComponents=0, int componentMap[9]=nullptr)
virtual int getNumScalars(int step=-1)
virtual bool hasTimeStep(int step)
virtual void sendToServer(const std::string &name)
virtual void setMin(double min)=0
virtual int fillRemoteVertexArrays(std::string &options)
void initAdaptiveDataLight(int step, int level, double tol)
virtual int getNumQuadrangles(int step=-1)
static void removeAllInterpolationSchemes()
static void addMatrixToInterpolationScheme(const std::string &name, int type, fullMatrix< double > &mat)
void destroyAdaptiveData()
virtual int getNumTrihedra(int step=-1)
std::set< std::string > _fileNames
virtual GModel * getModel(int step)
virtual int getNumNodes(int step, int ent, int ele)
virtual bool writeMSH(const std::string &fileName, double version=2.2, bool binary=false, bool saveMesh=true, bool multipleView=false, int partitionNum=-1, bool saveInterpolationMatrices=true, bool forceNodeData=false, bool forceElementData=false)
void deleteInterpolationMatrices(int type=0)
bool searchScalar(double x, double y, double z, double *values, int step=-1, double *size=nullptr, int qn=0, double *qx=nullptr, double *qy=nullptr, double *qz=nullptr, bool grad=false, int dim=-1)
virtual bool combineTime(nameData &nd)
virtual void setName(const std::string &val)
static void removeInterpolationScheme(const std::string &name)
virtual MElement * getElement(int step, int entity, int element)
static std::map< std::string, interpolationMatrices > _interpolationSchemes
virtual void setDirty(bool val)
virtual int getNumVectors(int step=-1)
virtual int getNumTetrahedra(int step=-1)
std::map< int, std::vector< fullMatrix< double > * > > interpolationMatrices
virtual void getValue(int step, int ent, int ele, int nod, int comp, double &val)
virtual void setXYZV(std::vector< double > &x, std::vector< double > &y, std::vector< double > &z, std::vector< double > &v)
virtual double getMemoryInMb()
virtual int getNumComponents(int step, int ent, int ele)
virtual void getListPointers(int N[24], std::vector< double > *V[24])
virtual std::string getFileName(int step=-1)
virtual int getNumTensors(int step=-1)
virtual void setMax(double max)=0
virtual int getNumPrisms(int step=-1)
virtual void importLists(int N[24], std::vector< double > *V[24])
std::string getInterpolationSchemeName()
static int getSizeInterpolationScheme()
virtual double getMin(int step=-1, bool onlyVisible=false, int tensorRep=0, int forceNumComponents=0, int componentMap[9]=nullptr)=0
virtual int getFileIndex()
virtual void setFileIndex(int val)
virtual int getNumElements(int step=-1, int ent=-1)
bool searchTensorClosest(double x, double y, double z, double &distance, double *values, int step=-1, double *size=nullptr, int qn=0, double *qx=nullptr, double *qy=nullptr, double *qz=nullptr, bool grad=false, int dim=-1)
virtual int getNumPolyhedra(int step=-1)
virtual std::string getName()
void saveAdaptedViewForVTK(const std::string &guifileName, int useDefaultName, int step, int level, double tol, int npart, bool isBinary)
virtual void getString2D(int i, int step, std::string &str, double &x, double &y, double &style)
virtual void setBoundingBox(SBoundingBox3d &box)=0
virtual bool hasFileName(const std::string &val)
virtual bool fromVector(const std::vector< std::vector< double > > &vec)
bool searchTensor(double x, double y, double z, double *values, int step=-1, double *size=nullptr, int qn=0, double *qx=nullptr, double *qy=nullptr, double *qz=nullptr, bool grad=false, int dim=-1)
virtual bool finalize(bool computeMinMax=true, const std::string &interpolationScheme="")
void setInterpolationSchemeName(std::string name)
virtual int getNumTriangles(int step=-1)
virtual bool useGaussPoints()
virtual void setXY(std::vector< double > &x, std::vector< double > &y)
double findClosestNode(double &xn, double &yn, double &zn, int step)
virtual bool skipEntity(int step, int ent)
virtual GEntity * getEntity(int step, int entity)
virtual int getFirstNonEmptyTimeStep(int start=0)