Commit Graph

2386 Commits

Author SHA1 Message Date
Léa Saviot
fc7fa4b152 [poincare] Fix cursor position when inserting parenthesis 2018-10-11 17:00:35 +02:00
Romain Goyet
c183f0147e [kandinsky] Get rid of KDText 2018-10-11 16:44:02 +02:00
Romain Goyet
f8beae3b86 [kandinsky] Move to KDFont 2018-10-11 16:44:02 +02:00
Léa Saviot
6221669a7e [poincare] Fix Decimal::templatedApproximate
Before, we used an unsigned mantissa and needed to set the sign
afterwards, but with the signed mantissa we must not do this.
2018-10-10 10:27:48 +02:00
Émilie Feral
78ccb69b59 [poincare] Create Expression::reduceChildren and assert that deepReduce
is not called on a Matrix
2018-10-08 16:37:57 +02:00
Émilie Feral
3677b2f1d0 [poincare] Improve Trigonometry::RoundToMeaningfulDigits comment 2018-10-05 14:56:27 +02:00
Émilie Feral
b3c9d2ed31 [poincare] Fix tests on properties with new poincare_polynomial_degree
implementation on Derivative and Integral
2018-10-05 14:56:27 +02:00
Émilie Feral
3b42ddf546 [poincare] Fix Trigonometry::RoundToMeaningfulDigits: takes the argument
into account to avoid sin(1E-15) = 0
2018-10-05 14:56:27 +02:00
Émilie Feral
e4b4fd7e52 [poincare] Clean wrong assertion 2018-10-05 11:46:59 +02:00
Émilie Feral
2297d1a7aa [solver] Escape undefined equations 2018-10-05 11:46:59 +02:00
Léa Saviot
81cf737dd5 [poincare] Fix derivative and integral polynomialDegree 2018-09-28 13:53:00 +02:00
Émilie Feral
961a17b4e0 [poincare] Change replaceSymbolWithExpression implementation to be alike
deepReduce and deepBeautify
2018-09-26 16:19:09 +02:00
Émilie Feral
39d47577a0 [poincare] Add tests on Decimal 2018-09-26 16:18:56 +02:00
Émilie Feral
d0e49ba1d0 [poincare] Decimal comparison: 1.000E10 == 1E10 2018-09-26 16:18:56 +02:00
Émilie Feral
0af8f273fc [poincare] Integer is not an Expression anymore 2018-09-26 16:18:56 +02:00
Émilie Feral
5096f8bf53 [poincare] Decimal: Fix zero at the end of the mantissa
We want to keep extra 0 in mantissa if entered by the user but get rid of them
if they are due to rounding or if the Decimal was built from a float/double.
2018-09-26 16:18:56 +02:00
Émilie Feral
b7649bab8a [poincare] deepReduce is authorized on non-matrix expressions only 2018-09-26 16:12:31 +02:00
Léa Saviot
7da49646ce [poincare] Make Complex<T> constructors explicit. 2018-09-26 14:38:34 +02:00
Émilie Feral
9d471552c7 [poincare] Tests: fix expression_debug to be able to print_expression 2018-09-26 09:37:39 +02:00
Léa Saviot
b8408d2575 [poincare] Remove SerializationHelperInterface
All TreeNodes are now serializable. This removes a pointer to virtual
table from the nodes (for instance, an ExpressionNode was 24o, now 16o).
It also remove 4K of code in the binary.
2018-09-25 17:55:41 +02:00
Émilie Feral
06776185f0 [poincare] Add test on Number parsing 2018-09-25 16:52:38 +02:00
Émilie Feral
a8a26fc055 [poincare] Decimal: mantissa has no extra 0 at the end 2018-09-25 16:52:38 +02:00
Émilie Feral
32276680a8 [poincare] Number: fix ParseDigits to correctly parse "1." 2018-09-25 16:52:38 +02:00
Émilie Feral
837bbaeec8 [poincare] Decimal: m_exponent of 0 is always 0 2018-09-25 16:52:38 +02:00
Émilie Feral
2f259efe86 [poincare] Clean useless enum entry in Preferences 2018-09-25 15:13:31 +02:00
Émilie Feral
b617ea36d1 [settings] EditionMode: display the natural mode first 2018-09-25 15:13:31 +02:00
Émilie Feral
eebb405cd5 [kandinsky] Add the degree symbol to Charset 2018-09-25 15:13:31 +02:00
Léa Saviot
e953a02f97 [poincare] Handle overflow in Integer 2018-09-25 13:21:37 +02:00
Léa Saviot
99b449f7fb [poincare] Integer::ucmp special case for Overflows 2018-09-25 10:53:22 +02:00
Léa Saviot
8105a000ab [poincare] Add Upper case to Poincare static Init function 2018-09-25 10:42:47 +02:00
Léa Saviot
5b5211be24 [poincare] Tidy Integer buffer on Poincare exception 2018-09-25 10:42:47 +02:00
Émilie Feral
68157e7c70 [poincare] getLinearCoefficients: the equation from which we look for
coefficients can be Undefined at some point (because it is the reduction
of 0*inf for instance)
2018-09-24 18:24:17 +02:00
Émilie Feral
2bf62f2304 [poincare] Fix Decimal(double) constructor 2018-09-24 18:23:24 +02:00
Léa Saviot
2fa6d4eb83 [poincare] When num or den of a division is Overflow, return overflow 2018-09-24 14:33:04 +02:00
Léa Saviot
c12b86cdd4 [poincare] Check if Expression is Rational before casting it 2018-09-24 11:45:49 +02:00
Léa Saviot
83042408b4 [poincare] Add missing test file 2018-09-21 16:26:28 +02:00
Léa Saviot
5ee4d1dd95 [poincare] Add poincare/test/tree/helpers.o in Makefile 2018-09-21 16:14:12 +02:00
Léa Saviot
59c8c801c5 [poincare] Clean compilation warnings in poincare/test 2018-09-21 16:00:21 +02:00
Léa Saviot
d93ed2a1ce [poincare/tests] Use quiz_assert instead of assert in tests 2018-09-21 15:06:13 +02:00
Léa Saviot
732a8713e4 [poincare] Remove included header 2018-09-21 15:03:10 +02:00
Léa Saviot
2d914c7771 [poincare] Fix type conversion 2018-09-21 14:55:17 +02:00
Émilie Feral
47e78a79fa [poincare] Special cases of Logarithm: log(0,0), log(1,0), log(0,x),
log(x,0) ...
2018-09-21 11:07:54 +02:00
Léa Saviot
a3d4e81c9f [poincare] Fix BinomialCoefficientLayoutNode rendering 2018-09-20 17:28:14 +02:00
Léa Saviot
4edaac883f [poincare] Remove dead code 2018-09-20 16:46:34 +02:00
Léa Saviot
f5418e077e [poincare] Fix TreeNode log 2018-09-20 16:46:34 +02:00
Léa Saviot
986c04dfd5 [poincare] Make HorizontalLayoutNode::positionOfChild faster and lighter 2018-09-20 16:46:34 +02:00
Émilie Feral
6b95ea42c7 [poincare] Trigo: Add commented tests 2018-09-20 15:55:22 +02:00
Émilie Feral
1577063ad2 [poincare] Logarithm: simplify log_b(r) -> c+log_b(r') with r = b^c*r' 2018-09-20 15:55:22 +02:00
Émilie Feral
0e1fd1bad7 [poincare] Arithmetic::PrimeFactorization return the number of prime
factors found
2018-09-20 15:55:22 +02:00
Léa Saviot
9ae6a3a9d2 [poincare] Remove TODO comments 2018-09-20 13:32:47 +02:00