rheolef  6.3
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | Static Protected Attributes | Friends | List of all members
rheolef::reference_element Class Reference

reference_element - reference element More...

#include <reference_element.h>

Inheritance diagram for rheolef::reference_element:
Inheritance graph
[legend]

Public Types

typedef std::vector< int >
::size_type 
size_type
typedef size_type variant_type

Public Member Functions

 reference_element (variant_type x=max_variant)
void set_variant (variant_type x)
void set_variant (size_type n_vertex, size_type dim)
void set_name (char name)
variant_type variant () const
char name () const
size_type dimension () const
size_type size () const
size_type n_subgeo (size_type subgeo_dim) const
size_type n_edge () const
size_type n_face () const
size_type subgeo_size (size_type subgeo_dim, size_type loc_isid) const
size_type subgeo_local_vertex (size_type subgeo_dim, size_type loc_isid, size_type loc_jsidvert) const
Float side_measure (size_type loc_isid) const
void side_normal (size_type loc_isid, point_basic< Float > &hat_n) const

Static Public Member Functions

static variant_type variant (char name)
static variant_type variant (size_type n_vertex, size_type dim)
static char name (variant_type variant)
static size_type dimension (variant_type variant)
static size_type n_vertex (variant_type variant)
static size_type n_node (variant_type variant, size_type order)
static size_type n_sub_edge (variant_type variant)
static size_type n_sub_face (variant_type variant)
static size_type n_subgeo (variant_type variant, size_type subgeo_dim)
static size_type subgeo_n_node (variant_type variant, size_type order, size_type subgeo_dim, size_type loc_isid)
static size_type subgeo_local_node (variant_type variant, size_type order, size_type subgeo_dim, size_type loc_isid, size_type loc_jsidnod)
static variant_type first_variant_by_dimension (size_type dim)
static variant_type last_variant_by_dimension (size_type dim)
static size_type first_inod_by_variant (variant_type variant, size_type order, variant_type subgeo_variant)
static size_type last_inod_by_variant (variant_type variant, size_type order, variant_type subgeo_variant)
static size_type first_inod (variant_type variant, size_type order, size_type subgeo_dim)
static size_type last_inod (variant_type variant, size_type order, size_type subgeo_dim)
static void init_local_nnode_by_variant (size_type order, boost::array< size_type, reference_element::max_variant > &loc_nnod_by_variant)

Static Public Attributes

static const variant_type p = 0
static const variant_type e = 1
static const variant_type t = 2
static const variant_type q = 3
static const variant_type T = 4
static const variant_type P = 5
static const variant_type H = 6
static const variant_type max_variant = 7

Protected Attributes

variant_type _x

Static Protected Attributes

static const char _name [max_variant]
static const size_type _dimension [max_variant]
static const size_type _n_vertex [max_variant]
static const variant_type _first_variant_by_dimension [5]

Friends

Float measure (reference_element hat_K)

Detailed Description

reference_element - reference element

SYNOPSYS

The reference_element class defines all supported types of geometrical elements in one, two and three dimensions. The set of supported elements are designate by a letter

p
point (dimension 0)
e
edge (dimension 1)
t
triangle(dimension 2)
q
quadrangle(dimension 2)
T
tetrahedron(dimension 3)
P
prism(dimension 3)
H
hexaedron(dimension 3)

Definition at line 38 of file reference_element.h.

Member Typedef Documentation

Definition at line 42 of file reference_element.h.

Definition at line 45 of file reference_element.h.

Constructor & Destructor Documentation

rheolef::reference_element::reference_element ( variant_type  x = max_variant)
inline

Definition at line 58 of file reference_element.h.

Member Function Documentation

void rheolef::reference_element::set_variant ( variant_type  x)
inline

Reimplemented in rheolef::geo_element, and rheolef::tiny_element.

Definition at line 62 of file reference_element.h.

void rheolef::reference_element::set_variant ( size_type  n_vertex,
size_type  dim 
)
inline

Reimplemented in rheolef::geo_element, and rheolef::tiny_element.

Definition at line 63 of file reference_element.h.

void rheolef::reference_element::set_name ( char  name)

Reimplemented in rheolef::geo_element, and rheolef::tiny_element.

Definition at line 19 of file reference_element.cc.

variant_type rheolef::reference_element::variant ( ) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 67 of file reference_element.h.

char rheolef::reference_element::name ( ) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 68 of file reference_element.h.

size_type rheolef::reference_element::dimension ( ) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 69 of file reference_element.h.

size_type rheolef::reference_element::size ( ) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 70 of file reference_element.h.

size_type rheolef::reference_element::n_subgeo ( size_type  subgeo_dim) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 71 of file reference_element.h.

size_type rheolef::reference_element::n_edge ( ) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 72 of file reference_element.h.

size_type rheolef::reference_element::n_face ( ) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 73 of file reference_element.h.

size_type rheolef::reference_element::subgeo_size ( size_type  subgeo_dim,
size_type  loc_isid 
) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 74 of file reference_element.h.

size_type rheolef::reference_element::subgeo_local_vertex ( size_type  subgeo_dim,
size_type  loc_isid,
size_type  loc_jsidvert 
) const
inline

