]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Cowardly instantiate some specialised functions in FETools for REAL_SERIAL_VECTORS...
authoryoung <young@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 27 Mar 2014 09:29:39 +0000 (09:29 +0000)
committeryoung <young@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 27 Mar 2014 09:29:39 +0000 (09:29 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_petscscalar_complex@32700 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/source/fe/fe_tools_interpolate.cc
deal.II/source/fe/fe_tools_interpolate.inst.in
deal.II/source/numerics/vector_tools_interpolate.inst.in

index ba2b9ed384d0e9f7a6b61fb5a0064da99c704960..1171212f0d793265a2beef2806c1923c92132447 100644 (file)
@@ -715,20 +715,17 @@ namespace FETools
     const unsigned int n1 = dof1.get_fe().dofs_per_cell;
     const unsigned int n2 = dof2.get_fe().dofs_per_cell;
 
-    Vector<double> u1_local(n1); // <- Vector<std::complex>
-    Vector<double> u2_local(n2); // <- Vector<std::complex>
+    Vector<double> u1_local(n1);
+    Vector<double> u2_local(n2);
     std::vector<types::global_dof_index> dofs(n2);
 
-    FullMatrix<double> matrix(n2,n1); // ?
+    FullMatrix<double> matrix(n2,n1);
     get_projection_matrix(dof1.get_fe(), dof2.get_fe(), matrix);
 
 
     while (cell2 != end)
       {
-
-       // @whattodo Some of the problems in petsc_vector_base.h are instantiated here.
-        // cell1->get_dof_values(u1, u1_local); // <- complaint line 655
-       Assert ((false), ExcMessage ("This function is corrupt: @whattodo"));
+       cell1->get_dof_values(u1, u1_local);
 
         matrix.vmult(u2_local, u1_local);
         cell2->get_dof_indices(dofs);
index d71b9d340a66a32e55d53e6bf3c41df04f68961b..aa2a0d5cca0907f95c7cb77f6a4199953ab706ae 100644 (file)
@@ -64,12 +64,12 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension :  SPACE_DIMENSIONS
 
 
 
-for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension :  SPACE_DIMENSIONS; VEC : SERIAL_VECTORS)
+// TODO[TY]: allow these for COMPLEX_SERIAL_VECTORS where applicable
+for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension :  SPACE_DIMENSIONS; VEC : REAL_SERIAL_VECTORS)
   {
     namespace FETools
       \{
 #if deal_II_dimension == deal_II_space_dimension
-#ifndef PETSC_USE_COMPLEX
      template
        void back_interpolate<deal_II_dimension>
        (const DoFHandler<deal_II_dimension> &, const VEC &,
@@ -90,7 +90,6 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension :  SPACE_DIMENSIONS
         const VEC &,
         const DoFHandler<deal_II_dimension> &, const ConstraintMatrix &,
         VEC &);
-#endif  
       template
        void project_dg<deal_II_dimension>
        (const DoFHandler<deal_II_dimension> &, const VEC &,
index 00bb3370eec9b768ee4801da73eaf1cf1d41055c..afda91acf38fa6d135c55bb46d291b3b1ea869b4 100644 (file)
@@ -38,6 +38,8 @@ for (VEC : REAL_SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS; deal_II_space_d
   }
 
 
+
+// TODO[TY]: allow instantiation for COMPLEX_SERIAL_VECTORS and std::complex 
 for (VEC : REAL_SERIAL_VECTORS ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension :  SPACE_DIMENSIONS; NUMBER : double)
   {
 #if deal_II_dimension <= deal_II_space_dimension

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.