yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #07212
Re: Contact between two different materials
Hi!
Tried to inherit WireMat from FrictMat and using
Ip2_FrictMat_FrictMat_FrictPhys()
Law2_ScGeom_FrictPhys_CundallStrack()
but got this:
terminate called after throwing an instance of 'std::runtime_error'
what(): Undefined or ambiguous IPhys dispatch for types FrictMat and
WireMat.
Aborted
Any suggestions where the problem could be?
Thanks
Klaus
P.S.: Bruno, your script is not up do date!
On Mon, 28 Feb 2011 06:30:12 pm Bruno Chareyre wrote:
> Hi Klaus,
>
> It sounds correct. I think you are the first to do that.
>
> I don't know if it will apply in your case, but note that it is possible
> to make different materials interact without a Ip2_M1_M2_Phys functor,
> as long as M2 inherits from M1 (or vice-versa).
>
> See for instance:
> https://yade-dem.org/wiki/Screenshots_and_videos#Representing_beams_and_wir
> es_with_connected_cylinder
>
> - spheres and boxes have FrictMat
> - cylinders have CohFrictMat
>
> Cylinders interact with the other shapes even though there is no
> FrictMat_CohFrictMat functor.
> Since CohFrictMat inherits from FrictMat, sphere-cylinder and
> box-cylinder interactions will get FrictPhys from
> Ip2_FrictMat_FrictMat_FrictPhys, and only cylinder-cylinder interactions
> will be cohesive.
> You could use the same strategy by making WireMat inherit from FrictPhys
> (which would be logical if the WireMat interacts frictionaly with
> spheres), if you think it is more convenient.
>
> For the contact law, same remark: you need an additional contact law
> _only if_ it will implement a new behaviour, else you can use one of the
> existing laws (e.g. Law2_ScGeom_FrictPhys_CundallStrack is used for
> cylinder-sphere interactions).
>
> Cheers.
>
> Bruno
>
> On 28/02/11 06:34, Klaus Thoeni wrote:
> > Hi Guys!
> >
> > I try to implement an interaction between two different materials, e.g.
> > between FrictMat and my WireMat.
> >
> > My first guess would be to implement (in WirePM.cpp):
> > 1. Ip2_WireMat_FrictMat_FrictPhys
> > 2. Law2_ScGeam_FrictPhys_WirePM
> >
> > Any comments or suggestions?
> >
> > I saw that Chiara posted a similar questions last year but I couldn't
> > find any implementation for that. So did anyone already implement
> > something similar?
> >
> > Thanks
> >
> > Klaus
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~yade-dev
> > Post to : yade-dev@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~yade-dev
> > More help : https://help.launchpad.net/ListHelp
--
Dr. Klaus Thoeni - Centre for Geotechnical and Materials Modelling
Civil, Surveying and Environmental Engineering - Engineering Building EA
The University of Newcastle, Callaghan, NSW 2308, Australia
web: http://www.newcastle.edu.au/research-centre/cgmm
phone: +61 (0)2 4921 5118
Follow ups
References