Reimplemented in rheolef::geo_element.

Definition at line 76 of file reference_element.h.

Float rheolef::reference_element::side_measure ( size_type  loc_isid) const

Definition at line 191 of file reference_element.cc.

void rheolef::reference_element::side_normal ( size_type  loc_isid,
point_basic< Float > &  hat_n 
) const

Definition at line 210 of file reference_element.cc.

reference_element::variant_type rheolef::reference_element::variant ( char  name)
static

Definition at line 29 of file reference_element.cc.

reference_element::variant_type rheolef::reference_element::variant ( size_type  n_vertex,
size_type  dim 
)
static

Definition at line 37 of file reference_element.cc.

static char rheolef::reference_element::name ( variant_type  variant)
inlinestatic

Definition at line 87 of file reference_element.h.

static size_type rheolef::reference_element::dimension ( variant_type  variant)
inlinestatic

Definition at line 88 of file reference_element.h.

static size_type rheolef::reference_element::n_vertex ( variant_type  variant)
inlinestatic

Definition at line 89 of file reference_element.h.

reference_element::size_type rheolef::reference_element::n_node ( variant_type  variant,
size_type  order 
)
static

Definition at line 164 of file reference_element.cc.

reference_element::size_type rheolef::reference_element::n_sub_edge ( variant_type  variant)
static

Definition at line 48 of file reference_element.cc.

reference_element::size_type rheolef::reference_element::n_sub_face ( variant_type  variant)
static

Definition at line 62 of file reference_element.cc.

reference_element::size_type rheolef::reference_element::n_subgeo ( variant_type  variant,
size_type  subgeo_dim 
)
static

Definition at line 76 of file reference_element.cc.

reference_element::size_type rheolef::reference_element::subgeo_n_node ( variant_type  variant,
size_type  order,
size_type  subgeo_dim,
size_type  loc_isid 
)
static

Definition at line 95 of file reference_element.cc.

reference_element::size_type rheolef::reference_element::subgeo_local_node ( variant_type  variant,
size_type  order,
size_type  subgeo_dim,
size_type  loc_isid,
size_type  loc_jsidnod 
)
static

Definition at line 118 of file reference_element.cc.

static variant_type rheolef::reference_element::first_variant_by_dimension ( size_type  dim)
inlinestatic

Definition at line 98 of file reference_element.h.

static variant_type rheolef::reference_element::last_variant_by_dimension ( size_type  dim)
inlinestatic

Definition at line 100 of file reference_element.h.

reference_element::size_type rheolef::reference_element::first_inod_by_variant ( variant_type  variant,
size_type  order,
variant_type  subgeo_variant 
)
static

Definition at line 142 of file reference_element.cc.

static size_type rheolef::reference_element::last_inod_by_variant ( variant_type  variant,
size_type  order,
variant_type  subgeo_variant 
)
inlinestatic

Definition at line 104 of file reference_element.h.

static size_type rheolef::reference_element::first_inod ( variant_type  variant,
size_type  order,
size_type  subgeo_dim 
)
inlinestatic

Definition at line 106 of file reference_element.h.

static size_type rheolef::reference_element::last_inod ( variant_type  variant,
size_type  order,
size_type  subgeo_dim 
)
inlinestatic

Definition at line 108 of file reference_element.h.

void rheolef::reference_element::init_local_nnode_by_variant ( size_type  order,
boost::array< size_type, reference_element::max_variant > &  loc_nnod_by_variant 
)
static

Definition at line 178 of file reference_element.cc.

Friends And Related Function Documentation

Float measure ( reference_element  hat_K)
friend

Definition at line 25 of file reference_element.cc.

Member Data Documentation

const variant_type rheolef::reference_element::p = 0
static

Definition at line 47 of file reference_element.h.

const variant_type rheolef::reference_element::e = 1
static

Definition at line 48 of file reference_element.h.

const variant_type rheolef::reference_element::t = 2
static

Definition at line 49 of file reference_element.h.

const variant_type rheolef::reference_element::q = 3
static

Definition at line 50 of file reference_element.h.

const variant_type rheolef::reference_element::T = 4
static

Definition at line 51 of file reference_element.h.

const variant_type rheolef::reference_element::P = 5
static

Definition at line 52 of file reference_element.h.

const variant_type rheolef::reference_element::H = 6
static

Definition at line 53 of file reference_element.h.

const variant_type rheolef::reference_element::max_variant = 7
static

Definition at line 54 of file reference_element.h.

const char reference_element::_name
staticprotected
Initial value:
{
'p',
'e',
't',
'q',
'T',
'P',
'H'
}

Definition at line 114 of file reference_element.h.

const reference_element::size_type reference_element::_dimension
staticprotected
Initial value:
{
0,
1,
2,
2,
3,
3,
3
}

Definition at line 115 of file reference_element.h.

const reference_element::size_type reference_element::_n_vertex
staticprotected
Initial value:
{
1,
2,
3,
4,
4,
6,
8
}

Definition at line 116 of file reference_element.h.

const reference_element::size_type reference_element::_first_variant_by_dimension
staticprotected
variant_type rheolef::reference_element::_x
protected

Definition at line 120 of file reference_element.h.


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