Émilie Feral
26e2e9be0d
[poincare] Add complex format as an argument of simplification
2019-01-10 11:42:04 +01:00
Émilie Feral
6fd3a155df
[calculation] Take into account the complex format 'real'
2019-01-10 11:42:04 +01:00
Émilie Feral
c6039423a9
[poincare] When simplifying an expression, also compute the approximation from the reduced
...
expression to avoid loss of precision.
If an expression is reduced to a ComplexCartesian(a, b), we compute the
approximation from ComplexCartesian(a,b) instead of going through the
potentially complicated expression resulting from beautifying
(sqrt(a^2+b^2)*exp(i*(arctan(b/a) -Pi/2*sign(b)) for example)
2019-01-10 11:42:03 +01:00
Émilie Feral
383ac004cf
[poincare] Take into account complex format in simplify
2019-01-10 11:42:03 +01:00
Émilie Feral
9efc9e02e6
[poincare] Revert simplifyForComplexFormat
2019-01-10 11:42:03 +01:00
Émilie Feral
8f63416097
[calculation] Fix Calculation operator ==
2019-01-10 11:42:03 +01:00
Émilie Feral
79e7fb2183
[calculation] Use ParseAndSimplifyForComplexFormat instead of
...
ParseAndSimplify
2019-01-10 11:42:03 +01:00
Léa Saviot
fb44f8617c
[apps/calculation] Fix display exact and approx results
...
If the results are equal but their layouts not, because of the number of
significant digits for instance, display both the equal and approximate
results.
2018-12-03 12:32:51 +00:00
Émilie Feral
cf92eb8506
[poincare] Discard useless argument 'replaceSymbols' from simplification
...
routine
2018-11-30 09:53:31 +01:00
Léa Saviot
53e4a290f7
[poincare] Rename Expression:parse in Parse
2018-11-23 12:04:09 +01:00
Léa Saviot
33676e915a
[apps] Check that serialized expression is not too long in Graph
2018-11-23 12:04:09 +01:00
Léa Saviot
a289d77425
[apps/calculation] Fix non returning method
2018-11-23 12:04:08 +01:00
Léa Saviot
63e83c246b
[poincare] Undefined::Name() gives "undef"
2018-11-23 12:04:08 +01:00
Léa Saviot
1cb9d5445c
[apps/calculation] Do not display approximate output if it is undef
2018-11-23 12:04:08 +01:00
Léa Saviot
789d17189e
[apps/calculation] Comment why shouldOnlyDisplayExactOutput is needed
2018-11-23 12:04:07 +01:00
Léa Saviot
5d6db930fd
[apps/calc] Fix display glitch when doing 1.2->a (cell not high enough)
2018-11-23 12:04:07 +01:00
Léa Saviot
d411ff292e
[poincare] Do not parse 1>ans
2018-11-23 12:04:07 +01:00
Émilie Feral
4f2985e6fb
[calculation] Replace symbols when simplifying
2018-11-23 12:04:03 +01:00
Léa Saviot
4d71a3a4c6
[apps/poincare] Do not replace symbols in result of 3+c->f(x)
2018-11-23 12:04:03 +01:00
Léa Saviot
d083d05609
[apps/calculation] Display the exact layout only when the exp is Store
2018-11-23 12:04:03 +01:00
Léa Saviot
a7a719df4a
[poincare] Handle functions in replaceSymbolWithExp and similar methods
2018-11-23 12:03:59 +01:00
Léa Saviot
2e2bf96bca
[apps/poincare] use Symbol::k_ans constexpr char *
2018-11-23 12:03:58 +01:00
Émilie Feral
7f72f820a0
[poincare] Get rid of SpecialSymbols::Ans
2018-11-23 12:03:58 +01:00
Léa Saviot
f6edf05708
[calculation] Compare simplified exact and approx outputs to determine =
2018-11-19 18:02:55 +01:00
Léa Saviot
ed5a6d4a03
[apps/calculation] Remove unneeded arguments
2018-11-19 18:02:55 +01:00
Lionel Debroux
70a8d06cfe
[apps, poincare] Optimize the preferences singletons' usage by removing superfluous checks in the setters, and performing manual CSE in the callers.
...
Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr >
2018-10-23 11:49:09 +02:00
Lionel Debroux
1a8c6b6ae9
[poincare, escher, ion, apps] Split the huge umbrella header poincare.h, to reduce build time.
...
This should be a NFC, but surprisingly, it also reduces size... so what does it change ?
2018-10-23 11:49:09 +02:00
Émilie Feral
3e99b07adb
[calculation] Calculation: output display
...
When reducing an input, Float expression can appear (to avoid Infinity
(2.1234567^201).
Consequently, we only the approximate output if the
exact output contains a Float.
2018-09-26 16:18:56 +02:00
Émilie Feral
8604e73e97
[calculation] No Expression memoization in Calculation: delay the
...
overflow of the TreePool
2018-09-25 16:55:50 +02:00
Léa Saviot
8b75802746
[calculation] Don't recompute HistoryViewCell layout if same calculation
2018-09-20 17:21:34 +02:00
Émilie Feral
365b145cf3
[poincare] Change names: LayoutReference-->Layout
2018-09-18 16:29:44 +02:00
Émilie Feral
d17b0f1afb
[poincare] Get rid of char table of variable size
2018-09-17 17:14:43 +02:00
Émilie Feral
616e4c0bcc
[poincare] Change name: LayoutRef --> LayoutReference
2018-09-14 16:57:12 +02:00
Émilie Feral
2cc01dc2a5
[calculation] Calculation model does not need to override copy
...
constructor
2018-09-06 16:37:36 +02:00
Émilie Feral
367f628b5c
[calculation] Free the pool of expressions when tidying the application
2018-09-06 14:07:41 +02:00
Léa Saviot
e3a09286ac
[poincare] Remove AllocationFailures
2018-09-05 16:19:11 +02:00
Léa Saviot
71c807b565
[poincare] Node->isDefined becomes !Node->isUninitialized
2018-08-14 16:40:12 +02:00
Émilie Feral
b5f66171fc
[calculation] Fix all reference to Poincare
2018-08-10 13:18:46 +02:00
Émilie Feral
e9c42e221b
[calculation] Fix Calculation
2018-08-10 10:14:59 +02:00
Émilie Feral
7c1649670a
[shared] Fix PoincareHelpers
2018-08-10 10:13:25 +02:00
Léa Saviot
5a5f2403da
[poincare] Fix calculation height allocation failure handling
2018-07-30 15:36:45 +02:00
Léa Saviot
2d4e36b98c
[apps/calc] Handle alloc failure when computing calculation height
2018-07-30 14:47:41 +02:00
Émilie Feral
48f890ef93
[poincare] AngleUnit, FormatComplex and PrintFloatMode are now
...
enumeration of Preferences class
2018-07-30 13:48:04 +02:00
Léa Saviot
a3032e5ec3
Merge branch Tree into master
2018-07-19 14:01:02 +02:00
Émilie Feral
e61a408a0a
[poincare] Get rid of AngleUnit::Default
2018-07-18 17:09:07 +02:00
Émilie Feral
2e7c08241a
[poincare] Change writeTextInBuffer signature (parameters are float
...
display mode and number of significant digits)
2018-07-18 16:32:50 +02:00
Émilie Feral
b8af15f1ab
[poincare] change createLayout signature
...
- CreateLayout depends on the float display mode and the number of
significant digits
- Float display mode does not have a default value anymore
2018-07-18 16:32:50 +02:00
Émilie Feral
dd0bc491f6
[poincare] Replace Poincare::Complex by std::complex
2018-07-18 16:32:49 +02:00
Léa Saviot
f579e95815
[poincare] Start removing ExpressionLayout
2018-07-03 17:33:06 +02:00
Émilie Feral
e9c4485eeb
Merge branch 'solver' into upgrade-1.6.0
2018-06-12 09:47:41 +02:00