Reference documentation for deal.II version 9.2.0
|
#include <deal.II/hp/mapping_collection.h>
Public Member Functions | |
MappingCollection ()=default | |
MappingCollection (const Mapping< dim, spacedim > &mapping) | |
MappingCollection (const MappingCollection< dim, spacedim > &mapping_collection) | |
void | push_back (const Mapping< dim, spacedim > &new_mapping) |
const Mapping< dim, spacedim > & | operator[] (const unsigned int index) const |
unsigned int | size () const |
std::size_t | memory_consumption () const |
Public Member Functions inherited from Subscriptor | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) noexcept | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
unsigned int | n_subscriptions () const |
template<typename StreamType > | |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
std::vector< std::shared_ptr< const Mapping< dim, spacedim > > > | mappings |
Additional Inherited Members | |
Static Public Member Functions inherited from Subscriptor | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
This class implements a collection of mapping objects in the same way as the hp::FECollection implements a collection of finite element classes.
It implements the concepts stated in the hp Collections module described in the doxygen documentation.
Although it is recommended to supply an appropriate mapping for each finite element kind used in a hp-computation, the MappingCollection class implements a conversion constructor from a single mapping. Therefore it is possible to offer only a single mapping to the hp::FEValues class instead of a hp::MappingCollection. This is for the convenience of the user, as many simple geometries do not require different mappings along the boundary to achieve optimal convergence rates. Hence providing a single mapping object will usually suffice. See the hp::FEValues class for the rules which mapping will be selected for a given cell.
Definition at line 56 of file mapping_collection.h.
|
default |
Default constructor. Leads to an empty collection that can later be filled using push_back().
|
explicit |
Conversion constructor. This constructor creates a MappingCollection from a single mapping. More mappings can be added with push_back(), if desired, though it would probably be clearer to add all mappings the same way.
Definition at line 27 of file mapping_collection.cc.
hp::MappingCollection< dim, spacedim >::MappingCollection | ( | const MappingCollection< dim, spacedim > & | mapping_collection | ) |
Copy constructor.
Definition at line 37 of file mapping_collection.cc.
void hp::MappingCollection< dim, spacedim >::push_back | ( | const Mapping< dim, spacedim > & | new_mapping | ) |
Add a new mapping to the MappingCollection. Generally, you will want to use the same order for mappings as for the elements of the hp::FECollection object you use. However, the same considerations as discussed with the hp::QCollection::push_back() function also apply in the current context.
This class creates a copy of the given mapping object, i.e., you can do things like push_back(MappingQ<dim>(3));
. The internal copy is later destroyed by this object upon destruction of the entire collection.
Definition at line 68 of file mapping_collection.cc.
|
inline |
Return the mapping object which was specified by the user for the active_fe_index which is provided as a parameter to this method.
index
must be between zero and the number of elements of the collection. Definition at line 165 of file mapping_collection.h.
|
inline |
Return the number of mapping objects stored in this container.
Definition at line 156 of file mapping_collection.h.
std::size_t hp::MappingCollection< dim, spacedim >::memory_consumption |
Determine an estimate for the memory consumption (in bytes) of this object.
Definition at line 59 of file mapping_collection.cc.
|
private |
The real container, which stores pointers to the different Mapping objects.
Definition at line 121 of file mapping_collection.h.