Commit Graph

539 Commits

Author SHA1 Message Date
Gabriel Ozouf
89c50509d8 [shared] InteractiveCurveViewRange::isOrthonormal
The old method isOrthonormal has been split into two :
  - shouldBeNormalized tests whether the range is close enough to a
    normal range
  - isOrthonormal tests whether the range is strictly orthonormal, but
    takes into account imprecisions of floating-point arithmetic
2021-01-05 11:01:45 +01:00
Gabriel Ozouf
24456780e6 [regression] Invalidate cursor when selected dot does not exist 2020-12-17 17:10:56 +01:00
Hugo Saint-Vignes
479f34502f [apps/shared] Rename methods and Factorize comparison logic 2020-12-16 16:16:26 +01:00
Hugo Saint-Vignes
b7bbb258a8 [apps/regression] Fix NaN comparison in isCursorHanging method 2020-12-16 16:16:26 +01:00
Hugo Saint-Vignes
78cb340065 [apps/regression] Only uniformize c if needed 2020-12-10 16:42:59 +01:00
Hugo Saint-Vignes
6e318593ae [apps/regression] Code review fixes 2020-12-10 16:42:59 +01:00
Hugo Saint-Vignes
79e59f525e [apps/regression] Ensure unicity for trigonometric regression 2020-12-10 16:42:59 +01:00
Hugo Saint-Vignes
c28a5198d6 [apps/regression/test] Add a test case, factorize logic 2020-12-09 17:31:14 +01:00
Hugo Saint-Vignes
a08e3e1024 [apps/regression] Update comment 2020-12-09 17:31:14 +01:00
Hugo Saint-Vignes
357db4493d [apps/regression] Add TODO to improve coefficient update 2020-12-09 17:31:14 +01:00
Hugo Saint-Vignes
e17ff842b5 [apps/regression/test] Update trigonometric tests 2020-12-09 17:31:14 +01:00
Hugo Saint-Vignes
d0f40f0177 [apps/regression] Set coefficient c initial value to 0 2020-12-09 17:31:14 +01:00
Émilie Feral
fe4e2e3e9d Misc. clang static analyzer fixes 2020-12-09 13:34:36 +01:00
Martijn Oost
76eb155ed5 [NL] translation fixes 2020-12-07 14:12:29 +01:00
Hugo Saint-Vignes
1fd970fe50 [apps/regression] Remove TODO and update comment
Change-Id: I049645e03c82e953dde14f363d113b718408efd5
2020-11-26 17:52:42 +01:00
Hugo Saint-Vignes
e9662e4c45 [apps/regression] Compute numberOfPoints automatically
Change-Id: I35a1902aeda06cc80ae8808d886b3e161bae8ad9
2020-11-26 17:52:42 +01:00
Hugo Saint-Vignes
72e8ac7d02 [apps/regression] Add tests for Trigonometric regressions
Change-Id: Ie4363d79a53c09369b24924b35bf26a66e9a8f93
2020-11-26 17:52:42 +01:00
Hugo Saint-Vignes
06d7104776 [apps/regression] Improve initial coefficient value
Change-Id: I2026b8de7e031f7e22921be2def800fa71d7a4e4
2020-11-26 17:52:42 +01:00
Hugo Saint-Vignes
1025fd9937 [apps/regression] Use cmath for sin and cos functions
Change-Id: I670eda49a73d9bf1d1d75194178344adda9b1014
2020-11-26 17:52:42 +01:00
Hugo Saint-Vignes
c55eb6b028 [apps/regression] Fix angleUnit dependent coefficients for trigonometric model
Change-Id: I8027c131b0fd7b020eb502168ac068a0b84da1e4
2020-11-26 17:52:42 +01:00
Hugo Saint-Vignes
f2ba5daab9 [apps/regression] Comment assert that cannot be satisfied
Change-Id: Iaae5ee4292e33f923f47590ee4520bac44c5d750
2020-11-04 15:58:31 +01:00
Hugo Saint-Vignes
f58633b03c [apps/regression] Add escape case if data is not suitable for regression
Change-Id: Ie2e028a5030e1b0d3f133efdde971645d5b4687b
2020-11-04 15:58:31 +01:00
Hugo Saint-Vignes
bb8a28ade0 [poincare/zoom] Simplify plot ranges after adding margins
Change-Id: If8904ca4e7d306376de785a125fe5fba168de718
2020-11-04 15:58:26 +01:00
Hugo Saint-Vignes
2f97dab6d1 [apps/shared] Add toggle buttons in Graph view
Change-Id: I7548d11fb114b2605ce34d3bda0776277b79ff9d
2020-11-04 15:58:25 +01:00
Gabriel Ozouf
6f8d80f8ae [regression/store] Sanitize default range
Add range sanitation and checks for orthonormal ranges in setDefault.

