]> https://gitweb.dealii.org/ - dealii.git/commitdiff
replaced the remaining 2nd derivatives by hessians
authorGuido Kanschat <dr.guido.kanschat@gmail.com>
Tue, 11 Sep 2007 20:22:23 +0000 (20:22 +0000)
committerGuido Kanschat <dr.guido.kanschat@gmail.com>
Tue, 11 Sep 2007 20:22:23 +0000 (20:22 +0000)
git-svn-id: https://svn.dealii.org/trunk@15193 0785d39b-7218-0410-832d-ea1e28bc413d

14 files changed:
deal.II/deal.II/include/fe/fe_poly.h
deal.II/deal.II/include/fe/fe_poly.templates.h
deal.II/deal.II/include/fe/fe_system.h
deal.II/deal.II/source/fe/fe_abf.cc
deal.II/deal.II/source/fe/fe_nedelec.cc
deal.II/deal.II/source/fe/fe_poly_tensor.cc
deal.II/deal.II/source/fe/fe_raviart_thomas.cc
deal.II/deal.II/source/fe/fe_system.cc
deal.II/deal.II/source/numerics/data_out.cc
deal.II/deal.II/source/numerics/data_out_faces.cc
deal.II/deal.II/source/numerics/data_out_rotation.cc
deal.II/deal.II/source/numerics/derivative_approximation.cc
deal.II/examples/step-14/step-14.cc
deal.II/examples/step-15/step-15.cc

index dcaa39a3e72ad41d7d832c8d0a4ff610ddf7a883..78f9d1ec86879b8c93309e01eeb35803c36166c4 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 2004, 2005, 2006 by the deal.II authors
+//    Copyright (C) 2004, 2005, 2006, 2007 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -311,10 +311,10 @@ class FE_Poly : public FiniteElement<dim>
                                      * Mapping object used in
                                      * conjunction with this finite
                                      * element.  <li> if
-                                     * <tt>update_second_derivatives</tt>
+                                     * <tt>update_hessians</tt>
                                      * is set, the result will
                                      * contain
-                                     * <tt>update_second_derivatives</tt>
+                                     * <tt>update_hessians</tt>
                                      * and
                                      * <tt>update_covariant_transformation</tt>.
                                      * The rationale is the same as
index 1f9c0d586acc86a326f554679b4b3d48c38ad852..00373c32bef736f753158d5721d9bd580ad8ca7a 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 2006 by the deal.II authors
+//    Copyright (C) 2006, 2007 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -137,8 +137,8 @@ FE_Poly<POLY,dim>::update_each (const UpdateFlags flags) const
 
   if (flags & update_gradients)
     out |= update_gradients | update_covariant_transformation;
-  if (flags & update_second_derivatives)
-    out |= update_second_derivatives | update_covariant_transformation;
+  if (flags & update_hessians)
+    out |= update_hessians | update_covariant_transformation;
 
   return out;
 }
@@ -196,7 +196,7 @@ FE_Poly<POLY,dim>::get_data (const UpdateFlags      update_flags,
                                   // finite differencing is required,
                                   // then initialize some objects for
                                   // that
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     data->initialize_2nd (this, mapping, quadrature);
 
                                   // next already fill those fields
@@ -265,7 +265,7 @@ FE_Poly<POLY,dim>::fill_fe_values (const Mapping<dim>                   &mapping
     }
 
   const typename QProjector<dim>::DataSetDescriptor dsd;
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell, dsd.cell(),
                       mapping_data, fe_data, data);
 }
@@ -319,7 +319,7 @@ FE_Poly<POLY,dim>::fill_fe_face_values (const Mapping<dim>                   &ma
        }
     }
 
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell, offset, mapping_data, fe_data, data);
 }
 
@@ -373,7 +373,7 @@ FE_Poly<POLY,dim>::fill_fe_subface_values (const Mapping<dim>
        }
     }
   
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell, offset, mapping_data, fe_data, data);
 }
 
index ece2c565f39e822061f0a151852c83437d25bdd1..4a26ee1d423c5d5b338022da8eba7c7eb38c74c5 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 by the deal.II authors
+//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -941,7 +941,7 @@ class FESystem : public FiniteElement<dim>
                                          * second derivatives shall
                                          * be computed.
                                          */
