On 17/02/14 12:07, Klaus Thoeni wrote: > Hi Bruno > >> I think non-symmetric functors are rarely necessary since most >> combinations can be dealt with via inheritance (e.g. Frict vs CohFrict >> is interpreted as Frict vs. Frict since CohFrict inherits from Frict). > Exactly, but what if you want it to behave it like a cohesive contact. Why would you define a body with FrictPhys if is supposed to have a cohesive behavior with others? You can just give CohFrictPhys to everyone.
> This is > not possible at the current stage. So non-symmetric Ip2 functors would make > sense here, right? And looking at the variety of material we have (some are > not inherited from FrictMat) I can see some more benefits. Recently viscous types have reintegrated the inheritance line of FrictPhys (thanks Raphael!) and I don't really see many contact types that should be exceptions. If you check the list of green/yellow functors almost all of them use the inheritance from FrictPhys (https://yade-dem.org/wiki/ConstitutiveLaws). > >> However, I am like you, I don't see the reason why it is asserted >> symmetric. I suggest to try your idea after removing this constraint and >> see if it works as accepted. > Ok, I will try. > > Any idea about the goReverse? Can it be removed? Maybe not removed. I think it is necessary, precisely because we can have non-symmetric functors. If you swap ids in Ip2 you may break the work of the Ig2. The go reverse is here for this reason (handling non-symmetric cases without forcing a specific ordering of id1/id2 and without the need to define to functors). Bruno _______________________________________________ Mailing list: https://launchpad.net/~yade-dev Post to : yade-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-dev More help : https://help.launchpad.net/ListHelp