|
Feel++
0.91.4
|
base mesh class More...
#include <meshbase.hpp>
Public Types | |
Typedefs | |
| typedef boost::tuple < size_type, size_type > | face_processor_type |
Public Member Functions | |
Constructors, destructor | |
| MeshBase () | |
| MeshBase (MeshBase const &) | |
| virtual | ~MeshBase () |
Operator overloads | |
| MeshBase & | operator= (MeshBase const &m) |
Accessors | |
| bool | isUpdatedForUse () const |
| virtual size_type | numElements () const =0 |
| virtual size_type | numFaces () const =0 |
| virtual size_type | numPoints () const =0 |
| size_type | numVertices () const |
| uint16_type | numberOfPartitions () const |
| bool | isPartitioned () const |
| Context const & | components () const |
| Context & | components () |
| virtual double | measure () const =0 |
| bool | isParametric () const |
Mutators | |
| void | setNumberOfPartitions (uint16_type n) |
| void | setNumVertices (size_type n) |
| void | setComponents (size_type components=MESH_ALL_COMPONENTS) |
| void | setParametric (bool x) |
Methods | |
| virtual void | clear () |
| virtual void | updateForUse ()=0 |
| virtual void | updateForUse (size_type components) |
| virtual void | partition (const uint16_type n_parts)=0 |
| WorldComm const & | worldComm () const |
| virtual void | setWorldComm (WorldComm const &_worldComm)=0 |
| void | setWorldCommMeshBase (WorldComm const &_worldComm) |
| mpi::communicator const & | comm () const |
Protected Member Functions | |
| void | setUpdatedForUse (bool u) |
| virtual void | renumber ()=0 |
| virtual void | updateEntitiesCoDimensionOne ()=0 |
| virtual void | updateEntitiesCoDimensionTwo ()=0 |
| virtual void | check () const =0 |
| virtual void | checkAndFixPermutation ()=0 |
base mesh class
| typedef boost::tuple<size_type, size_type> Feel::MeshBase::face_processor_type |
Tuple that contains
Reimplemented in Feel::Mesh3D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh1D< Shape >.
| Feel::MeshBase::MeshBase | ( | ) |
Default constructor
| Feel::MeshBase::MeshBase | ( | MeshBase const & | m | ) |
copy constructor
|
virtual |
destructor. make it virtual for derived classes
|
protectedpure virtual |
check mesh connectivity
|
protectedpure virtual |
check elements orientation and fix it if needed
|
virtual |
Empty all containers of the mesh. Must be redefined by derived classes.
Reimplemented in Feel::Mesh3D< Shape >, Feel::Mesh2D< Shape >, Feel::Mesh1D< Shape >, and Feel::Mesh0D< Shape >.
|
inline |
Context) that encodes the components to be updated by the mesh data structure. Referenced by setComponents().
|
inline |
Context) that encodes the components to be updated by the mesh data structure.
|
inline |
| bool Feel::MeshBase::isPartitioned | ( | ) | const |
true if mesh is partitioned, false otherwise
|
inline |
true if the mesh is ready for use, false otherwise
|
pure virtual |
|
inline |
Returns the number of partitions.
|
pure virtual |
Implemented in Feel::Mesh1D< Shape >, Feel::Mesh3D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh0D< Shape >.
|
pure virtual |
Implemented in Feel::Mesh3D< Shape >, Feel::Mesh2D< Shape >, Feel::Mesh1D< Shape >, and Feel::Mesh0D< Shape >.
|
pure virtual |
Implemented in Feel::Mesh3D< Shape >, Feel::Mesh2D< Shape >, Feel::Mesh1D< Shape >, and Feel::Mesh0D< Shape >.
|
inline |
|
pure virtual |
Call the default partitioner (currently metis_partition()).
|
protectedpure virtual |
After loading/defining a mesh, we want to have as much locality as possible (elements/faces/nodes to be contiguous). In order to do that the mesh elements/faces/nodes are renumbered. That will be then most helpful when generating the Dof table. This procedure should work also with comm().size() == 1
Implemented in Feel::Mesh3D< Shape >, Feel::Mesh2D< Shape >, Feel::Mesh1D< Shape >, and Feel::Mesh0D< Shape >.
|
inline |
set the components to be updated by updateForUse()
References components().
Referenced by updateForUse().
|
inline |
set the number of partitions
|
inline |
set the number of vertices
|
inline |
set if the mesh is parametric ( e.g. has parametric nodes )
|
inlineprotected |
set to the flag whether the mesh is updated for proper use
|
protectedpure virtual |
update the entities of co-dimension 1
|
protectedpure virtual |
update the entities of co-dimension 2
Implemented in Feel::Mesh2D< Shape >, Feel::Mesh3D< Shape >, Feel::Mesh1D< Shape >, and Feel::Mesh0D< Shape >.
|
pure virtual |
update all info for this mesh.
Referenced by updateForUse().
|
virtual |
update all info for this mesh according the components
References setComponents(), and updateForUse().
|
inline |
1.8.1