mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[poincare] Test: libm prevision depends on implementation. Fix tests to
pass tests on Travis and Appveyor servers
This commit is contained in:
committed by
EmilieNumworks
parent
b4a865632e
commit
fc17d4a8e7
@@ -69,7 +69,7 @@ QUIZ_CASE(poincare_complex_to_expression) {
|
||||
|
||||
assert_parsed_expression_evaluates_to<double>("2+3*I", "3.60555127546*X^(0.982793723247*I)", Radian, Polar, 12);
|
||||
assert_parsed_expression_evaluates_to<double>("3.60555127546*X^(0.982793723247*I)", "2+3*I", Radian, Cartesian, 12);
|
||||
assert_parsed_expression_evaluates_to<float>("12.04159457879229548012824103*X^(1.4876550949*I)", "1+12*I", Radian, Cartesian, 6);
|
||||
assert_parsed_expression_evaluates_to<float>("12.04159457879229548012824103*X^(1.4876550949*I)", "1+12*I", Radian, Cartesian, 5);
|
||||
assert_parsed_expression_evaluates_to<float>("-2E20+2E20*I", "(-2E20)+2E20*I");
|
||||
assert_parsed_expression_evaluates_to<float>("-2E20+2E20*I", "2.828427E20*X^(2.356194*I)", Radian, Polar);
|
||||
assert_parsed_expression_evaluates_to<double>("1E155-1E155*I", "1E155-1E155*I");
|
||||
|
||||
@@ -163,7 +163,7 @@ QUIZ_CASE(poincare_function_evaluate) {
|
||||
#if MATRICES_ARE_DEFINED
|
||||
assert_parsed_expression_evaluates_to<float>("inverse([[1,2,3][4,5,-6][7,8,9]])", "[[-1.2917,-0.083333,0.375][1.0833,0.16667,-0.25][0.041667,-0.083333,0.041667]]", Degree, Cartesian, 5); // inverse is not precise enough to display 7 significative digits
|
||||
assert_parsed_expression_evaluates_to<double>("inverse([[1,2,3][4,5,-6][7,8,9]])", "[[-1.2916666666667,-8.3333333333333E-2,0.375][1.0833333333333,1.6666666666667E-1,-0.25][4.1666666666667E-2,-8.3333333333333E-2,4.1666666666667E-2]]");
|
||||
assert_parsed_expression_evaluates_to<float>("inverse([[I,23-2I,3*I][4+I,5*I,6][7,8*I+2,9]])", "[[(-0.01183)-0.0455*I,(-0.5005)-0.727*I,0.3185+0.4886*I][0.04095+0.00364*I,0.04004-0.02184*I,(-0.02548)+0.0009099*I][0.003336-0.00182*I,0.3609+0.5347*I,(-0.1301)-0.3576*I]]", Degree, Cartesian, 4); // inverse is not precise enough to display 7 significative digits
|
||||
assert_parsed_expression_evaluates_to<float>("inverse([[I,23-2I,3*I][4+I,5*I,6][7,8*I+2,9]])", "[[(-0.0118)-0.0455*I,(-0.5)-0.727*I,0.318+0.489*I][0.0409+0.00364*I,0.04-0.0218*I,(-0.0255)+0.00091*I][0.00334-0.00182*I,0.361+0.535*I,(-0.13)-0.358*I]]", Degree, Cartesian, 3); // inverse is not precise enough to display 7 significative digits
|
||||
assert_parsed_expression_evaluates_to<double>("inverse([[I,23-2I,3*I][4+I,5*I,6][7,8*I+2,9]])", "[[(-0.0118289353958)-0.0454959053685*I,(-0.500454959054)-0.727024567789*I,0.31847133758+0.488626023658*I][0.0409463148317+3.63967242948E-3*I,0.0400363967243-0.0218380345769*I,(-0.0254777070064)+9.0991810737E-4*I][3.33636639369E-3-1.81983621474E-3*I,0.36093418259+0.534728541098*I,(-0.130118289354)-0.357597816197*I]]", Degree, Cartesian, 12); // FIXME: inverse is not precise enough to display 14 significative digits
|
||||
#endif
|
||||
|
||||
|
||||
@@ -233,8 +233,8 @@ QUIZ_CASE(poincare_trigo_evaluate) {
|
||||
assert_parsed_expression_evaluates_to<float>("tanh(8*P*I/2)", "0", Radian);
|
||||
assert_parsed_expression_evaluates_to<float>("tanh(9*P*I/2)", "undef", Radian);
|
||||
// On C
|
||||
assert_parsed_expression_evaluates_to<float>("tanh(I-4)", "(-1.000279)+0.0006102409*I", Radian);
|
||||
assert_parsed_expression_evaluates_to<float>("tanh(I-4)", "(-1.000279)+0.0006102409*I", Degree);
|
||||
assert_parsed_expression_evaluates_to<float>("tanh(I-4)", "(-1.00028)+0.000610241*I", Radian, Cartesian, 6);
|
||||
assert_parsed_expression_evaluates_to<float>("tanh(I-4)", "(-1.00028)+0.000610241*I", Degree, Cartesian, 6);
|
||||
|
||||
/* acosh: [-1,1] -> R*i
|
||||
* ]-inf,-1[ -> Pi*i+R (even on real)
|
||||
|
||||
Reference in New Issue
Block a user