-       bool compute_second_derivatives;
+       bool compute_hessians;
        
                                         /**
                                          * Gives write-access to the
index d229bef1fe8b38061dd0b40fa64027a783ea5751..9c04e55b9dbb5c223f2a74a3aa927c533dd88a51 100644 (file)
@@ -545,8 +545,8 @@ FE_ABF<dim>::update_each (const UpdateFlags flags) const
                                      | update_JxW_values;
   //TODO: Set update flags appropriately and figure out, how the second
   // derivatives for the RT elements can be computed correctly.
-  if (flags & update_second_derivatives)
-    out |= update_second_derivatives | update_contravariant_transformation;
+  if (flags & update_hessians)
+    out |= update_hessians | update_contravariant_transformation;
 
   return out;
 }
index 81f08ceeeaaf435a6c9ee6f62c68a323e0ef31ac..28b0b5cadf35a152665c21d94f2534af530c5a27 100644 (file)
@@ -904,8 +904,8 @@ FE_Nedelec<dim>::update_each (const UpdateFlags flags) const
     out |= update_values             | update_covariant_transformation;
   if (flags & update_gradients)
     out |= update_gradients          | update_covariant_transformation;
-  if (flags & update_second_derivatives)
-    out |= update_second_derivatives | update_covariant_transformation;
+  if (flags & update_hessians)
+    out |= update_hessians | update_covariant_transformation;
 
   return out;
 }
@@ -952,7 +952,7 @@ FE_Nedelec<dim>::get_data (const UpdateFlags      update_flags,
                                   // finite differencing is required,
                                   // then initialize some objects for
                                   // that
-   if (flags & update_second_derivatives)
+   if (flags & update_hessians)
      data->initialize_2nd (this, mapping, quadrature);
 
                                   // next already fill those fields
@@ -1103,7 +1103,7 @@ FE_Nedelec<dim>::fill_fe_values (const Mapping<dim>                   &mapping,
        };
     }
 
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell,
                        QProjector<dim>::DataSetDescriptor::cell(),
                        mapping_data, fe_data, data);
@@ -1253,7 +1253,7 @@ FE_Nedelec<dim>::fill_fe_face_values (const Mapping<dim>                   &mapp
        };
     }
 
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell, offset, mapping_data, fe_data, data);
 }
 
@@ -1398,7 +1398,7 @@ FE_Nedelec<dim>::fill_fe_subface_values (const Mapping<dim>                   &m
        };
     }
 
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell, offset, mapping_data, fe_data, data);
 }
 
index 0c8a1b27655ab345bacb8dbd0abc0a7fda08f8ee..96cfb3563da7bacabb82a8ce501da084fc67d30b 100644 (file)
@@ -292,7 +292,7 @@ FE_PolyTensor<POLY,dim>::get_data (const UpdateFlags      update_flags,
                                   // finite differencing is required,
                                   // then initialize some objects for
                                   // that
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     {
 //      grad_grads.resize (this->dofs_per_cell);      
       data->initialize_2nd (this, mapping, quadrature);
@@ -504,7 +504,7 @@ FE_PolyTensor<POLY,dim>::fill_fe_values (
        }
     }
   
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell,
                       typename QProjector<dim>::DataSetDescriptor().cell(),
                       mapping_data, fe_data, data);
@@ -689,7 +689,7 @@ FE_PolyTensor<POLY,dim>::fill_fe_face_values (
        }
     }
   
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell, offset, mapping_data, fe_data, data);
 }
 
@@ -872,7 +872,7 @@ FE_PolyTensor<POLY,dim>::fill_fe_subface_values (
        }
     }
   
-  if (flags & update_second_derivatives)
+  if (flags & update_hessians)
     this->compute_2nd (mapping, cell, offset, mapping_data, fe_data, data);
 }
 
@@ -935,8 +935,8 @@ FE_PolyTensor<POLY,dim>::update_each (const UpdateFlags flags) const
     out |= update_values             | update_covariant_transformation;
   if (flags & update_gradients)
     out |= update_gradients          | update_covariant_transformation;
-  if (flags & update_second_derivatives)
-    out |= update_second_derivatives | update_covariant_transformation;
+  if (flags & update_hessians)
+    out |= update_hessians | update_covariant_transformation;
 
   return out;
 }
index bc4ceb87daf354214fbfe54c32f276470cdc6ede..f4e1273981499af39182e9f55902288bd79ef1a0 100644 (file)
@@ -467,8 +467,8 @@ FE_RaviartThomas<dim>::update_each (const UpdateFlags flags) const
                                      | update_JxW_values;
   //TODO: Set update flags appropriately and figure out, how the second
   // derivatives for the RT elements can be computed correctly.
-  if (flags & update_second_derivatives)
-    out |= update_second_derivatives | update_contravariant_transformation;
+  if (flags & update_hessians)
+    out |= update_hessians | update_contravariant_transformation;
 
   return out;
 }
index 2e688344402600c35bea20c802a70e745c5dfbfb..ac3339edc13f7e027d791c2093d5bf1876b964e7 100644 (file)
@@ -564,8 +564,8 @@ FESystem<dim>::update_each (const UpdateFlags flags) const
                                   // therefore have to set the
                                   // respective flag since the base
                                   // elements don't have them
-  if (flags & update_second_derivatives)
-    out |= update_second_derivatives | update_covariant_transformation;
+  if (flags & update_hessians)
+    out |= update_hessians | update_covariant_transformation;
     
   return out;
 }
@@ -592,13 +592,13 @@ FESystem<dim>::get_data (const UpdateFlags      flags_,
                                   // finite differencing are required,
                                   // then initialize some objects for
                                   // that
-  data->compute_second_derivatives = flags & update_second_derivatives;
-  if (data->compute_second_derivatives)
+  data->compute_hessians = flags & update_hessians;
+  if (data->compute_hessians)
     {
                                       // delete
-                                      // update_second_derivatives
+                                      // update_hessians
                                       // from flags list
-      sub_flags = UpdateFlags (sub_flags ^ update_second_derivatives);
+      sub_flags = UpdateFlags (sub_flags ^ update_hessians);
       data->initialize_2nd (this, mapping, quadrature);
     }
   
@@ -619,9 +619,9 @@ FESystem<dim>::get_data (const UpdateFlags      flags_,
                                       // make sure that *we* compute
                                       // second derivatives, base
                                       // elements should not do it
-      Assert (!(base_fe_data->update_each & update_second_derivatives),
+      Assert (!(base_fe_data->update_each & update_hessians),
              ExcInternalError());
-      Assert (!(base_fe_data->update_once & update_second_derivatives),
+      Assert (!(base_fe_data->update_once & update_hessians),
              ExcInternalError());
       
                                       // The FEValuesData @p{data}
@@ -950,7 +950,7 @@ compute_fill (const Mapping<dim>                   &mapping,
                                                      // should not
                                                      // have computed
                                                      // them!
-                    Assert (!(base_flags & update_second_derivatives),
+                    Assert (!(base_flags & update_hessians),
                             ExcInternalError());
                   };
               };
@@ -980,7 +980,7 @@ compute_fill (const Mapping<dim>                   &mapping,
        }
     }
   
-  if (fe_data.compute_second_derivatives)
+  if (fe_data.compute_hessians)
     {
       unsigned int offset = 0;
       if (face_no != invalid_face_number)
index db12a05d030e00ae567042961a6b1992afc8b8e3..742bb86df8a87a1f019029fe56aed860be55b4b5 100644 (file)
@@ -613,7 +613,7 @@ void DataOut<dim,DH>::build_some_patches (Data &data)
                      if (update_flags & update_gradients)
                        this->dof_data[dataset]->get_function_gradients (fe_patch_values,
                                                                         data.patch_gradients);
-                     if (update_flags & update_second_derivatives)
+                     if (update_flags & update_hessians)
                        this->dof_data[dataset]->get_function_second_derivatives (fe_patch_values,
                                                                                  data.patch_second_derivatives);
                      postprocessor->compute_derived_quantities(data.postprocessed_values[dataset],
@@ -634,7 +634,7 @@ void DataOut<dim,DH>::build_some_patches (Data &data)
                      if (update_flags & update_gradients)
                        this->dof_data[dataset]->get_function_gradients (fe_patch_values,
                                                                         data.patch_gradients_system);
-                     if (update_flags & update_second_derivatives)
+                     if (update_flags & update_hessians)
                        this->dof_data[dataset]->get_function_second_derivatives (fe_patch_values,
                                                                                  data.patch_second_derivatives_system);
                      postprocessor->compute_derived_quantities(data.postprocessed_values[dataset],
index 20b3449f2b27bb88d14d830ae96b29f1fdbabf94..8f61572a6092ca8753d3ac06f88b848bcc22a2e5 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 by the deal.II authors
+//    Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -128,7 +128,7 @@ void DataOutFaces<dim,DH>::build_some_patches (Data &data)
                      if (update_flags & update_gradients)
                        this->dof_data[dataset]->get_function_gradients (fe_patch_values,
                                                                         data.patch_gradients);
-                     if (update_flags & update_second_derivatives)
+                     if (update_flags & update_hessians)
                        this->dof_data[dataset]->get_function_second_derivatives (fe_patch_values,
                                                                                  data.patch_second_derivatives);
                      postprocessor->compute_derived_quantities(data.postprocessed_values[dataset],
@@ -149,7 +149,7 @@ void DataOutFaces<dim,DH>::build_some_patches (Data &data)
                      if (update_flags & update_gradients)
                        this->dof_data[dataset]->get_function_gradients (fe_patch_values,
                                                                         data.patch_gradients_system);
-                     if (update_flags & update_second_derivatives)
+                     if (update_flags & update_hessians)
                        this->dof_data[dataset]->get_function_second_derivatives (fe_patch_values,
                                                                                  data.patch_second_derivatives_system);
                      postprocessor->compute_derived_quantities(data.postprocessed_values[dataset],
index 6b2059a0d5bd4fd2aeb65735acf189efea533694..137754a478983ca43eb3691236d2879418148a2d 100644 (file)
@@ -212,7 +212,7 @@ void DataOutRotation<dim,DH>::build_some_patches (Data &data)
                          if (update_flags & update_gradients)
                            this->dof_data[dataset]->get_function_gradients (fe_patch_values,
                                                                             data.patch_gradients);
-                         if (update_flags & update_second_derivatives)
+                         if (update_flags & update_hessians)
                            this->dof_data[dataset]->get_function_second_derivatives (fe_patch_values,
                                                                                      data.patch_second_derivatives);
                          postprocessor->compute_derived_quantities(data.postprocessed_values[dataset],
@@ -233,7 +233,7 @@ void DataOutRotation<dim,DH>::build_some_patches (Data &data)
                          if (update_flags & update_gradients)
                            this->dof_data[dataset]->get_function_gradients (fe_patch_values,
                                                                             data.patch_gradients_system);
-                         if (update_flags & update_second_derivatives)
+                         if (update_flags & update_hessians)
                            this->dof_data[dataset]->get_function_second_derivatives (fe_patch_values,
                                                                                      data.patch_second_derivatives_system);
                          postprocessor->compute_derived_quantities(data.postprocessed_values[dataset],
index bc170f5aa3a74dc33d042dec8576c3f54b4c458e..b18073592f820bbe8b753ce7dbff3325d9391956 100644 (file)
@@ -53,7 +53,7 @@ template <int dim>
 const UpdateFlags DerivativeApproximation::SecondDerivative<dim>::update_flags = update_gradients;
 
 template <int dim>
-const UpdateFlags DerivativeApproximation::ThirdDerivative<dim>::update_flags = update_second_derivatives;
+const UpdateFlags DerivativeApproximation::ThirdDerivative<dim>::update_flags = update_hessians;
 
 
 
index 4bd8e1a839434869a4bef16fa16b14dcf97b52b2..32b076cb8e343697eee1487034e9d1ccb5ce797c 100644 (file)
@@ -2543,7 +2543,7 @@ namespace LaplaceSolver
                  :
                  fe_values (fe, quadrature,
                             update_values             |
-                            update_second_derivatives |
+                            update_hessians |
                             update_q_points           |
                             update_JxW_values),
                  right_hand_side (&right_hand_side)
index 520133f458f0e791ddfe138c75a326955438ef6e..374ab1229add4fe538cb94f2bbb7e4d6ce19d071 100644 (file)
@@ -878,7 +878,7 @@ void MinimizationProblem<1>::refine_grid ()
   QTrapez<dim> quadrature;
   FEValues<dim> fe_values (fe, quadrature,
                            update_values   | update_gradients |
-                           update_second_derivatives |
+                           update_hessians |
                            update_q_points | update_JxW_values);
 
                                    // The error indicator formula presented in

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.