commit 01b81b008518de59f62d4471b397364dd6b78f9a
parent 7226d7854eb5fe81d9ea7c55f6bf134a462991c9
Author: Anders Damsgaard Christensen <adc@geo.au.dk>
Date: Wed, 20 Apr 2016 11:47:16 -0700
simplify relative velocity calculation
Diffstat:
3 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/doc/doc.pdf b/doc/doc.pdf
Binary files differ.
diff --git a/doc/doc.tex b/doc/doc.tex
@@ -74,8 +74,8 @@ relative velocity between the points is found as \citep{Hinrichsen2004,
Luding2008}:
\begin{equation}
\boldsymbol{v}_{i,j} = \boldsymbol{v}_i - \boldsymbol{v}_j +
- \frac{||d_{i,j}||}{2} d_{i,j} \times \omega_i +
- \frac{||d_{i,j}||}{2} d_{i,j} \times \omega_j
+ \frac{d_{i,j}}{2} \times \omega_i +
+ \frac{d_{i,j}}{2} \times \omega_j
\end{equation}
diff --git a/slidergrid/slider.c b/slidergrid/slider.c
@@ -215,12 +215,13 @@ void bond_shear_deformation(slider* s1, const slider s2,
const Float3 vel_linear = subtract_float3(s1->vel, s2.vel);
// relative contact interface velocity with rolling
- const Float3 vel = add_float3(vel_linear,
- add_float3(
- multiply_scalar_float3(dist_norm/2.,
- cross_float3(n, s1->angvel)),
- multiply_scalar_float3(dist_norm/2.,
- cross_float3(n, s2.angvel))));
+ const Float3 vel =
+ add_float3(
+ vel_linear,
+ add_float3(
+ cross_float3(divide_float3_scalar(dist, 2.0), s1->angvel),
+ cross_float3(divide_float3_scalar(dist, 2.0), s2.angvel)
+ ));
// Tangential component of the relative contact interface velocity
// Hinrichsen and Wolf 2004, eq. 13.9