gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
Go to the documentation of this file.
22 return "Plugin(Eigenvalues) computes the three real "
23 "eigenvalues of each tensor in the view `View'.\n\n"
24 "If `View' < 0, the plugin is run on the current view.\n\n"
25 "Plugin(Eigenvalues) creates three new list-based scalar views.";
47 Msg::Error(
"Eigenvalues plugin cannot be run on multi-mesh views");
63 if(numComp != 9)
continue;
64 int type = data1->
getType(0, ent, ele);
66 std::vector<double> *outmin = dmin->
incrementList(1, type, numNodes);
67 std::vector<double> *outmid = dmid->
incrementList(1, type, numNodes);
68 std::vector<double> *outmax = dmax->
incrementList(1, type, numNodes);
69 if(!outmin || !outmid || !outmax)
continue;
71 for(
int nod = 0; nod < numNodes; nod++)
72 data1->
getNode(0, ent, ele, nod, xyz[0][nod], xyz[1][nod], xyz[2][nod]);
73 for(
int i = 0; i < 3; i++) {
74 for(
int nod = 0; nod < numNodes; nod++) {
75 outmin->push_back(xyz[i][nod]);
76 outmid->push_back(xyz[i][nod]);
77 outmax->push_back(xyz[i][nod]);
81 for(
int nod = 0; nod < numNodes; nod++) {
83 for(
int comp = 0; comp < numComp; comp++)
84 data1->
getValue(step, ent, ele, nod, comp, val[comp]);
85 double A[3][3] = {{val[0], val[1], val[2]},
86 {val[3], val[4], val[5]},
87 {val[6], val[7], val[8]}};
89 outmin->push_back(w[2]);
90 outmid->push_back(w[1]);
91 outmax->push_back(w[0]);
98 double time = data1->
getTime(i);
99 dmin->
Time.push_back(time);
100 dmid->
Time.push_back(time);
101 dmax->
Time.push_back(time);
std::string getHelp() const
virtual bool skipElement(int step, int ent, int ele, bool checkVisibility=false, int samplingRate=1)
virtual int getNumTimeSteps()=0
virtual int getNode(int step, int ent, int ele, int nod, double &x, double &y, double &z)
static void Error(const char *fmt,...)
std::vector< double > * incrementList(int numComp, int type, int numNodes=0)
virtual void getValue(int step, int ent, int ele, int idx, double &val)
virtual bool hasMultipleMeshes()
virtual int getNumEntities(int step=-1)
virtual void setFileName(const std::string &val)
virtual double getTime(int step)
virtual int getType(int step, int ent, int ele)
virtual int getNumNodes(int step, int ent, int ele)
bool finalize(bool computeMinMax=true, const std::string &interpolationScheme="")
virtual void setName(const std::string &val)
GMSH_Plugin * GMSH_RegisterEigenvaluesPlugin()
virtual int getNumComponents(int step, int ent, int ele)
virtual PView * getView(int index, PView *view)
virtual PViewData * getPossiblyAdaptiveData(PView *view)
std::vector< double > Time
void eigenvalue(double mat[3][3], double v[3])
virtual int getNumElements(int step=-1, int ent=-1)
virtual std::string getName()
StringXNumber EigenvaluesOptions_Number[]
StringXNumber * getOption(int iopt)
virtual PViewDataList * getDataList(PView *view, bool showError=true)