Feel++
0.92.0
|
#include <geomap.hpp>
Public Types | |
typedef mpl::if_ < mpl::equal_to< mpl::int_ < PDim >, mpl::int_< NDim > >, mpl::identity< GeoMap< Dim, Order, NDim, T, Entity, PP > >, typename mpl::if_ < mpl::and_ < mpl::greater_equal < mpl::int_< NDim >, mpl::int_ < 1 > >, mpl::equal_to < mpl::int_< PDim >, mpl::int_ < NDim-1 > > >, mpl::identity < typename GeoMap< NDim, Order, NDim, T, Entity, PP > ::face_gm_type >, typename mpl::if_< mpl::and_ < mpl::equal_to< mpl::int_ < NDim >, mpl::int_ < 3 > >, mpl::equal_to < mpl::int_< PDim >, mpl::int_ < NDim-2 > > >, mpl::identity < typename GeoMap< NDim, Order, NDim, T, Entity, PP > ::edge_gm_type > , mpl::identity< boost::none_t > >::type >::type >::type::type | gm_type |
typedef boost::shared_ptr < gm_type > | gm_ptrtype |
typedef gm_type::value_type | value_type |
typedef gm_type::precompute_ptrtype | precompute_ptrtype |
typedef Context< contextv, ElementType > | gmc_type |
typedef boost::shared_ptr < gmc_type > | gmc_ptrtype |
typedef node_t_type | normal_type |
typedef ublas::vector < normal_type > | normals_type |
typedef normals_type::const_iterator | normal_const_iterator |
typedef node_t_type | tangent_type |
typedef ublas::vector < tangent_type > | tangents_type |
typedef tangents_type::const_iterator | tangent_const_iterator |
typedef ElementType | element_type |
typedef element_type::permutation_type | permutation_type |
Public Member Functions | |
Context (gm_ptrtype __gm, element_type const &__e, precompute_ptrtype const &__pc) | |
Context (gm_ptrtype __gm, element_type const &__e, std::vector< std::map< permutation_type, precompute_ptrtype > > &__pc, uint16_type __f) | |
Context (gmc_ptrtype &p) | |
gmc_ptrtype | clone () |
void | update (element_type const &__e, uint16_type __f) |
void | update (element_type const &__e, precompute_ptrtype const &__pc) |
void | update (element_type const &__e) |
Accessors | |
gm_ptrtype const & | geometricMapping () const |
uint16_type | N () const |
uint16_type | P () const |
element_type const & | element () const |
element_type const & | element_c () const |
uint16_type | nPoints () const |
matrix_node_t_type const & | xRefs () const |
ublas::matrix_column < matrix_node_t_type const > | xRef (int q) const |
matrix_type const & | xReal () const |
ublas::matrix_column < matrix_type const > | xReal (int q) const |
value_type | J (int q) const |
matrix_type const & | G () const |
matrix_type const & | B (int i) const |
value_type | B (int c1, int c2, int q) const |
matrix_type const & | K (int i) const |
value_type | K (int c1, int c2, int q) const |
matrix_type const & | B (int, mpl::bool_< true >) const |
matrix_type const & | B (int i, mpl::bool_< false >) const |
boost::multi_array< value_type, 4 > const & | B3 () const |
node_t_type | barycenterRef () const |
node_t_type | barycenterReal () const |
bool | isOnConvexSurface () const |
node_t_type const & | refNormal (int) const |
value_type | normalNorm (int q) const |
node_t_type const & | normal () const |
ublas::matrix_column < matrix_node_t_type const > | normal (int q) const |
node_t_type const & | unitNormal () const |
node_t_type | unitNormal (int q) const |
value_type const & | unitNormal (int n, int q) const |
node_t_type const & | tangent () const |
node_t_type | tangent (int q) const |
value_type const & | unitTangent (int n, int q) const |
size_type | id () const |
uint16_type | faceId () const |
bool | elementIsAFace () const |
Marker1 | marker () const |
Marker2 | marker2 () const |
Marker2 | marker3 () const |
size_type | id1 () const |
uint16_type | idIn1 () const |
size_type | id2 () const |
uint16_type | idIn2 () const |
value_type | radiusEstimate () const |
value_type | h () const |
value_type | hFace () const |
value_type | meas () const |
value_type | measurePointElementNeighbors () const |
value_type | measFace () const |
permutation_type | permutation () const |
precompute_ptrtype const & | pc () const |
std::vector< std::map < permutation_type, precompute_ptrtype > > const & | pcFaces () const |
Mutators | |
void | setPc (precompute_ptrtype const &__pc) |
Static Public Attributes | |
static const size_type | contextv = context_v |
static const size_type | context = context_v |
static const uint16_type | PDim = ElementType::nDim |
static const uint16_type | NDim = ElementType::nRealDim |
static const uint16_type | nDim = NDim |
static const fem::transformation_type | trans = geometric_mapping_type::trans |
static const bool | is_linear = ( trans == fem::LINEAR ) |
static const bool | condition = ( ( PDim==NDim )||( ( NDim>=1 )&&( PDim==NDim-1 ) ) ) |
Context for the geometric mapping depend on a node in the reference element
matrix_type const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::B | ( | int | i | ) | const [inline] |
Get the inverse of the transformation at the i
-th point
i | the index of point where the pseudo-inverse is requested |
boost::multi_array<value_type,4> const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::B3 | ( | ) | const [inline] |
the tensor of rank 4 for the transformation of 2nd order derivatives from the reference element to the real element. The tensor has the shape .
node_t_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::barycenterReal | ( | ) | const [inline] |
node_t_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::barycenterRef | ( | ) | const [inline] |
gmc_ptrtype Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::clone | ( | ) | [inline] |
clone this context
element_type const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::element | ( | ) | const [inline] |
bool Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::elementIsAFace | ( | ) | const [inline] |
References Feel::invalid_uint16_type_value.
matrix_type const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::G | ( | ) | const [inline] |
gm_ptrtype const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::geometricMapping | ( | ) | const [inline] |
value_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::h | ( | ) | const [inline] |
value_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::hFace | ( | ) | const [inline] |
Get max length of the edge of the face of the element
size_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::id | ( | ) | const [inline] |
get the id of the element
size_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::id1 | ( | ) | const [inline] |
get the id of the first element containing the element
size_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::id2 | ( | ) | const [inline] |
get the id of the second element containing the element
uint16_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::idIn1 | ( | ) | const [inline] |
get the local id of the element in the first element containing the element
uint16_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::idIn2 | ( | ) | const [inline] |
get the local id of the element in the second element containing the element
bool Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::isOnConvexSurface | ( | ) | const [inline] |
tell whether the point is on the surface of the convex
References Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::xReal(), and Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::xRef().
value_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::J | ( | int | q | ) | const [inline] |
Get the jacobian of the transformation at the q
-th point
q | index of the point where the jacobian is requested |
Marker1 Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::marker | ( | ) | const [inline] |
get the marker of the element
Marker2 Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::marker2 | ( | ) | const [inline] |
get the marker2 of the element
Marker2 Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::marker3 | ( | ) | const [inline] |
get the marker3 of the element
uint16_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::N | ( | ) | const [inline] |
node_t_type const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::normal | ( | ) | const [inline] |
get the normal of the real element
ublas::matrix_column<matrix_node_t_type const> Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::normal | ( | int | q | ) | const [inline] |
normal getter
q | the index of the normal to be returned |
q
-th normal value_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::normalNorm | ( | int | q | ) | const [inline] |
get the norm_2 of normal of the real element
uint16_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::P | ( | ) | const [inline] |
precompute_ptrtype const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::pc | ( | ) | const [inline] |
std::vector<std::map<permutation_type, precompute_ptrtype> > const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::pcFaces | ( | ) | const [inline] |
permutation_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::permutation | ( | ) | const [inline] |
value_type Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::radiusEstimate | ( | ) | const [inline] |
get an estimate of the radius of the current element
void Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::setPc | ( | precompute_ptrtype const & | __pc | ) | [inline] |
set some precomputed data on the reference element
node_t_type const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::unitNormal | ( | ) | const [inline] |
get the unit normal of the real element
void Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::update | ( | element_type const & | __e, |
uint16_type | __f | ||
) | [inline] |
update information on this context
compute where
is the matrix representing the geometric nodes nDof x dim
compute where
is the matrix representing the geometric nodes nDof x dim
void Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::update | ( | element_type const & | __e | ) | [inline] |
update information on this context
compute where
is the matrix representing the geometric nodes nDof x dim
compute where
is the matrix representing the geometric nodes nDof x dim
References Feel::invalid_uint16_type_value.
matrix_type const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::xReal | ( | ) | const [inline] |
Referenced by Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::isOnConvexSurface().
ublas::matrix_column<matrix_type const> Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::xReal | ( | int | q | ) | const [inline] |
ublas::matrix_column<matrix_node_t_type const> Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::xRef | ( | int | q | ) | const [inline] |
Referenced by Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::isOnConvexSurface().
matrix_node_t_type const& Feel::GeoMap< Dim, Order, RealDim, T, Entity, PP >::Context< context_v, ElementType >::xRefs | ( | ) | const [inline] |