Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
reference_element

Detailed Description

see the reference_element page for the full documentation

Definition at line 66 of file reference_element.h.

+ Inheritance diagram for reference_element:

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_vertex () const
 
size_type n_side () const
 
size_type n_edge () const
 
size_type n_face () const
 
size_type n_subgeo_by_variant (size_type subgeo_variant) const
 
size_type n_subgeo (size_type subgeo_dim) const
 
reference_element subgeo (size_type subgeo_dim, size_type loc_isid) const
 
reference_element side (size_type loc_isid) 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
 
size_type local_subgeo_index2index_by_variant (size_type subgeo_variant, size_type i) const
 
const point_basic< Float > & vertex (size_type iloc) 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, std::array< size_type, reference_element::max_variant > &loc_nnod_by_variant)
 
static size_type n_subgeo_by_variant (size_type variant, size_type subgeo_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
 
static const size_type max_side_by_variant = 6
 

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_subgeo_by_variant [max_variant][max_variant]
 
static const size_type _n_vertex [max_variant]
 
static const variant_type _first_variant_by_dimension [5]
 

Member Typedef Documentation

◆ size_type

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

Definition at line 71 of file reference_element.h.

◆ variant_type

Definition at line 72 of file reference_element.h.

Constructor & Destructor Documentation

◆ reference_element()

Definition at line 88 of file reference_element.h.

Member Function Documentation

◆ set_variant() [1/2]

void set_variant ( variant_type  x)

Definition at line 93 of file reference_element.h.

◆ set_variant() [2/2]

void set_variant ( size_type  n_vertex,
size_type  dim 
)

Definition at line 94 of file reference_element.h.

◆ set_name()

void set_name ( char  name)

Definition at line 59 of file reference_element.cc.

◆ variant() [1/3]

variant_type variant ( ) const

Definition at line 99 of file reference_element.h.

◆ name() [1/2]

char name ( ) const

Definition at line 100 of file reference_element.h.

◆ dimension() [1/2]

size_type dimension ( ) const

Definition at line 101 of file reference_element.h.

◆ size()

size_type size ( ) const

Definition at line 102 of file reference_element.h.

◆ n_vertex() [1/2]

size_type n_vertex ( ) const

Definition at line 103 of file reference_element.h.

◆ n_side()

size_type n_side ( ) const

Definition at line 104 of file reference_element.h.

◆ n_edge()

size_type n_edge ( ) const

Definition at line 105 of file reference_element.h.

◆ n_face()

size_type n_face ( ) const

Definition at line 106 of file reference_element.h.

◆ n_subgeo_by_variant() [1/2]

size_type n_subgeo_by_variant ( size_type  subgeo_variant) const

Definition at line 107 of file reference_element.h.

◆ n_subgeo() [1/2]

size_type n_subgeo ( size_type  subgeo_dim) const

Definition at line 110 of file reference_element.h.

◆ subgeo()

reference_element subgeo ( size_type  subgeo_dim,
size_type  loc_isid 
) const

Definition at line 111 of file reference_element.h.

◆ side()

reference_element side ( size_type  loc_isid) const

Definition at line 119 of file reference_element.h.

◆ subgeo_size()

size_type subgeo_size ( size_type  subgeo_dim,
size_type  loc_isid 
) const

Definition at line 120 of file reference_element.h.

◆ subgeo_local_vertex()

size_type subgeo_local_vertex ( size_type  subgeo_dim,
size_type  loc_isid,
size_type  loc_jsidvert 
) const

Definition at line 122 of file reference_element.h.

◆ local_subgeo_index2index_by_variant()

size_type local_subgeo_index2index_by_variant ( size_type  subgeo_variant,
size_type  i 
) const

Definition at line 124 of file reference_element.h.

◆ vertex()

const point_basic< Float > & vertex ( size_type  iloc) const

Definition at line 251 of file reference_element.cc.

◆ side_measure()

Float side_measure ( size_type  loc_isid) const

Definition at line 213 of file reference_element.cc.

◆ side_normal()

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

Definition at line 232 of file reference_element.cc.

◆ variant() [2/3]

reference_element::variant_type variant ( char  name)
static

Definition at line 69 of file reference_element.cc.

◆ variant() [3/3]

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

Definition at line 74 of file reference_element.cc.

◆ name() [2/2]

static char name ( variant_type  variant)
static

Definition at line 137 of file reference_element.h.

◆ dimension() [2/2]

static size_type dimension ( variant_type  variant)
static

Definition at line 138 of file reference_element.h.

◆ n_vertex() [2/2]

static size_type n_vertex ( variant_type  variant)
static

Definition at line 139 of file reference_element.h.

◆ n_node()

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

Definition at line 201 of file reference_element.cc.

◆ n_sub_edge()

reference_element::size_type n_sub_edge ( variant_type  variant)
static

Definition at line 85 of file reference_element.cc.

◆ n_sub_face()

reference_element::size_type n_sub_face ( variant_type  variant)
static

Definition at line 99 of file reference_element.cc.

◆ n_subgeo() [2/2]

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

Definition at line 113 of file reference_element.cc.

◆ subgeo_n_node()

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

Definition at line 132 of file reference_element.cc.

◆ subgeo_local_node()

reference_element::size_type 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 155 of file reference_element.cc.

◆ first_variant_by_dimension()

static variant_type first_variant_by_dimension ( size_type  dim)
static

Definition at line 148 of file reference_element.h.

◆ last_variant_by_dimension()

static variant_type last_variant_by_dimension ( size_type  dim)
static

Definition at line 150 of file reference_element.h.

◆ first_inod_by_variant()

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

Definition at line 179 of file reference_element.cc.

◆ last_inod_by_variant()

static size_type last_inod_by_variant ( variant_type  variant,
size_type  order,
variant_type  subgeo_variant 
)
static

Definition at line 154 of file reference_element.h.

◆ first_inod()

static size_type first_inod ( variant_type  variant,
size_type  order,
size_type  subgeo_dim 
)
static

Definition at line 156 of file reference_element.h.

◆ last_inod()

static size_type last_inod ( variant_type  variant,
size_type  order,
size_type  subgeo_dim 
)
static

Definition at line 158 of file reference_element.h.

◆ init_local_nnode_by_variant()

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

Definition at line 206 of file reference_element.cc.

◆ n_subgeo_by_variant() [2/2]

static size_type n_subgeo_by_variant ( size_type  variant,
size_type  subgeo_variant 
)
static

Definition at line 162 of file reference_element.h.

Member Data Documentation

◆ p

const variant_type p = 0
static

Definition at line 75 of file reference_element.h.

◆ e

const variant_type e = 1
static

Definition at line 76 of file reference_element.h.

◆ t

const variant_type t = 2
static

Definition at line 77 of file reference_element.h.

◆ q

const variant_type q = 3
static

Definition at line 78 of file reference_element.h.

◆ T

const variant_type T = 4
static

Definition at line 79 of file reference_element.h.

◆ P

const variant_type P = 5
static

Definition at line 80 of file reference_element.h.

◆ H

const variant_type H = 6
static

Definition at line 81 of file reference_element.h.

◆ max_variant

const variant_type max_variant = 7
static

Definition at line 82 of file reference_element.h.

◆ max_side_by_variant

const size_type max_side_by_variant = 6
static

Definition at line 84 of file reference_element.h.

◆ _name

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

This file is part of Rheolef.

Copyright (C) 2000-2009 Pierre Saramito Pierr.nosp@m.e.Sa.nosp@m.ramit.nosp@m.o@im.nosp@m.ag.fr

Rheolef is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Rheolef is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Rheolef; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA


Definition at line 169 of file reference_element.h.

◆ _dimension

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

Definition at line 170 of file reference_element.h.

◆ _n_subgeo_by_variant

const reference_element::size_type _n_subgeo_by_variant
staticprotected
Initial value:
= {
{ 1, 0, 0, 0, 0, 0, 0},
{ 2, 1, 0, 0, 0, 0, 0},
{ 3, 3, 1, 0, 0, 0, 0},
{ 4, 4, 0, 1, 0, 0, 0},
{ 4, 6, 4, 0, 1, 0, 0},
{ 6, 9, 2, 3, 0, 1, 0},
{ 8, 12, 0, 6, 0, 0, 1}
}

Definition at line 171 of file reference_element.h.

◆ _n_vertex

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

Definition at line 172 of file reference_element.h.

◆ _first_variant_by_dimension

const reference_element::size_type _first_variant_by_dimension
staticprotected
Initial value:

Definition at line 173 of file reference_element.h.

◆ _x

variant_type _x
protected

Definition at line 177 of file reference_element.h.


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