]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Further simplification of test output. Update comment.
authorkronbichler <kronbichler@0785d39b-7218-0410-832d-ea1e28bc413d>
Mon, 21 Apr 2014 08:31:31 +0000 (08:31 +0000)
committerkronbichler <kronbichler@0785d39b-7218-0410-832d-ea1e28bc413d>
Mon, 21 Apr 2014 08:31:31 +0000 (08:31 +0000)
git-svn-id: https://svn.dealii.org/trunk@32797 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/include/deal.II/base/vectorization.h
tests/base/vectorization_01.cc
tests/matrix_free/step-48b.cc
tests/matrix_free/step-48b.output

index 874f2676448b59c96bb1d114ebc2e5696555865b..a8e14d9dac4534aaa17e24bd80a4ddd5fffe77df 100644 (file)
@@ -1750,7 +1750,7 @@ DEAL_II_NAMESPACE_CLOSE
 namespace std
 {
   /**
-   * Computes the sine of a vectorized data field. The result is return as
+   * Computes the sine of a vectorized data field. The result is returned as
    * vectorized array in the form <tt>{sin(x[0]), sin(x[1]), ...,
    * sin(x[n_array_elements-1])}</tt>.
    *
@@ -1770,7 +1770,7 @@ namespace std
 
 
   /**
-   * Computes the tangent of a vectorized data field. The result is return as
+   * Computes the tangent of a vectorized data field. The result is returned as
    * vectorized array in the form <tt>{tan(x[0]), tan(x[1]), ...,
    * tan(x[n_array_elements-1])}</tt>.
    *
@@ -1789,7 +1789,7 @@ namespace std
 
 
   /**
-   * Computes the cosine of a vectorized data field. The result is return as
+   * Computes the cosine of a vectorized data field. The result is returned as
    * vectorized array in the form <tt>{cos(x[0]), cos(x[1]), ...,
    * cos(x[n_array_elements-1])}</tt>.
    *
@@ -1808,7 +1808,7 @@ namespace std
 
 
   /**
-   * Computes the exponential of a vectorized data field. The result is return
+   * Computes the exponential of a vectorized data field. The result is returned
    * as vectorized array in the form <tt>{exp(x[0]), exp(x[1]), ...,
    * exp(x[n_array_elements-1])}</tt>.
    *
@@ -1828,7 +1828,7 @@ namespace std
 
   /**
    * Computes the natural logarithm of a vectorized data field. The result is
-   * return as vectorized array in the form <tt>{log(x[0]), log(x[1]), ...,
+   * returned as vectorized array in the form <tt>{log(x[0]), log(x[1]), ...,
    * log(x[n_array_elements-1])}</tt>.
    *
    * @relates VectorizedArray
@@ -1847,7 +1847,7 @@ namespace std
 
 
   /**
-   * Computes the square root of a vectorized data field. The result is return
+   * Computes the square root of a vectorized data field. The result is returned
    * as vectorized array in the form <tt>{sqrt(x[0]), sqrt(x[1]), ...,
    * sqrt(x[n_array_elements-1])}</tt>.
    *
@@ -1865,7 +1865,7 @@ namespace std
 
   /**
    * Computes the absolute value (modulus) of a vectorized data field. The
-   * result is return as vectorized array in the form <tt>{abs(x[0]),
+   * result is returned as vectorized array in the form <tt>{abs(x[0]),
    * abs(x[1]), ..., abs(x[n_array_elements-1])}</tt>.
    *
    * @relates VectorizedArray
@@ -1882,7 +1882,7 @@ namespace std
 
   /**
    * Computes the componentwise maximum of two vectorized data fields. The
-   * result is return as vectorized array in the form <tt>{max(x[0],y[0]),
+   * result is returned as vectorized array in the form <tt>{max(x[0],y[0]),
    * max(x[1],y[1]), ...}</tt>.
    *
    * @relates VectorizedArray
@@ -1900,7 +1900,7 @@ namespace std
 
   /**
    * Computes the componentwise minimum of two vectorized data fields. The
-   * result is return as vectorized array in the form <tt>{min(x[0],y[0]),
+   * result is returned as vectorized array in the form <tt>{min(x[0],y[0]),
    * min(x[1],y[1]), ...}</tt>.
    *
    * @relates VectorizedArray
index 4d02ddaddab5efceae302cd77e8b32f6a5fa11fa..3d0fa338a1c0b7376d7446cb89cb900416950620 100644 (file)
@@ -110,9 +110,9 @@ void test ()
 
   deallog << "OK" << std::endl
           << "Sine: ";
-  e = std::sin(b);
+  e = std::sin(d);
   for (unsigned int i=0; i<n_vectors; ++i)
-    AssertThrow (std::fabs(e[i]-std::sin(b[i])) <
+    AssertThrow (std::fabs(e[i]-std::sin(d[i])) <
                  10.*std::numeric_limits<Number>::epsilon(),
                  ExcInternalError());
   deallog << "OK" << std::endl
index 1a2e35acd67557270590f5004c19cd3305de73ec..650b6affb447e3c05dfc5fe1d85b41695d49152a 100644 (file)
@@ -120,7 +120,7 @@ namespace Step48
   {
     AssertDimension (src.size(), 2);
     FEEvaluationGL<dim,fe_degree> current (data), old (data);
-    deallog << "submitted values: ";
+    deallog << "submit / sine values: ";
     for (unsigned int cell=cell_range.first; cell<cell_range.second; ++cell)
       {
         current.reinit (cell);
@@ -137,50 +137,24 @@ namespace Step48
             const VectorizedArray<double> current_value = current.get_value(q);
             const VectorizedArray<double> old_value     = old.get_value(q);
 
-            current.submit_value (2.*current_value - old_value -
-                                  delta_t_sqr * std::sin(current_value),q);
+            const VectorizedArray<double> submit_value =
+              2.*current_value - old_value - delta_t_sqr * std::sin(current_value);
+            current.submit_value (submit_value,q);
             current.submit_gradient (- delta_t_sqr *
                                      current.get_gradient(q), q);
+
+            // output first value on quadrature point for all vector
+            // components (should be stable irrespective of vectorization
+            // width)
+            if (q==0)
+              for (unsigned int v=0; v<VectorizedArray<double>::n_array_elements; ++v)
+                deallog << submit_value[v] << " " << (delta_t_sqr*std::sin(current_value))[v] << "   ";
           }
-        // output first value on quadrature point for all vector components
-        // (should be stable irrespective of vectorization width)
-        for (unsigned int v=0; v<VectorizedArray<double>::n_array_elements; ++v)
-          deallog << current.begin_values()[0][v] << " ";
 
         current.integrate (true,true);
         current.distribute_local_to_global (dst);
       }
     deallog << std::endl;
-
-    deallog << "no sine term: ";
-    // now output similar terms again but without the sine term (and do not
-    // write anything back to the solution vector)
-    for (unsigned int cell=cell_range.first; cell<cell_range.second; ++cell)
-      {
-        current.reinit (cell);
-        old.reinit (cell);
-
-        current.read_dof_values (*src[0]);
-        old.read_dof_values     (*src[1]);
-
-        current.evaluate (true, true, false);
-        old.evaluate (true, false, false);
-
-        for (unsigned int q=0; q<current.n_q_points; ++q)
-          {
-            const VectorizedArray<double> current_value = current.get_value(q);
-            const VectorizedArray<double> old_value     = old.get_value(q);
-
-            current.submit_value (2.*current_value - old_value, q);
-            current.submit_gradient (- delta_t_sqr *
-                                     current.get_gradient(q), q);
-          }
-        // output first value on quadrature point for all vector components
-        // (should be stable irrespective of vectorization width)
-        for (unsigned int v=0; v<VectorizedArray<double>::n_array_elements; ++v)
-          deallog << current.begin_values()[0][v] << " ";
-      }
-    deallog << std::endl;
   }
 
 
index 20f0dcd6e1796b1f48e918d518686412b1693d03..4643d57ba2d695471dd69aeb41eee38ffc74d34d 100644 (file)
@@ -4,11 +4,9 @@ DEAL::   Number of degrees of freedom: 289
 DEAL::   Time step size: 0.2500, finest cell: 7.500
 DEAL::
 DEAL::   Time: -10.0 , solution norm: 7.11111164   
-DEAL::submitted values: 0 0 0 0 0 0 0 0 0 0 0 0 0.569151584 0 0 0 
-DEAL::no sine term: 0 0 0 0 0 0 0 0 0 0 0 0 0.562500000 0 0 0 
+DEAL::submit / sine values: 0 0   0 0   0 0   0 0   0 0   0 0   0 0   0 0   0 0   0 0   0 0   0 0   4.04730016 -0.0473001560   0 0   0 0   0 0   
 DEAL::   Time: -9.75 , solution norm: 3.78861141   
-DEAL::submitted values: 0 0 0 0 0 0 -0.00121093741 0 0 -0.00121093741 0 0 0.222882619 -0.00121093741 -0.00121093741 0 
-DEAL::no sine term: 0 0 0 0 0 0 -0.00124999978 0 0 -0.00124999978 0 0 0.225803189 -0.00124999978 -0.00124999978 0 
+DEAL::submit / sine values: 0 0   0 0   0 0   0 0   0 0   0 0   -0.00861111050 -0.000277776814   0 0   0 0   -0.00861111050 -0.000277776814   0 0   0 0   1.58494307 0.0207685003   -0.00861111050 -0.000277776814   -0.00861111050 -0.000277776814   0 0   
 DEAL::   Time: -9.50 , solution norm: 0.869590104  
 DEAL::
 DEAL::   Performed 3 time steps.

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.