yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #12223
Re: [Yade-users] [Question #269724]: What are particular features of CpmMat model?
-
To:
Yade developers <yade-dev@xxxxxxxxxxxxxxxxxxx>
-
From:
Jerome Duriez <Jerome.Duriez@xxxxxxxxxxx>
-
Date:
Wed, 29 Jul 2015 15:49:48 +0000
-
Accept-language:
en-CA, en-US
-
Authentication-results:
spf=neutral (sender IP is 136.159.160.216) smtp.mailfrom=ucalgary.ca; lists.launchpad.net; dkim=none (message not signed) header.d=none;
-
By2pr0101mb1544:
X-MS-Exchange-Organization-RulesExecuted
-
By2pr0101mb1592:
X-MS-Exchange-Organization-RulesExecuted
-
In-reply-to:
<CANFfKpGoUS-+0JZXDA1dUEuUu9u9hKq3BfWUAHfvMZ6yHaRQ-A@mail.gmail.com>
-
Thread-index:
AQHQyaEl85fAbxDmlkyAOsSeZmFvPJ3yHN2AgABzHRM=
-
Thread-topic:
[Yade-dev] [Yade-users] [Question #269724]: What are particular features of CpmMat model?
Ok:
- for the unp thing: as for me, this was an actual problem when I tried once to compare the "CohesionMoment" law and JCFpm. Adding just "for i in O.interactions i.unp = i.penetrationDepth" (I make it short) using CohesionMoment did not work at all to have an initial state at rest (it always ended with an explosion/implosion). Because of a timestep offset in the computation of penetrationDepth and the use of unp.
Hence my solution. You may consider it as a trick if you consider such things as pertaining to the initial conditions. I understand this point of view. However, it then requires a lot of additional tasks to be done in the "initial conditions part" of the script
* constructing by hand all the interactions of the initial bond network (that's what you mean when you say that time integration is not needed to detect interactions, I guess ?)
* computing by hand the corresponding penetrationDepth
* applying unp = penetrationDepth
I'm not saying it is difficult / impossible, but hopefully we will agree that such kind of things do not usually enter script definitions (or at least make script definitions more complex). Whereas a classical step execution does it like a charm. What do you think ?
- for the joint-contact handling: in fact the Law2 currently takes care of modifying the normal [1] and computing a consistent relative normal displacement (a projection of the classical "penetrationDepth") [2]. It also updates damage measurements parameters in IPhys, and outputs a text file when required (if I do not forget something else).
Thinking about it, I fully agree that [1] and [2] would better fit in a new Ig2... But we would then get a new IGeom (or change the meaning of ScGeom attributes ?), in addition to the JCFpm IPhys. And Law2_ScGeom6D_CohFrictPhys_CohesionMoment does not apply... What could be the solution ?
Thanks for discussion,
Jerome
[1] https://github.com/yade/trunk/blob/master/pkg/dem/JointedCohesiveFrictionalPM.cpp#L35
[2] https://github.com/yade/trunk/blob/master/pkg/dem/JointedCohesiveFrictionalPM.cpp#L55
________________________________
From: Yade-dev [yade-dev-bounces+jerome.duriez=ucalgary.ca@xxxxxxxxxxxxxxxxxxx] on behalf of Bruno Chareyre [bruno.chareyre@xxxxxxxxxxxxxxx]
Sent: July 28, 2015 8:25 PM
To: Yade developers
Subject: Re: [Yade-dev] [Yade-users] [Question #269724]: What are particular features of CpmMat model?
Second thoughts:
Now I understand [1] a bit more but actually it solves a problem created ex-nihilo.
There should not be any O.step() between appending bodies and setting unp=un, since obviously there is no reason to time-integrate before the initial conditions are completely defined.
In this example time integration is used as a trick to detect interactions if I understand correctly. The trick is not needed, but I understand the idea. If you really want to do that you can just step with O.dt=0. I would not recommend it though, since it is less flexible than defining initial state completely in python script.
Bruno
[1] https://answers.launchpad.net/yade/+question/266828<https://answers.launchpad.net/yade/+question/266828>, #4 especially
On 29 July 2015 at 03:51, Bruno Chareyre <bruno.chareyre@xxxxxxxxxxxxxxx<mailto:bruno.chareyre@xxxxxxxxxxxxxxx>> wrote:
Hi Jérôme,
I don't see what you mean, sorry.
Setting unp=un is explicitely making current state the equilibrium state, without the need of any additional "trick", else please explain why you think it is not enough.
Handling modified normals (second specific feature) is the job of Ig2 functor, not Law functor.
So overall I think the law you mention is really redundant.
Let me know what you think about this. We should reach consensus about such things, else users are all confused by different replies.
Thanks
Bruno
On 28 July 2015 at 21:36, Jérôme Duriez <question269724@xxxxxxxxxxxxxxxxxxxxx<mailto:question269724@xxxxxxxxxxxxxxxxxxxxx>> wrote:
Question #269724 on Yade changed:
https://answers.launchpad.net/yade/+question/269724
Jérôme Duriez posted a new comment:
Yes Bruno, I know this "trick" too, which may require one or two more
lines than the one you quote (see
https://answers.launchpad.net/yade/+question/266828, #4 especially).
Yade suffers probably from having too many laws, but as for
Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM, I do not think this
not so interesting discussion may conclude it is not justified, since I
mentioned earlier a second specific feature about the discontinuity
contacts.....
--
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.
_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@xxxxxxxxxxxxxxxxxxx<mailto:yade-users@xxxxxxxxxxxxxxxxxxx>
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to : yade-dev@xxxxxxxxxxxxxxxxxxx<mailto:yade-dev@xxxxxxxxxxxxxxxxxxx>
Unsubscribe : https://launchpad.net/~yade-dev
More help : https://help.launchpad.net/ListHelp
Follow ups
References