]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Define the scalar product the other way around.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 6 Nov 2007 03:33:06 +0000 (03:33 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 6 Nov 2007 03:33:06 +0000 (03:33 +0000)
git-svn-id: https://svn.dealii.org/trunk@15452 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/lac/include/lac/vector.h
deal.II/lac/include/lac/vector.templates.h
tests/bits/complex_vector_23.cc
tests/bits/complex_vector_23/cmp/generic

index bdb2931f9bdbfa235b99e82c5860e4116b7f2d1d..476982d2e3e69b8de06825b6d598d4f0a81c2e14 100644 (file)
@@ -406,7 +406,7 @@ class Vector : public Subscriptor
                                      * For complex vectors, the
                                      * scalar product is implemented
                                      * as $\left<v,w\right>=\sum_i
-                                     * \bar{v_i} w_i$.
+                                     * v_i \bar{w_i}$.
                                      */
     template <typename Number2>
     Number operator * (const Vector<Number2> &V) const;
index f2b23a267234b4b158cda077751edf505beedfcd..5fa9e5b5e8751d248828dcfbdd01beac38f43630 100644 (file)
@@ -237,7 +237,7 @@ Number Vector<Number>::operator * (const Vector<Number2>& v) const
                                   // operator*(complex<float>,complex<double>)
                                   // is not defined by default
   for (unsigned int i=0; i<vec_size; ++i)
-    sum += numbers::NumberTraits<Number>::conjugate(val[i]) * Number(v.val[i]);
+    sum += val[i] * Number(numbers::NumberTraits<Number2>::conjugate(v.val[i]));
     
   return sum;
 }
index 4c28347b292189c024c756bcdf30f086b6fdc29b..348e33f3f7e2c2904abad730309200533a3cf9e4 100644 (file)
@@ -35,7 +35,7 @@ void test (Vector<std::complex<double> > &v,
       if (i%3 == 0)
         {
           w(i) = std::complex<double> (i+1., i+2.);
-          product += 1.*i*std::complex<double> (i+1., i+2.);
+          product += 1.*i*std::conj(std::complex<double> (i+1., i+2.));
         }
     }
   
index 92bca168fbbadb16c29f37a467d723d77447c1f7..2b83286813c0e81103ae7afbd0accec67b306e7c 100644 (file)
@@ -1,3 +1,3 @@
 
-DEAL::(114444.,116127.) (114444.,-116127.) (114444.,116127.) (114444.,-116127.)
+DEAL::(114444.,-116127.) (114444.,116127.) (114444.,-116127.) (114444.,116127.)
 DEAL::OK

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.