]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Mark a member as const.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Sun, 18 Aug 2013 03:23:21 +0000 (03:23 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Sun, 18 Aug 2013 03:23:21 +0000 (03:23 +0000)
git-svn-id: https://svn.dealii.org/trunk@30333 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/include/deal.II/fe/fe_system.h
deal.II/source/fe/fe_system.cc

index 083a167da22d12d603c1929db7e3730517da3752..0705632bacafc5d3818edb9e6f1921312e52ae22 100644 (file)
@@ -846,9 +846,11 @@ private:
   public:
     /**
      * Constructor. Is called by the @p get_data function. Sets the size of
-     * the @p base_fe_datas vector to @p n_base_elements.
+     * the @p base_fe_datas vector to @p n_base_elements and initializes
+     * the compute_hessians field.
      */
-    InternalData (const unsigned int n_base_elements);
+    InternalData (const unsigned int n_base_elements,
+                  const bool         compute_hessians);
 
     /**
      * Destructor. Deletes all @p InternalDatas whose pointers are stored by
@@ -859,7 +861,7 @@ private:
     /**
      * Flag indicating whether second derivatives shall be computed.
      */
-    bool compute_hessians;
+    const bool compute_hessians;
 
     /**
      * Gives write-access to the pointer to a @p InternalData of the @p
index 3df96eddb335b7abf70cdcce6590de806e332ca5..2b5e504a5e0091aa56c9d686287f9a545c9432ac 100644 (file)
@@ -46,7 +46,10 @@ namespace
 
 
 template <int dim, int spacedim>
-FESystem<dim,spacedim>::InternalData::InternalData(const unsigned int n_base_elements):
+FESystem<dim,spacedim>::InternalData::InternalData(const unsigned int n_base_elements,
+                                                   const bool         compute_hessians)
+:
+  compute_hessians (compute_hessians),
   base_fe_datas(n_base_elements),
   base_fe_values_datas(n_base_elements)
 {}
@@ -839,7 +842,8 @@ FESystem<dim,spacedim>::get_data (const UpdateFlags      flags_,
                                   const Quadrature<dim> &quadrature) const
 {
   UpdateFlags flags = flags_;
-  InternalData *data = new InternalData(this->n_base_elements());
+  InternalData *data = new InternalData(this->n_base_elements(),
+                                        flags & update_hessians);
 
   data->update_once = update_once (flags);
   data->update_each = update_each (flags);
@@ -850,7 +854,6 @@ FESystem<dim,spacedim>::get_data (const UpdateFlags      flags_,
   // finite differencing are required,
   // then initialize some objects for
   // that
-  data->compute_hessians = flags & update_hessians;
   if (data->compute_hessians)
     {
       // delete
@@ -926,14 +929,14 @@ FESystem<dim,spacedim>::get_face_data (
   const Quadrature<dim-1> &quadrature) const
 {
   UpdateFlags flags = flags_;
-  InternalData *data = new InternalData(this->n_base_elements());
+  InternalData *data = new InternalData(this->n_base_elements(),
+                                        flags & update_hessians);
 
   data->update_once = update_once (flags);
   data->update_each = update_each (flags);
   flags = data->update_once | data->update_each;
 
   UpdateFlags sub_flags = flags;
-  data->compute_hessians = flags & update_hessians;
   if (data->compute_hessians)
     {
       sub_flags = UpdateFlags (sub_flags ^ update_hessians);
@@ -978,14 +981,14 @@ FESystem<dim,spacedim>::get_subface_data (
   const Quadrature<dim-1> &quadrature) const
 {
   UpdateFlags flags = flags_;
-  InternalData *data = new InternalData(this->n_base_elements());
+  InternalData *data = new InternalData(this->n_base_elements(),
+                                        flags & update_hessians);
 
   data->update_once = update_once (flags);
   data->update_each = update_each (flags);
   flags = data->update_once | data->update_each;
 
   UpdateFlags sub_flags = flags;
-  data->compute_hessians = flags & update_hessians;
   if (data->compute_hessians)
     {
       sub_flags = UpdateFlags (sub_flags ^ update_hessians);

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.