]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Workaround: Add compatibility instantiations
authorMatthias Maier <tamiko@43-1.org>
Mon, 28 May 2018 02:58:44 +0000 (21:58 -0500)
committerMatthias Maier <tamiko@43-1.org>
Wed, 6 Jun 2018 15:19:38 +0000 (10:19 -0500)
source/lac/affine_constraints.cc
source/lac/affine_constraints.inst.in

index aef54fb03aae10fb76009256a53af2c3a3185c87..39c51d7dbcc0e27782ca27c185d463ca10169802 100644 (file)
@@ -21,17 +21,6 @@ DEAL_II_NAMESPACE_OPEN
 
 #include "affine_constraints.inst"
 
-/*
- * FIXME: This mixed variant is needed by the multigrid - it currently only
- * supports AffineConstraints<double>. If someone has the patience to
- * templateify the 10 custom wrapper classes around AffineConstraints,
- * please go ahead, fix the multigrid classes and remove this
- * instantiation:
- */
-template void
-dealii::AffineConstraints<double>::condense<dealii::BlockVector<float>>(
-  dealii::BlockVector<float> &) const;
-
 /*
  * Note: You probably do not want to add your custom instantiation down
  * here but use affine_constraints.inst.in instead. We use the following
index 5d47c6796dc2213c84053a3f9aa207450730ac2c..ad54c969d00bb11f439b46f359775bd7f5eae0a4 100644 (file)
@@ -336,3 +336,16 @@ for (V : EXTERNAL_PARALLEL_VECTORS)
 
     template void AffineConstraints<V::value_type>::set_zero<V>(V &) const;
   }
+
+
+//
+// FIXME: These mixed variants are needed for multigrid and matrix free.
+//
+
+for (T : DEAL_II_VEC_TEMPLATES)
+  {
+    template void dealii::AffineConstraints<double>::condense<T<float>>(
+      T<float> &) const;
+    template void dealii::AffineConstraints<double>::distribute<T<float>>(
+      T<float> &) const;
+  }

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.