|
Feel++ 0.91.0
|
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 |
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::Mesh1D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh3D< Shape >.
| Feel::MeshBase::MeshBase | ( | ) |
Default constructor
| Feel::MeshBase::MeshBase | ( | MeshBase const & | m | ) |
copy constructor
| Feel::MeshBase::~MeshBase | ( | ) | [virtual] |
destructor. make it virtual for derived classes
| virtual void Feel::MeshBase::check | ( | ) | const [protected, pure virtual] |
check mesh connectivity
| virtual void Feel::MeshBase::checkAndFixPermutation | ( | ) | [protected, pure virtual] |
check elements orientation and fix it if needed
| void Feel::MeshBase::clear | ( | ) | [virtual] |
Empty all containers of the mesh. Must be redefined by derived classes.
Reimplemented in Feel::Mesh1D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh3D< Shape >.
| Context const& Feel::MeshBase::components | ( | ) | const [inline] |
Context) that encodes the components to be updated by the mesh data structure. Referenced by setComponents().
| Context& Feel::MeshBase::components | ( | ) | [inline] |
Context) that encodes the components to be updated by the mesh data structure. | bool Feel::MeshBase::isParametric | ( | ) | const [inline] |
| bool Feel::MeshBase::isPartitioned | ( | ) | const |
true if mesh is partitioned, false otherwise | bool Feel::MeshBase::isUpdatedForUse | ( | ) | const [inline] |
true if the mesh is ready for use, false otherwise | virtual double Feel::MeshBase::measure | ( | ) | const [pure virtual] |
| uint16_type Feel::MeshBase::numberOfPartitions | ( | ) | const [inline] |
Returns the number of partitions.
| virtual size_type Feel::MeshBase::numElements | ( | ) | const [pure virtual] |
Implemented in Feel::Mesh1D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh3D< Shape >.
| virtual size_type Feel::MeshBase::numFaces | ( | ) | const [pure virtual] |
Implemented in Feel::Mesh1D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh3D< Shape >.
| virtual size_type Feel::MeshBase::numPoints | ( | ) | const [pure virtual] |
Implemented in Feel::Mesh1D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh3D< Shape >.
| size_type Feel::MeshBase::numVertices | ( | ) | const [inline] |
| virtual void Feel::MeshBase::partition | ( | const uint16_type | n_parts | ) | [pure virtual] |
Call the default partitioner (currently metis_partition()).
| virtual void Feel::MeshBase::renumber | ( | ) | [protected, pure 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::Mesh1D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh3D< Shape >.
| void Feel::MeshBase::setComponents | ( | size_type | components = MESH_ALL_COMPONENTS | ) | [inline] |
set the components to be updated by updateForUse()
References components().
Referenced by updateForUse().
| void Feel::MeshBase::setNumberOfPartitions | ( | uint16_type | n | ) | [inline] |
set the number of partitions
| void Feel::MeshBase::setNumVertices | ( | size_type | n | ) | [inline] |
set the number of vertices
| void Feel::MeshBase::setParametric | ( | bool | x | ) | [inline] |
set if the mesh is parametric ( e.g. has parametric nodes )
| void Feel::MeshBase::setUpdatedForUse | ( | bool | u | ) | [inline, protected] |
set to the flag whether the mesh is updated for proper use
| virtual void Feel::MeshBase::updateEntitiesCoDimensionOne | ( | ) | [protected, pure virtual] |
update the entities of co-dimension 1
| virtual void Feel::MeshBase::updateEntitiesCoDimensionTwo | ( | ) | [protected, pure virtual] |
update the entities of co-dimension 2
Implemented in Feel::Mesh1D< Shape >, Feel::Mesh2D< Shape >, and Feel::Mesh3D< Shape >.
| virtual void Feel::MeshBase::updateForUse | ( | ) | [pure virtual] |
update all info for this mesh.
Referenced by updateForUse().
| void Feel::MeshBase::updateForUse | ( | size_type | components | ) | [virtual] |
update all info for this mesh according the components
References setComponents(), and updateForUse().
1.7.4