Commit Graph

1406 Commits

Author SHA1 Message Date
Émilie Feral
e3057d5c2b [poincare] Change multiplication sign
Change-Id: If58f62fa181ce7aac441d42d44ea65d68f0d6421
2017-10-25 18:19:01 +02:00
Émilie Feral
a1c15dd84d [poincare] First version of ArcCosine::immediateSimplify
Change-Id: I416db89ab4e689c082bf773d28575ee5b0e1a0ca
2017-10-25 18:19:01 +02:00
Émilie Feral
217a44c049 [poincare] Add context and angle unit as simplify parameters
Change-Id: I0167bf968da7cfd521676a7ace05792e5b560284
2017-10-25 18:19:00 +02:00
Émilie Feral
8ae77eb456 [poincare] Use scientific display when decimal are too small or too big
Change-Id: Ia09785f682e559d3572cb56bbb0eb2779af4d06b
2017-10-25 18:19:00 +02:00
Émilie Feral
b009cdfc87 [poincare] Implement Decimal::evaluate
Change-Id: Iaf2b1047fe59d69ddbc619127dadfb4880175944
2017-10-25 18:19:00 +02:00
Émilie Feral
36925e08c1 [poincare] Implement evaluate in Rational
Change-Id: I8ef2b879ce3f61c0c33ad478f831202788ece532
2017-10-25 18:19:00 +02:00
Émilie Feral
1363c3a65f [poincare] Integer class is not an expression anymore
Change-Id: Iee1037593752a3825b8b9b58f21e296aae71e2cf
2017-10-25 18:19:00 +02:00
Émilie Feral
a0ca7009ba [poincare] Implement Expression::containType
Change-Id: Ifa894768191cd75a5a529b50fd540e0bb2a10dc5
2017-10-25 18:18:59 +02:00
Émilie Feral
e982ef5e76 [poincare] Add a class decimal
Change-Id: Ifa036b40b589f35e3b83dbd287c3fd30a35b7b5a
2017-10-25 18:18:59 +02:00
Émilie Feral
942862dacf [poincare] Reimplement Integer::Division non recursively
Change-Id: Ifd51a787a08aa376ce73b9574987ee358a11e1df
2017-10-25 18:18:59 +02:00
Émilie Feral
7228e806db [poincare] Change signature of turnIntoPositive
Change-Id: I0ed8daee0a779ba921d266859b34f1d2d6c1705a
2017-10-25 18:18:58 +02:00
Émilie Feral
80a06054bb [poincare] Implement writeTextInBuffer for all expressions
Change-Id: I3777bd893621459dc0fb7df3cf6c0f9d20ff5c7b
2017-10-25 18:18:58 +02:00
Émilie Feral
11faf3eb70 [poincare] Add cos(pi/5) sin(°i/5) in the trigo table
Change-Id: I6826bd5228c2484def126be90ab0a569fb74ed83
2017-10-25 18:18:57 +02:00
Émilie Feral
44f2dd2ebc [poincare] Repair Multiplication::immediateSimplify
Change-Id: Ie63b2312d1465bbb7793258b8e3d2cca536a8c92
2017-10-25 18:18:57 +02:00
Émilie Feral
0ad79b50ad [poincare] Division::immediateBeautify: sin/cos -> tan
Change-Id: Iae3a3afa60809ae4c1593265b24405a962131304
2017-10-25 18:18:51 +02:00
Émilie Feral
0b79be058f [poincare] Tangent::immediateSimplify()
Change-Id: I9ecdf64640693679c9e797f1d7013886a23a3b9d
2017-10-16 13:05:59 +02:00
Émilie Feral
a9dacd18f3 [poincare] Merger Trigonometry and trigonometric function
Change-Id: Idff99ad2db109f7085a56daf288831eb2a69aa8b
2017-10-16 10:21:12 +02:00
Émilie Feral
9e76e62fe1 [poincare] Change name: tringonometrical->trigonometric
Change-Id: I4ba2e8a157808f10b5ae9d17ff12c843e5cc2906
2017-10-16 10:12:35 +02:00
Émilie Feral
b8751b2b50 [poincare] Factorize trigonometrical simplify
Change-Id: I324e1973b70d7cd20dd00f24a43c8659c1c55af9
2017-10-13 18:27:10 +02:00
Jacob Young
17ac54cad5 Use cmath in c++ files. 2017-10-13 18:08:15 +02:00
Émilie Feral
0a4845abde [poincare] Sine::immediateSimplify
Change-Id: Iab48a0e939386861c3ede2507dc48998e2bc6e9d
2017-10-13 17:45:05 +02:00
Émilie Feral
31407ac2ba [poincare] Complete trigonometrical table
Change-Id: I2a7bc541668afa3a131c25b6ce79ad3eb6a6a5fc
2017-10-13 17:42:39 +02:00
Émilie Feral
0743e91ed5 [poincare] Create a header for SimplificationRoot
Change-Id: I83f23c0b7b036e193510eb2c31943e9b6c32a2bc
2017-10-13 17:42:21 +02:00
Émilie Feral
47ce822c42 [poincare] Improve Cosine::immediateSimplify
Change-Id: Icc6329625895c9b33cf8342ab4cdea4ee748d5d4
2017-10-13 14:50:32 +02:00
Émilie Feral
1b4a553f1b [poincare] First version of Cosine::immediateSimplify
Change-Id: I4a87e55f0a9f317fabf9c6895dc4a06b3e535bc3
2017-10-13 11:31:20 +02:00
Émilie Feral
0c1af71950 [poincare] Homogenize beautify and simplify implementation
Change-Id: Id8fabad0534c7ab075738fd7ff2e99d4f6e6bb06
2017-10-13 11:30:11 +02:00
Émilie Feral
6b39093bac [poincare] Implement NaperianLogarithm::immediateSimplify
Change-Id: I1e07e283a2aab8ae8bd3e61867030e9ece76eedf
2017-10-12 15:26:27 +02:00
Émilie Feral
6d8bf23107 [poincare] Implement Logarithm::immediateSimplify
Change-Id: Ie2253da85c76860e10b9cf0bb4967b464c288a74
2017-10-12 15:02:44 +02:00
Émilie Feral
2cfaed4366 [poincare] Change default immediate simplify
Change-Id: I427b3b6d50bc47bf3fe2d64df263d40f9ecf79e0
2017-10-12 14:51:17 +02:00
Émilie Feral
79ded1be36 [poincare] In Addition::immediateSimplify, resolve on same denominator
Change-Id: I64bb666a2660b84168a9d0e5b36551723f56c1c0
2017-10-12 11:50:19 +02:00
Émilie Feral
64b3824119 [poincare] immediateSimplify should return Expression *
Change-Id: Ib0464cca0095095e022788c3a9c183eec600cf88
2017-10-12 11:47:52 +02:00
Émilie Feral
2b72316792 [poincare] Factorize Multiplication twice (before and after
distributing)

