[Résolu] Chiffres significatifs, précision des calculs, etc.

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur: Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.

[Résolu] Chiffres significatifs, précision des calculs, etc.

Messagepar antoin43 » 22 Déc 2010 17:40

Bonjour

j'ai vu le fil viewtopic.php?f=4&t=13702&p=76849&hilit=chiffres+significatifs#p76849 mais je préferre commencer un new post.
Je n'ai pas trouvé la réponse dans l'aide de OOo (ni dans différents ouvrages sur calc)
Peut être ai-je mal cherché? sinon cette question devrait être exposée clairement me semble-t-il.
certes pour une utilisation comptable 2 décimales suffisent mais pour du calcul scientifique il est bon de savoir les possibilités, les limites du calcul.
L'exemple suivant est un extrait de la suite de Fibonacci et on vérifie que le rapport de 2 nombres de la suite tend vers le nombre d'or.
Or le rapport de 2 entiers est un nombre rationnel, calc me donne 15 chiffres
Le nombre d'or calculé par calc à partir de sa formule =(1+RACINE(5))/2 est un nombre irrationnel calc me donne 14 chiffres. la différence me donne -> 28 décimales

Suite Fibonacci Rapport / précédent Nombre d'or Différence
.....
5702887 1,61803398874986 1,6180339887499 0,0000000000000359712259978551
9227465 1,61803398874991 1,6180339887499 -0,0000000000000137667655053519
14930352 1,61803398874989 1,6180339887499 0
24157817 1,6180339887499 1,6180339887499 0
Dernière édition par Don Corleone le 24 Déc 2010 11:16, édité 2 fois.
Raison: Coche (balise présente)
ubuntu 10.04 OOo 3.2.0.10
et aussi sous W7
antoin43
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 10
Inscrit le : 22 Déc 2010 17:12

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar jeanmimi » 22 Déc 2010 18:09

Bonjour,
Afficher un nombre de 28 décimales est possible.
Est-ce que tu as un fichier pour tester ?
Pièces jointes
Nombres avec 28 décimales.ods
(8.84 Kio) Téléchargé 234 fois
LibreOffice Version: 6.0.4.2 (x64) (10 mai 2018)
Java (x64) 1.8.0_xxx, Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 14366
Inscrit le : 03 Mars 2006 17:02
Localisation : Niort et sa Venise verte

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar antoin43 » 22 Déc 2010 18:27

Quand je charge le tien je vois les zéros non significatifs. Format cellule m'indique 75 décimales.
Sur le mien par exemple pour le nombre d'or, je peux mettre 20 décimales mais il m'affiche que des zéros non significatifs, ce qui est faux car le nombre est irrationnel. L'affichage est une chose le calcul en est une autre semble-t-il.
Pièces jointes
precisioncalc.ods
(18.83 Kio) Téléchargé 231 fois
ubuntu 10.04 OOo 3.2.0.10
et aussi sous W7
antoin43
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 10
Inscrit le : 22 Déc 2010 17:12

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar jeanmimi » 22 Déc 2010 19:55

En modifiant les formats Nombre des cellules, j'arrive à afficher tous les chiffres après la virgule.
Pièces jointes
precisioncalc_v2.ods
(11.66 Kio) Téléchargé 273 fois
Dernière édition par jeanmimi le 23 Déc 2010 09:53, édité 1 fois.
LibreOffice Version: 6.0.4.2 (x64) (10 mai 2018)
Java (x64) 1.8.0_xxx, Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 14366
Inscrit le : 03 Mars 2006 17:02
Localisation : Niort et sa Venise verte

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar Jean-Louis Cadeillan » 23 Déc 2010 00:54

Bonsoir à tous,
Je crois que l'extension CmathOOoCAS de Christophe Devalland, développé en C++ à partir du moteur GIAC de XCAS mérite plus qu'un détour lorsqu'il s'agit de calcul de précision et de calcul formel.
Cette extension permet d'accroître les capacités de Calc d'une manière exceptionnelle. Par exemple, dans chaque cellule de Calc, on peut afficher un nombre avec 2^16 décimales, soit 65536. Ce sont des décimales de mantisse, c'est-à-dire que seuls les chiffres significatifs sont comptés (à partir de la première décimale différente de zéro). Bien sûr, c'est une limite qui sollicitera énormément les capacités mémoire de Calc et de l'environnement matériel... à noter que le choix du C++ (langage natif de XCAS) assure un traitement des fonctions ultrarapide :D

