tupdate documentation - sphere - GPU-based 3D discrete element method algorithm… | |
git clone git://src.adamsgaard.dk/sphere | |
Log | |
Files | |
Refs | |
LICENSE | |
--- | |
commit 81d7b44047babc963125026004031b612e6de13d | |
parent 0d5bba5c16a5ad5a76f908a2f082722e3d869c34 | |
Author: Anders Damsgaard <[email protected]> | |
Date: Thu, 7 Sep 2017 17:25:14 -0700 | |
update documentation | |
Diffstat: | |
M doc/html/.buildinfo | 2 +- | |
M doc/html/_sources/introduction.txt | 13 +++++-------- | |
M doc/html/cfd.html | 196 ++++++++++++++++-------------… | |
M doc/html/dem.html | 86 +++++++++++++++--------------- | |
M doc/html/genindex.html | 10 +++++----- | |
M doc/html/index.html | 10 +++++----- | |
M doc/html/introduction.html | 28 +++++++++++++--------------- | |
M doc/html/objects.inv | 0 | |
M doc/html/py-modindex.html | 10 +++++----- | |
M doc/html/python_api.html | 22 ++++++++++++++++------ | |
M doc/html/search.html | 10 +++++----- | |
M doc/html/searchindex.js | 4 ++-- | |
M doc/html/sphere_internals.html | 14 +++++++------- | |
M doc/pdf/sphere.pdf | 0 | |
M doc/sphinx/conf.py | 9 ++++++--- | |
M doc/sphinx/introduction.rst | 13 +++++-------- | |
M src/main.cpp | 4 ++-- | |
17 files changed, 218 insertions(+), 213 deletions(-) | |
--- | |
diff --git a/doc/html/.buildinfo b/doc/html/.buildinfo | |
t@@ -1,4 +1,4 @@ | |
# Sphinx build info version 1 | |
# This file hashes the configuration used when building these files. When it i… | |
-config: fe70a33065653dc9f13fbefebe7ac2f6 | |
+config: f6a3bc901e2eb5ac86d94b7ac7732d4c | |
tags: 645f666f9bcd5a90fca523b33c5a78b7 | |
diff --git a/doc/html/_sources/introduction.txt b/doc/html/_sources/introductio… | |
t@@ -132,9 +132,11 @@ from the root directory:: | |
$ cmake . && make | |
-NOTE: If your system does not have a GCC compiler (e.g. GCC-5 for CUDA 8) | |
-compatible with the installed CUDA version, try using ``clang-3.8`` instead:: | |
+NOTE: If your system does not have a GCC compiler compatible with the installed | |
+CUDA version (e.g. GCC-5 for CUDA 8), you will see errors at the linker stage.… | |
+In that case, try using ``clang-3.8`` as the C and C++ compiler instead:: | |
+ $ rm -rf CMakeCache.txt CMakeFiles/ | |
$ export CC=$(which clang-3.8) && export CXX=$(which clang++-3.8) && cmake . … | |
After a successfull installation, the ``sphere`` executable will be located | |
t@@ -157,10 +159,6 @@ The output should look similar to this: | |
.. program-output:: ../../sphere --version | |
-The build can be verified by running a number of automated tests:: | |
- | |
- $ make test | |
- | |
The documentation can be read in the `reStructuredText | |
<http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html>`_-format … | |
the ``doc/sphinx/`` folder, or in the HTML or PDF formats in the folders | |
t@@ -193,10 +191,9 @@ After compiling the ``sphere`` binary, the procedure of a… | |
a simulation is typically arranged in the following order: | |
* Setup of particle assemblage, physical properties and conditions using the | |
- Python API. | |
+ Python API (``python/sphere.py``). | |
* Execution of ``sphere`` software, which simulates the particle behavior as… | |
function of time, as a result of the conditions initially specified in the | |
input file. | |
* Inspection, analysis, interpretation and visualization of ``sphere`` output | |
in Python, and/or scene rendering using the built-in ray tracer. | |
- | |
diff --git a/doc/html/cfd.html b/doc/html/cfd.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>Fluid simulation and particle-fluid interaction — sphere 1.00… | |
+ <title>Fluid simulation and particle-fluid interaction — sphere 2.15… | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -25,7 +25,7 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /> | |
<link rel="next" title="Python API" href="python_api.html" /> | |
<link rel="prev" title="Discrete element method" href="dem.html" /> | |
</head> | |
t@@ -45,7 +45,7 @@ | |
<li class="right" > | |
<a href="dem.html" title="Discrete element method" | |
accesskey="P">previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -68,31 +68,31 @@ solution procedure and the numerical implementation.</p> | |
<p>Following the outline presented by <a class="reference external" href="http… | |
continuity equation for an incompressible fluid material is given by:</p> | |
<div class="math"> | |
-<p><img src="_images/math/341e857d6da62b73593a73dea371b22a955fd8e9.png" alt="\… | |
+<p><img src="_images/math/12f7f7910a11a5fc522425b33139287524c6e643.png" alt="\… | |
</div><p>and the momentum equation:</p> | |
<div class="math"> | |
-<p><img src="_images/math/f4c62b9c99051d7d2ca2b222af4b3394d02e1b1d.png" alt="\… | |
+<p><img src="_images/math/8b081782b6d73a048e968995b8605086e2c9ff1f.png" alt="\… | |
+ \rho (\boldsymbol{v} \cdot \nabla \boldsymbol{v}) | |
= \nabla \cdot \boldsymbol{\sigma} | |
- \boldsymbol{f}^i | |
+ \rho \boldsymbol{g}"/></p> | |
-</div><p>Here, <img class="math" src="_images/math/c8e734bf3818506e254ebfa3504… | |
-fluid density, <img class="math" src="_images/math/b4104067dcc504da8eada069712… | |
-<img class="math" src="_images/math/3ac346ec0a0efeed60827b2d73c5776cf4605902.p… | |
-<img class="math" src="_images/math/af2f4149a102bb8a3d74e9afbfd0d21b4c2f7084.p… | |
+</div><p>Here, <img class="math" src="_images/math/e7b48cd405b36440e40f970237c… | |
+fluid density, <img class="math" src="_images/math/2c6c8b6b1866df63a964f3c153a… | |
+<img class="math" src="_images/math/af5ed4f2edd188dadef68b3626d9fe7328f44848.p… | |
+<img class="math" src="_images/math/2be557ceeacba6f01feedb2ed907af87442104a1.p… | |
Newtonian fluids, the Cauchy stress is given by:</p> | |
<div class="math"> | |
-<p><img src="_images/math/9cb510f5a23b8a2cf167578e3197615a3cab7510.png" alt="\… | |
-</div><p><img class="math" src="_images/math/3eca8557203e86160952e1c0f735f7417… | |
-tensor, and <img class="math" src="_images/math/e29be0a3b86507644c82abbc0adfcb… | |
+<p><img src="_images/math/778cdde6b1b06e6e1e0c059db34e1821a0744b5b.png" alt="\… | |
+</div><p><img class="math" src="_images/math/27d463da4622be5b3ef1d4176ced7d7a3… | |
+tensor, and <img class="math" src="_images/math/ecff587acb289da44784794a8cbe92… | |
by:</p> | |
<div class="math"> | |
-<p><img src="_images/math/2ac5fed54f92fbc94d2fefb2aa5f17a1e326282e.png" alt="\… | |
+<p><img src="_images/math/048aa5b140cc86095a635258ba222f4ce562c46c.png" alt="\… | |
\mu_f \nabla \boldsymbol{v} | |
+ \mu_f (\nabla \boldsymbol{v})^T"/></p> | |
</div><p>By using the following vector identities:</p> | |
<div class="math"> | |
-<p><img src="_images/math/ffe6c17031ff1e2333c5bdc57773967dda2bebcc.png" alt="\… | |
+<p><img src="_images/math/54c6ba63db4b565c0d31fd9e64caae2e0990706b.png" alt="\… | |
\nabla \cdot (\nabla \boldsymbol{v}) = \nabla^2 \boldsymbol{v} | |
t@@ -101,29 +101,29 @@ by:</p> | |
</div><p>the deviatoric component of the Cauchy stress tensor simplifies to the | |
following, assuming that spatial variations in the viscosity can be neglected:… | |
<div class="math"> | |
-<p><img src="_images/math/f220cc08054c66b15757b7073edbbfe33c2736e6.png" alt="=… | |
+<p><img src="_images/math/3b48976b9058ec32db3d413cfccaede0cd1bf31b.png" alt="=… | |
+ \mu_f \nabla^2 \boldsymbol{v}"/></p> | |
</div><p>Since we are dealing with fluid flow in a porous medium, additional t… | |
introduced to the equations for conservation of mass and momentum. In the | |
following, the equations are derived for the first spatial component. The | |
solution for the other components is trivial.</p> | |
<p>The porosity value (in the saturated porous medium the volumetric fraction … | |
-the fluid phase) denoted <img class="math" src="_images/math/10e009bdb83f96c5f… | |
+the fluid phase) denoted <img class="math" src="_images/math/c2f31c22645274c37… | |
momentum equations. The continuity equation becomes:</p> | |
<div class="math"> | |
-<p><img src="_images/math/6875433152b8a1a1624c131527286ababd8a8462.png" alt="\… | |
+<p><img src="_images/math/ccd454c154f50b005e2c673771bf6f7fc20dcdcd.png" alt="\… | |
+ \nabla \cdot (\phi \boldsymbol{v}) = 0"/></p> | |
-</div><p>For the <img class="math" src="_images/math/188c175aac0a8a9c224993367… | |
-with a body force <img class="math" src="_images/math/ce4f41d90f3fea6e5313ad3c… | |
+</div><p>For the <img class="math" src="_images/math/a59f68a4202623bb859a7093f… | |
+with a body force <img class="math" src="_images/math/0d2439f09c0757d8e087ec31… | |
<div class="math"> | |
-<p><img src="_images/math/60290a944b15183b06237a1483946560e640e1bf.png" alt="\… | |
+<p><img src="_images/math/94cb90a2611b5dcea79f236933ff4f759fddbe71.png" alt="\… | |
= \frac{1}{\rho} \left[ \nabla \cdot (\phi \boldsymbol{\sigma}) \right]_x | |
- \frac{1}{\rho} f^i_x | |
+ \phi g"/></p> | |
</div><p>In the Eulerian formulation, an advection term is added, and the Cauc… | |
tensor is represented as isotropic and deviatoric components individually:</p> | |
<div class="math"> | |
-<p><img src="_images/math/b991196699db1cde269ad006f427d8168fcfd679.png" alt="\… | |
+<p><img src="_images/math/30db4313208df84c2ad59bb33fb8d7cda1ea18ac.png" alt="\… | |
+ \boldsymbol{v} \cdot \nabla (\phi v_x) | |
= \frac{1}{\rho} \left[ \nabla \cdot (-\phi p \boldsymbol{I}) | |
+ \phi \boldsymbol{\tau}) \right]_x | |
t@@ -132,7 +132,7 @@ tensor is represented as isotropic and deviatoric componen… | |
</div><p>Using vector identities to rewrite the advection term, and expanding … | |
stress tensor term:</p> | |
<div class="math"> | |
-<p><img src="_images/math/a85779399f71d0d2d7fd373c5c5f2b572cf3bfd7.png" alt="\… | |
+<p><img src="_images/math/dfc197cc1f3569837c89d6fd4eda57f135c1941a.png" alt="\… | |
+ \nabla \cdot (\phi v_x \boldsymbol{v}) | |
- \phi v_x (\nabla \cdot \boldsymbol{v}) | |
= \frac{1}{\rho} \left[ -\nabla \phi p \right]_x | |
t@@ -141,24 +141,24 @@ stress tensor term:</p> | |
+ \phi g_x"/></p> | |
</div><p>Spatial variations in the porosity are neglected,</p> | |
<div class="math"> | |
-<p><img src="_images/math/249fc7f1e5fa5aa23b21d1fdf32ed10f0fcef400.png" alt="\… | |
+<p><img src="_images/math/f986f0b44e081477adec302df83930cdd31e5a42.png" alt="\… | |
</div><p>and the pressure is attributed to the fluid phase alone (model B in Z… | |
2007 and Zhou et al. 2010). The divergence of fluid velocities is defined to be | |
zero:</p> | |
<div class="math"> | |
-<p><img src="_images/math/96df96ab11be34dbe17cb0837626b7cc2772013e.png" alt="\… | |
+<p><img src="_images/math/bb89d2c54178c6063bbddbc2ef5cc575a6ad20d6.png" alt="\… | |
</div><p>With these assumptions, the momentum equation simplifies to:</p> | |
<div class="math"> | |
-<p><img src="_images/math/e58aec0a9dc37c78b74f5c34874ff852d8839f43.png" alt="\… | |
+<p><img src="_images/math/0c167e8743c59960431a47f16ee7244f2a13028f.png" alt="\… | |
+ \nabla \cdot (\phi v_x \boldsymbol{v}) | |
= -\frac{1}{\rho} \frac{\partial p}{\partial x} | |
+ \frac{1}{\rho} \left[ \nabla \cdot (\phi \boldsymbol{\tau}) \right]_x | |
- \frac{1}{\rho} f^i_x | |
+ \phi g_x"/></p> | |
-</div><p>The remaining part of the advection term is for the <img class="math"… | |
+</div><p>The remaining part of the advection term is for the <img class="math"… | |
found as:</p> | |
<div class="math"> | |
-<p><img src="_images/math/8bd85c906906e83dd3471973969959e831d271d7.png" alt="\… | |
+<p><img src="_images/math/145ab6190ce7c0c86da9eda1e2fac70f23b3a5fd.png" alt="\… | |
\left[ | |
\frac{\partial}{\partial x}, | |
\frac{\partial}{\partial y}, | |
t@@ -175,10 +175,10 @@ found as:</p> | |
\frac{\partial (\phi v_x v_x)}{\partial x} + | |
\frac{\partial (\phi v_x v_y)}{\partial y} + | |
\frac{\partial (\phi v_x v_z)}{\partial z}"/></p> | |
-</div><p>The deviatoric stress tensor is in this case symmetrical, i.e. <img c… | |
+</div><p>The deviatoric stress tensor is in this case symmetrical, i.e. <img c… | |
= \tau_{ji}"/>, and is found by:</p> | |
<div class="math"> | |
-<p><img src="_images/math/66dc70aa131124c6f87d7f2cbb96350d8b0397b9.png" alt="\… | |
+<p><img src="_images/math/0e293ff1406db52958abdce04458871a8a4c966f.png" alt="\… | |
= \frac{1}{\rho} | |
\left[ | |
\left[ | |
t@@ -217,17 +217,17 @@ found as:</p> | |
+ \frac{\partial (\phi \tau_{xz})}{\partial z} | |
\right)"/></p> | |
</div><p>In a linear viscous fluid, the stress and strain rate | |
-(<img class="math" src="_images/math/1ee5b5b2fe535711338cab9fde51ba86968186e2.… | |
-viscosity parameter <img class="math" src="_images/math/a1a25b9ae9dc5911e30e15… | |
+(<img class="math" src="_images/math/bdf1f5aad7dd65124011111a75c2b8b6c3252f0f.… | |
+viscosity parameter <img class="math" src="_images/math/d24e1c9504f0a7305bbf80… | |
<div class="math"> | |
-<p><img src="_images/math/2133ec642b2fa2a0bdc0612dc9080df18f64da53.png" alt="\… | |
+<p><img src="_images/math/f08a1f9bfdf41e9a3f9852b0aeae4a16500bb993.png" alt="\… | |
= \mu_f \left( | |
\frac{\partial v_i}{\partial x_j} + \frac{\partial v_j}{\partial x_i} | |
\right)"/></p> | |
</div><p>With this relationship, the deviatoric stress tensor components can be | |
calculated as:</p> | |
<div class="math"> | |
-<p><img src="_images/math/4d94b19a340ed5d6cfc3285e3c0678be914c3834.png" alt="\… | |
+<p><img src="_images/math/5fe663ae852d5c4d779d8d7827ca30a28852936a.png" alt="\… | |
\tau_{yy} = 2 \mu_f \frac{\partial v_y}{\partial y} \qquad | |
\tau_{zz} = 2 \mu_f \frac{\partial v_z}{\partial z} | |
t@@ -239,26 +239,26 @@ calculated as:</p> | |
\tau_{yz} = \mu_f \left( | |
\frac{\partial v_y}{\partial z} + \frac{\partial v_z}{\partial y} \right)"/></… | |
-</div><p>where <img class="math" src="_images/math/a1a25b9ae9dc5911e30e15d5ca2… | |
+</div><p>where <img class="math" src="_images/math/d24e1c9504f0a7305bbf80f4d75… | |
fluid rheology assumes identical bulk and shear viscosities. The derivation of | |
the equations for the other spatial components is trivial.</p> | |
</div> | |
<div class="section" id="porosity-estimation"> | |
<h2>Porosity estimation<a class="headerlink" href="#porosity-estimation" title… | |
<p>The solid volume in each fluid cell is determined by the ratio of the | |
-a cell-centered spherical cell volume (<img class="math" src="_images/math/db9… | |
-particle volumes (<img class="math" src="_images/math/754decd655584a824e0979fc… | |
-<img class="math" src="_images/math/13e4be57cf47de5302fc2e1746d965a6ee0f332c.p… | |
+a cell-centered spherical cell volume (<img class="math" src="_images/math/f99… | |
+particle volumes (<img class="math" src="_images/math/5bd22601fda700e6f36ba7e9… | |
+<img class="math" src="_images/math/5e8dd49b345fe138a2dacb54663b30b69335b6e6.p… | |
the fluid cell width. The nearby particles are characterized by position | |
-<img class="math" src="_images/math/ec1ce56da06483e62a9456229761ff166b345ed2.p… | |
+<img class="math" src="_images/math/1165d3ed99998c0f1ab1f9f25b42757182923a8b.p… | |
as:</p> | |
<div class="math"> | |
-<p><img src="_images/math/68f7c3ca449a28047e11af58f55b159b3156685c.png" alt="d… | |
+<p><img src="_images/math/3c39d664a1a005333c2e2e6088465ca5aabbc861.png" alt="d… | |
</div><p>The common volume of the two intersecting spheres is zero if the volu… | |
intersecting, lens shaped if they are intersecting, and spherical if the | |
particle is fully contained by the spherical cell volume:</p> | |
<div class="math"> | |
-<p><img src="_images/math/2b8b39498e0fa8ab6324f088a2330d47ef18cbd5.png" alt="V… | |
+<p><img src="_images/math/53e472051fcf13e3695e33c0f473e8d2c64f6ca7.png" alt="V… | |
\begin{cases} | |
0 & \textit{if } R_i + r_j \leq d_{ij} \\ | |
\frac{1}{12d_{ij}} \left[ \pi (R_i + r_j - d_{ij})^2 | |
t@@ -268,7 +268,7 @@ particle is fully contained by the spherical cell volume:<… | |
\end{cases}"/></p> | |
</div><p>Using this method, the cell porosity values are continuous through ti… | |
particles enter and exit the cell volume. The rate of porosity change | |
-(<img class="math" src="_images/math/de27eb4f973d27763dc4d176bf2453607ecaae42.… | |
+(<img class="math" src="_images/math/778cd9f6a1fa43976de0f124e625d935cf4c5f43.… | |
by considering the previous and current porosity.</p> | |
</div> | |
<div class="section" id="particle-fluid-interaction"> | |
t@@ -280,53 +280,53 @@ semi-empirical relationships. The drag force scales line… | |
difference in velocity between the fluid and particle phase. On the base of | |
Newton’s third law, the resulting drag force is applied with opposite si… | |
the particle and fluid.</p> | |
-<p>For fluid cells with porosities (<img class="math" src="_images/math/10e009… | |
+<p>For fluid cells with porosities (<img class="math" src="_images/math/c2f31c… | |
force is based on the Ergun (1952) equation:</p> | |
<div class="math"> | |
-<p><img src="_images/math/c65c93ecc36954688972785ecbae82a6d7a14a3a.png" alt="\… | |
+<p><img src="_images/math/86705dc922462e20080973641e4bcf0246476b94.png" alt="\… | |
150 \frac{\mu_f (1-\phi)^2}{\phi\bar{d}^2} | |
+ 1.75 \frac{(1-\phi)\rho_f | |
||\boldsymbol{v}_f - \bar{\boldsymbol{v}}_p||}{\bar{d}} | |
\right) | |
(\boldsymbol{v}_f - \bar{\boldsymbol{v}}_p)"/></p> | |
-</div><p>here, <img class="math" src="_images/math/082bced08237667a772227c2e3e… | |
-<img class="math" src="_images/math/22b6d9dab340bfe13993da20589e4720449fe391.p… | |
-<img class="math" src="_images/math/5b7072008fcf4dedaeed4d537fe5c808adedb826.p… | |
+</div><p>here, <img class="math" src="_images/math/22474828ed1ac7525699de27914… | |
+<img class="math" src="_images/math/35a936dcbe9d44868273ba50e463cc18afa0f108.p… | |
+<img class="math" src="_images/math/ee125b2b5874be1ce504888dd7d7fa42b65e9261.p… | |
particles in contact with the previously mentioned cell-centered sphere for | |
porosity estimation contribute to the average particle velocity and diameter in | |
the fluid cell.</p> | |
<p>If the porosity is greater than 0.8, the cell-averaged drag force | |
-(<img class="math" src="_images/math/fa8a7b2fb896adf1c9f17077664691e511aeb8e5.… | |
+(<img class="math" src="_images/math/7dcc7d011290597e0833cc160b66996c5d9d4595.… | |
which considers the fluid flow situation:</p> | |
<div class="math"> | |
-<p><img src="_images/math/0949063a26c6869766d571d13e61cf78f3a38c06.png" alt="\… | |
+<p><img src="_images/math/75a974365e0604c0e8675dc2543166a1216a324e.png" alt="\… | |
\frac{3}{4} | |
\frac{C_d (1-\phi) \phi^{-2.65} \mu_f \rho_f | |
||\boldsymbol{v}_f - \bar{\boldsymbol{v}}_p||}{\bar{d}} | |
\right) | |
(\boldsymbol{v}_f - \bar{\boldsymbol{v}}_p)"/></p> | |
-</div><p>The drag coefficient <img class="math" src="_images/math/1beccd9a659c… | |
-Reynolds number <img class="math" src="_images/math/0e0f0c7e69e0f315aed6d1762a… | |
+</div><p>The drag coefficient <img class="math" src="_images/math/15746e47c01e… | |
+Reynolds number <img class="math" src="_images/math/e7d45090e3dbe0db821c4e5fdf… | |
<div class="math"> | |
-<p><img src="_images/math/e2872fb63d995fa1112c468dcb10669c69795aef.png" alt="C… | |
+<p><img src="_images/math/5962c6c4e4e193ec5e6b17320744252e30a86315.png" alt="C… | |
\begin{cases} | |
\frac{24}{Re} (1+0.15 (Re)^{0.687} & \textit{if } Re < 1,000 \\ | |
0.44 & \textit{if } Re \geq 1,000 | |
\end{cases}"/></p> | |
</div><p>where the Reynold’s number is found by:</p> | |
<div class="math"> | |
-<p><img src="_images/math/f4bf201ecead6e3486688493ab1b1e82c39d93df.png" alt="R… | |
+<p><img src="_images/math/8be75291f64c7dd21b34613d8a5346f3b9aff877.png" alt="R… | |
||\boldsymbol{v}_f - \bar{\boldsymbol{v}}_p||"/></p> | |
</div><p>The interaction force is applied to the fluid with negative sign as a | |
-contribution to the body force <img class="math" src="_images/math/ce4f41d90f3… | |
+contribution to the body force <img class="math" src="_images/math/0d2439f09c0… | |
force applied particles in the fluid cell is:</p> | |
<div class="math"> | |
-<p><img src="_images/math/c24e3d875b09e3973624f97802672222ca57c3be.png" alt="\… | |
-</div><p>where <img class="math" src="_images/math/4d3f01b8ca8bdab3543eda695ff… | |
+<p><img src="_images/math/4eefba7b01497c1c37254ba0938852a69ca402da.png" alt="\… | |
+</div><p>where <img class="math" src="_images/math/0e157574dc52c16b7aad0f26083… | |
interaction force could be expanded to include the force induced by the fluid | |
pressure gradient:</p> | |
<div class="math"> | |
-<p><img src="_images/math/f8484aaf38ecdf73f7489fe6b43dec92ae505398.png" alt="\… | |
+<p><img src="_images/math/5fc35741bb341c4a7bac2b261074cee511b162b9.png" alt="\… | |
-\nabla p + | |
\frac{\bar{\boldsymbol{f}}_d}{1-\phi} | |
\right) V_p"/></p> | |
t@@ -336,10 +336,10 @@ pressure gradient:</p> | |
<p>The partial differential terms in the previously described equations are fo… | |
using finite central differences. Modifying the operator splitting methodology | |
presented by Langtangen et al. (2002), the predicted velocity | |
-<img class="math" src="_images/math/f5d499efbd23360f6e9229bdccf14e0951954730.p… | |
-<img class="math" src="_images/math/5b4271afe7fc7c0ee84172e0ad19b82caf450c00.p… | |
+<img class="math" src="_images/math/8615f3b3cbbe1dc55cb6b255dad751d458a4ed3c.p… | |
+<img class="math" src="_images/math/ec002955bdf95ee9869878fbad4f80fc98539359.p… | |
<div class="math"> | |
-<p><img src="_images/math/4414da5fcbe9d66f08400308688cad041ca9dd9c.png" alt="\… | |
+<p><img src="_images/math/3f8cfba42aa84819f05cca10369f3913e4833b5a.png" alt="\… | |
+ \nabla \cdot (\phi v_x \boldsymbol{v}) | |
= - \frac{1}{\rho} \frac{\Delta p}{\Delta x} | |
+ \frac{1}{\rho} \left[ \nabla \cdot (\phi \boldsymbol{\tau}) \right]_x | |
t@@ -355,10 +355,10 @@ presented by Langtangen et al. (2002), the predicted ve… | |
+ \frac{1}{\rho} \left[ \nabla \cdot (\phi \boldsymbol{\tau}) \right]_x | |
- \frac{1}{\rho} f^i_x | |
+ \phi g_x"/></p> | |
-</div><p>We want to isolate <img class="math" src="_images/math/eee8ed92791a9c… | |
+</div><p>We want to isolate <img class="math" src="_images/math/154f421588a532… | |
the new velocity.</p> | |
<div class="math"> | |
-<p><img src="_images/math/609c6937a183637c7356d1ee9e2800015d73a5f4.png" alt="\… | |
+<p><img src="_images/math/f8e4fccaabfa73731975fa62731bb79fed02f428.png" alt="\… | |
= - \frac{1}{\rho} \frac{\Delta p}{\Delta x} | |
+ \frac{1}{\rho} \left[ \nabla \cdot (\phi \boldsymbol{\tau}) \right]_x | |
- \frac{1}{\rho} f^i_x | |
t@@ -374,13 +374,13 @@ the new velocity.</p> | |
+ \Delta t g_x | |
- v_x \frac{\Delta \phi}{\phi} | |
- \nabla \cdot (\phi v_x \boldsymbol{v}) \frac{\Delta t}{\phi}"/></p> | |
-</div><p>The term <img class="math" src="_images/math/8ce03f78ed945f2ef3dac87c… | |
-in the range <img class="math" src="_images/math/30d3be82eb9bf820400a3dc3e46e8… | |
+</div><p>The term <img class="math" src="_images/math/410a9d0df9c135dd73b269cb… | |
+in the range <img class="math" src="_images/math/b00c7b17d75d91818f2f906056232… | |
values in the solution procedure (Langtangen et al. 2002). A value of 0 | |
corresponds to <a class="reference external" href="https://en.wikipedia.org/wi… | |
in <a class="reference external" href="http://www.ams.org/journals/mcom/1968-2… | |
<div class="math"> | |
-<p><img src="_images/math/7ac8e5caca3e02a9a9b6c9576ed9bd5effddb2fb.png" alt="v… | |
+<p><img src="_images/math/30bcc3939e4e8f039a0879219ae7d4488c349831.png" alt="v… | |
v_x^* = v_x^t | |
- \frac{\beta}{\rho} \frac{\Delta p^t}{\Delta x} \frac{\Delta t}{\phi^t} | |
t@@ -390,22 +390,22 @@ v_x^* = v_x^t | |
+ \Delta t g_x | |
- v^t_x \frac{\Delta \phi}{\phi^t} | |
- \nabla \cdot (\phi^t v_x^t \boldsymbol{v}^t) \frac{\Delta t}{\phi^t}"/></p> | |
-</div><p>Here, <img class="math" src="_images/math/98a432864561550105d4de621bc… | |
-(<img class="math" src="_images/math/e6eadc1093d6e4f5a41f86b8301c0d7559d2c609.… | |
-<img class="math" src="_images/math/e35ec9f12692dad5164f15f68fc16f969099e241.p… | |
+</div><p>Here, <img class="math" src="_images/math/05899b70d35eb61a85aaaba3aff… | |
+(<img class="math" src="_images/math/69274c46c55ea9c2723428b533616806381a2b5f.… | |
+<img class="math" src="_images/math/acbab363f98c011e1a927c8ff8b4f565421f5def.p… | |
equation:</p> | |
<div class="math"> | |
-<p><img src="_images/math/5a4c725fb6cd73a97b137a6ddc218bd457e95ab1.png" alt="\… | |
+<p><img src="_images/math/4fc3cb57fe6e8e2710c92acae1dae02dfb464b2c.png" alt="\… | |
\boldsymbol{v}^{t+\Delta t}) = 0"/></p> | |
</div><p>The divergence of a scalar and vector can be <a class="reference exte… | |
<div class="math"> | |
-<p><img src="_images/math/6b14a983094b158179fe53e0a59ebe0d53891195.png" alt="\… | |
+<p><img src="_images/math/dd69e8d47250a0448f829f2e1d42222cbda38058.png" alt="\… | |
\boldsymbol{v}^{t+\Delta t} \cdot \nabla \phi^t | |
+ \frac{\Delta \phi^t}{\Delta t} = 0"/></p> | |
</div><p>The predicted velocity is corrected using the new pressure (Langtange… | |
2002):</p> | |
<div class="math"> | |
-<p><img src="_images/math/2fcd737952b690517150c61a5981d5e810d76268.png" alt="\… | |
+<p><img src="_images/math/849751204b923a6bcea83d33614df1ce13444a71.png" alt="\… | |
%- \frac{\Delta t}{\rho} \nabla \epsilon | |
- \frac{\Delta t}{\rho \phi^t} \nabla \epsilon | |
\quad \text{where} \quad | |
t@@ -413,21 +413,21 @@ equation:</p> | |
</div><p>The above formulation of the future velocity is put into the continui… | |
equation:</p> | |
<div class="math"> | |
-<p><img src="_images/math/915ee93516c4e9e5e9df4b596291692f2b283c00.png" alt="\… | |
+<p><img src="_images/math/ba57616deddc047e5626df1a0e2e2c4f49c4e95a.png" alt="\… | |
\phi^t \nabla \cdot | |
\left( \boldsymbol{v}^* - \frac{\Delta t}{\rho \phi^t} \nabla \epsilon \right) | |
+ | |
\left( \boldsymbol{v}^* - \frac{\Delta t}{\rho \phi^t} \nabla \epsilon \right) | |
\cdot \nabla \phi^t + \frac{\Delta \phi^t}{\Delta t} = 0"/></p> | |
</div><div class="math"> | |
-<p><img src="_images/math/a1bc6e0933f817147b43d6662c901ffc0b2b4151.png" alt="\… | |
+<p><img src="_images/math/5695b27fddc4f8e8a8d1194a6e74fd72eacc1a4d.png" alt="\… | |
\phi^t \nabla \cdot | |
\boldsymbol{v}^* - \frac{\Delta t}{\rho \phi^t} \phi^t \nabla^2 \epsilon | |
+ \nabla \phi^t \cdot \boldsymbol{v}^* | |
- \nabla \phi^t \cdot \nabla \epsilon \frac{\Delta t}{\rho \phi^t} | |
+ \frac{\Delta \phi^t}{\Delta t} = 0"/></p> | |
</div><div class="math"> | |
-<p><img src="_images/math/03b863159155c1ff0a1478a3a14f9ceecb42221e.png" alt="\… | |
+<p><img src="_images/math/bf12e075e2a1ffed21117ae6c3b5a57228a35e48.png" alt="\… | |
\frac{\Delta t}{\rho} \nabla^2 \epsilon | |
= \phi^t \nabla \cdot \boldsymbol{v}^* | |
+ \nabla \phi^t \cdot \boldsymbol{v}^* | |
t@@ -435,38 +435,38 @@ equation:</p> | |
+ \frac{\Delta \phi^t}{\Delta t}"/></p> | |
</div><p>The pressure difference in time becomes a <a class="reference externa… | |
<div class="math"> | |
-<p><img src="_images/math/49cc970cd820d4022dd996e66da2e453cf4aeeda.png" alt="\… | |
+<p><img src="_images/math/af973ef88ea161ebaf13a396d18b9fd419b48392.png" alt="\… | |
\nabla^2 \epsilon | |
= \frac{\nabla \cdot \boldsymbol{v}^* \phi^t \rho}{\Delta t} | |
+ \frac{\nabla \phi^t \cdot \boldsymbol{v}^* \rho}{\Delta t} | |
- \frac{\nabla \phi^t \cdot \nabla \epsilon}{\phi^t} | |
+ \frac{\Delta \phi^t \rho}{\Delta t^2}"/></p> | |
</div><p>The right hand side of the above equation is termed the <em>forcing f… | |
-<img class="math" src="_images/math/0001d02b63ede2fe3219e05a7cd09c82ae6298b6.p… | |
+<img class="math" src="_images/math/875eb40014526135383caa89fd500ae40a835f56.p… | |
<div class="math"> | |
-<p><img src="_images/math/ba756dc27a3f5d7f8ff7d7801d8c444393c13e6a.png" alt="f… | |
+<p><img src="_images/math/6d2f443abfc2651609cd8dd745ff62139f7d51c4.png" alt="f… | |
= \frac{\nabla \cdot \boldsymbol{v}^* \phi^t \rho}{\Delta t} | |
+ \frac{\nabla \phi^t \cdot \boldsymbol{v}^* \rho}{\Delta t} | |
+ \frac{\Delta \phi^t \rho}{\Delta t^2} | |
f_2 = | |
\frac{\nabla \phi^t \cdot \nabla \epsilon}{\phi^t}"/></p> | |
-</div><p>During the <a class="reference external" href="http://www.rsmas.miami… | |
-while <img class="math" src="_images/math/ff9078c258266635e46b9767b0c7e248c865… | |
-during the first iteration, while <img class="math" src="_images/math/ff9078c2… | |
+</div><p>During the <a class="reference external" href="http://www.rsmas.miami… | |
+while <img class="math" src="_images/math/a23addf1349384bc83f74ce7c550fe98bbdc… | |
+during the first iteration, while <img class="math" src="_images/math/a23addf1… | |
of the forcing function is found as:</p> | |
<div class="math"> | |
-<p><img src="_images/math/2a6ab5768c27f4033a07a2bd556e89a39cdff6c0.png" alt="f… | |
+<p><img src="_images/math/7145387c0de7584800cc45b61520c507b70038cb.png" alt="f… | |
</div><p>Using second-order finite difference approximations of the Laplace op… | |
second-order partial derivatives, the differential equations become a system of | |
equations that is solved using <a class="reference external" href="https://en.… | |
-number of unknowns is <img class="math" src="_images/math/7774004c6a3397305cc7… | |
+number of unknowns is <img class="math" src="_images/math/046284126cf107c26a29… | |
<p>The discrete Laplacian (approximation of the Laplace operator) can be obtai… | |
by a finite-difference seven-point stencil in a three-dimensional, cubic | |
-grid with cell spacing <img class="math" src="_images/math/43e42baf6cef7e96200… | |
+grid with cell spacing <img class="math" src="_images/math/fffb1eace0724fc01f1… | |
face neighbors:</p> | |
<div class="math"> | |
-<p><img src="_images/math/ae70bc18ed864da95e96ab31ccce2f21f06d6979.png" alt="\… | |
+<p><img src="_images/math/976d1f7bdf9faa8c8c428dbcc25b1540eedaa139.png" alt="\… | |
\frac{\epsilon_{i_x-1,i_y,i_z} - 2 \epsilon_{i_x,i_y,i_z} | |
+ \epsilon_{i_x+1,i_y,i_z}}{\Delta x^2} | |
+ \frac{\epsilon_{i_x,i_y-1,i_z} - 2 \epsilon_{i_x,i_y,i_z} | |
t@@ -475,11 +475,11 @@ face neighbors:</p> | |
+ \frac{\epsilon_{i_x,i_y,i_z-1} - 2 \epsilon_{i_x,i_y,i_z} | |
+ \epsilon_{i_x,i_y,i_z+1}}{\Delta z^2} | |
\approx f_{i_x,i_y,i_z}"/></p> | |
-</div><p>Within a Jacobi iteration, the value of the unknowns (<img class="mat… | |
-used to find an updated solution estimate (<img class="math" src="_images/math… | |
+</div><p>Within a Jacobi iteration, the value of the unknowns (<img class="mat… | |
+used to find an updated solution estimate (<img class="math" src="_images/math… | |
The solution for the updated value takes the form:</p> | |
<div class="math"> | |
-<p><img src="_images/math/11c52ddf6d9f9157b67c1334ccb39807a8ee777c.png" alt="\… | |
+<p><img src="_images/math/52f1699b7bdfcd7da418c1f5639cfdfa40ed99a7.png" alt="\… | |
= \frac{-\Delta x^2 \Delta y^2 \Delta z^2 f_{i_x,i_y,i_z} | |
+ \Delta y^2 \Delta z^2 (\epsilon^n_{i_x-1,i_y,i_z} + | |
\epsilon^n_{i_x+1,i_y,i_z}) | |
t@@ -493,42 +493,42 @@ The solution for the updated value takes the form:</p> | |
</div><p>The difference between the current and updated value is termed the <e… | |
residual</em>:</p> | |
<div class="math"> | |
-<p><img src="_images/math/a6f6238418bca503a9616e884c92c10d86d34fbc.png" alt="r… | |
+<p><img src="_images/math/b843ab93a9cd31bd2f99132fe09390b3b2e69b96.png" alt="r… | |
- \epsilon^n_{i_x,i_y,i_z})^2}{(\epsilon^{n+1}_{i_x,i_y,i_z})^2}"/></p> | |
-</div><p>Note that the <img class="math" src="_images/math/19bc0073dde1bcd1a8e… | |
+</div><p>Note that the <img class="math" src="_images/math/65d19c66c148d5016c6… | |
of the residual.</p> | |
<p>The updated values are at the end of the iteration stored as the current va… | |
and the maximal value of the normalized residual is found. If this value is | |
larger than a tolerance criteria, the procedure is repeated. The iterative | |
procedure is ended if the number of iterations exceeds a defined limit.</p> | |
-<p>After the values of <img class="math" src="_images/math/19bc0073dde1bcd1a8e… | |
+<p>After the values of <img class="math" src="_images/math/65d19c66c148d5016c6… | |
pressures and velocities:</p> | |
<div class="math"> | |
-<p><img src="_images/math/e80afabbf8aabeec85a867c9c73d1f2df69743fa.png" alt="\… | |
+<p><img src="_images/math/34ae3abc95078f1fbc7d24815a091daacc0293d6.png" alt="\… | |
</div><div class="math"> | |
-<p><img src="_images/math/26446b608e4ea66bd2ac56325be3b7dad3ec4261.png" alt="\… | |
+<p><img src="_images/math/d653d13e7a5e33414bfff96b3015fb597c5355f5.png" alt="\… | |
\bar{\boldsymbol{v}}^* - \frac{\Delta t}{\rho\phi} \nabla \epsilon"/></p> | |
</div></div> | |
<div class="section" id="boundary-conditions"> | |
<h2>Boundary conditions<a class="headerlink" href="#boundary-conditions" title… | |
<p>The lateral boundaries are periodic. This cannot be changed in the current | |
version of <code class="docutils literal"><span class="pre">sphere</span></cod… | |
-parallel lateral (<img class="math" src="_images/math/188c175aac0a8a9c22499336… | |
+parallel lateral (<img class="math" src="_images/math/a59f68a4202623bb859a7093… | |
leaving through one side reappears on the opposite side.</p> | |
<p>The top and bottom boundary conditions of the fluid grid can be either: | |
prescribed pressure (Dirichlet), or prescribed velocity (Neumann). The | |
(horizontal) velocities parallel to the boundaries are free to attain other | |
values (free slip). The Dirichlet boundary condition is enforced by keeping the | |
-value of <img class="math" src="_images/math/19bc0073dde1bcd1a8e6a32b251e80cce… | |
+value of <img class="math" src="_images/math/65d19c66c148d5016c6a89d26486bf6d1… | |
<div class="math"> | |
-<p><img src="_images/math/d04d640e7e6ee0fbcd4ba0e9fc6cb43f3e536d12.png" alt="\… | |
+<p><img src="_images/math/9b35bf83c6ef9ec4ea134990256960d8e1c204d0.png" alt="\… | |
= | |
\epsilon^{n}_{i_x,i_y,i_z = 1 \vee n_z}"/></p> | |
</div><p>The Neumann boundary condition of no flow across the boundary is enfo… | |
-setting the gradient of <img class="math" src="_images/math/19bc0073dde1bcd1a8… | |
+setting the gradient of <img class="math" src="_images/math/65d19c66c148d5016c… | |
e.g.:</p> | |
<div class="math"> | |
-<p><img src="_images/math/f82d0eba51cfeff3da50b567ffa5126a8ed5b15f.png" alt="\… | |
+<p><img src="_images/math/e244cc08185d93b146a75a8fa9618b0c83b80db3.png" alt="\… | |
</div></div> | |
<div class="section" id="numerical-implementation"> | |
<h2>Numerical implementation<a class="headerlink" href="#numerical-implementat… | |
t@@ -598,7 +598,7 @@ e.g.:</p> | |
<li class="right" > | |
<a href="dem.html" title="Discrete element method" | |
>previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/dem.html b/doc/html/dem.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>Discrete element method — sphere 1.00-alpha documentation</ti… | |
+ <title>Discrete element method — sphere 2.15-beta documentation</tit… | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -25,7 +25,7 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /> | |
<link rel="next" title="Fluid simulation and particle-fluid interaction" h… | |
<link rel="prev" title="Introduction and Installation" href="introduction.… | |
</head> | |
t@@ -45,7 +45,7 @@ | |
<li class="right" > | |
<a href="introduction.html" title="Introduction and Installation" | |
accesskey="P">previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -82,10 +82,10 @@ derivative.</p> | |
<h2>Contact search<a class="headerlink" href="#contact-search" title="Permalin… | |
<p>Homogeneous cubic grid.</p> | |
<div class="math"> | |
-<p><img src="_images/math/7a1586ce67a2a8d709a374bb524625ca12559fd0.png" alt="\… | |
-</div><p>where <img class="math" src="_images/math/2ede365ad144ab396916ec60458… | |
-positional vector of a particle, and <img class="math" src="_images/math/a581f… | |
-of two particles. Negative values of <img class="math" src="_images/math/2822d… | |
+<p><img src="_images/math/9a32e316af25b770f61240f0c87520e61a20170e.png" alt="\… | |
+</div><p>where <img class="math" src="_images/math/eaa6ad49a7f78fe5a13b4866901… | |
+positional vector of a particle, and <img class="math" src="_images/math/df0de… | |
+of two particles. Negative values of <img class="math" src="_images/math/f20d5… | |
are overlapping.</p> | |
</div> | |
<div class="section" id="contact-interaction"> | |
t@@ -96,12 +96,12 @@ interaction is decomposed into normal and tangential compo… | |
contact interface orientation. The normal vector to the contact interface is | |
found by:</p> | |
<div class="math"> | |
-<p><img src="_images/math/b2f647d3f64c336d2581f03558393e1dbb92c919.png" alt="\… | |
+<p><img src="_images/math/edf49df0f6a5c2f2624ad844873e377c86bd3e50.png" alt="\… | |
\frac{\boldsymbol{x}^i - \boldsymbol{x}^j} | |
{||\boldsymbol{x}^i - \boldsymbol{x}^j||}"/></p> | |
-</div><p>The contact velocity <img class="math" src="_images/math/522c9c96bc63… | |
+</div><p>The contact velocity <img class="math" src="_images/math/18c042632208… | |
<div class="math"> | |
-<p><img src="_images/math/3e0f4950bf4cf691a83dd643eddd240f024b9806.png" alt="\… | |
+<p><img src="_images/math/dc9ba965d2e46bab75a9783346180b4e90516118.png" alt="\… | |
(\boldsymbol{x}^i - \boldsymbol{x}^j) | |
+ (r^i + \frac{\delta_n^{ij}}{2}) | |
(\boldsymbol{n}^{ij} \times \boldsymbol{\omega}^{i}) | |
t@@ -110,28 +110,28 @@ found by:</p> | |
</div><p>The contact velocity is decomposed into normal and tangential compone… | |
relative to the contact interface. The normal component is:</p> | |
<div class="math"> | |
-<p><img src="_images/math/d5f7df718c75314abef3cc68396ac19229c2b55d.png" alt="\… | |
+<p><img src="_images/math/7064634d7b87e0dd07b7dcfee5d1ab549b5964fa.png" alt="\… | |
-(\dot{\boldsymbol{\delta}}^{ij} \cdot \boldsymbol{n}^{ij})"/></p> | |
</div><p>and the tangential velocity component is found as:</p> | |
<div class="math"> | |
-<p><img src="_images/math/10eaed38fefc0732b59e674c14396ff74ea89c93.png" alt="\… | |
+<p><img src="_images/math/e9905af08d85a280a4c2996689972016f7833fef.png" alt="\… | |
\dot{\boldsymbol{\delta}}^{ij} | |
- \boldsymbol{n}^{ij} | |
(\boldsymbol{n}^{ij} \cdot \dot{\boldsymbol{\delta}}^{ij})"/></p> | |
-</div><p>where <img class="math" src="_images/math/b95363838d60e863c4cb530ba40… | |
+</div><p>where <img class="math" src="_images/math/cd1d64597c760ff1fc8d90d0d08… | |
particle. The total tangential displacement on the contact plane is found | |
incrementally:</p> | |
<div class="math"> | |
-<p><img src="_images/math/904bfd360afed4f050929e89e2cc4f7c6f673e97.png" alt="\… | |
+<p><img src="_images/math/d3e56488ee50f821a999470459f170e3b0cac3d3.png" alt="\… | |
\int_0^{t_c} | |
\dot{\boldsymbol{\delta}}^{ij}_t \Delta t"/></p> | |
-</div><p>where <img class="math" src="_images/math/42ea00932c36940fb8965e6e7f4… | |
+</div><p>where <img class="math" src="_images/math/b8cd14d20ff38e8c9e305878c37… | |
computational time step length. The tangential contact interface displacement … | |
set to zero when a contact pair no longer overlaps. At each time step, the val… | |
-of <img class="math" src="_images/math/8cfa62046b3a57f37068f027941acea702d9bd8… | |
+of <img class="math" src="_images/math/359991b87d5889ece1cd8b1c84cf17fbb37b815… | |
interface:</p> | |
<div class="math"> | |
-<p><img src="_images/math/ef61e2c4dfb9fcb1053c8d2557e00bcf3d871b80.png" alt="\… | |
+<p><img src="_images/math/71b3ac73bf6447e6cc7ea151b5664dc723a38ea9.png" alt="\… | |
- (\boldsymbol{n} | |
(\boldsymbol{n} \cdot \boldsymbol{\delta}_{t,\text{uncorrected}}^{ij})"/></p> | |
</div><p>With all the geometrical and kinetic components determined, the resul… | |
t@@ -139,17 +139,17 @@ of the particle interaction can be determined using a co… | |
features only one contact model in the normal direction to the contact; the | |
linear-elastic-viscous (<em>Hookean</em> with viscous damping, or <em>Kelvin-V… | |
contact model. The resulting force in the normal direction of the contact | |
-interface on particle <img class="math" src="_images/math/a581f053bbfa5115f42c… | |
+interface on particle <img class="math" src="_images/math/df0deb143e5ac127f00b… | |
<div class="math"> | |
-<p><img src="_images/math/7d72e011d7f06b5df7ff7decf324f701eae33c3a.png" alt="\… | |
+<p><img src="_images/math/2b331ff6c55b9e20fb12706828da440a9ef5b20c.png" alt="\… | |
-k_n \delta_n^{ij} -\gamma_n \dot{\delta_n}^{ij} | |
\right) \boldsymbol{n}^{ij}"/></p> | |
-</div><p>The parameter <img class="math" src="_images/math/66a1d8738af51528641… | |
-contact interface, and <img class="math" src="_images/math/3640b174f15a44d33ad… | |
+</div><p>The parameter <img class="math" src="_images/math/e8082d4f9b7dfa49370… | |
+contact interface, and <img class="math" src="_images/math/ae2c9cf2d489e787ac1… | |
viscosity, also in the normal direction. The loss of energy in this interaction | |
-due to the viscous component is for particle <img class="math" src="_images/ma… | |
+due to the viscous component is for particle <img class="math" src="_images/ma… | |
<div class="math"> | |
-<p><img src="_images/math/4305b4408a39583be7a127c3039d65ff0cd8c954.png" alt="\… | |
+<p><img src="_images/math/89eab38386c7248f117087bc9f112b43b2a60010.png" alt="\… | |
</div><p>The tangential force is determined by either a viscous-frictional con… | |
or a elastic-viscous-frictional contact model. The former contact model is very | |
computationally efficient, but somewhat inaccurate relative to the mechanics of | |
t@@ -157,24 +157,24 @@ real materials. The latter contact model is therefore t… | |
it results in longer computational times. The tangential force in the | |
visco-frictional contact model:</p> | |
<div class="math"> | |
-<p><img src="_images/math/f808e880e30ba99dc461a8dfdaaca903e8433bc1.png" alt="\… | |
-</div><p><img class="math" src="_images/math/3640b174f15a44d33ad8f0622bc44dce8… | |
+<p><img src="_images/math/6fa02b1c3bc8a438f685b666895f7de1f427b702.png" alt="\… | |
+</div><p><img class="math" src="_images/math/ae2c9cf2d489e787ac1340cc4436f6100… | |
direction. The tangential displacement along the contact interface | |
-(<img class="math" src="_images/math/8cfa62046b3a57f37068f027941acea702d9bd8a.… | |
+(<img class="math" src="_images/math/359991b87d5889ece1cd8b1c84cf17fbb37b815d.… | |
model. The tangential force in the more realistic elastic-viscous-frictional | |
contact model:</p> | |
<div class="math"> | |
-<p><img src="_images/math/e3d643e0cb551cafec2614062e50e2369d7949ab.png" alt="\… | |
+<p><img src="_images/math/365556da97364e0ebe011deb8a6114cc57208b69.png" alt="\… | |
-k_t \boldsymbol{\delta}_t^{ij} -\gamma_t \dot{\boldsymbol{\delta}_t}^{ij}"/><… | |
-</div><p>The parameter <img class="math" src="_images/math/66a1d8738af51528641… | |
+</div><p>The parameter <img class="math" src="_images/math/e8082d4f9b7dfa49370… | |
direction of the contact interface. Note that the tangential force is only | |
-found if the tangential displacement (<img class="math" src="_images/math/d18b… | |
-velocity (<img class="math" src="_images/math/6b038d0d06f6fa38bcb85df9e6f8bed4… | |
-zero. Otherwise it is defined as being <img class="math" src="_images/math/b3c… | |
+found if the tangential displacement (<img class="math" src="_images/math/1820… | |
+velocity (<img class="math" src="_images/math/3f1d577c0a6a09ed5b13001794297b2b… | |
+zero. Otherwise it is defined as being <img class="math" src="_images/math/6a4… | |
<p>For both types of contact model, the tangential force is limited by the Cou… | |
criterion of static and dynamic friction:</p> | |
<div class="math"> | |
-<p><img src="_images/math/5cc160009025ab2cd3b77343dcea454fb8c93795.png" alt="|… | |
+<p><img src="_images/math/edcde9b8cbb2394c6bbd12f07b845063be99a62e.png" alt="|… | |
\begin{cases} | |
\mu_s ||\boldsymbol{f}^{ij}_n|| & | |
\text{if} \quad ||\boldsymbol{f}_t^{ij}|| = 0 \\ | |
t@@ -185,7 +185,7 @@ criterion of static and dynamic friction:</p> | |
reached, the tangential displacement along the contact interface is limited to | |
this value:</p> | |
<div class="math"> | |
-<p><img src="_images/math/13ac3fb2c8f5e95101d362b1cb57b5fcb70e9a71.png" alt="\… | |
+<p><img src="_images/math/092547c763f745333b005b7094cd03c2cfdd92f5.png" alt="\… | |
\frac{1}{k_t} \left( | |
\mu_d ||\boldsymbol{f}_n^{ij}|| | |
\frac{\boldsymbol{f}^{ij}_t}{||\boldsymbol{f}^{ij}_t||} | |
t@@ -193,30 +193,30 @@ this value:</p> | |
</div><p>If the tangential force reaches the Coulomb limit, the energy lost du… | |
frictional dissipation is calculated as:</p> | |
<div class="math"> | |
-<p><img src="_images/math/85bd2d6544d7812f80cc49d2b7e94be81541301c.png" alt="\… | |
+<p><img src="_images/math/a699d5b66f6ff1048229d376ae6340ce0ed5ed6b.png" alt="\… | |
\dot{\boldsymbol{\delta}}_t^{ij} \Delta t||}{\Delta t}"/></p> | |
</div><p>The loss of energy by viscous dissipation in the tangential direction… | |
found.</p> | |
</div> | |
<div class="section" id="temporal-integration"> | |
<h2>Temporal integration<a class="headerlink" href="#temporal-integration" tit… | |
-<p>In the DEM, the time is discretized into small steps (<img class="math" src… | |
+<p>In the DEM, the time is discretized into small steps (<img class="math" src… | |
step, the entire network of contacts is resolved, and the resulting forces and | |
torques for each particle are found. With these values at hand, the new | |
linear and rotational accelerations can be found using | |
<a class="reference external" href="https://en.wikipedia.org/wiki/Newton%27s_l… | |
-of the motion of solid bodies. If a particle with mass <img class="math" src="… | |
-experiences a sum of forces denoted <img class="math" src="_images/math/8f28ce… | |
-(<img class="math" src="_images/math/701df29c5482cdf1e577052c537c176f5a12caf5.… | |
+of the motion of solid bodies. If a particle with mass <img class="math" src="… | |
+experiences a sum of forces denoted <img class="math" src="_images/math/e5861e… | |
+(<img class="math" src="_images/math/1a238040fa47ba4651506e01c721eb94a03f11ba.… | |
<div class="math"> | |
-<p><img src="_images/math/5bab09e6e7765565f55e2f7119251f199f472a4a.png" alt="\… | |
+<p><img src="_images/math/7a16f81eae500f9872de54d88258152bfb0ccbc6.png" alt="\… | |
</div><p>The new velocity and position is found by integrating the above equat… | |
with regards to time. The simplest integration scheme in this regard is the | |
<a class="reference external" href="https://en.wikipedia.org/wiki/Euler_method… | |
<div class="math"> | |
-<p><img src="_images/math/a038fb9a65b9138665b4a5c9d0bbba6bdf3b6dbc.png" alt="\… | |
+<p><img src="_images/math/3d4d7c98c0c7511ac5480967994253f526e13af6.png" alt="\… | |
</div><div class="math"> | |
-<p><img src="_images/math/ef4b452d768af650e6ddc2fd95aff430284f74f2.png" alt="\… | |
+<p><img src="_images/math/91bab0359c2bff8094d2fed7299dc2ca80a27d74.png" alt="\… | |
</div></div> | |
</div> | |
t@@ -278,7 +278,7 @@ with regards to time. The simplest integration scheme in t… | |
<li class="right" > | |
<a href="introduction.html" title="Introduction and Installation" | |
>previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/genindex.html b/doc/html/genindex.html | |
t@@ -7,7 +7,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>Index — sphere 1.00-alpha documentation</title> | |
+ <title>Index — sphere 2.15-beta documentation</title> | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -15,7 +15,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -26,7 +26,7 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="#" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /… | |
</head> | |
<body role="document"> | |
<div class="related" role="navigation" aria-label="related navigation"> | |
t@@ -38,7 +38,7 @@ | |
<li class="right" > | |
<a href="py-modindex.html" title="Python Module Index" | |
>modules</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -959,7 +959,7 @@ | |
<li class="right" > | |
<a href="py-modindex.html" title="Python Module Index" | |
>modules</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/index.html b/doc/html/index.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>The sphere documentation — sphere 1.00-alpha documentation</t… | |
+ <title>The sphere documentation — sphere 2.15-beta documentation</ti… | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -25,7 +25,7 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="#" /> | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="#" /> | |
<link rel="next" title="Introduction and Installation" href="introduction.… | |
</head> | |
<body role="document"> | |
t@@ -41,7 +41,7 @@ | |
<li class="right" > | |
<a href="introduction.html" title="Introduction and Installation" | |
accesskey="N">next</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="#">sphere 1.00-alpha document… | |
+ <li class="nav-item nav-item-0"><a href="#">sphere 2.15-beta documenta… | |
</ul> | |
</div> | |
t@@ -161,7 +161,7 @@ party developers. This document is a work in progress.</p> | |
<li class="right" > | |
<a href="introduction.html" title="Introduction and Installation" | |
>next</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="#">sphere 1.00-alpha document… | |
+ <li class="nav-item nav-item-0"><a href="#">sphere 2.15-beta documenta… | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/introduction.html b/doc/html/introduction.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>Introduction and Installation — sphere 1.00-alpha documentati… | |
+ <title>Introduction and Installation — sphere 2.15-beta documentatio… | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -25,7 +25,7 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /> | |
<link rel="next" title="Discrete element method" href="dem.html" /> | |
<link rel="prev" title="The sphere documentation" href="index.html" /> | |
</head> | |
t@@ -45,7 +45,7 @@ | |
<li class="right" > | |
<a href="index.html" title="The sphere documentation" | |
accesskey="P">previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -185,9 +185,11 @@ from the root directory:</p> | |
<div class="highlight-default"><div class="highlight"><pre><span></span>$ cmak… | |
</pre></div> | |
</div> | |
-<p>NOTE: If your system does not have a GCC compiler (e.g. GCC-5 for CUDA 8) | |
-compatible with the installed CUDA version, try using <code class="docutils li… | |
-<div class="highlight-default"><div class="highlight"><pre><span></span>$ expo… | |
+<p>NOTE: If your system does not have a GCC compiler compatible with the insta… | |
+CUDA version (e.g. GCC-5 for CUDA 8), you will see errors at the linker stage. | |
+In that case, try using <code class="docutils literal"><span class="pre">clang… | |
+<div class="highlight-default"><div class="highlight"><pre><span></span>$ rm -… | |
+$ export CC=$(which clang-3.8) && export CXX=$(which clang++-3.8) &… | |
</pre></div> | |
</div> | |
<p>After a successfull installation, the <code class="docutils literal"><span … | |
t@@ -216,13 +218,9 @@ following commands to check the executable:</p> | |
| | | | | |
| |_| Version: 2.15 | | |
`-------------------------------------´ | |
- A discrete element method particle dynamics simulator. | |
+ A discrete-element method particle dynamics simulator. | |
Written by Anders Damsgaard, license GPLv3+. | |
- https://cs.au.dk/~adc/ | |
-</pre></div> | |
-</div> | |
-<p>The build can be verified by running a number of automated tests:</p> | |
-<div class="highlight-default"><div class="highlight"><pre><span></span>$ make… | |
+ https://adamsgaard.dk | |
</pre></div> | |
</div> | |
<p>The documentation can be read in the <a class="reference external" href="ht… | |
t@@ -254,7 +252,7 @@ a simulation is typically arranged in the following order:… | |
<blockquote> | |
<div><ul class="simple"> | |
<li>Setup of particle assemblage, physical properties and conditions using the | |
-Python API.</li> | |
+Python API (<code class="docutils literal"><span class="pre">python/sphere.py<… | |
<li>Execution of <code class="docutils literal"><span class="pre">sphere</span… | |
function of time, as a result of the conditions initially specified in the | |
input file.</li> | |
t@@ -325,7 +323,7 @@ in Python, and/or scene rendering using the built-in ray t… | |
<li class="right" > | |
<a href="index.html" title="The sphere documentation" | |
>previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/objects.inv b/doc/html/objects.inv | |
Binary files differ. | |
diff --git a/doc/html/py-modindex.html b/doc/html/py-modindex.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>Python Module Index — sphere 1.00-alpha documentation</title> | |
+ <title>Python Module Index — sphere 2.15-beta documentation</title> | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -25,7 +25,7 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /> | |
<script type="text/javascript"> | |
t@@ -44,7 +44,7 @@ | |
<li class="right" > | |
<a href="#" title="Python Module Index" | |
>modules</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -100,7 +100,7 @@ | |
<li class="right" > | |
<a href="#" title="Python Module Index" | |
>modules</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/python_api.html b/doc/html/python_api.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>Python API — sphere 1.00-alpha documentation</title> | |
+ <title>Python API — sphere 2.15-beta documentation</title> | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -25,7 +25,8 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /> | |
+ <link rel="next" title="sphere internals" href="sphere_internals.html" /> | |
<link rel="prev" title="Fluid simulation and particle-fluid interaction" h… | |
</head> | |
<body role="document"> | |
t@@ -39,9 +40,12 @@ | |
<a href="py-modindex.html" title="Python Module Index" | |
>modules</a> |</li> | |
<li class="right" > | |
+ <a href="sphere_internals.html" title="sphere internals" | |
+ accesskey="N">next</a> |</li> | |
+ <li class="right" > | |
<a href="cfd.html" title="Fluid simulation and particle-fluid intera… | |
accesskey="P">previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -1154,7 +1158,7 @@ parameter <cite>hydrostatic</cite> is set to <cite>True<… | |
the fluid cells at the top</li> | |
<li><strong>hydrostatic</strong> (<em>bool</em>) – Initialize the fluid … | |
pressure distribution. A pressure gradient with depth is only | |
-created if a gravitational acceleration along <img class="math" src="_images/m… | |
+created if a gravitational acceleration along <img class="math" src="_images/m… | |
has been specified</li> | |
<li><strong>cfd_solver</strong> (<em>int</em>) – Solver to use for the c… | |
Accepted values: 0 (Navier Stokes, default) and 1 (Darcy).</li> | |
t@@ -3376,6 +3380,9 @@ rendered beforehand using <a class="reference internal" … | |
<h4>Previous topic</h4> | |
<p class="topless"><a href="cfd.html" | |
title="previous chapter">Fluid simulation and particle… | |
+ <h4>Next topic</h4> | |
+ <p class="topless"><a href="sphere_internals.html" | |
+ title="next chapter">sphere internals</a></p> | |
<div role="note" aria-label="source link"> | |
<h3>This Page</h3> | |
<ul class="this-page-menu"> | |
t@@ -3407,9 +3414,12 @@ rendered beforehand using <a class="reference internal"… | |
<a href="py-modindex.html" title="Python Module Index" | |
>modules</a> |</li> | |
<li class="right" > | |
+ <a href="sphere_internals.html" title="sphere internals" | |
+ >next</a> |</li> | |
+ <li class="right" > | |
<a href="cfd.html" title="Fluid simulation and particle-fluid intera… | |
>previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/search.html b/doc/html/search.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>Search — sphere 1.00-alpha documentation</title> | |
+ <title>Search — sphere 2.15-beta documentation</title> | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -26,7 +26,7 @@ | |
<script type="text/javascript" src="_static/searchtools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="#" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /> | |
<script type="text/javascript"> | |
jQuery(function() { Search.loadIndex("searchindex.js"); }); | |
</script> | |
t@@ -45,7 +45,7 @@ | |
<li class="right" > | |
<a href="py-modindex.html" title="Python Module Index" | |
>modules</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -96,7 +96,7 @@ | |
<li class="right" > | |
<a href="py-modindex.html" title="Python Module Index" | |
>modules</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/html/searchindex.js b/doc/html/searchindex.js | |
t@@ -1 +1 @@ | |
-Search.setIndex({envversion:49,filenames:["cfd","dem","index","introduction","… | |
-\ No newline at end of file | |
+Search.setIndex({envversion:49,filenames:["cfd","dem","index","introduction","… | |
+\ No newline at end of file | |
diff --git a/doc/html/sphere_internals.html b/doc/html/sphere_internals.html | |
t@@ -6,7 +6,7 @@ | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
- <title>sphere internals — sphere 1.00-alpha documentation</title> | |
+ <title>sphere internals — sphere 2.15-beta documentation</title> | |
<link rel="stylesheet" href="_static/classic.css" type="text/css" /> | |
<link rel="stylesheet" href="_static/pygments.css" type="text/css" /> | |
t@@ -14,7 +14,7 @@ | |
<script type="text/javascript"> | |
var DOCUMENTATION_OPTIONS = { | |
URL_ROOT: './', | |
- VERSION: '1.00-alpha', | |
+ VERSION: '2.15-beta', | |
COLLAPSE_INDEX: false, | |
FILE_SUFFIX: '.html', | |
HAS_SOURCE: true | |
t@@ -25,7 +25,7 @@ | |
<script type="text/javascript" src="_static/doctools.js"></script> | |
<link rel="index" title="Index" href="genindex.html" /> | |
<link rel="search" title="Search" href="search.html" /> | |
- <link rel="top" title="sphere 1.00-alpha documentation" href="index.html" … | |
+ <link rel="top" title="sphere 2.15-beta documentation" href="index.html" /> | |
<link rel="prev" title="Python API" href="python_api.html" /> | |
</head> | |
<body role="document"> | |
t@@ -41,7 +41,7 @@ | |
<li class="right" > | |
<a href="python_api.html" title="Python API" | |
accesskey="P">previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
t@@ -217,8 +217,8 @@ item Update of verb”<simulation_ID>.status#..b… | |
</ol> | |
<p>The length of the computational time steps (texttt{time.dt}) is calculated … | |
<div class="math"> | |
-<p><img src="_images/math/6af8f3510a4e3f1aea74c1b180c9d93ef248128c.png" alt="\… | |
-</div><p>where <img class="math" src="_images/math/c4bb40dd65eae6c11b325989b14… | |
+<p><img src="_images/math/f068b70724ff65c62363e69535c2b276fab6dad3.png" alt="\… | |
+</div><p>where <img class="math" src="_images/math/edba97b4c0d864d26e92ea7ea73… | |
The time step is set by this relationship in <code class="xref py py-func docu… | |
This equation ensures that the elastic wave (traveling at the speed of sound) … | |
<p>subsubsection{Host and device memory types} | |
t@@ -302,7 +302,7 @@ An important note is that the texttt{C} examples of the NV… | |
<li class="right" > | |
<a href="python_api.html" title="Python API" | |
>previous</a> |</li> | |
- <li class="nav-item nav-item-0"><a href="index.html">sphere 1.00-alpha… | |
+ <li class="nav-item nav-item-0"><a href="index.html">sphere 2.15-beta … | |
</ul> | |
</div> | |
<div class="footer" role="contentinfo"> | |
diff --git a/doc/pdf/sphere.pdf b/doc/pdf/sphere.pdf | |
Binary files differ. | |
diff --git a/doc/sphinx/conf.py b/doc/sphinx/conf.py | |
t@@ -32,7 +32,10 @@ sys.path.insert(0, os.path.abspath('../../python/')) | |
# Add any Sphinx extension module names here, as strings. They can be extensio… | |
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. | |
#extensions = [] | |
-extensions = ['sphinx.ext.autodoc','breathe','sphinx.ext.pngmath','sphinxcontr… | |
+extensions = ['sphinx.ext.autodoc', | |
+ 'breathe', | |
+ 'sphinx.ext.imgmath', | |
+ 'sphinxcontrib.programoutput'] | |
breathe_projects = { "sphere": "../doxygen/xml/" } | |
breathe_default_project = "sphere" | |
t@@ -57,9 +60,9 @@ copyright = u'2014, Anders Damsgaard' | |
# built documents. | |
# | |
# The short X.Y version. | |
-version = '1.00' | |
+version = '2.15' | |
# The full version, including alpha/beta/rc tags. | |
-release = '1.00-alpha' | |
+release = '2.15-beta' | |
# The language for content autogenerated by Sphinx. Refer to documentation | |
# for a list of supported languages. | |
diff --git a/doc/sphinx/introduction.rst b/doc/sphinx/introduction.rst | |
t@@ -132,9 +132,11 @@ from the root directory:: | |
$ cmake . && make | |
-NOTE: If your system does not have a GCC compiler (e.g. GCC-5 for CUDA 8) | |
-compatible with the installed CUDA version, try using ``clang-3.8`` instead:: | |
+NOTE: If your system does not have a GCC compiler compatible with the installed | |
+CUDA version (e.g. GCC-5 for CUDA 8), you will see errors at the linker stage.… | |
+In that case, try using ``clang-3.8`` as the C and C++ compiler instead:: | |
+ $ rm -rf CMakeCache.txt CMakeFiles/ | |
$ export CC=$(which clang-3.8) && export CXX=$(which clang++-3.8) && cmake . … | |
After a successfull installation, the ``sphere`` executable will be located | |
t@@ -157,10 +159,6 @@ The output should look similar to this: | |
.. program-output:: ../../sphere --version | |
-The build can be verified by running a number of automated tests:: | |
- | |
- $ make test | |
- | |
The documentation can be read in the `reStructuredText | |
<http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html>`_-format … | |
the ``doc/sphinx/`` folder, or in the HTML or PDF formats in the folders | |
t@@ -193,10 +191,9 @@ After compiling the ``sphere`` binary, the procedure of a… | |
a simulation is typically arranged in the following order: | |
* Setup of particle assemblage, physical properties and conditions using the | |
- Python API. | |
+ Python API (``python/sphere.py``). | |
* Execution of ``sphere`` software, which simulates the particle behavior as… | |
function of time, as a result of the conditions initially specified in the | |
input file. | |
* Inspection, analysis, interpretation and visualization of ``sphere`` output | |
in Python, and/or scene rendering using the built-in ray tracer. | |
- | |
diff --git a/src/main.cpp b/src/main.cpp | |
t@@ -85,9 +85,9 @@ int main(const int argc, const char *argv[]) | |
"| | | |\n" | |
"| |_| Version: %.2f |\n" | |
"`-------------------------------------´\n" | |
- " A discrete element method particle dynamics simulator.\n" | |
+ " A discrete-element method particle dynamics simulator.\n" | |
" Written by Anders Damsgaard, license GPLv3+.\n" | |
- " https://cs.au.dk/~adc/\n", VERSION); | |
+ " https://adamsgaard.dk\n", VERSION); | |
return 0; | |
} | |