← Back to team overview

yade-dev team mailing list archive

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