]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Add results of parallel computation.
authorwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 11 Aug 2005 22:15:27 +0000 (22:15 +0000)
committerwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 11 Aug 2005 22:15:27 +0000 (22:15 +0000)
git-svn-id: https://svn.dealii.org/trunk@11296 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/doc/tutorial/chapter-2.step-by-step/step-18.data/results.html

index 1b82dc880a7e6da8665f769f3187babb04fd27d4..4fae5cc422a004cbb764b2f8786657e87d1a0411 100644 (file)
@@ -199,3 +199,182 @@ by an iterative solver could have the same effect. Another typical source for
 asymmetries in adaptive computations is that only a certain fraction of cells
 is refined in each step, which may lead to asymmetric meshes even if the
 original coarse mesh was symmetric.
+</p>
+
+
+<p>
+Whether the computation is fully converged is a different matter. In order to
+see whether it is, we ran the program again with one more global refinement at
+the beginning and with the time step halved. This would have taken a very long
+time on a single machine, so we used our cluster again and ran it on 16
+processors (8 dual-processor machines) in parallel. The beginning of the output
+now looks like this:
+<code>
+<pre>
+Timestep 1 at time 0.5
+  Cycle 0:
+    Number of active cells:       29696 (by partition: 1862+1890+1866+1850+1864+1850+1858+1842+1911+1851+1911+1804+1854+1816+1839+1828)
+    Number of degrees of freedom: 113100 (by partition: 7089+7218+6978+6972+7110+6840+7119+7023+7542+7203+7068+6741+6921+6759+7464+7053)
+    Assembling system... norm of rhs is 1.05874e+10
+    Solver converged in 289 iterations.
+    Updating quadrature point data...
+  Cycle 1:
+    Number of active cells:       102097 (by partition: 6346+6478+6442+6570+6370+6483+6413+6376+6403+6195+6195+6195+6494+6571+6371+6195)
+    Number of degrees of freedom: 358875 (by partition: 22257+22161+22554+22482+21759+23361+23040+21609+22347+20937+21801+21678+24126+25149+21321+22293)
+    Assembling system... norm of rhs is 3.46364e+10
+    Solver converged in 249 iterations.
+    Updating quadrature point data...
+    Moving mesh...
+
+Timestep 2 at time 1
+    Assembling system... norm of rhs is 3.42269e+10
+    Solver converged in 248 iterations.
+    Updating quadrature point data...
+    Moving mesh...
+
+Timestep 3 at time 1.5
+    Assembling system... norm of rhs is 3.38229e+10
+    Solver converged in 247 iterations.
+    Updating quadrature point data...
+    Moving mesh...
+
+Timestep 4 at time 2
+    Assembling system... norm of rhs is 3.34247e+10
+    Solver converged in 247 iterations.
+    Updating quadrature point data...
+    Moving mesh...
+
+[...]
+
+Timestep 20 at time 10
+    Assembling system... norm of rhs is 3.2449e+10
+    Solver converged in 493 iterations.
+    Updating quadrature point data...
+    Moving mesh...
+</pre>
+</code>
+That's quite a good number of unknowns, given that we are in 3d. The output of
+this program are 16 files for each time step:
+<code>
+<pre>
+examples/step-18> ls -l solution-0001.000*
+-rw-r--r--    1 bangerth mfw       4325219 Aug 11 09:44 solution-0001.0000-000.d2
+-rw-r--r--    1 bangerth mfw       4454460 Aug 11 09:44 solution-0001.0000-001.d2
+-rw-r--r--    1 bangerth mfw       4485242 Aug 11 09:43 solution-0001.0000-002.d2
+-rw-r--r--    1 bangerth mfw       4517364 Aug 11 09:43 solution-0001.0000-003.d2
+-rw-r--r--    1 bangerth mfw       4462829 Aug 11 09:43 solution-0001.0000-004.d2
+-rw-r--r--    1 bangerth mfw       4482487 Aug 11 09:43 solution-0001.0000-005.d2
+-rw-r--r--    1 bangerth mfw       4548619 Aug 11 09:43 solution-0001.0000-006.d2
+-rw-r--r--    1 bangerth mfw       4522421 Aug 11 09:43 solution-0001.0000-007.d2
+-rw-r--r--    1 bangerth mfw       4337529 Aug 11 09:43 solution-0001.0000-008.d2
+-rw-r--r--    1 bangerth mfw       4163047 Aug 11 09:43 solution-0001.0000-009.d2
+-rw-r--r--    1 bangerth mfw       4288247 Aug 11 09:43 solution-0001.0000-010.d2
+-rw-r--r--    1 bangerth mfw       4350410 Aug 11 09:43 solution-0001.0000-011.d2
+-rw-r--r--    1 bangerth mfw       4458427 Aug 11 09:43 solution-0001.0000-012.d2
+-rw-r--r--    1 bangerth mfw       4466037 Aug 11 09:43 solution-0001.0000-013.d2
+-rw-r--r--    1 bangerth mfw       4505679 Aug 11 09:44 solution-0001.0000-014.d2
+-rw-r--r--    1 bangerth mfw       4340488 Aug 11 09:44 solution-0001.0000-015.d2
+</pre>
+</code>
+We merge and convert these 16 intermediate files into a single gmv file as
+follows: 
+<code>
+<pre>
+examples/step-18> time ../step-19/step-19 solution-0001.0000-* -x gmv -o solution-0001.0000.gmv
+
+real    0m45.929s
+user    0m41.290s
+sys     0m0.990s
+examples/step-18> ls -l solution-0001.0000.gmv
+-rw-r--r--    1 bangerth mfw      68925360 Aug 11 17:04 solution-0001.0000.gmv
+</pre>
+</code>
+
+<p>
+Doing so for all time steps, we obtain gmv files that we can visualize (albeit
+with some difficulty, due to their size gmv isn't exactly fast when plotting
+them). Here are first the mesh on which we compute as well as the partitioning
+for the 16 processors:
+</p>
+
+<table width="100%">
+  <tr width="100%">
+    <td width="49%">
+      <a href="step-18.data/parallel/solution-000mesh.png" target="_top">
+       <img src="step-18.data/parallel/solution-000mesh.png"
+       width="100%"></a>
+    </td>
+
+    <td width="49%">
+      <a href="step-18.data/parallel/solution-0002.p.png" target="_top">
+       <img src="step-18.data/parallel/solution-0002.p.png"
+       width="100%"></a> 
+    </td>
+  </tr>
+</table>
+
+<p>
+Finally, here is the same output as we have shown before for the much smaller
+sequential case:
+</p>
+
+<table width="100%">
+  <tr width="100%">
+    <td width="33%">
+      <a href="step-18.data/parallel/solution-0002.s.png" target="_top">
+       <img src="step-18.data/parallel/solution-0002.s.png"
+       width="100%"></a>
+       Time = 2
+    </td>
+
+    <td width="33%">
+      <a href="step-18.data/parallel/solution-0005.s.png" target="_top">
+       <img src="step-18.data/parallel/solution-0005.s.png"
+       width="100%"></a> 
+       Time = 5
+    </td>
+
+    <td width="33%">
+      <a href="step-18.data/parallel/solution-0007.s.png" target="_top">
+       <img src="step-18.data/parallel/solution-0007.s.png"
+       width="100%"></a>
+       Time = 7
+    </td>
+  </tr>
+
+  <tr width="100%">
+    <td width="33%">
+      <a href="step-18.data/parallel/solution-0008.s.png" target="_top">
+       <img src="step-18.data/parallel/solution-0008.s.png"
+       width="100%"></a>
+       Time = 8
+    </td>
+
+    <td width="33%">
+      <a href="step-18.data/parallel/solution-0009.s.png" target="_top">
+       <img src="step-18.data/parallel/solution-0009.s.png"
+       width="100%"></a> 
+       Time = 9
+    </td>
+
+    <td width="33%">
+      <a href="step-18.data/parallel/solution-0010.s.png" target="_top">
+       <img src="step-18.data/parallel/solution-0010.s.png"
+       width="100%"></a>
+       Time = 10
+    </td>
+  </tr>
+</table>
+
+<p>
+If one compares this with the previous run, the results are qualitatively
+similar, but quantitatively definitely different. The previous computation was
+therefore certainly not converged, though we can't say for sure anything about
+the present one. One would need an even finer computation to find out. However,
+the point may be moot: looking at the last picture in detail (click on it to
+see it in larger), it is pretty obvious that not only is the linear small
+deformation model we chose completely inadequate, but for a realistic
+simulation we would also need to make sure that the body does not intersects
+itself during deformation. Without such a formulation we cannot expect anything
+that make sense, even if it produces nice pictures!
+</p>

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.