Change-Id: I733a8808e944a477573a76b52fef479853b8ad6d
2020-11-04 15:58:22 +01:00
Gabriel Ozouf
190568ea84 [interactive_curve_view_controller] Fix Cursor
Restore the permanence of the cursor between accesses to the graph
window.
The cursor used to be reset when the models had been modified. As there
is no longer a system in place to track these modifications, we manually
check if there is a curve beneath the cursor before reseting it.

Change-Id: I6f71fc17744b5bf1ee552c82126bb4a08b823629
2020-11-04 15:58:19 +01:00
Gabriel Ozouf
6be5e7d62c [apps/shared] Change Zoom API
Moved some code around to decrease redundancy and put more of the logic
into Poincare::Zoom

Change-Id: I4804cf39493ac7f2f0b3c4eb554e5c15c3cef1c9
2020-11-04 15:58:18 +01:00
Gabriel Ozouf
7322751453 [regression] Compute Y range for curve
Regression's automatic Y range used to rely on the Yauto feature. Since
it has been removed, it is now done in Store::setDefault.

Change-Id: I1b6653bb8ebe0ba99decff05bae29bd5a69a9f6c
2020-11-04 15:58:13 +01:00
Gabriel Ozouf
13d1b7077c [apps/shared] Removed method computeYRange
This method of InteractiveCurveViewRangeDelegate was only used to
compute the Y range when Yauto was on.

Change-Id: I9b688a87e16fc58c7d2b00eb071076b98f945df6
2020-11-04 15:58:09 +01:00
Gabriel Ozouf
8970e294aa [apps] Remove modelVersion from curves apps
The graph range used to be reset to default whenever all functions were
modified. As we no longer want to reset the range without the user's
input, we do not need to track whether the functions changed at all.

/!\ As of this commit, there is no longer a way to restore the default
zoom, until a new automatic zoom button is added.

Change-Id: Ie74e8fd61e13055fa6ce2b2d1e883182d4ecffce
2020-11-04 15:58:09 +01:00
Gabriel Ozouf
1a5661fd4c [apps/range_parameter_controller] Remove YAuto
This allows for a great deal of simplifications in the class
RangeParamterController.

Change-Id: I5de55d4e8e1f598eb13b08fb8f042907f55b2fa8
2020-11-04 15:58:08 +01:00
Gabriel Ozouf
5a07db3452 [apps] Remove "Preadjustments" menu for curves
Change-Id: I1a30efd502c5db36325d87fa0f1dffacc37a4f1c
2020-11-04 15:58:08 +01:00
Serenela Moreira
59b2a64830 [pt] corrected prime factors
And improved translation of another detail
2020-11-04 15:33:04 +01:00
Hugo Saint-Vignes
fa9c9c1567 [apps/regression] Add todos for logistic regressions
Change-Id: If2ddc0527d8be89970803de240a6760d037570e2
2020-11-04 15:33:03 +01:00
Hugo Saint-Vignes
e517128a9e [apps/regression] Compute R2 better when dealing with constant regression
Change-Id: Ic724d8d96cb723718a1ce57e72132972a782fc5e
2020-11-04 15:33:03 +01:00
Gabriel Ozouf
6a9a5dbe27 [i18n] Factor duplicate messages in universal
Units with the same name in all available languages have been moved to
the new file toolbox.universal.i18n.

