![]() |
Reference documentation for deal.II version 8.1.0
|
#include <mapping.h>
Public Member Functions | |
InternalDataBase () | |
virtual | ~InternalDataBase () |
UpdateFlags | current_update_flags () const |
bool | is_first_cell () const |
virtual void | clear_first_cell () |
virtual std::size_t | memory_consumption () const |
![]() | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
void | subscribe (const char *identifier=0) const |
void | unsubscribe (const char *identifier=0) const |
unsigned int | n_subscriptions () const |
void | list_subscribers () const |
DeclException3 (ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects.\n"<< "(Additional information: "<< arg3<< ")\n"<< "Note the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "more information on what this error means.") | |
DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier \""<< arg2<< "\" did subscribe to this object of class "<< arg1) | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Public Attributes | |
UpdateFlags | update_flags |
UpdateFlags | update_once |
UpdateFlags | update_each |
std::vector< double > | volume_elements |
std::vector< Point< spacedim > > | support_point_values |
std::vector< Tensor < 2, spacedim > > | support_point_gradients |
std::vector< Tensor < 2, spacedim > > | support_point_inverse_gradients |
Private Member Functions | |
InternalDataBase (const InternalDataBase &) | |
Private Attributes | |
bool | first_cell |
Base class for internal data of finite element and mapping objects. The internal mechanism is that upon construction of a FEValues
objects, it asks the mapping and finite element classes that are to be used to allocate memory for their own purpose in which they may store data that only needs to be computed once. For example, most finite elements will store the values of the shape functions at the quadrature points in this object, since they do not change from cell to cell and only need to be computed once. Since different FEValues
objects using different quadrature rules might access the same finite element object at the same time, it is necessary to create one such object per FEValues
object. Ownership of this object is then transferred to the FEValues
object, but a pointer to this object is passed to the finite element object every time it shall compute some data so that it has access to the precomputed values stored there.
|
private |
Copy constructor forbidden.
Mapping< dim, spacedim >::InternalDataBase::InternalDataBase | ( | ) |
Constructor. Sets UpdateFlags
to update_default
and first_cell
to true
.
|
virtual |
Virtual destructor for derived classes
Reimplemented in FiniteElement< dim, spacedim >::InternalDataBase.
UpdateFlags Mapping< dim, spacedim >::InternalDataBase::current_update_flags | ( | ) | const |
If first_cell==true
this function returns update_flags
, i.e. update_once|update_each
. If first_cell==false
it returns update_each
.
bool Mapping< dim, spacedim >::InternalDataBase::is_first_cell | ( | ) | const |
Return whether we are presently initializing data for the first cell. The value of the field this function is returning is set to true
in the constructor, and cleared by the FEValues
class after the first cell has been initialized.
This function is used to determine whether we need to use the update_once
flags for computing data, or whether we can use the update_each
flags.
|
virtual |
Set the first_cell
flag to false
. Used by the FEValues
class to indicate that we have already done the work on the first cell.
Reimplemented in FESystem< dim, spacedim >::InternalData.
|
virtual |
Return an estimate (in bytes) or the memory consumption of this object.
Reimplemented in MappingQ1< dim, spacedim >::InternalData, MappingCartesian< dim, spacedim >::InternalData, and MappingQ< dim, spacedim >::InternalData.
UpdateFlags Mapping< dim, spacedim >::InternalDataBase::update_flags |
UpdateFlags Mapping< dim, spacedim >::InternalDataBase::update_once |
UpdateFlags Mapping< dim, spacedim >::InternalDataBase::update_each |
std::vector<double> Mapping< dim, spacedim >::InternalDataBase::volume_elements |
The determinant of the Jacobian in each quadrature point. Filled if update_volume_elements.