Machmaker in CPM model

Asked by Seti

Hi all,

I am trying to combine two different material in CPM , However, I am not sure, can I use matchmaker in CPM model?
if yes:

1- Which parameters are representing the cohesion between spheres in CPM model ? sigmaT? relDuctility?
2-Can I change these parameters(sigmaT, relDuctility) by match maker?

Thanks,

Question information

Language:
English Edit question
Status:
Expired
For:
Yade Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Seti (seti) said :
#1

I have tried to add below lines to CPM Model, and I faced with error as per below:

[Ip2_CpmMat_CpmMat_CpmPhys(sigmaT=MatchMaker(matches=((concreteId1,concreteId2,3.5e3),(concreteId2,concreteId2,3.5e6))),relDuctility=MatchMaker(matches=((concreteId1,concreteId2,30),(concreteId2,concreteId2,40))))],

Error:

line 101, in <module>

AttributeError: No such attribute: sigmaT.

Would you please advise?

Regards,
Seti

Revision history for this message
Jan Stránský (honzik) said :
#2

Hello,
multiple CPM materials was not the issue at the time of its implementation,
so currently there is MatchMaker implementation only for 'young' parameter.
But it is not difficult to implement it for other parameters.
What Yade (from source or packages or yadedaily) do you use?
cheers
Jan

2016-09-18 11:57 GMT+02:00 Seti <email address hidden>:

> Question #399298 on Yade changed:
> https://answers.launchpad.net/yade/+question/399298
>
> Seti gave more information on the question:
> I have tried to add below lines to CPM Model, and I faced with error as
> per below:
>
> [Ip2_CpmMat_CpmMat_CpmPhys(sigmaT=MatchMaker(matches=((
> concreteId1,concreteId2,3.5e3),(concreteId2,concreteId2,3.
> 5e6))),relDuctility=MatchMaker(matches=((concreteId1,concreteId2,30),(
> concreteId2,concreteId2,40))))],
>
> Error:
>
> line 101, in <module>
>
> AttributeError: No such attribute: sigmaT.
>
>
> Would you please advise?
>
> Regards,
> Seti
>
> --
> You received this question notification because your team yade-users is
> an answer contact for Yade.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
>

Revision history for this message
Seti (seti) said :
#3

Hi Jan,

Thank so much for your reply. I am using "yadedaily" for this code.

Yade:
    Yade 1.20.0

Yadedaily :
      Yade 2016.06a-20-d4840e5~xenial

Revision history for this message
Jan Stránský (honzik) said :
#4

Ok, in yadedaily you cannot modify the source code.. could you use yade
compiled from source? Then you could implement this by yourself :-)
cheers
Jan

2016-09-19 12:02 GMT+02:00 Seti <email address hidden>:

> Question #399298 on Yade changed:
> https://answers.launchpad.net/yade/+question/399298
>
> Status: Answered => Open
>
> Seti is still having a problem:
> Hi Jan,
>
>
> Thank so much for your reply. I am using "yadedaily" for this code.
>
> Yade:
> Yade 1.20.0
>
> Yadedaily :
> Yade 2016.06a-20-d4840e5~xenial
>
> --
> You received this question notification because your team yade-users is
> an answer contact for Yade.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
>

Revision history for this message
Seti (seti) said :
#5

Thanks Jan for kind support. I have downloaded yade from "https://github.com/yade/trunk"

is that what you have recommended?

if yes,
1- How I can install it?
installing package was really easy just copy/past the mentioned commend lines from "https://yade-dem.org/doc/installation.html" however I am not sure how should I install the source codes. would you please assist me ?

2- I have found the source code of CPM on truck and I suppose I should change below lines to add matchmaker to control the cohesion. so dose it mean if I do changes in " trunk/pkg/dem/ConcretePM.hpp" and save it then run YADE it will work?

