Commit Graph

51 Commits

Author SHA1 Message Date
Arthur Camouseigt
3dca515441 [VariableBox] Added sequences to the variable box
It is now possible to call the value of a defined sequence anywhere.

Change-Id: I1990e93c50f9add175b7ea274e07004ba63289e5
2020-11-04 15:32:58 +01:00
Arthur Camouseigt
c006ed7b10 [Sequence & Shared] Changed the location of various files
Moved sequences files to shared in order to allow the system to compile
without the app sequence.

Change-Id: Ia8349814a72776244acc41af964059f24e58cff0
2020-11-04 15:32:58 +01:00
Arthur Camouseigt
ed358590ce [Sequence] Changed the way sequences are parsed
Change-Id: If19b46a317e4f336ac857690827ab08e147ac75a
2020-11-04 15:32:58 +01:00
Ruben Dashyan
4a6b633c74 [poincare] Fix commit "Reducing an Expression which hasUnit in its children returns Undefined in general" 2020-02-12 15:13:25 +01:00
Ruben Dashyan
cc280373d0 [poincare] Reducing an Expression which hasUnit in its children returns Undefined in general 2020-02-12 15:13:25 +01:00
Émilie Feral
eb0f6153c5 [poincare] When reducing expressions, we check if an expression is a
matrix to know if it can be permuted in a multiplication for example.
This check has to be 'recursive'/'deep' to detect cases like "cos(3×confidence(cos(2)/25,3))"
2019-08-14 09:38:27 +02:00
Léa Saviot
26be1e4b0d [poincare] Use SortedIsMatrix when necessary 2019-08-08 16:29:38 +02:00
Léa Saviot
956cfc2bc4 [poincare] Expression:replaceWithUndefinedInPlace 2019-08-08 16:29:37 +02:00
Léa Saviot
c60cda3fb2 [poincare] Continue handling matrices in shallowReduce 2019-08-08 16:29:37 +02:00
Léa Saviot
61cf762eef [poincare] Expression::ReductionContext 2019-08-08 16:29:37 +02:00
Émilie Feral
7b5f3c570d [poincare] Change the way Expression are built 2019-02-21 11:29:35 +01:00
Émilie Feral
4841542750 [poincare] Add ComplexFormat argument to the approximation routine 2019-01-10 11:42:05 +01:00
Léa Saviot
e5f0959239 [poincare] Static Expression methods start with uppercase 2019-01-10 11:42:05 +01:00
Ruben Dashyan
93d8f60619 [poincare] Derivative, Integral, Product, Sum constructors check
their second parameter is of Symbol type.
2018-11-23 12:04:05 +01:00
Ruben Dashyan
23c07e02ca [poincare] New static Name() method in Expression subclasses
Replaces the name() method in ExpressionNode subclasses.
When necessary, the createLayout and serialize methods in thoses
subclasses were moved to their .cpp file.
2018-11-23 12:04:05 +01:00
Émilie Feral
31a5caff60 [poincare] Sum and Product can specify their variable name 2018-11-23 12:04:04 +01:00
Émilie Feral
ccbcf18811 [poincare] VariableContext holds an Expression instead of a Float<T> 2018-11-23 12:03:59 +01:00
Émilie Feral
a6663f524f [poincare] VariableContext hold a const char * instead of a char 2018-11-23 12:03:58 +01:00
Émilie Feral
365b145cf3 [poincare] Change names: LayoutReference-->Layout 2018-09-18 16:29:44 +02:00
Émilie Feral
616e4c0bcc [poincare] Change name: LayoutRef --> LayoutReference 2018-09-14 16:57:12 +02:00
Émilie Feral
3262c885aa [poincare] Fix Sum, Product, Sequence 2018-08-28 14:10:40 +02:00
Émilie Feral
d980bb3da9 [poincare] Change privateApproximate-->approximate 2018-08-28 10:59:49 +02:00
Léa Saviot
0a806a582a [poincare] Refactor operand() to childAtIndex() 2018-08-24 09:54:33 +02:00
Romain Goyet
b44e643b18 [poincare] EvaluationReference becomes Evaluation 2018-08-08 13:34:16 +02:00
Émilie Feral
54f9ea2d46 [poincare] Redesign of Expression: first attempt 2018-08-02 15:46:31 +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
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
d94ed82ab8 [poincare] Create class Approximation<T> to avoid useless conversion
between Decimal and float/double
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
a08b00aa5f [poincare] Sequence and Sum layouts 2018-07-13 14:30:20 +02:00
Léa Saviot
f579e95815 [poincare] Start removing ExpressionLayout 2018-07-03 17:33:06 +02:00
Émilie Feral
2bd93844cd [poincare] Bug Product([1 1], 1, 3): if the intermediate result is
nullptr, escape the evaluation and return an undefined expression
2018-05-23 09:56:26 +02:00
Léa Saviot
c4b5d4cf40 Merge branch 'SaisieJolieRebase1201' into SaisieJolieMerge10Apr
Change-Id: I802dbb9f7c0eebf75a1b6cd21ddd194e89b53752
2018-04-10 17:21:54 +02:00
Émilie Feral
6de71ae145 [poincare] Clean: convertFloatToText should be in PrintFloat instead of
Complex
2018-03-21 15:57:19 +01:00
Léa Saviot
55044d8e0b [poincare] Update Expression's privateCreateLayout().
We use the new layouts and no longer the old ones such as StringLayout
or BaselineRelativeLayout.

