Coelestis - Il Forum Italiano di Astronomia

Coelestis - Il Forum Italiano di Astronomia (http://www.trekportal.it/coelestis/index.php)
-   Rudi Mathematici (http://www.trekportal.it/coelestis/forumdisplay.php?f=11)
-   -   I secondi perduti (http://www.trekportal.it/coelestis/showthread.php?t=58896)

Mizarino 07-05-17 07:08

I secondi perduti
 
Si tratta di aritmetica dei processori numerici.

Qualche giorno fa mi sono imbattuto in un problema di arrotondamento numerico (aritmetica del computer) che ho impiegato un bel po' di tempo a sviscerare, facendomi aiutare da convertitori dal sistema decimale a quello binario (in floating point) che si trovano facilmente in rete.

In un certo tipo di calcolo, una variabile in doppia precisione T rappresenta il numero di giorni trascorsi dal 1° gennaio 2000. Questa variabile viene incrementata passo-passo di un intervallo costante dT pari a 10 minuti.

Se si parte da un'epoca intorno all'anno 3500, man mano che viene sommato l'incremento dT, compare un errore di arrotondamento, che cresce al ritmo costante di 2.5 secondi ogni 10 anni, nel senso che, dopo 10 anni, l'"orologio" va 2.5 secondi avanti. Questo andamento rimane stabile fino all'anno 13483. Per esempio, se si parte dalle ore 0:00:00 del 1° gennaio 13450, dopo 10 anni l'orologio va avanti sempre di 2.5 secondi. Tutto sommato la cosa non stupisce.

La stranezza (apparente) è che, dopo il 13483 succede che l'errore accumulato cresce improvvisamente: per es, se si parte dal 1° gennaio 13484, dopo 10 anni l'orologio va indietro di 20 secondi (i secondi perduti del titolo).

Come si spiega tutto ciò ?

astromauh 07-05-17 12:24

Re: I secondi perduti
 
Verrà un giorno che i computer per un errore del genere ci ammazzeranno tutti. :cry:

:hello:

nino280 08-05-17 12:43

Re: I secondi perduti
 
E ce lo chiedi a noi mortali?
E che ne sappiamo noi?
Chiedilo casomai all'INRIM istituto di metrologia di Torino, una volta si chiamava Colonnetti ora non so più.
Magari quelli dell'istituto di metrologia a quelli che hanno fatto quel software gli hanno venduto un orologio atomico che ne so al cesio che dopo il 13483 non funziona più e non ti danno più garanzie.
Che ne so,magari il cesio radioattivo (non mi ricordo più se è il cesio 133 non ci giurerei) si dimezza o scomparisce del tutto come dice mio cognato, come dicono i fisici? L'emivita?
Allora arrivati a quell'anno tutto va a catafascio.
O magari si verificano dei fenomeni più grandi di me, più colossali.
Colossali nel senso della relatività generale o ristretta che sia.
Magari il sole nel 13 mila e rotti fa una curva stretta nella galassia e accelera, se la velocità aumenta il tempo diminuisce o viceversa non è un mistero che in queste cose non ho le idee chiare.
A parte gli scherzi, ho persin provato a fare 13483 x 2 = circa 27000
27000 è la distanza in anni luce del sole dal centro della galassia (sempre se ho letto bene). Ma anche questo dato mi rendo conto non centra un fico secco.:D:D:D
Ciao

nino280 08-05-17 13:11

Re: I secondi perduti
 
Vedo che mi stai rispondendo.
Intanto che aspetto la tua risposta, ti volevo chiedere una cosa che mi sono dimenticato nel mio messaggio precedente.
Ma tu come fai a dirci che il pinco pallino o tal dei tali orologio rallenta?
Per dire che un orologio rallenta devi averne un altro per il confronto, o no?
Ciao

Mizarino 08-05-17 13:18

Re: I secondi perduti
 
Caro Nino, in realtà non è così difficile come può sembrare. Occorre però farsi aiutare da un convertitore da decimale a binario, per numeri in "virgola mobile", cioè non interi.

Per esempio questo: http://www.binaryconvert.com/convert_double.html

Il resto è una questione di arrotondamenti nel fare una addizione.
Un piccolo aiutino:

Metti di dover fare un'addizione nel sistema decimale, sommando due numeri espressi entrambi con 8 (* questo è un refuso. Intendevo 6 cifre significative) cifre significative, ma uno grande e uno piccolo, con il risultato che deve essere necessariamente arrotondato a 6 cifre significative, per esempio:

Codice:


5000.25        +
    0.444444 =
_______________
5000.69

Il risultato è più piccolo del valore "esatto" di una quantità pari a 0.004444
Se questa somma deve essere ripetuta N volte, ogni volta aggiungendo 0.444444, dopo 1000 addizioni si saranno "perdute" ben 4.44 unità, per effetto dell'accumulo degli arrotondamenti.
Se invece la somma da fare è:

Codice:

5000.25        +
    0.555555 =
_______________
5000.81

Il risultato è più grande del valore "esatto" di una quantità pari a 0.004445, e, dopo 1000 addizioni, ci saranno 4.45 unità di troppo nel risultato.

Trasferire il tutto al sistema binario, nel caso specifico considerato, è un po' più complicato, ma non troppo... :)

nino280 08-05-17 13:32

Re: I secondi perduti
 
Penso di aver ora più o meno capito.
Il tuo scorrere del tempo non è reale, ma diciamo così è virtuale.
Io invece associavo lo scorrere del tempo ad un sistema fisico e non ad astrazioni matematiche.
Comunque il convertitore mi potrebbe servire .
Certamente ne avevo uno tempo fa anche io, ma poi non so dove è andato a finire.
Ciao

nino280 09-05-17 12:46

Re: I secondi perduti
 
Mi veniva per mente una cosa.
Sappiamo che invece di sommare una quantità io posso arrivare allo stesso risulta con un prodotto.
Se invece di sommare sempre la stessa quantità, moltiplicavi non so per esempio per 1,00000 e rotti, il tuo problema migliorava, rimaneva inalterato, o peggiorava?
Ho detto questo senza far nessuna prova, senza riflettere, insomma senza. :D:D
Ciao

Mizarino 09-05-17 15:02

Re: I secondi perduti
 
Hai detto bene! :ok:
L'errore di arrotondamento inciderebbe al massimo sull'ultima cifra significativa del numero più grande, se anziché fare 1000 somme, si moltiplicasse l'addendo per 1000, facendo poi una sola somma.
Codice:

0.444444 x 1000 = 444.444
5000.25  +
 444.444 =
_________
5444.69

Tuttavia vi sono circostanze in cui fare questo può complicare le cose, e altre circostanze in cui è impossibile (per es. se l'addendo da sommare non è costante).
:hello:

Cocco Bill 09-05-17 15:56

Re: I secondi perduti
 
A me viene 5444,694

nino280 09-05-17 18:24

Re: I secondi perduti
 
Ok Bill.
Ma mi sembra che Miza da qualche ha parlato di 6 cifre significative.
Ciao
Anche se ora sono confuso, perché non so se significative si intende 6 cifre totali oppure sei decimali.
:hello:


Tutti gli orari sono GMT. Attualmente sono le 09:25.

Powered by vBulletin versione 3.6.7
Copyright ©: 2000 - 2018, Jelsoft Enterprises Ltd.
Traduzione italiana a cura di: vBulletinItalia.it