La grande supériorité de CmathOOoCAS est de permettre de traiter toutes les expressions sous forme de calcul formel : on n'est pas obligé d'attribuer une valeur à une variable (ou à un nombre à développement infini, rationnel ou non) dans une expression pour que le calcul soit possible : opérateurs arithmétiques, factorisation, développement, simplification, etc.
Ci-joint le même travail sur la suite de Fibonacci, mais traitée avec CmathOOoCAS (j'y ai rajouté une petite étude sur les puissances de phi, où l'on retrouve aussi les éléments de cette même suite... :wink: )
Feuille1 : travail initial avec uniquement Calc
Feuille2 : idem mais avec CmathOOoCAS
Feuille3 : puissances de phi et Fibonacci
Phi.ods
CmathOOoCAS et le nombre d'Or
(34.42 Kio) Téléchargé 391 fois
Bien sûr ce document Calc ne doit être ouvert qu'une fois CmathOOoCAS installée. En attendant de franchir ce pas, un petit aperçu (cliquer dessus pour agrandir):
phi.jpg

Pour ceux qui connaissaient XCAS, c'est une extension qui vient combler un vide d'une façon enthousiasmante, avec une multitude de nouvelles fonctions à découvrir !!! Un grand coup de chapeau à Christophe Devalland :bravo: :bravo:
Cordialement
Jean-Louis
PS : cerise sur le gâteau on peut transférer toute cette puissance dans Writer, grâce à l'extension CmathOOo... mais ceci est une autre histoire...
LibreOffice 6.0.5.2 (x64) et Apache OpenOffice 4.1.5 sous Windows 7 Édition Intégrale 64 SP1 (Domicile)
Java (x64) 1.8.0_171
Avatar de l’utilisateur
Jean-Louis Cadeillan
ManitOOu
ManitOOu
 
Message(s) : 3564
Inscrit le : 03 Jan 2009 00:56

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar bm92 » 23 Déc 2010 08:59

Bonjour
antoin43 a écrit:Or le rapport de 2 entiers est un nombre rationnel, calc me donne 15 chiffres
Le nombre d'or calculé par calc à partir de sa formule =(1+RACINE(5))/2 est un nombre irrationnel calc me donne 14 chiffres. la différence me donne -> 28 décimales

Non, la différence n'a pas de signification car elle est du même ordre de grandeur que la précision des calculs.
Dans le fil cité je faisais référence à une page Wikipedia où on trouve:
Les calculs en virgule flottante sont pratiques, mais présentent divers désagréments, notamment :

