Algoritmo precisione di macchina matlab

cechuz
C'è qualche buon samaritano che è così gentile da spiegarmi l'algoritmo che calcola la precisione di macchina su matlab? So che la precisione di macchina è definita come il più piccolo numero di macchina che sommato ad 1 restituisce come numero di macchina un numero maggiore di 1. Questo è l'algoritmo:

beta=2;
u=1;
while (u+1>1)
u=u/beta;
end
u=u*beta

Risposte
feddy
Sta facendo esattamente quello che hai scritto tu. Partendo da $1$, finché la somma di $u$ con $1$ è maggiore di $1$, dimezza $u$. Nota che qui $\beta = 2$, è la base.

cechuz
si dimezza per far sì che $u$ sia il [highlight]più piccolo numero di macchina[/highlight] tale che... ?
e poi perchè si moltiplica da capo per $beta$ ?

feddy
Perché appena esce dal ciclo quel numero lì sommato a 1 non fa più 1. Quindi ritorna all'iterazione precedente, in modo tale che sia il più piccolo. Prova a verificarlo , è così

cechuz
perfetto verificato, molto gentile!:)

feddy
Di nulla! :)

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.