Re: Fortran e precisione nei calcoli

From: H A L <dario.unipdRIMUOVI_at_libero.it>
Date: Thu, 01 May 2003 12:00:38 GMT

>
> Beh, la differenza tra 0.3 e 0.29999999 e' 0.00000001, ovvero circa tre
> parti su 10 milioni. Pensi che i tuoi risultati dipenderanno in modo
> cruciale da questa differenza ? Cosa stai misurando, il momento anomalo
> dell' elettrone ? :-)

 No no, niente del genere :-)
Si tratta di un banalissimo conta da Esperimentazioni di Fisica 1.
Semplicemente voglio prendere un po' di pratica su Fortran prima che
mi serva davvero! Concordo con te che l'errore � piccolissimo, ma mi
sarei aspettato due alternative:
1) che arrotondasse a meno della sua precisione e che quindi, nel caso
che quoto qua sopra, divenisse 0.3 (nella mia calcolatrice
scientifica, se faccio 1/3 e poi moltiplico il risultato per 3 ottengo
1)

2) che un kind=4 spingesse la precisione molto pi� su. Questa per�
era solo una mia idea, visto che finora non sapevo nulla di cosa
significasse. Ora ho capito che con il kind si indicano il numero di
bit da utilizzare per fare i conti e che, quindi, alzando il kind
alzo la precisione.

Poi mi sono chiesto quanto significativo fosse variare di una parte su
100 il valore dello scarto quadratico medio. E, per il tipo di calcoli
che dovr� fare su quel sigma trovato, bh�... conta abbastanza. Come ci
dicono al corso di esperimentazioni, evidentemente vale anche per
Fortran, la somma di due determinazioni ha un errore pari alla somma
degli errori, anche se queste determinazioni sono state misurate tutto
con uno strumento avente una sensibilit� fissa.

Rimango d'accordo con te, prevenendoti :-), che cmq la somma di quegli
errori � molto piccola ;-) sopratutto considerando la sensibilit�: 0.1


>
> La ragione e' che l' aritmetica del computer e' binaria e questo
> comporta alcuni risultati non ovvi lavorando con numeri decimali che in
> base 10 hanno una rappresentazione finita: p. es. 0.3 (base 10) diviene
> 0.0100110011001.... cioe' 0.0<1001> dove le cifre tra segni <..>
> indicano un periodo che si ripete all' infinito.

Interessante! Spero di approfondire la cosa al corso che ci faranno su
Fortran... Non so molto di rappresentazione binaria, se non quello che
si legge in giro...

> tutto sta
> nel capire quale e' la precisione realmente richiesta dai calcoli che si
> sta nno facendo.

Si si, sono d'accordo. Ma mi era venuta la curiosit�, e ho osato
chiedere.


> Una prova indiretta la puoi fare molto semplicemente: se il roundoff e'
> una sorgente importante di errore nel tuo conto, formule algebricamente
> equivalenti potrebbero dare numeri diversi. P. es potresti calcolare la
> varianza come somma_i (x_i-<x>)**2 oppure come somma_i x_i**2 - N
> <x>**2. Se vedi differenze significative e' il caso di cominciare a
> preoccuparsi ma se restano sulla settima cifra significativa decimale
> direi proprio di no (sempre che non sia la famosa misura del momento
> anomalo...)

Appena ho un attimo provo, cos� li pongo in relazione.


Per ora grazie a tutti per le chiarissime e disponibili risposte!
Davvero! Buona serata!!

__________________________
H A L
Received on Thu May 01 2003 - 14:00:38 CEST

This archive was generated by hypermail 2.3.0 : Fri Nov 08 2024 - 05:10:30 CET