]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Put polynomial evaluation with Horner scheme to h file in order to let compilers...
authorMartin Kronbichler <kronbichler@lnm.mw.tum.de>
Sat, 30 May 2009 09:53:57 +0000 (09:53 +0000)
committerMartin Kronbichler <kronbichler@lnm.mw.tum.de>
Sat, 30 May 2009 09:53:57 +0000 (09:53 +0000)
git-svn-id: https://svn.dealii.org/trunk@18888 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/base/include/base/polynomial.h
deal.II/base/source/polynomial.cc
deal.II/base/source/tensor_product_polynomials.cc

index ce83e871c86b1471b0b48312d27ba8e3a6943532..0dfaf086c6b9c5c841d2ac68b9b266b22431a8a1 100644 (file)
@@ -562,6 +562,24 @@ namespace Polynomials
     Assert (coefficients.size()>0, ExcEmptyObject());
     return coefficients.size() - 1;
   }
+
+
+
+  template <typename number>
+  inline
+  number
+  Polynomial<number>::value (const number x) const
+  {
+    Assert (coefficients.size() > 0, ExcEmptyObject());
+    const unsigned int m=coefficients.size();
+
+                                     // Horner scheme
+    number value = coefficients.back();
+    for (int k=m-2; k>=0; --k)
+      value = value*x + coefficients[k];
+
+    return value;
+  }
 }
 DEAL_II_NAMESPACE_CLOSE
 
index 7dca20bafd38e444bc4f9cd483301ff017604d8a..a460dc75be1b13a2488bce062c81a76eec66ca68 100644 (file)
@@ -52,23 +52,6 @@ namespace Polynomials
 
 
 
-  template <typename number>
-  number
-  Polynomial<number>::value (const number x) const
-  {
-    Assert (coefficients.size() > 0, ExcEmptyObject());
-    const unsigned int m=coefficients.size();
-
-                                     // Horner scheme
-    number value = coefficients.back();
-    for (int k=m-2; k>=0; --k)
-      value = value*x + coefficients[k];
-
-    return value;
-  }
-
-
-
   template <typename number>
   void
   Polynomial<number>::value (const number         x,
index 4fee35a7b5b3c349411941b1ac3bc83f0a76c55e..0d9155fbc509f01fc85d5564ee2964ba28007200 100644 (file)
@@ -23,6 +23,7 @@ DEAL_II_NAMESPACE_OPEN
 /* ------------------- TensorProductPolynomials -------------- */
 
 template <>
+inline
 void
 TensorProductPolynomials<1>::
 compute_index (const unsigned int i,
@@ -35,6 +36,7 @@ compute_index (const unsigned int i,
 
 
 template <>
+inline
 void
 TensorProductPolynomials<2>::
 compute_index (const unsigned int i,
@@ -51,6 +53,7 @@ compute_index (const unsigned int i,
 
 
 template <>
+inline
 void
 TensorProductPolynomials<3>::
 compute_index (const unsigned int i,

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.