mirror of
https://github.com/betagouv/mon-entreprise
synced 2025-02-09 23:55:01 +00:00
La fonction `uniroot` prend 2 paramètres d'amorçage "min" et "max" qui nous définissions jusqu'alors comme des minimums et maximum absolus -10^8 et +10^8. Vu que nous sommes obligés de calculer au moins une première valeur à l'extérieur de `uniroot` notamment pour calculer les variables manquantes, ce commit permet de ré-utiliser ce calcul dans l'amorçage d' `uniroot`. Les gains de performances sont détaillés dans la PR associée. Par ailleurs supprime l'option "valeurs négatives possibles" rendue obsolète. Il y a des légers décalages d'1€ sur une dizaine de snapshots qui liés à des arrondis à l'euro. On calcule en effet les inversions à 10 centimes près et on peut donc tomber sur une valeur de xx,54€ là où la vraie valeur est xx,48€ ce qui donne 1€ de différence avec l'arrondi alors que la différence initialement calculée est inférieure à 10 centimes. Par curiosité j'ai rejoué les tests de non-régressions en changeant les paramètres d'`uniroot` pour avoir une précision au centime près (en augmentant le nombre max d'itération à 50) et il se trouve que sur la dizaine de tests différents entre ce commit et la version d'avant une moitié des arrondis à l'euro étaient faux avant et corrects maintenant et inversement pour l'autre moitié. |
||
---|---|---|
.. | ||
applicable.tsx | ||
arrondi.tsx | ||
barème.ts | ||
composantes.ts | ||
condition-allof.tsx | ||
condition-oneof.tsx | ||
durée.tsx | ||
grille.ts | ||
inversion.ts | ||
max.tsx | ||
min.tsx | ||
nonApplicable.tsx | ||
one-possibility.tsx | ||
operation.tsx | ||
plafond.tsx | ||
plancher.tsx | ||
possibility.tsx | ||
product.tsx | ||
recalcul.ts | ||
reduction.ts | ||
sum.tsx | ||
synchronisation.tsx | ||
tauxProgressif.ts | ||
trancheUtils.ts | ||
variableTemporelle.ts | ||
variations.ts |