Change-Id: I271e8b6285fafd8dbe6520167435cdc65838e06b
2017-10-12 10:14:29 +02:00
Émilie Feral
304ba3fb30 [poincare] Add Power::immediateBeautify
Change-Id: Ibd325346d92288f269577569029cb851c24df5fc
2017-10-11 15:37:19 +02:00
Émilie Feral
90db4e0bd9 [poincare] Change design of immediateBeautify
Change-Id: Ifb30b89b30af1df7eca855cc2cea2da75206fc96
2017-10-11 15:36:54 +02:00
Émilie Feral
7898fcbf91 [Poincare] Mulitiplication::immediateSimplify always merge negative
powers at the end

Change-Id: I65cb22c12711e28229826f23fab816617c1ec10f
2017-10-11 11:59:27 +02:00
Émilie Feral
ffd49d81a5 [poincare] Division::immediateBeautify
Change-Id: I76f0f5a6a8cb46eda10f6e94f9817e1acd9df3f2
2017-10-10 17:46:26 +02:00
Émilie Feral
7449e4e5f6 [poincare] Avoid infinite reciprocal call in
simplifyRationalRationalPower

Change-Id: I4eeec4893dfffdb96f4b1dd0f92e05f8b397cd75
2017-10-10 15:57:02 +02:00
Émilie Feral
2cacda6d20 [poincare] Change isPositive method by int sign()
Change-Id: I575e7a48c4d5b82c93094f772bbafd41913646cc
2017-10-10 15:56:41 +02:00
Émilie Feral
6a0d958c4e [poincare] Factorize simplify code in dynamic hierarchy
Change-Id: I0ae0ab5e08e4661e6eab1344baf35a535d31cd04
2017-10-10 12:08:57 +02:00
Émilie Feral
6be0cb8b94 [poincare] Implement Addition::immediateBeautify
Change-Id: I98307a12937b5c4a9100a2040f2782521c523f9b
2017-10-10 11:57:12 +02:00
Émilie Feral
3d4a3789e3 [poincare] Add a simple test in rational
Change-Id: Idd94d1a6a3c6fa9173e99f0313b6abf07034c382
2017-10-10 11:56:53 +02:00
Émilie Feral
22250d9d91 [poincare] Clean code in Multiplication::simplify
Change-Id: If5fa80f4b6414c544c69a7f2384e95c4954b62ce
2017-10-10 11:56:35 +02:00
Émilie Feral
d8b1ad962b [poincare] Add a method beautify on expressions
Change-Id: Ib5cb1b595365518c9a33ba83da57a1b4d03b9385
2017-10-09 18:00:53 +02:00
Émilie Feral
afdd40c1b8 [poincare] Implement NthRoot::simpligy
Change-Id: I560ad496557782b7df461b28d74f3f0f520ba5e4
2017-10-09 15:42:40 +02:00
Émilie Feral
2112652a44 [poincare] Add rule in Multiplication::simplify
Change-Id: I851efee644f4cf11cf9358387403f83179d88aff
2017-10-09 15:42:16 +02:00
Émilie Feral
76411a9f7b [poincare] Implement AbsoluteValue::simplify
Change-Id: Ic7951ba78ba81441395a15a8019aaf3579b14c75
2017-10-09 14:13:55 +02:00
Émilie Feral
5ddcbbe4b7 [poincare] Implement isPositive for symbols Pi and e
Change-Id: I6fb3f605eaf62848b2e90b186c9adb00b330f91d
2017-10-09 14:02:16 +02:00
Émilie Feral
63583eb972 [poincare] Implement SquareRoot::simplify
Change-Id: I4c9c5be24c2c85c8750d9f2a530b452ddcc68a6b
2017-10-09 11:48:44 +02:00
Émilie Feral
0326ade090 [poincare] Clean
Change-Id: Iffbfdb053cae2853a35041041716026a26fe4e74
2017-10-09 11:34:50 +02:00
Émilie Feral
e5a581680a [poincare] In power::simplify, implement rule 2^(2+Pi)->4*2^(Pi)
Change-Id: Ic884c721039908df56f7c1a3fe5fee27495d9027
2017-10-09 11:34:07 +02:00