yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #10449
[Branch ~yade-pkg/yade/git-trunk] Rev 3816: Do not ignore k* and c* parameters if mass==0
------------------------------------------------------------
revno: 3816
committer: Anton Gladky <gladky.anton@xxxxxxxxx>
timestamp: Fri 2014-02-07 19:20:02 +0100
message:
Do not ignore k* and c* parameters if mass==0
Visco-Elastic model ignored strength and damping parameter,
if the mass body is zero. It happens during facet-sphere
interaction, so the facets mat is ignored (k* and c* multiplied
by 0).
This commit sets temporarly the mass of zero-mass body equal
to the mass of another body.
Thanks to Medack for pointing that out and discussion.
modified:
pkg/dem/ViscoelasticPM.cpp
--
lp:yade
https://code.launchpad.net/~yade-pkg/yade/git-trunk
Your team Yade developers is subscribed to branch lp:yade.
To unsubscribe from this branch go to https://code.launchpad.net/~yade-pkg/yade/git-trunk/+edit-subscription
=== modified file 'pkg/dem/ViscoelasticPM.cpp'
--- pkg/dem/ViscoelasticPM.cpp 2014-01-30 08:09:44 +0000
+++ pkg/dem/ViscoelasticPM.cpp 2014-02-07 18:20:02 +0000
@@ -40,6 +40,11 @@
if (mat1->massMultiply and mat2->massMultiply) {
mass1 = Body::byId(interaction->getId1())->state->mass;
mass2 = Body::byId(interaction->getId2())->state->mass;
+ if (mass1 == 0.0 and mass2 > 0.0) {
+ mass1 = mass2;
+ } else if (mass2 == 0.0 and mass1 > 0.0) {
+ mass2 = mass1;
+ }
}
GenericSpheresContact* sphCont=YADE_CAST<GenericSpheresContact*>(interaction->geom.get());