Commit Graph

451 Commits

Author SHA1 Message Date
Émilie Feral
373409b50e [apps/regression] Fix test compilation 2020-02-12 15:13:22 +01:00
Émilie Feral
60048cb9a9 [poincare] Create a ContextWithParent that implements expressionTypeForIdentifier 2020-02-12 15:13:22 +01:00
Émilie Feral
d61336936e [apps/shared] Create a class Dots to share dots masks between CurveView
and RoundCursorView. Use the same dot for illustrations of additional
results in Calculation app and Function app
2020-02-12 15:13:21 +01:00
Léa Saviot
f6c15198bc [apps/regression] Power regression uses logarithm of series
This matches other apps results and we directly compute the values from
the data instead of doing a gradient descent.
2020-02-12 15:13:21 +01:00
Léa Saviot
e0bbc73b8b [apps/regression] Fix code cleaning 2020-02-12 15:13:17 +01:00
Léa Saviot
4e6378fe18 [test/regression] Add a logistic test 2020-02-12 15:13:16 +01:00
Léa Saviot
a8ead6b66e [apps/regression] Better initialisation of logistic model coefficients
It provides a better fit for:
x = {0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0}
y = {5.0, 9.0, 40.0, 64.0, 144.0, 200.0, 269.0, 278.0, 290.0, 295.0}
(coeffs should be {64.9, 1.0, 297.4})
2020-02-12 15:13:16 +01:00
Léa Saviot
3747b5a4b0 [apps/regression] Virtualize only the specialized part of initCoefs 2020-02-12 15:13:16 +01:00
Émilie Feral
3a19939a64 [apps/regression] Missing ; 2020-02-12 15:13:16 +01:00
Ruben Dashyan
89aa0ac302 [apps/regression/graph_controller] Clean moveCursorHorizontally 2020-02-12 15:13:16 +01:00
Léa Saviot
1434158bee [apps/graph] Faster curve navigation after some time
If the user presses the LEft/Right keys for a long time, the cursor will
move faster.
2020-02-12 15:13:15 +01:00
Léa Saviot
9f018eb9d9 [escher/view] setFrame and layoutSubviews can be forced 2020-02-12 15:13:15 +01:00
Léa Saviot
a233b02623 [apps/regression] Better coef initialisation for trigonometric_model
It improves the trigonometric fit of
x = {0.0, 0.975, 1.97, 2.945, 3.971, 4.887, 5.924, 6.964, 7.979, 8.974, 9.998};
y = {-23.784, -23.322, -28.322, -18.422, -4.813206, 7.146241, 16.631, 16.632, 9.209189, -6.050863, -19.659};
2020-02-12 15:13:15 +01:00
Émilie Feral
ccf848a9eb [poincare] Add test: do not expand multinome when reduction target is
System
2019-11-21 09:47:16 +01:00
Léa Saviot
19921ec125 [apps/regression/graph] Fix roundCursorView drawing glitch
Scenario:
f(x)=cos(x)
CalculateZeroes -> drawing glitch
Right, Back -> drawing glitch
2019-10-04 09:38:23 +02:00
Léa Saviot
2dee8f2b1f [apps/regression] Fix cursor redrawing when changing cursor type
Scenario:
double x[numberOfPoints] = {0.0, 0.975, 1.97, 2.945, 3.971, 4.887, 5.924, 6.964, 7.979, 8.974, 9.998};
double y[numberOfPoints] = {-23.784, -23.322, -28.322, -18.422, -4.813206, 7.146241, 16.631, 16.632, 9.209189, -6.050863, -19.659};
Quadratic regression, navigate on the points then go on the
regressioncurve -> there is a drawing glitch
2019-09-30 17:05:17 +02:00
Émilie Feral
4d593a6149 [poincare] PrintFloat: take into account the distinction between char
and glyph length in ConvertFloatToText
2019-09-26 11:26:48 +02:00
Émilie Feral
3872785d57 [escher] Add Metric::CellMargin 2019-09-26 11:26:48 +02:00
Émilie Feral
38eaf9b051 [apps/regression] even_odd_double_buffer_text_cell_with_separator:
simplify selectFirstText code
2019-09-26 11:26:48 +02:00
Émilie Feral
2c84bb1031 [apps/regression] Fix bug: a one-pixel-large band was not drawn because
we divided an odd coordinate by two.
2019-09-26 11:26:48 +02:00
Émilie Feral
743bf7cf28 [escher] EvenOddMessageTextCell wraps the message view with a 2-pixel
margins (avoid almost duplicate classes)
2019-09-26 11:26:48 +02:00
Émilie Feral
6f70924893 [escher] EvenOddBufferTextCell wraps the text view with a 2-pixel margin 2019-09-26 11:26:48 +02:00
Léa Saviot
4caf9f5197 [coding style] Make some methods const 2019-09-09 20:05:14 +02:00
Léa Saviot
e67160b878 [apps/graph] Faster cursor scrolling on device
This commit is quite dirty but works well
2019-09-09 16:56:32 +02:00
Ruben Dashyan
86768b2eec [apps/*/go_to_parameter_controller] Remove I18n::Message parameter from constructor 2019-09-05 11:58:51 +02:00
Ruben Dashyan
8a2ceb0440 [apps/*/go_to_parameter_controller] Use setParameterName 2019-09-05 11:58:51 +02:00
Léa Saviot
553c649a80 [apps] Fix Stores margins 2019-09-04 13:43:37 +02:00
Émilie Feral
45d42287e2 [apps/shared] MemoizedCurveViewRange is composed of two Range1D to
factorize setters and getters
2019-09-03 15:34:35 +02:00
Émilie Feral
0f43a04225 [apps/graph] Implement move cursor vertically on graph with
parametric/polar curves
2019-08-30 17:15:12 +02:00
Ruben Dashyan
5eae3563f5 [apps/regression/app] Remove redundant call
setDefault() will be called when the GraphView appears
2019-08-29 15:13:41 +02:00
Ruben Dashyan
e99196b2ea [apps/interactive_curve_view_range] Clean yAuto 2019-08-29 15:13:41 +02:00
Ruben Dashyan
04fcc0eac4 [apps/*/editable_cell_table_view_controller] Use typeAtLocation 2019-08-29 13:51:49 +02:00
Léa Saviot
24d1594255 [apps] Draw curves according to their definition domain 2019-08-29 11:07:22 +02:00
Léa Saviot
c71ef7ff79 [apps/graph] Evaluation methods renaming 2019-08-29 11:07:22 +02:00
Léa Saviot
28a721e96e [apps] Start fixing apps as cursor has new member variable 2019-08-29 11:07:22 +02:00
Léa Saviot
7ea7ecd3c2 [poincare/coordinate2D] Rename member values to x and y 2019-08-29 11:07:22 +02:00
Ruben Dashyan
0f3fc46ad1 [escher/message_table_cell_with_chevron_and_expression] subAccessoryView has margin by default 2019-08-29 11:07:22 +02:00
Ruben Dashyan
fbee2d81e4 [apps/*/curve_view] Use drawCartesianCurve specifically for drawing Cartesian curves 2019-08-29 11:07:22 +02:00
Léa Saviot
dcb5a061e9 [apps/poincare] Clearer method names 2019-08-27 17:24:57 +02:00
Léa Saviot
0840ca7a1e [apps/poincare] Move NormalDistribution to Poincare 2019-08-23 13:47:52 +02:00
Léa Saviot
fbec61db47 Merge branch 'feature/Gradians' of https://github.com/boricj/epsilon 2019-08-22 11:25:25 +02:00
Léa Saviot
1e483d60ce [poincare] Coordinate2D out of the Expression class 2019-08-13 18:00:15 +02:00
Léa Saviot
c2b4d2b760 [strlcpy] Assertions on len parameter 2019-08-08 17:22:06 +02:00
Léa Saviot
b0b10f184e [poincare/print_float] convertFloatToText -> ConvertFloatToText 2019-08-08 17:22:06 +02:00
Émilie Feral
9fbec16db4 [poincare] Merge MultiplicationImplicit and MultiplicationExplicit (they
were required if we wanted to parse into two distincts expression 2π and
2*π but don't)
2019-08-08 17:22:05 +02:00
Émilie Feral
c1cd0302b8 [poincare] Fix typo: explicite --> explicit, implicite --> implicit 2019-08-08 17:22:04 +02:00
Émilie Feral
fd25b678ce [poincare] Split Multiplication into MultiplicationExplicite and
MultiplicationImplicite
2019-08-08 17:22:02 +02:00
Émilie Feral
869ab35c54 Makefile: build only necessary files for test target 2019-08-08 17:22:01 +02:00
Émilie Feral
059c596a80 Makefiles: avoid building all sources for each target; introduce more
modularity
2019-08-08 17:22:01 +02:00
Léa Saviot
61cf762eef [poincare] Expression::ReductionContext 2019-08-08 16:29:37 +02:00