Thread Previous • Date Previous • Date Next • Thread Next |
It would be fairly easy to create a proxy function of the law functor that would return the value stored in scene->energy.I realized the change when my scripts crashed. I have many scripts using this and no time to learn and convert all of them to the type of energy tracing you implemented. This is one reason.
Yes, I was thinking about this, but to me it is no big deal. The non-incremental ones could be computed only during the steps when they are really needed (plotted etc).Cpu time is another reason (else I would have keep this change in local). It seems that track energy will compute all types of energy at each iterations while I need only a few of them and not at each iteration.
It works in parallel (of course). The string comparison is there only the first time, then it is stored in the index variable (do you think I would not think about performance?).I also got the impression that comparing strings in energy->add(dissip,"plastDissip",...), and calling those python functions is a lot more expensive than a single plasticE+=. Not sure. Also, I didn't know : do track energy work in parallel?
Oh, but I was just storing the same numbers differently, that is obvious from the code. I would think that you just don't know that the energy is not conserved, because you don't look at all the contributions, that's perhaps how your scripts "conserve" energy? I mean, come on, the plastic dissipation it clearly not computed correctly, you don't agree?The less rational reason is I knew my scripts conserve energy, while everything else I see on yade lists seem to eat energy somehow.
Cheers!
Thread Previous • Date Previous • Date Next • Thread Next |