← Back to team overview

yade-dev team mailing list archive

Re: checkTestTriax.py

 

I found the problem: the abs() function of C is only for integers.
While previously in yade every call to abs(double) would return a
double, you last removal of using's made it use the C version.
Consequence: in expression [1] both abs() always return 0. Obviously
there are plenty files in which it will be a problem.
It needs to be fixed globaly, I'm not sure how exactly, but it should
not be too difficult.
See also [2].

Bruno

[1]
https://github.com/yade/trunk/blob/master/pkg/dem/TriaxialCompressionEngine.cpp#L166
[2]
http://stackoverflow.com/questions/1374037/ambiguous-overload-call-to-absdouble

On 02/07/14 18:33, Bruno Chareyre wrote:
> Hi Anton,
> There is a real difference.
> The TriaxialTest of the "generate" tab in gui also behaves differently:
> vertical compression will never start. A quick look at the code didn't
> allow me to spot a problem.
> I suspect different versions of functions like min/max may be used, but
> I'm clueless overall.
> Scarry. I'll let you know if I understand a thing.
>
> Bruno
>
> On 02/07/14 08:21, Anton Gladky wrote:
>> Hi,
>>
>> I have removed yesterday all "using namespace std;".
>> It is a bad practice to have such constructions [1].
>>
>> It seems all is working fine except checkTestTriax.
>> Bruno, could you please have a look at this script (attached)?
>> It is strange, that such a minor change breaks this script.
>>
>> I am not a very familiar with TriaxialTest. Any suggestions are
>> very wellcome. If we do not find a solution, we need to roll back
>> my last commits and apply them incrementally.
>>
>> [1] http://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice
>>
>> Thanks
>>
>> Anton
>>
>> _______________________________________________
>> 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
>>
>>
>>
>


-- 
_______________
Bruno Chareyre
Associate Professor
ENSE³ - Grenoble INP
Lab. 3SR
BP 53
38041 Grenoble cedex 9
Tél : +33 4 56 52 86 21
Fax : +33 4 76 82 70 43
________________



References