Change-Id: Ic15167b694c3adab46f348c8f823ce19b3e5ef33
2018-01-15 11:58:05 +01:00
Léa Saviot
0cc1d99a54 [poincare] Static and Dynamic Layout hierarchies.
Change-Id: I3b47dbd76552b77db762482932518a74c1996cc0
2018-01-15 11:58:01 +01:00
Émilie Feral
fda382cc0d [poincare] Change name: evaluate->approximate
Change-Id: I649a7c640190713dcf063a4148decd6038e62796
2017-11-24 13:31:44 +01:00
Romain Goyet
52bdf4a41f Merge branch 'cas_with_app_copy' into python_console 2017-11-21 18:44:38 +01:00
Émilie Feral
1d89a8602f [poincare] Add a context to setExpressionForSymbols in Context
Change-Id: I68b768aec350b75bfcf54a5bede2f9b1cdff7e20
2017-11-17 15:45:11 +01:00
Émilie Feral
53c66baa16 [poincare] Re-enable matrix in simplified expression-> handle matrix in
evaluate

Change-Id: I455845398f0799b9e25fd192ada7478c872ab892
2017-11-17 13:34:46 +01:00
Émilie Feral
f59581b313 [poincare] We do not have to put matrix at root anymore as matrix are
going to be handle in evaluate soon

Change-Id: Id04c164148ce4ef3fc1be078c3ea73801ac7c0a8
2017-11-17 13:34:46 +01:00
Émilie Feral
d5fc8d139f [poincare] First version of Simplification with matrix (no tests yet!)
Change-Id: I28ad4750ad31995836b23725f7d715669fcb7ae2
2017-11-10 15:22:33 +01:00
Jacob Young
da1e66e798 Fix #115 by fixing the math.h and cmath includes. 2017-10-13 18:08:15 +02:00
Émilie Feral
23629b0939 [poincare] Restructuration of poincare (no duplication of children
storage)

Change-Id: Ia10c3cc83e10d238750c6954b7c093d26b762c94
2017-09-21 13:49:06 +02:00
Émilie Feral
82e212e771 [poincare] Template for double
Change-Id: I7404bd5cefc9ef78a5dbd572c3874a557cded28e
2017-08-16 09:55:29 +02:00
Émilie Feral
1964d61fdc [libaxx] add cmath and use cmath instead of math.h when required
Change-Id: Id839b17d33c69e2e002f370e553ff35246a1bc90
2017-08-16 09:55:29 +02:00
Émilie Feral
f73ddcd08f [poincare] Evaluation return numerical matrix
Change-Id: I58dbc93ad22a086580a77318b2524db9c70e47d2
2017-08-03 13:47:11 +02:00
Émilie Feral
0796892f0a [poincare] Fix bugs in sequence
Change-Id: I04a6cc0fa381c444a116c5d601a2fdfc4c6b8710
2017-05-03 14:22:52 +02:00
Émilie Feral
bea3a97786 [poincare] Interrupt too long event when back key is down
Change-Id: I668efec0aefdd5d3baf7973942d4f44165a05f07
2017-05-03 14:22:50 +02:00