SCIRun  5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Static Public Member Functions | List of all members
HexTricubicHmtScaleFactors< T > Class Template Reference

#include <HexTricubicHmtScaleFactors.h>

Inheritance diagram for HexTricubicHmtScaleFactors< T >:
BasisAddDerivativesScaleFactors< T > HexApprox HexGaussian3< double > HexSamplingSchemes HexTricubicHmtScaleFactorsUnitElement HexElementWeights BasisAddDerivatives< T > HexTrilinearLgnUnitElement BasisSimple< T >

Public Types

typedef T value_type
 

Public Member Functions

 HexTricubicHmtScaleFactors ()
 
virtual ~HexTricubicHmtScaleFactors ()
 
template<class VECTOR >
void get_weights (const VECTOR &coords, double *w) const
 
template<class VECTOR >
void get_derivate_weights (const VECTOR &coords, double *w) const
 
template<class ElemData , class VECTOR >
interpolate (const VECTOR &coords, const ElemData &cd) const
 get value at parametric coordinate More...
 
template<class ElemData , class VECTOR1 , class VECTOR2 >
void derivate (const VECTOR1 &coords, const ElemData &cd, VECTOR2 &derivs) const
 get first derivative at parametric coordinate More...
 
template<class ElemData , class VECTOR >
bool get_coords (VECTOR &coords, const T &value, const ElemData &cd) const
 get parametric coordinate for value within the element More...
 
template<class ElemData >
double get_arc_length (const unsigned edge, const ElemData &cd) const
 get arc length for edge More...
 
template<class ElemData >
double get_area (const unsigned face, const ElemData &cd) const
 get area More...
 
template<class ElemData >
double get_volume (const ElemData &cd) const
 get volume More...
 
virtual void io (Piostream &str)
 
- Public Member Functions inherited from BasisAddDerivativesScaleFactors< T >
 BasisAddDerivativesScaleFactors ()
 
virtual ~BasisAddDerivativesScaleFactors ()
 
void add_scalefactors (const std::vector< double > &p)
 add scale factors (sdx, sdy) for nodes. More...
 
int size_scalefactors ()
 return number of additional derivatives More...
 
- Public Member Functions inherited from BasisAddDerivatives< T >
 BasisAddDerivatives ()
 
virtual ~BasisAddDerivatives ()
 
void add_derivatives (const std::vector< T > &p)
 add derivative values (dx, dy, dxy) for nodes. More...
 
void set_deriv_value (const T &p, unsigned int i, unsigned int j)
 get and set node value More...
 
void get_deriv_value (T &p, unsigned int i, unsigned int j) const
 
void resize_deriv_values (size_t s)
 set the proper size More...
 
int size_derivatives ()
 return number of additional derivatives More...
 
- Public Member Functions inherited from BasisSimple< T >
 BasisSimple ()
 
virtual ~BasisSimple ()
 
template<class ElemData , class VECTOR >
interpolate (const VECTOR &, const ElemData &) const
 get value at parametric coordinate More...
 
template<class ElemData , class VECTOR1 , class VECTOR2 >
void derivate (const VECTOR1 &, const ElemData &, VECTOR2 &) const
 get first derivative at parametric coordinate More...
 
template<class ElemData , class VECTOR >
bool get_coords (VECTOR &, const T &, const ElemData &) const
 get parametric coordinate for value within the element More...
 
template<class ElemData >
double get_arc_length (const unsigned, const ElemData &) const
 get arc length for edge of element More...
 
template<class ElemData >
double get_area (const unsigned, const ElemData &) const
 get area for face of element More...
 
template<class ElemData >
double get_volume (const ElemData &) const
 get volume for element More...
 
void add_node_value (const T &)
 add a node value More...
 
void set_node_value (const T &, unsigned int)
 
void get_node_value (T &, unsigned int) const
 
void resize_node_values (size_t)
 
size_t size_node_values ()
 return number of additional nodes More...
 
void add_derivatives (const std::vector< T > &)
 add a derivative value More...
 
void add_scalefactors (const std::vector< T > &)
 add scale factors More...
 
int size_derivatives ()
 return number of additional derivatives More...
 
std::vector< T > & get_nodes ()
 
std::vector< std::vector< T > > & get_derivs ()
 
- Public Member Functions inherited from HexApprox
 HexApprox ()
 
virtual ~HexApprox ()
 
template<class VECTOR >
void approx_edge (const unsigned edge, const unsigned div_per_unit, VECTOR &coords) const
 
virtual int get_approx_face_elements () const
 return number of vertices per face More...
 
template<class VECTOR >
void approx_face (const unsigned face, const unsigned div_per_unit, VECTOR &coords) const
 
- Public Member Functions inherited from HexSamplingSchemes
template<class ARRAY1 , class ARRAY2 >
void get_gaussian_scheme (ARRAY1 &coords, ARRAY2 &weights, int order)
 
template<class ARRAY1 , class ARRAY2 >
void get_regular_scheme (ARRAY1 &coords, ARRAY2 &weights, int order)
 
- Public Member Functions inherited from HexTricubicHmtScaleFactorsUnitElement
 HexTricubicHmtScaleFactorsUnitElement ()
 
virtual ~HexTricubicHmtScaleFactorsUnitElement ()
 
- Public Member Functions inherited from HexTrilinearLgnUnitElement
 HexTrilinearLgnUnitElement ()
 
