Commit Graph

46 Commits

Author SHA1 Message Date
Yaya-Cout
169fb7404e Fix spelling (#128)
* Fix spelling in .cpp files

* Fix spelling in all files
2022-01-20 17:21:35 +01:00
Arthur Camouseigt
018dd91ca1 [Probability] Changed distribution parameter's type to double
Plots are still rendered in float but computations are now in double

Change-Id: I7e0a38effb780861b1443ee92a097cd319de3bc8
2020-11-04 14:45:35 +01:00
Léa Saviot
9b2f91f5e1 [apps/probability] Geometric distribution default computed value is 1 2020-06-04 14:50:07 +02:00
Léa Saviot
a9c47a9468 [apps/probability] Change geometric distribution definition
THe distribution now represents the number of trials neded before a
success, so is defined for k in {1, 2, 3, ...}
2020-06-04 14:50:07 +02:00
Léa Saviot
d200688f20 [apps/proba] Geometric distibution should return 0, not nan for x < 0 2020-06-04 14:50:07 +02:00
Léa Saviot
503227b49b [apps/proba] Fix float/integer comparison 2020-06-04 14:50:07 +02:00
Romain Goyet
84768472bd Explicit std::min/max template usage
This is unfortunately required in several cases:
 - Sometimes when we use either float and double (this should be changed)
 - Because KDCoordinate is not an int, so any arithmemtic promotes it to
an int
 - Because we mix pointer differences and ints
2020-04-14 09:31:02 -04:00
Romain Goyet
950862f8d0 Use std::min and std::max 2020-04-14 09:31:02 -04:00
Neven Sajko
c0c73accef [probability] Prevent soft-float in StudentDistribution::lnCoefficient 2020-04-09 13:58:56 +02:00
Neven Sajko
c92b770112 Performance fixes relating to floating point constants
This replaces unnecessary double-precision soft-float operations with
single-precision floating-point operations, mainly by casting.

In a couple places I also replace a function call with a constant.
2020-04-09 13:58:56 +02:00
Léa Saviot
29b4c75227 [apps/probability] Assert discrete distributions override evaluation 2020-03-16 11:40:40 +01:00
Léa Saviot
5c70fdc7a6 [apps/probability] Handle a == b case in finite integral computation
For non continuous distributions, P(a <= X <= a) is not necessarily
null.
2020-03-16 11:40:40 +01:00
Léa Saviot
0260e2ffb4 [apps/proba] Fisher distribution authorized parameter values 2020-02-12 15:13:21 +01:00
Léa Saviot
8c801392a5 [apps/proba] Fisher distribution zoom values 2020-02-12 15:13:21 +01:00
Léa Saviot
55a4e3d94c [apps/proba] Implement Fisher formulae 2020-02-12 15:13:21 +01:00
Léa Saviot
93c96186c4 [apps/probability] Initial Fisher distribution 2020-02-12 15:13:21 +01:00
Léa Saviot
7406fcae98 [apps/proba] Fix Student distribution 2019-09-09 15:11:20 +02:00
Léa Saviot
29c3e3a206 [apps/distribution] remove falty assertion 2019-09-09 15:10:50 +02:00
Léa Saviot
aa45adb49a [apps/proba] Handle infinite xMax in exponential distribution 2019-09-09 11:25:20 +02:00
Léa Saviot
dd97b23624 [apps/proba] k limit for Chi2 law
After the limit, P(X<k) returns undef
2019-09-06 10:40:59 +02:00
Léa Saviot
80f3c1fd0a [apps/proba] Use DBL_EPSILON in cnditions 2019-09-06 10:23:32 +02:00
Léa Saviot
d9e49cb369 [apps/proba/dist] More laxist assert 2019-09-06 10:23:32 +02:00
Émilie Feral
de2f79b915 [probability] Distribution: loosen constraints on
cumulativeDistributiveInverseForProbabilityUsingIncreasing... precision
2019-09-05 13:59:30 +02:00
Émilie Feral
db4cfb1763 [poincare] Solver: increase IncreasingFunctionRoot precision 2019-09-05 13:27:18 +02:00
Émilie Feral
22d49f9a14 [apps/probability] Fix typo 2019-09-05 12:06:48 +02:00
Léa Saviot
1b169e0836 [apps/solver] Fix bad assertion 2019-09-04 17:34:50 +02:00
Léa Saviot
1c34eab71e [poincare/solver] Fix precision handling in IncreasingFunctionRoot
Scenario: ChiSquared distribution, P(X<?) = 0.1
2019-09-04 16:55:39 +02:00
Léa Saviot
b712338a18 [apps/proba] Fix dome distribution behaviours for x = infinity 2019-09-03 10:10:23 +02:00
Léa Saviot
7f2e52f6a6 [apps/proba] Fix result consistency
Scenario: Poisson distribution, lambda = 4, P(x < ?) = 1.3E-112
2019-09-02 17:56:56 +02:00
Léa Saviot
c71ef7ff79 [apps/graph] Evaluation methods renaming 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
Léa Saviot
a15bc53e06 [poincare/Coordinate2D] Template for double or float 2019-08-29 11:07:22 +02:00
Léa Saviot
3dd5112a0b [poincare] Use reg incomplete beta function in binomial distribution 2019-08-27 11:09:16 +02:00
Léa Saviot
a8a5ecfd4e [apps/proba] Factorize code 2019-08-26 16:04:08 +02:00
Léa Saviot
1f2f5f4c28 [apps/proba] BinomCDF 2019-08-26 15:04:27 +02:00
Léa Saviot
ff0105182d [apps/proba] P(X<?) = 0 gives 0 for ChiSquaredDistribution 2019-08-26 10:14:38 +02:00
Léa Saviot
294def02bd [apps/proba] Improve Distribution::finiteIntegralBetweenAbscissas 2019-08-23 15:27:53 +02:00
Léa Saviot
0840ca7a1e [apps/poincare] Move NormalDistribution to Poincare 2019-08-23 13:47:52 +02:00
Léa Saviot
a1107b3f00 [apps/probability] Remove TODOs 2019-08-22 10:48:40 +02:00
Léa Saviot
4e8a7bbedc [apps/proba] Increase accuracy check in tests 2019-08-21 14:54:55 +02:00
Léa Saviot
cfc0a7d6cf [apps/proba] Fix Student computations 2019-08-21 14:52:47 +02:00
Léa Saviot
c248363b34 [apps/proba] Better handling of NAN values
For instance, chi squared law woth 1E8 degrees of freedom, comppute
P(X<?) = 0.4 will give P(X<undef) = undef
2019-08-21 14:47:17 +02:00
Léa Saviot
83fda9a587 [apps/proba] Fix Chi Square computations
Because the values can be very small or very big, computations should
not be made sequentially, to prevent rounding errors.
For instace, for degrees of freedom = 70, coefficient() would return 0
event though the cumulativeDistributiveFunctionAtAbscissa was not 0.
2019-08-21 14:45:27 +02:00
Léa Saviot
04b0df9a72 [apps/proba] Fix Student precision for computation 2019-08-21 12:18:32 +02:00
Léa Saviot
06b3b2c892 [apps/proba] Student parameter maximum is 200 2019-08-21 12:18:08 +02:00
Léa Saviot
bbf506ddb7 [apps/proba] Refactor law -> distribution 2019-08-20 17:16:19 +02:00