Feel++  0.91.4
Static Public Attributes | Protected Member Functions
Feel::Mesh3D< Shape > Class Template Reference

3D mesh class More...

#include <mesh3d.hpp>

Inheritance diagram for Feel::Mesh3D< Shape >:
Feel::VisitableBase<> Feel::MeshBase

List of all members.

- Public Types inherited from Feel::VisitableBase<> - Public Types inherited from Feel::MeshBase

Public Member Functions

Constructors, destructor
 Mesh3D ()
 Mesh3D (Mesh3D const &m)
 ~Mesh3D ()
Operator overloads
Mesh3Doperator= (Mesh3D const &m)
Accessors
bool isEmpty () const
size_type numElements () const
size_type numLocalFaces () const
size_type numLocalEdges () const
size_type numLocalVertices () const
size_type numFaces () const
size_type numEdges () const
size_type numPoints () const
element_edge_type const & localEdgeId (element_type const &e, size_type const n) const
element_edge_type const & localEdgeId (size_type const e, size_type const n) const
Methods
virtual void setWorldComm (WorldComm const &_worldComm)
virtual void clear ()
 FEELPP_DEFINE_VISITABLE ()
- Public Member Functions inherited from Feel::VisitableBase<>
virtual return_type accept (VisitorBase &)=0
 accept visitor: use S_DEFINE_VISITABLE() to redefine it
virtual return_type accept (VisitorBase *)=0
 accept visitor: use S_DEFINE_VISITABLE() to redefine it
- Public Member Functions inherited from Feel::MeshBase
 MeshBase ()
 MeshBase (MeshBase const &)
virtual ~MeshBase ()
MeshBaseoperator= (MeshBase const &m)
bool isUpdatedForUse () const
size_type numVertices () const
uint16_type numberOfPartitions () const
bool isPartitioned () const
Context const & components () const
Contextcomponents ()
virtual double measure () const =0
bool isParametric () const
void setNumberOfPartitions (uint16_type n)
void setNumVertices (size_type n)
void setComponents (size_type components=MESH_ALL_COMPONENTS)
void setParametric (bool x)
virtual void updateForUse ()=0
virtual void updateForUse (size_type components)
virtual void partition (const uint16_type n_parts)=0
WorldComm const & worldComm () const
void setWorldCommMeshBase (WorldComm const &_worldComm)
mpi::communicator const & comm () const

Static Public Attributes

static const uint16_type nDim = 3

Protected Member Functions

void renumber ()
void updateEntitiesCoDimensionTwo ()
void updateEntitiesCoDimensionOnePermutation ()
- Protected Member Functions inherited from Feel::MeshBase
void setUpdatedForUse (bool u)
virtual void updateEntitiesCoDimensionOne ()=0
virtual void check () const =0
virtual void checkAndFixPermutation ()=0

Typedefs

typedef VisitableBase::return_type return_type
typedef VisitableBase super_visitable
typedef MeshBase super
typedef Elements< Shape > super_elements
typedef
super_elements::elements_type 
elements_type
typedef
super_elements::element_type 
element_type
typedef
super_elements::element_iterator 
element_iterator
typedef
super_elements::element_const_iterator 
element_const_iterator
typedef
super_elements::update_element_neighbor_type 
update_element_neighbor_type
typedef element_type::node_type node_type
typedef
element_type::edge_permutation_type 
edge_permutation_type
typedef
element_type::face_permutation_type 
face_permutation_type
typedef Points< 3 > super_points
typedef super_points::points_type points_type
typedef super_points::point_type point_type
typedef Faces< typename
Shape::template shape
< 2 >::type, typename
super_elements::element_type > 
super_faces
typedef super_faces::faces_type faces_type
typedef super_faces::face_type face_type
typedef super_faces::face_iterator face_iterator
typedef
super_faces::face_const_iterator 
face_const_iterator
typedef super_faces::location_faces location_faces
typedef
super_faces::location_face_iterator 
location_face_iterator
typedef
super_faces::location_face_const_iterator 
location_face_const_iterator
typedef Edges< typename
Shape::template shape
< 1 >::type
super_edges
typedef super_edges::edges_type edges_type
typedef super_edges::edge_type edge_type
typedef super_edges::edge_iterator edge_iterator
typedef
super_edges::edge_const_iterator 
edge_const_iterator
typedef std::pair< size_type,
size_type
edge_pair_type
typedef Mesh3D< Shape > self_type
typedef boost::shared_ptr
< self_type
self_ptrtype
typedef super::face_processor_type face_processor_type
typedef boost::tuple
< size_type, int > 
element_edge_type
static const size_type SHAPE = Shape::Shape