Change-Id: I82ef362ca335dc61da5f3bca67714a9ae409793d
2020-11-04 15:33:01 +01:00
Arthur Camouseigt
1d71a14d2c [Context] Modifying context method signature for sequences
This allows sequences to be used in functions by calling u(x)

Change-Id: I336e84a19bf9b3dd0f2e435d1aaebda3c9e71ec8
2020-11-04 15:32:58 +01:00
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
Gabriel Ozouf
87591369b8 [apps/regression] Model stays selected in menu
When opening the window for choosing the regression model, the row
corresponding to the currently selected model will be highlighted.

Change-Id: I65772186fc302c3706a5571f98ecff620e4a8ca9
2020-11-04 15:11:44 +01:00
Hugo Saint-Vignes
bd2609bcba [apps/graph] Remove horizontal margins when panning on some graph calculations
Change-Id: I1a28555c5b4f04986b223617ab15110711a74841
2020-11-04 15:07:20 +01:00
Hugo Saint-Vignes
e27c668c40 [apps,escher,kandinsky,poincare,python] Replace every "grey" with "gray"
Change-Id: I60a232849dce90f70e6977b6024d6e9b1ce1b731
2020-11-04 15:07:20 +01:00
Gabriel Ozouf
4007f4d452 [apps] Tweaked panning for better cache alignement
Method InteractiveCurveViewRange::panToMakePointVisible now moves the
range of a whole number of pixels when panning horizontally. This allows
the cache of cartesian functions not to be invalidated.

Change-Id: Idb9904fef134dd13458e1f2287b0fe5145e8aec7
2020-11-04 14:45:35 +01:00
Arthur Camouseigt
09e39ad890 [Stat+Reg] Allowing lists of values to be sorted
Change-Id: I181bb55443bf87356d127eb6c56ff6140806fdea
2020-11-04 14:45:35 +01:00
Hugo Saint-Vignes
3db1cad18b [poincare] Move IsApproximatelyEqual to a better helper
Change-Id: I056a96b3721005e01c6ef3f166a80a08195ff338
2020-11-04 14:45:34 +01:00
Hugo Saint-Vignes
b60c67ff88 [apps] Factorize scrolling speed for long repetition
Change-Id: I5fcfaf04e418942664641c4b1cd044cda7f5aebb
2020-11-04 14:45:34 +01:00
Hugo Saint-Vignes
241a217f58 [apps/graph] Add fast scroll for regression and sequence graph views
Change-Id: I6b36e929234ec5dc161b0eefb20eb84aa360fe3b
2020-11-04 14:45:34 +01:00
Hugo Saint-Vignes
eed1648363 [apps/statistics] Improve variance accuracy for statistics
Change-Id: Ie8f6f93c8e95940662e72a23619b53ac4ab0d6b6
2020-11-04 14:45:34 +01:00
Hugo Saint-Vignes
29b0e86225 [quiz] Improve test possibilities for regression and statistics
Change-Id: I4414fad24e10dcbd56cd9aff1e35e00ba66dda2c
2020-11-04 14:45:34 +01:00
Hugo Saint-Vignes
d16e49fc5f [apps/regression] Improve Variance precision
Change-Id: Ia9e406b14c0baec76835e226a7801ba73ff9174e
2020-11-04 14:45:34 +01:00
Hugo Saint-Vignes
db69f6a6f5 [regression] Implement R2 computation using evaluated values
Change-Id: Iecf8cb84f092c2ec8a9bc17bc0265d7dddaac36c
2020-11-04 14:45:34 +01:00