|
MeshKit
1.0
|
#include <PostBL.hpp>

Public Member Functions | |
| PostBL (MKCore *mk, const MEntVector &me_vec) | |
| virtual | ~PostBL () |
| virtual const moab::EntityType * | mesh_types_arr () const |
| Return the mesh entity types operated on by this scheme. | |
| virtual bool | add_modelent (ModelEnt *model_ent) |
| Re-implemented here so we can check topological dimension of model_ent. | |
| virtual void | setup_this () |
| Setup is a no-op, but must be provided since it's pure virtual. | |
| virtual void | execute_this () |
| execute PostBL graph node | |
| void | Algo2 () |
| Improved algorithm. | |
| void | PrepareIO (int argc, char *argv[], std::string TestDir) |
| Prepare input/output files for reading/writing command line args and testdir for default test case. | |
| void | get_normal_quad (std::vector< moab::EntityHandle >conn, moab::CartVect &v) |
| get the normals given connectivity of a quad | |
| void | get_normal_edge (std::vector< moab::EntityHandle >conn, moab::CartVect AB, moab::CartVect &v) |
| get the normals given connectivity of a quad | |
| void | get_det_jacobian (std::vector< moab::EntityHandle > conn, int offset, double &detJ) |
| compute determinant of jacobian of a hex element | |
| void | find_min_edge_length (moab::Range, moab::EntityHandle, moab::Range, double &e_len) |
| compute edge length from the vertex specified | |
| int | push_bulk_mesh (VerdictWrapper vw) |
| push the bulk mesh after creating the normals | |
| int | compute_normals () |
| compute the normal for each node of the boundary layer specified | |
| int | create_bl_elements (VerdictWrapper vw) |
| create boundary layer elements after pushing the bulk mesh | |
Static Public Member Functions | |
| static const char * | name () |
| Get class name. | |
| static bool | can_mesh (iBase_EntityType dim) |
| Function returning whether this scheme can mesh entities of t the specified dimension. | |
| static bool | can_mesh (ModelEnt *me) |
| Function returning whether this scheme can mesh the specified entity. | |
| static const moab::EntityType * | output_types () |
| Get list of mesh entity types that can be generated. | |
Private Types | |
| enum | ErrorStates { INVALIDINPUT } |
Private Member Functions | |
| void | IOErrorHandler (ErrorStates) const |
Private Attributes | |
| iGeom * | igeom |
| iGeom Impl for calling geometry creation/manipulation operations | |
| iMesh * | imesh |
| iMesh Impl for calling mesh creation/manipulation operations | |
| moab::Interface * | mb |
| MOAB Impl for calling mesh creation/manipulation operations. | |
| moab::Tag | GDTag |
| moab::Tag | GIDTag |
| moab::Tag | NTag |
| moab::Tag | MTag |
| moab::Tag | STag |
| moab::Tag | FTag |
| moab::Tag | MNTag |
| moab::Tag | MatIDTag |
| moab::Tag | BLNodeIDTag |
| std::vector< moab::EntityHandle > | old_hex |
| std::vector< moab::EntityHandle > | new_vert |
| std::vector< moab::EntityHandle > | conn |
| std::vector< moab::EntityHandle > | qconn |
| std::vector< moab::EntityHandle > | tri_conn |
| std::vector< moab::EntityHandle > | tet_conn |
| std::vector< moab::EntityHandle > | adj_qconn |
| std::vector< moab::EntityHandle > | old_hex_conn |
| std::vector< moab::EntityHandle > | adj_hex_nodes1 |
| moab::CartVect | surf_normal |
| moab::Range | quads |
| moab::Range | nodes |
| moab::Range | edges |
| moab::Range | fixmat_ents |
| double | coords_new_quad [3] |
| double | coords_old_quad [3] |
| moab::EntityHandle | hex |
| moab::EntityHandle | hex1 |
| moab::EntityHandle | hex2 |
| moab::Range::iterator | mset_it |
| moab::Range::iterator | set_it |
| moab::EntityHandle | mthis_set |
| moab::EntityHandle | geom_set |
| moab::Range | sets |
| moab::Range | n_sets |
| moab::Range | m_sets |
| bool | debug |
| bool | hybrid |
| bool | check_bl_edge_length |
| std::ifstream | m_FileInput |
| mstream | m_LogFile |
| std::string | szInputString |
| std::string | szComment |
| int | MAXCHARS |
| int | m_nLineNumber |
| std::vector< int > | blmaterial_id |
| std::vector< int > | all_bl |
| std::string | m_InputFile |
| std::string | m_MeshFile |
| std::string | m_OutFile |
| std::string | m_LogName |
| std::string | m_MeshType |
| int | m_SurfId |
| int | m_NeumannSet |
| int | m_Material |
| int | m_HConn |
| int | hex27 |
| double | m_Thickness |
| double | m_MinEdgeLength |
| int | m_Intervals |
| int | m_JacCalls |
| int | tri_sch |
| int | fixmat |
| double | m_Bias |
| double | m_JLo |
| double | m_JHi |
| int | m_Conn |
| int | m_BElemNodes |
| int | m_GD |
| int | m_BLDim |
| std::string | m_Card |
| int | err |
Definition at line 69 of file PostBL.hpp.
enum ErrorStates [private] |
Definition at line 217 of file PostBL.hpp.
| PostBL | ( | MKCore * | mk, |
| const MEntVector & | me_vec | ||
| ) |
Function: Constructor
Input: Initialize mesh and geometry instances and parameters
Output: none
Definition at line 12 of file PostBL.cpp.
| ~PostBL | ( | ) | [virtual] |
Function: Destructor, does nothing..
Input: none
Output: none
Definition at line 45 of file PostBL.cpp.
| bool add_modelent | ( | ModelEnt * | model_ent | ) | [virtual] |
Re-implemented here so we can check topological dimension of model_ent.
| model_ent | ModelEnt being added |
Function: Adds entities for PosBL graph node.
Input: ModelEnt
Output: none
Reimplemented from MeshOp.
Definition at line 53 of file PostBL.cpp.
| void Algo2 | ( | ) |
Improved algorithm.
| bool can_mesh | ( | iBase_EntityType | dim | ) | [inline, static] |
Function returning whether this scheme can mesh entities of t the specified dimension.
| dim | entity dimension |
Definition at line 226 of file PostBL.hpp.
Function returning whether this scheme can mesh the specified entity.
Used by MeshOpFactory to find scheme for an entity.
| me | ModelEnt being queried |
Definition at line 231 of file PostBL.hpp.
| int compute_normals | ( | ) |
compute the normal for each node of the boundary layer specified
Function: Compute the normal direction for boundary layer compution.
Input: From included .hpp file
Output: none
Definition at line 4 of file computenormals.cpp.
| int create_bl_elements | ( | VerdictWrapper | vw | ) |
create boundary layer elements after pushing the bulk mesh
Function: Parser for reading the PostBL specification (.inp) file.
Input: Command line arguments.
Output: none
Definition at line 4 of file createblelements.cpp.
| void execute_this | ( | ) | [virtual] |
execute PostBL graph node
Function: Read user input from file and run the PostBL algorithm
Input: Uses the file name (.inp) with keywords predefined by PosBL algorithm.
Output: Resulting mesh file is saved.
Implements GraphNode.
Definition at line 76 of file PostBL.cpp.
| void find_min_edge_length | ( | moab::Range | adj_qn, |
| moab::EntityHandle | node, | ||
| moab::Range | bl_nodes, | ||
| double & | e_len | ||
| ) |
compute edge length from the vertex specified
| vector | of quads/edges |
| vertex | specified |
| o/p | edge length |
Function: Get minimum edge length from several adjacent quads/edges specified
Input: verts of quads, BL vert
Output: distance b/w BL vert and inner vert
Definition at line 311 of file computenormals.cpp.
| void get_det_jacobian | ( | std::vector< moab::EntityHandle > | conn, |
| int | offset, | ||
| double & | AvgJ | ||
| ) |
compute determinant of jacobian of a hex element
| conn | connectivity array |
| offset | passed when conn array has connectivity of more than one element |
| detJ | is returned |
Function: Get determinant of jacobian
Input: conn
Output: vector x, y and z
Definition at line 244 of file computenormals.cpp.
| void get_normal_edge | ( | std::vector< moab::EntityHandle > | conn, |
| moab::CartVect | AB, | ||
| moab::CartVect & | v | ||
| ) |
get the normals given connectivity of a quad
| conn | connectivity array type moab::EntityHandle |
| v | return normal vector |
Function: Get normal of a edge along its quad
Input: conn of edge, normal to the surf
Output: moab::CartVect v
Definition at line 229 of file computenormals.cpp.
| void get_normal_quad | ( | std::vector< moab::EntityHandle > | conn, |
| moab::CartVect & | v | ||
| ) |
get the normals given connectivity of a quad
| conn | connectivity array type EntityHandle |
| v | return normal vector |
Function: Get normal of a quad
Input: conn
Output: moab::CartVect v
Definition at line 213 of file computenormals.cpp.
| void IOErrorHandler | ( | ErrorStates | ECode | ) | const [private] |
Function: Displays error messages related to input data
Input: Error code
Output: none
Definition at line 645 of file PostBL.cpp.
| const moab::EntityType * mesh_types_arr | ( | ) | const [inline, virtual] |
Return the mesh entity types operated on by this scheme.
moab::MBMAXTYPE Implements MeshOp.
Definition at line 236 of file PostBL.hpp.
| const char * name | ( | ) | [inline, static] |
Get class name.
Definition at line 221 of file PostBL.hpp.
| const moab::EntityType * output_types | ( | ) | [static] |
Get list of mesh entity types that can be generated.
moab::MBMAXTYPE Definition at line 9 of file PostBL.cpp.
| void PrepareIO | ( | int | argc, |
| char * | argv[], | ||
| std::string | TestDir | ||
| ) |
Prepare input/output files for reading/writing command line args and testdir for default test case.
| TestDir | directory where test will be located and command line arguments. |
Function: Parser for reading the PostBL specification (.inp) file.
Input: Command line arguments.
Output: none
Definition at line 468 of file PostBL.cpp.
| int push_bulk_mesh | ( | VerdictWrapper | vw | ) |
push the bulk mesh after creating the normals
Function: After normal creation push the bulk mesh and make room for creation of new BL elements
Input: mesh quality verdict handle and included variables from PostBL.hpp file
Output: save a mesh file in debug mode
Definition at line 4 of file pushbmesh.cpp.
| void setup_this | ( | ) | [virtual] |
Setup is a no-op, but must be provided since it's pure virtual.
Function: Setup the graph node for PostBL
Input: none
Output: none
Implements GraphNode.
Definition at line 63 of file PostBL.cpp.
std::vector<moab::EntityHandle> adj_hex_nodes1 [private] |
Definition at line 181 of file PostBL.hpp.
std::vector<moab::EntityHandle> adj_qconn [private] |
Definition at line 181 of file PostBL.hpp.
std::vector<int> all_bl [private] |
Definition at line 202 of file PostBL.hpp.
std::vector<int> blmaterial_id [private] |
Definition at line 202 of file PostBL.hpp.
moab::Tag BLNodeIDTag [private] |
Definition at line 179 of file PostBL.hpp.
bool check_bl_edge_length [private] |
Definition at line 194 of file PostBL.hpp.
std::vector<moab::EntityHandle> conn [private] |
Definition at line 180 of file PostBL.hpp.
double coords_new_quad[3] [private] |
Definition at line 185 of file PostBL.hpp.
double coords_old_quad[3] [private] |
Definition at line 186 of file PostBL.hpp.
bool debug [private] |
Definition at line 194 of file PostBL.hpp.
moab::Range edges [private] |
Definition at line 184 of file PostBL.hpp.
int err [private] |
Definition at line 214 of file PostBL.hpp.
int fixmat [private] |
Definition at line 208 of file PostBL.hpp.
moab::Range fixmat_ents [private] |
Definition at line 184 of file PostBL.hpp.
moab::Tag FTag [private] |
Definition at line 179 of file PostBL.hpp.
moab::Tag GDTag [private] |
Definition at line 179 of file PostBL.hpp.
moab::EntityHandle geom_set [private] |
Definition at line 189 of file PostBL.hpp.
moab::Tag GIDTag [private] |
Definition at line 179 of file PostBL.hpp.
moab::EntityHandle hex [private] |
Definition at line 187 of file PostBL.hpp.
moab::EntityHandle hex1 [private] |
Definition at line 187 of file PostBL.hpp.
moab::EntityHandle hex2 [private] |
Definition at line 187 of file PostBL.hpp.
int hex27 [private] |
Definition at line 206 of file PostBL.hpp.
bool hybrid [private] |
Definition at line 194 of file PostBL.hpp.
iGeom Impl for calling geometry creation/manipulation operations
Definition at line 172 of file PostBL.hpp.
iMesh Impl for calling mesh creation/manipulation operations
Definition at line 175 of file PostBL.hpp.
int m_BElemNodes [private] |
Definition at line 211 of file PostBL.hpp.
double m_Bias [private] |
Definition at line 209 of file PostBL.hpp.
int m_BLDim [private] |
Definition at line 212 of file PostBL.hpp.
std::string m_Card [private] |
Definition at line 213 of file PostBL.hpp.
int m_Conn [private] |
Definition at line 211 of file PostBL.hpp.
std::ifstream m_FileInput [private] |
Definition at line 196 of file PostBL.hpp.
int m_GD [private] |
Definition at line 212 of file PostBL.hpp.
int m_HConn [private] |
Definition at line 206 of file PostBL.hpp.
std::string m_InputFile [private] |
Definition at line 205 of file PostBL.hpp.
int m_Intervals [private] |
Definition at line 208 of file PostBL.hpp.
int m_JacCalls [private] |
Definition at line 208 of file PostBL.hpp.
double m_JHi [private] |
Definition at line 209 of file PostBL.hpp.
double m_JLo [private] |
Definition at line 209 of file PostBL.hpp.
Definition at line 197 of file PostBL.hpp.
std::string m_LogName [private] |
Definition at line 205 of file PostBL.hpp.
int m_Material [private] |
Definition at line 206 of file PostBL.hpp.
std::string m_MeshFile [private] |
Definition at line 205 of file PostBL.hpp.
std::string m_MeshType [private] |
Definition at line 205 of file PostBL.hpp.
double m_MinEdgeLength [private] |
Definition at line 207 of file PostBL.hpp.
int m_NeumannSet [private] |
Definition at line 206 of file PostBL.hpp.
int m_nLineNumber [private] |
Definition at line 200 of file PostBL.hpp.
std::string m_OutFile [private] |
Definition at line 205 of file PostBL.hpp.
moab::Range m_sets [private] |
Definition at line 190 of file PostBL.hpp.
int m_SurfId [private] |
Definition at line 206 of file PostBL.hpp.
double m_Thickness [private] |
Definition at line 207 of file PostBL.hpp.
moab::Tag MatIDTag [private] |
Definition at line 179 of file PostBL.hpp.
int MAXCHARS [private] |
Definition at line 200 of file PostBL.hpp.
moab::Interface* mb [private] |
MOAB Impl for calling mesh creation/manipulation operations.
Definition at line 178 of file PostBL.hpp.
moab::Tag MNTag [private] |
Definition at line 179 of file PostBL.hpp.
moab::Range::iterator mset_it [private] |
Definition at line 188 of file PostBL.hpp.
moab::Tag MTag [private] |
Definition at line 179 of file PostBL.hpp.
moab::EntityHandle mthis_set [private] |
Definition at line 189 of file PostBL.hpp.
moab::Range n_sets [private] |
Definition at line 190 of file PostBL.hpp.
std::vector<moab::EntityHandle> new_vert [private] |
Definition at line 180 of file PostBL.hpp.
moab::Range nodes [private] |
Definition at line 184 of file PostBL.hpp.
moab::Tag NTag [private] |
Definition at line 179 of file PostBL.hpp.
std::vector<moab::EntityHandle> old_hex [private] |
Definition at line 180 of file PostBL.hpp.
std::vector<moab::EntityHandle> old_hex_conn [private] |
Definition at line 181 of file PostBL.hpp.
std::vector<moab::EntityHandle> qconn [private] |
Definition at line 180 of file PostBL.hpp.
moab::Range quads [private] |
Definition at line 184 of file PostBL.hpp.
moab::Range::iterator set_it [private] |
Definition at line 188 of file PostBL.hpp.
moab::Range sets [private] |
Definition at line 190 of file PostBL.hpp.
moab::Tag STag [private] |
Definition at line 179 of file PostBL.hpp.
moab::CartVect surf_normal [private] |
Definition at line 183 of file PostBL.hpp.
std::string szComment [private] |
Definition at line 199 of file PostBL.hpp.
std::string szInputString [private] |
Definition at line 198 of file PostBL.hpp.
std::vector<moab::EntityHandle> tet_conn [private] |
Definition at line 180 of file PostBL.hpp.
std::vector<moab::EntityHandle> tri_conn [private] |
Definition at line 180 of file PostBL.hpp.
int tri_sch [private] |
Definition at line 208 of file PostBL.hpp.