###################
class Ip2_CpmMat_CpmMat_CpmPhys: public IPhysFunctor{
 public:
  virtual void go(const shared_ptr<Material>& pp1, const shared_ptr<Material>& pp2, const shared_ptr<Interaction>& interaction);
  FUNCTOR2D(CpmMat,CpmMat);
  DECLARE_LOGGER;
  YADE_CLASS_BASE_DOC_ATTRS(Ip2_CpmMat_CpmMat_CpmPhys,IPhysFunctor,"Convert 2 :yref:`CpmMat` instances to :yref:`CpmPhys` with corresponding parameters. Uses simple (arithmetic) averages if material are different. Simple copy of parameters is performed if the :yref:`material<CpmMat>` is shared between both particles. See :yref:`cpm-model<CpmMat>` for detals.",
   ((long,cohesiveThresholdIter,10,,"Should new contacts be cohesive? They will before this iter#, they will not be afterwards. If 0, they will never be. If negative, they will always be created as cohesive (10 by default)."))
   ((shared_ptr<MatchMaker>,E,,,"Instance of :yref:`MatchMaker` determining how to compute interaction's normal modulus. If ``None``, average value is used."))
  );
};

##################

Thanks

Revision history for this message
Jérôme Duriez (jduriez) said :
#6

Hi,

1- The exact same page https://yade-dem.org/doc/installation.html also details how to install (i.e. compile) YADE from source code, just give a look a little below ;-)

2- As with any software/program, you will need to recompile YADE after having changed the sources, for things "to work"

Have a good dive into YADE open-source nature !

Revision history for this message
Jan Stránský (honzik) said :
#7

Hello,
could you please send me an email what parameters you want to make
MatchMaker? I will modify the files for you, but I will not apply them in
the official version (since it would need some testing that the default
behavior does not change etc.)
cheers
Jan

2016-09-19 18:17 GMT+02:00 Seti <email address hidden>:

> Question #399298 on Yade changed:
> https://answers.launchpad.net/yade/+question/399298
>
> Status: Answered => Open
>
> Seti is still having a problem:
> Thanks Jan for kind support. I have downloaded yade from
> "https://github.com/yade/trunk"
>
> is that what you have recommended?
>
> if yes,
> 1- How I can install it?
> installing package was really easy just copy/past the mentioned commend
> lines from "https://yade-dem.org/doc/installation.html" however I am not
> sure how should I install the source codes. would you please assist me ?
>
> 2- I have found the source code of CPM on truck and I suppose I should
> change below lines to add matchmaker to control the cohesion. so dose it
> mean if I do changes in " trunk/pkg/dem/ConcretePM.hpp" and save it
> then run YADE it will work?
>
> ###################
> class Ip2_CpmMat_CpmMat_CpmPhys: public IPhysFunctor{
> public:
> virtual void go(const shared_ptr<Material>& pp1, const
> shared_ptr<Material>& pp2, const shared_ptr<Interaction>& interaction);
> FUNCTOR2D(CpmMat,CpmMat);
> DECLARE_LOGGER;
> YADE_CLASS_BASE_DOC_ATTRS(Ip2_CpmMat_CpmMat_CpmPhys,IPhysFunctor,"Convert
> 2 :yref:`CpmMat` instances to :yref:`CpmPhys` with corresponding
> parameters. Uses simple (arithmetic) averages if material are different.
> Simple copy of parameters is performed if the :yref:`material<CpmMat>` is
> shared between both particles. See :yref:`cpm-model<CpmMat>` for detals.",
> ((long,cohesiveThresholdIter,10,,"Should new
> contacts be cohesive? They will before this iter#, they will not be
> afterwards. If 0, they will never be. If negative, they will always be
> created as cohesive (10 by default)."))
> ((shared_ptr<MatchMaker>,E,,,"Instance of
> :yref:`MatchMaker` determining how to compute interaction's normal modulus.
> If ``None``, average value is used."))
> );
> };
>
> ##################
>
> Thanks
>
> --
> You received this question notification because your team yade-users is
> an answer contact for Yade.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
>

Revision history for this message
Seti (seti) said :
#8

Hi Jan,

Thanks so much for your assist and sorry for slow reply.

I just sent an email to you. As I have mentioned in my email I need to control all of the parameters that have effect on Cohesion between spheres in CPM model.

Also I need to use matchmaker for inter-granular friction between spheres.

Appreciate for that.

Seti

Revision history for this message
Launchpad Janitor (janitor) said :
#9

This question was expired because it remained in the 'Open' state without activity for the last 15 days.