* leur précision limitée, qui se traduit par des arrondis (dus aux opérations, ainsi qu'aux changements de base implicites, si la base est différente de 10) qui peuvent s'accumuler de façon gênante. Pour cette raison, les travaux de comptabilité ne sont pas effectués en virgule flottante, car tout doit tomber juste au centième près. En particulier, la soustraction de deux nombres très proches provoque une grande perte de précision relative : on parle de « cancellation ».
Bernard

OpenOffice.org 1.1.5 fr / Apache OpenOffice 4.1.1 / LibreOffice 5.0.5.2 (X64)
MS-Windows 7 SP1 64bits Familial
bm92
ManitOOu
ManitOOu
 
Message(s) : 2562
Inscrit le : 26 Nov 2005 14:42

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar antoin43 » 23 Déc 2010 14:59

Bonjour

Merci pour vos réponses
à Jean_louis
merci de m'indiquer Cmath, ses possibilités semblent très intéressantes, je l'ai installé mais je ne le vois que pour writer (un menu supplémentaire), il n'apparaît pas dans calc, donc je n'ai pu lire ton classeur. Il me semble avoir vu ce problème évoqué dans le forum direct de cmathooo. Cela dit je pense qu'il faudrait en discuter dans un post spécifique.

à BM92
quand je dis que la différence donne 24 décimales, je veux dire que CALC m'affiche 24 décimales, et je suis bien conscient que l'on ne peut s'y fier.
Ces affichages en nombre de chiffres différents, sans raison apparente et sans explication m'on conduit à créer ce post.

Tout à fait d'accord avec ce que tu rapportes de wikipedia mais c'est une raison supplémentaire de savoir sur quelle précision (combien de décimales) ooocalc travaille pour pouvoir calculer l'erreur possible. De plus on peut mettre -> 20 décimales dans format nombre mais quel effet sur la précision ce serait bien de le savoir. Comment jeanmimi obtient 75 décimales dans le format nombre? ooocalc ne devrait pas me donner 28 décimales pour les différences, je considère qu'il y a là un bogue à corriger.
cordialement
ubuntu 10.04 OOo 3.2.0.10
et aussi sous W7
antoin43
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 10
Inscrit le : 22 Déc 2010 17:12

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar Oukcha » 23 Déc 2010 16:18

Bonjour,

antoin43 a écrit:je considère qu'il y a là un bogue à corriger.


Pour rappel, ce site fait partie du projet OpenOffice.org mais en aucune façon nous ne sommes liés à l'équipe de développement ou de marketing.

Pour chercher, ouvrir, voter, ou commenter une issue, merci de consulter :
ftopic716.html

Cordialement
                                        
:arrow: A lire avant tout ! Image
Avatar de l’utilisateur
Oukcha
RespOOnsable modération
RespOOnsable modération
 
Message(s) : 2879
Inscrit le : 06 Oct 2008 09:03

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar Jean-Louis Cadeillan » 23 Déc 2010 17:46

antoin43 a écrit:je l'ai installé
non tu as installé CmathOOo, une extension pour Writer
Il te faut installer CmathOOoCAS, l'extension pour Calc.
Pour rester dans le droit fil du fil, le moteur GIAC qui permet entre autres le calcul en précision arbitraire, est géré par l'extension de Calc, CmathOOoCAS. L'extension de Writer, CmathOOo, permet d'une façon très simple l'écriture mathématique mais, si CmathOOoCAS est aussi installée, alors CmathOOo permet en plus d'afficher du calcul formel et du calcul en précision arbitraire dans Writer.
A+
Jean-Louis
LibreOffice 6.0.5.2 (x64) et Apache OpenOffice 4.1.5 sous Windows 7 Édition Intégrale 64 SP1 (Domicile)
Java (x64) 1.8.0_171
Avatar de l’utilisateur
Jean-Louis Cadeillan
ManitOOu
ManitOOu
 
Message(s) : 3564
Inscrit le : 03 Jan 2009 00:56

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar bm92 » 23 Déc 2010 19:05

Bonsoir,
antoin43 a écrit:quand je dis que la différence donne 24 décimales, je veux dire que CALC m'affiche 24 décimales, et je suis bien conscient que l'on ne peut s'y fier.
Ces affichages en nombre de chiffres différents, sans raison apparente et sans explication m'on conduit à créer ce post.

Tout à fait d'accord avec ce que tu rapportes de wikipedia mais c'est une raison supplémentaire de savoir sur quelle précision (combien de décimales) ooocalc travaille pour pouvoir calculer l'erreur possible. De plus on peut mettre -> 20 décimales dans format nombre mais quel effet sur la précision ce serait bien de le savoir.

Je ne peux que te renvoyer à ma réponse sur l'autre fil. Tout y est.
http://user.services.openoffice.org/fr/forum/viewtopic.php?f=4&t=13702&p=76849#p76866
Ce qui est affiché par le tableur n'est que la représentation en base décimale d'une valeur en flottant binaire. Changer le format d'affichage ne change en rien la précision du résultat. Mettre un format avec plus de décimales que la précision peut être utile (?) pour des raisons de mise en forme.

Un tableur est un outil, il faut l'utiliser correctement en connaissant ses limites, en particulier :
  • Les erreurs de calcul s'accumulent au fil des opérations.
  • Comparer deux nombres n'a de sens que si l'écart est bien supérieur à la marge d'erreur ; par exemple, une erreur classique est de tester si un nombre est nul : en virgule flottante cela n'a pas de sens, il faut tester si le nombre est proche de zéro.
  • Un format de nombre en virgule flottante, quelque soit sa précision, n'offre qu'un nombre limité de valeurs, alors que l'ensemble des Réels contient une infinité de valeurs.
Bernard

OpenOffice.org 1.1.5 fr / Apache OpenOffice 4.1.1 / LibreOffice 5.0.5.2 (X64)
MS-Windows 7 SP1 64bits Familial
bm92
ManitOOu
ManitOOu
 
Message(s) : 2562
Inscrit le : 26 Nov 2005 14:42

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar antoin43 » 23 Déc 2010 19:49

Bonsoir
merci Jean_Louis, j'ai installé CmathOOoCAS et ça a marché.
Il ne me reste plus qu'à l'étudier.

merci bm92, il faut donc parler de la précision en nombre de bits
16 bits 65536 Le basic d'APPLE ][ gérait les entiers relatifs avec 13 bits soit la moitié en positif
32 bits 4294967296
64 bits 1,84467440737096E+019
128 bits 3,40282366920938E+038
Donc Calc est basé sur 64 bits, ce qui lui permet de gérer le signe, la mantisse et 15 chiffres significatifs

:)
ubuntu 10.04 OOo 3.2.0.10
et aussi sous W7
antoin43
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 10
Inscrit le : 22 Déc 2010 17:12

Re: Chiffres significatifs, précision des calculs, etc.

Messagepar antoin43 » 24 Déc 2010 10:44

Bonjour
On trouvera sur ce site des remarques intéressantes concernant le thème du post :
http://christianwtd.free.fr/index.php?r ... ulImprecis
cordialement
ubuntu 10.04 OOo 3.2.0.10
et aussi sous W7
antoin43
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 10
Inscrit le : 22 Déc 2010 17:12


Retour vers Tableur

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 4 invité(s)