Introduction
Introduction Statistics Contact Development Disclaimer Help
tRemoved rolling radius, substituted with radius_a - sphere - GPU-based 3D disc…
git clone git://src.adamsgaard.dk/sphere
Log
Files
Refs
LICENSE
---
commit 507464b4e3dc102985c1490e416d5ee0da7925f0
parent 4bd862bc4ff2de3e91848eada8ce04ef62fa2888
Author: Anders Damsgaard <[email protected]>
Date: Sun, 30 Sep 2012 21:51:47 +0200
Removed rolling radius, substituted with radius_a
Diffstat:
M src/contactmodels.cuh | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
---
diff --git a/src/contactmodels.cuh b/src/contactmodels.cuh
t@@ -155,7 +155,7 @@ __device__ void contactLinearViscous(Float3* F, Float3* T,…
//Float k_n_ab = k_n_a * k_n_b / (k_n_a + k_n_b);
// Calculate rolling radius
- Float R_bar = (radius_a + radius_b) / 2.0f;
+ //Float R_bar = (radius_a + radius_b) / 2.0f;
// Normal force component: linear-elastic approximation (Augier 2009, eq. 3)
// with velocity dependant damping
t@@ -235,7 +235,8 @@ __device__ void contactLinearViscous(Float3* F, Float3* T,…
// Add force components from this collision to total force for particle
*F += f_n + f_t + f_c;
- *T += -R_bar * cross(n_ab, f_t) + T_res;
+ //*T += -R_bar * cross(n_ab, f_t) + T_res;
+ *T += -radius_a * cross(n_ab, f_t) + T_res;
// Pressure excerted onto the particle from this contact
*p += f_n_length / (4.0f * PI * radius_a*radius_a);
t@@ -313,7 +314,7 @@ __device__ void contactLinear(Float3* F, Float3* T,
//Float k_n_ab = k_n_a * k_n_b / (k_n_a + k_n_b);
// Calculate rolling radius
- Float R_bar = (radius_a + radius_b) / 2.0f;
+ //Float R_bar = (radius_a + radius_b) / 2.0f;
// Normal force component: Elastic
//f_n = -devC_k_n * delta_ab * n_ab;
t@@ -390,14 +391,18 @@ __device__ void contactLinear(Float3* F, Float3* T,
//T_res = -angvel_ab/angvel_ab_length * devC_mu_r * R_bar * length(f_n);
// New rolling resistance model
- T_res = -1.0f * fmin(devC_gamma_r * R_bar * angvel_ab_length,
+ /*T_res = -1.0f * fmin(devC_gamma_r * R_bar * angvel_ab_length,
devC_mu_r * R_bar * f_n_length)
+ * angvel_ab/angvel_ab_length;*/
+ T_res = -1.0f * fmin(devC_gamma_r * radius_a * angvel_ab_length,
+ devC_mu_r * radius_a * f_n_length)
* angvel_ab/angvel_ab_length;
}
// Add force components from this collision to total force for particle
*F += f_n + f_t + f_c;
- *T += -R_bar * cross(n_ab, f_t) + T_res;
+ //*T += -R_bar * cross(n_ab, f_t) + T_res;
+ *T += -radius_a * cross(n_ab, f_t) + T_res;
// Pressure excerted onto the particle from this contact
*p += f_n_length / (4.0f * PI * radius_a*radius_a);
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.