Hi Bruno,
I think the two-step solution is right as far as I can see.
For the performance, I apologize for my incorrect statement; you're
right about this. The logic is a bit different in Woo
(https://github.com/eudoxos/woodem/blob/master/pkg/dem/ContactLoop.cpp)
and I will check again what is ha
@Vaclav
>I removed this functor caching, since it does not seem to bring any benefit
>performance-wise.
IIRC the change [1] gave a significant (clearly measurable) speedup.
Before the change it was like this:
if (noIGfuntor || noIPfunctor) assignIGfunctor();
if (!IGfunctor.go()) continue;
assign
revno: 3707
committer: Chao Yuan
timestamp: Thu 2015-07-23 19:26:21 +0200
message:
add a new version of capillary law. (pushed by Caroline)
added:
pkg/dem/CapillaryPhys1.cpp
pkg/dem/CapillaryPhys1.hpp
pkg/dem/DelaunayInterpolatio
revno: 3706
committer: jduriez
timestamp: Thu 2015-07-23 10:20:49 -0600
message:
Removal of python O.engines reference
modified:
py/wrapper/yadeWrapper.cpp
--
lp:yade
https://code.launchpad.net/~yade-pkg/yade/git-trunk
Your team Y
On 23/07/15 15:04, Jan Stránský wrote:
> @Bruno: O is defined a a global variable but it is just a convention.
> If you continued:
>
> bla = Omega()
> bla is O # False
> bla == O # False
> bla.engines == O.engines # True :-)
> # probably some consequence of defining Omega as singleton in C++ (the
>
Thank Vacalv,
So the two-step solution is:
- Implement goReverse (i.e. exactly the "Ip2_Mat1_Mat2/Ip2_Mat2_Mat1" pair but
in a single functor.
- enable swap and remember it somehow (bool InteractionPhysics::swapped maybe?)
--
You received this bug notification because you are a member of Yade
d
Hi,
My next questions (result of not knowing the code well enough):
- is asssert necessary in [1]?
Not really necessary. It just means that goReverse would have to be
implemented properly, which, back then, was not the case with any of the
existing Ip2 functors. With swap==true, you'd have to c
This situation is partly described in [2]. I used it just in a special case:
- spheres with CpmMat
- facets with FrictMat
- Ig2_Facet_Sphere
- Ip2_FrictMat_CpmMat
so Ig2 always order the particles with different shapes in order
Facet-Sphere, so the materials are also ordered FrictMat-CpmMat fittin
@Bruno: O is defined a a global variable but it is just a convention. If
you continued:
bla = Omega()
bla is O # False
bla == O # False
bla.engines == O.engines # True :-)
# probably some consequence of defining Omega as singleton in C++ (the C++
object is the same but Python object wrapping it no
> bla=Omega()
> bla.engines?
> Docstring: [...] accessed using O.engines
>
> Do you see the problem? Do I really access the engines of "bla" as
> "O.engines"?
For some reason the answer is actually "yes", haha.
But I guess you will get the general idea.
B
__
On 22/07/15 17:52, Jerome Duriez wrote:
> Hi,
>
> I modified the documentation of "engines" attribute of "Omega" class.
> The logic behind is that maybe some users do not know that Omega
> object is accessed through "O"...
> (at least this does not appear on
> https://yade-dem.org/doc/yade.wrapper.
I don't understand this assert either.
Just adding more questions:
-Can the same problem also appear in Ip2_FrictMat_CpmMat_FrictPhys?
-This one requires that mat1 is Frict and Mat2 is Cpm, how can it be always
true? [4]
The good fix would be to let materials be swapped, I don't believe it
really
12 matches
Mail list logo