Mesh Oriented datABase  (version 5.5.1)
An array-based unstructured mesh library
ElemUtil.cpp File Reference
#include <iostream>
#include <limits>
#include <cassert>
#include "ElemUtil.hpp"
#include "moab/BoundBox.hpp"
+ Include dependency graph for ElemUtil.cpp:

Go to the source code of this file.

Classes

class  moab::ElemUtil::VolMap
 Class representing a 3-D mapping function (e.g. shape function for volume element) More...
 
class  moab::ElemUtil::LinearHexMap
 Shape function for trilinear hexahedron. More...
 

Namespaces

 moab
 Class representing axis-aligned bounding box.
 
 moab::ElemUtil
 
 moab::Element
 

Functions

bool moab::ElemUtil::nat_coords_trilinear_hex (const CartVect *corner_coords, const CartVect &x, CartVect &xi, double tol)
 
void moab::ElemUtil::nat_coords_trilinear_hex2 (const CartVect hex[8], const CartVect &xyz, CartVect &ncoords, double etol)
 
bool moab::ElemUtil::point_in_trilinear_hex (const CartVect *hex, const CartVect &xyz, double etol)
 
bool moab::ElemUtil::point_in_trilinear_hex (const CartVect *hex, const CartVect &xyz, const CartVect &box_min, const CartVect &box_max, double etol)
 
void moab::ElemUtil::hex_findpt (realType *xm[3], int n, CartVect xyz, CartVect &rst, double &dist)
 
void moab::ElemUtil::hex_eval (realType *field, int n, CartVect rstCartVec, double &value)
 
bool moab::ElemUtil::integrate_trilinear_hex (const CartVect *hex_corners, double *corner_fields, double &field_val, int num_pts)
 
double moab::Element::SH (const int i, const double xi)
 
double moab::Element::DSH (const int i, const double xi)
 

Variables

bool moab::ElemUtil::debug = false
 
const double moab::ElemUtil::gauss_1 [1][2] = { { 2.0, 0.0 } }
 
const double moab::ElemUtil::gauss_2 [2][2] = { { 1.0, -0.5773502691 }, { 1.0, 0.5773502691 } }
 
const double moab::ElemUtil::gauss_3 [3][2]
 
const double moab::ElemUtil::gauss_4 [4][2]
 
const double moab::ElemUtil::gauss_5 [5][2]