Nektar++
|
#include <LibUtilities/BasicConst/NektarUnivTypeDefs.hpp>
#include <LibUtilities/BasicUtils/ParseUtils.hpp>
#include <LibUtilities/BasicUtils/SessionReader.h>
#include <SpatialDomains/MeshGraph.h>
#include <cstdio>
#include <cstdlib>
#include <sstream>
#include <map>
#include <iomanip>
#include <tinyxml.h>
Go to the source code of this file.
Functions | |
void | ExpandVertices (TiXmlElement *mesh, map< int, int > jointVerts, map< int, int > &fullVerts) |
void | ExpandEdges (TiXmlElement *mesh, map< int, int > &newVerts, map< int, int > jointEdges, map< int, int > &newEdges) |
void | ExpandElmts (TiXmlElement *mesh, map< int, int > &newEdges, int &nOrigElmts) |
void | ExpandComposites (TiXmlElement *mesh, map< int, int > fullEdges, int nOrigElmts) |
int | main (int argc, char *argv[]) |
string | GetXmlString (char tag, vector< unsigned int > &ids) |
void ExpandComposites | ( | TiXmlElement * | mesh, |
map< int, int > | fullEdges, | ||
int | nOrigElmts | ||
) |
All elements are of the form: "<C ID = "N"> ... </C>". Read the ID field first.
Parse out the element components corresponding to type of element.
Keep looking
Definition at line 473 of file ExpandMeshByRotation.cpp.
References ASSERTL0, ErrorUtil::efatal, GetXmlString(), Nektar::iterator, and NEKERROR.
Referenced by main().
void ExpandEdges | ( | TiXmlElement * | mesh, |
map< int, int > & | newVerts, | ||
map< int, int > | jointEdges, | ||
map< int, int > & | newEdges | ||
) |
Look for elements in ELEMENT block.
All elements are of the form: "<E ID="#"> ... </E>", with ? being the element type. Read the ID field first.
Since all edge data is one big text block, we need to accumulate all TEXT data and then parse it. This approach effectively skips all comments or other node types since we only care about the edge list. We cannot handle missing edge numbers as we could with missing element numbers due to the text block format.
Now parse out the edges, three fields at a time.
Definition at line 210 of file ExpandMeshByRotation.cpp.
References ASSERTL0, ErrorUtil::efatal, and NEKERROR.
Referenced by main().
void ExpandElmts | ( | TiXmlElement * | mesh, |
map< int, int > & | newEdges, | ||
int & | nOrigElmts | ||
) |
All elements are of the form: "<? ID="#"> ... </?>", with ? being the element type.
These should be ordered.
Read id attribute.
Read text element description.
Parse out the element components corresponding to type of element.
Keep looking
Definition at line 293 of file ExpandMeshByRotation.cpp.
References ASSERTL0, ErrorUtil::efatal, and NEKERROR.
Referenced by main().
void ExpandVertices | ( | TiXmlElement * | mesh, |
map< int, int > | jointVerts, | ||
map< int, int > & | fullVerts | ||
) |
Error value returned by TinyXML.
Definition at line 115 of file ExpandMeshByRotation.cpp.
References ASSERTL0, npts, and Vmath::Vmax().
Referenced by main().
string GetXmlString | ( | char | tag, |
vector< unsigned int > & | ids | ||
) |
Definition at line 430 of file ExpandMeshByRotation.cpp.
References Nektar::iterator.
Referenced by ExpandComposites(), and Nektar::Utilities::OutputNekpp::WriteXmlElements().
int main | ( | int | argc, |
char * | argv[] | ||
) |
Definition at line 60 of file ExpandMeshByRotation.cpp.
References ExpandComposites(), ExpandEdges(), ExpandElmts(), and ExpandVertices().