Additional Inherited Members

- Static Protected Member Functions inherited from Feel::VisitableBase<>
static return_type acceptImpl (T *visited, VisitorBase *guest)

Detailed Description

template<typename Shape>
class Feel::Mesh3D< Shape >

3D mesh class

// create a 3D mesh made of simplex of order 1
Mesh3D<Simplex<3,1> > mesh;
// create a 3D mesh made of simplex of order 2
Mesh3D<Simplex<3,2> > mesh;
Author:
Christophe Prud'homme
See also:

Member Typedef Documentation

template<typename Shape >
typedef boost::tuple<size_type, int> Feel::Mesh3D< Shape >::element_edge_type

Tuple that contains

  1. the index of the edge
  1. +1 or -1 depending on the orientation
template<typename Shape >
typedef super::face_processor_type Feel::Mesh3D< Shape >::face_processor_type

Tuple that contains

  1. the index of the face
  1. the processor id the face belongs to

Reimplemented from Feel::MeshBase.


Constructor & Destructor Documentation

template<typename GEOSHAPE >
Feel::Mesh3D< GEOSHAPE >::Mesh3D ( )

default constructor

template<typename GEOSHAPE >
Feel::Mesh3D< GEOSHAPE >::Mesh3D ( Mesh3D< Shape > const &  m)

copy constructor

template<typename GEOSHAPE >
Feel::Mesh3D< GEOSHAPE >::~Mesh3D ( )

destructor


Member Function Documentation

template<typename GEOSHAPE >
void Feel::Mesh3D< GEOSHAPE >::clear ( )
virtual

clear out all data from the mesh, isEmpty() should return true after a clear()

Reimplemented from Feel::MeshBase.

References Feel::edges(), Feel::elements(), Feel::faces(), and Feel::points().

template<typename Shape >
bool Feel::Mesh3D< Shape >::isEmpty ( ) const
inline
Returns:
true if all containers are empty, false otherwise
template<typename Shape >
element_edge_type const& Feel::Mesh3D< Shape >::localEdgeId ( element_type const &  e,
size_type const  n 
) const
inline
Returns:
the edge index of the edge n in the element e
template<typename Shape >
element_edge_type const& Feel::Mesh3D< Shape >::localEdgeId ( size_type const  e,
size_type const  n 
) const
inline
Returns:
the edge index of the edge n in the element e
template<typename Shape >
size_type Feel::Mesh3D< Shape >::numEdges ( ) const
inline
Returns:
the number of edges

References Feel::edges().

template<typename Shape >
size_type Feel::Mesh3D< Shape >::numElements ( ) const
inlinevirtual
Returns:
the number of elements

Implements Feel::MeshBase.

References Feel::elements().

template<typename Shape >
size_type Feel::Mesh3D< Shape >::numFaces ( ) const
inlinevirtual
Returns:
the number of faces

Implements Feel::MeshBase.

References Feel::faces().

template<typename Shape >
size_type Feel::Mesh3D< Shape >::numLocalEdges ( ) const
inline
Returns:
the number of edges in an element
template<typename Shape >
size_type Feel::Mesh3D< Shape >::numLocalFaces ( ) const
inline
Returns:
the number of faces in an element
template<typename Shape >
size_type Feel::Mesh3D< Shape >::numLocalVertices ( ) const
inline
Returns:
the number of vertices in an element
template<typename Shape >
size_type Feel::Mesh3D< Shape >::numPoints ( ) const
inlinevirtual
Returns:
the number of points

Implements Feel::MeshBase.

References Feel::points().

template<typename Shape >
void Feel::Mesh3D< Shape >::renumber ( )
inlineprotectedvirtual

dummy implementation

See also:
Mesh

Implements Feel::MeshBase.

template<typename GEOSHAPE >
void Feel::Mesh3D< GEOSHAPE >::updateEntitiesCoDimensionOnePermutation ( )
protected

update permutation of entities of co-dimension 1

References Feel::elements(), and Feel::invalid_uint16_type_value.

template<typename GEOSHAPE >
void Feel::Mesh3D< GEOSHAPE >::updateEntitiesCoDimensionTwo ( )
protectedvirtual

update the entities of co-dimension 2

Implements Feel::MeshBase.

References Feel::edges(), Feel::elements(), and Feel::faces().