virtual ~HexTrilinearLgnUnitElement ()
 
- Public Member Functions inherited from HexElementWeights
template<class VECTOR >
void get_linear_weights (const VECTOR &coords, double *w) const
 
template<class VECTOR >
void get_linear_derivate_weights (const VECTOR &coords, double *w) const
 get derivative weight factors at parametric coordinate More...
 
template<class VECTOR >
void get_quadratic_weights (const VECTOR &coords, double *w) const
 get weight factors at parametric coordinate More...
 
template<class VECTOR >
void get_quadratic_derivate_weights (const VECTOR &coords, double *w) const
 get weight factors of derivative at parametric coordinate More...
 
template<class VECTOR >
void get_cubic_weights (const VECTOR &coords, unsigned int elem, double *w) const
 
template<class VECTOR >
void get_cubic_derivate_weights (const VECTOR &coords, unsigned int elem, double *w) const
 get derivative weight factors at parametric coordinate More...
 
int num_derivs ()
 
int num_hderivs ()
 
template<class VECTOR >
void get_linear_weights (const VECTOR &coords, double *w) const
 
template<class VECTOR >
void get_linear_derivate_weights (const VECTOR &coords, double *w) const
 get derivative weight factors at parametric coordinate More...
 
template<class VECTOR >
void get_quadratic_weights (const VECTOR &coords, double *w) const
 get weight factors at parametric coordinate More...
 
template<class VECTOR >
void get_quadratic_derivate_weights (const VECTOR &coords, double *w) const
 get weight factors of derivative at parametric coordinate More...
 
template<class VECTOR >
void get_cubic_weights (const VECTOR &coords, double *w) const
 
template<class VECTOR >
void get_cubic_derivate_weights (const VECTOR &coords, double *w) const
 get derivative weight factors at parametric coordinate More...
 
int num_linear_weights ()
 
int num_quadratic_weights ()
 
int num_cubic_weights ()
 
int num_linear_derivate_weights ()
 
int num_quadratic_derivate_weights ()
 
int num_cubic_derivate_weights ()
 
int num_derivs ()
 
int num_hderivs ()
 

Static Public Member Functions

static int polynomial_order ()
 
static const std::string type_name (int n=-1)
 
- Static Public Member Functions inherited from HexTricubicHmtScaleFactorsUnitElement
static int dofs ()
 return degrees of freedom More...
 
- Static Public Member Functions inherited from HexTrilinearLgnUnitElement
static int domain_dimension ()
 return dimension of domain More...
 
static double domain_size ()
 return size of the domain More...
 
static int number_of_vertices ()
 return number of vertices More...
 
static int number_of_mesh_vertices ()
 return number of vertices More...
 
static int dofs ()
 return degrees of freedom More...
 
static int number_of_edges ()
 return number of edges More...
 
static int vertices_of_face ()
 return number of vertices per face More...
 
static int faces_of_cell ()
 return number of faces per cell More...
 
static double length (int edge)
 
static double area (int)
 
static double volume ()
 

Additional Inherited Members

- Static Public Attributes inherited from HexGaussian3< double >
static int GaussianNum
 
static double GaussianPoints [27][3]
 
static double GaussianWeights [27]
 
- Static Public Attributes inherited from HexTrilinearLgnUnitElement
static double unit_vertices [8][3]
 Parametric coordinates of vertices of unit edge. More...
 
static int unit_edges [12][2]
 References to vertices of unit edge. More...
 
static int unit_faces [6][4]
 References to vertices of unit face. More...
 
static double unit_face_normals [6][3]
 References to normals of unit face. More...
 
static double unit_center [3] = { 0.5, 0.5, 0.5 }
 Parametric coordinate used for the center. More...
 
- Protected Attributes inherited from BasisSimple< T >
std::vector< T > nodes_
 
std::vector< std::vector< T > > derivs_
 
std::vector< std::vector
< double > > 
scalefactors_
 
std::vector< double > scalefactorse_
 

Detailed Description

template<class T>
class SCIRun::Core::Basis::HexTricubicHmtScaleFactors< T >

Class for handling of element of type hexahedron with tricubic hermitian interpolation with scale factors

Member Typedef Documentation

typedef T value_type

Constructor & Destructor Documentation

virtual ~HexTricubicHmtScaleFactors ( )
inlinevirtual

Member Function Documentation

void derivate ( const VECTOR1 &  coords,
const ElemData &  cd,
VECTOR2 &  derivs 
) const
inline

get first derivative at parametric coordinate

double get_arc_length ( const unsigned  edge,
const ElemData &  cd 
) const
inline

get arc length for edge

double get_area ( const unsigned  face,
const ElemData &  cd 
) const
inline

get area

bool get_coords ( VECTOR &  coords,
const T &  value,
const ElemData &  cd 
) const
inline

get parametric coordinate for value within the element

void get_derivate_weights ( const VECTOR &  coords,
double *  w 
) const
inline
double get_volume ( const ElemData &  cd) const
inline

get volume

void get_weights ( const VECTOR &  coords,
double *  w 
) const
inline
T interpolate ( const VECTOR &  coords,
const ElemData &  cd 
) const
inline

get value at parametric coordinate

void io ( Piostream str)
virtual
static int polynomial_order ( )
inlinestatic
const std::string type_name ( int  n = -1)
static

The documentation for this class was generated from the following file: