functions has been changed, in an effort to clarify which of these contain
input information and which contain output information for these functions.
The same has been done for the corresponding functions in the Mapping
- class hierarchy.
+ class hierarchy. As part of a general overhaul, the FEValuesData class
+ has also been removed.
<br>
- (Wolfgang Bangerth, 2015/07/20)
+ (Wolfgang Bangerth, 2015/07/20-2015/08/06)
</li>
<li> Changed: The function DoFRenumbering::random() now produces different
-//TODO: Add access to mapping values to FEValuesBase
-
-/**
- * A class that contains all data vectors for FEValues, FEFaceValues, and
- * FESubfaceValues.
- *
- * This class has been extracted from FEValuesBase to encapsulate in one
- * place all of the data, independent of the functions that later
- * access this data in the public interfaces of the FEValues and related
- * classes. Consequently, this base class is protected in FEValuesBase.
- *
- * The second reason is because in FEValuesBase::reinit, we first need to
- * call Mapping::fill_fe_values() to compute mapping related data, and later
- * call FiniteElement::fill_fe_values() to compute shape function related
- * data. In the first step, Mapping::fill_fe_values() gets a pointer to
- * its own internal data structure and a pointer to the FEValuesData base
- * object of FEValuesBase, and the mapping then places the computed data
- * into the data fields that pertain to the mapping below. In the second
- * step, the finite element receives a pointer to its own internal object,
- * and to the current object, and from both of these computes the shape
- * function related information and, again, places it into the current
- * FEValuesData object.
- *
- * More information can be found on the page on
- * @ref UpdateFlagsEssay.
- *
- * @ingroup feaccess
- */
-template <int dim, int spacedim=dim>
-class FEValuesData : public internal::FEValues::MappingRelatedData<dim,spacedim>,
- public internal::FEValues::FiniteElementRelatedData<dim,spacedim>
-{
-};
-
-
/**
* FEValues, FEFaceValues and FESubfaceValues objects are interfaces to finite
* element and mapping classes on the one hand side, to cells and quadrature
* @author Wolfgang Bangerth, 1998, 2003, Guido Kanschat, 2001
*/
template <int dim, int spacedim>
-class FEValuesBase : protected FEValuesData<dim,spacedim>,
+class FEValuesBase : protected internal::FEValues::MappingRelatedData<dim,spacedim>,
+ protected internal::FEValues::FiniteElementRelatedData<dim,spacedim>,
public Subscriptor
{
public:
#if deal_II_dimension <= deal_II_space_dimension
#if (deal_II_space_dimension == DIM_A) || (deal_II_space_dimension == DIM_B)
- template class FEValuesData<deal_II_dimension,deal_II_space_dimension>;
template class FEValuesBase<deal_II_dimension,deal_II_space_dimension>;
template class FEValues<deal_II_dimension,deal_II_space_dimension>;
template class FEValuesBase<deal_II_dimension,deal_II_space_dimension>::