Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
1.1 (pagina successiva) ARITMETICA DEL CALCOLATORE e ALGORITMI NUMERICI
FLOATING POINT (NUMERI FINITI) Il problema principale è che abbiamo un numero finito di bit per la scrittura di un numero.
Sì: possono rappresentare solo un numero finito di numeri reali in base 2 (dalla Plautian point),
con arrotondamento secondo una manzitudine |e| < 1/2 U.L. (tabella dedicata) (vedi tabelle dedicate) con d₁ =1
Per immagazzinare il valore di d è più facile stabilire un certo "bias"
OVREO CON L'8° BIT prendiamo un n. naturale che varia da 0 e 255 ma è più conveniente
avere un valore che varia da -127 per (per 32 bit) a 1023 eps 16383 (per 64 bit).
MODIFICANDO LA CONFIGURAZIONE FLOATING
q = 1k=bit di precisione in più funzioni: ha k = "b" (o 0) o sint può l'appresentarsi del valore zero
m = t-1 = 1
- Neutralità come d'errore
- se quello che se lo ha rappresentato w. 2.0
NUMERI DENORMALIZZATI 23+829 23 1(err. <=032)
K{{min 2^(-1} 2^(e-127)
1
X- Spiegazione con esponente e:
NUMERI FINITI (tanti, per precisione singola)
x grande+punto grande
(*
Esegue con
x1 (esxa) 10
=\= 1.63 8
09 Retro
1 Zero0100*0.sup>38 (+)
+38+1 invisibile sopra...
x-min (punto e1.s.,
prossime logiche
- - X per rappresentato in modo esclusi - numeri finiti
- |x| < |xmin| con pe
- 2- x- Consintendonodi calcolo|-ERRORE
se X- s+signumx' o segno 'q'.
- ^
- Con approximante 0
d è minimo con troncamento
o,di,did o con arrotondamento a
dis.Distribuzione dei numeri finiti
piano e
|λ2| ≥ |λn| ≥ 0Procedimento:
- Si assegna lo 0 arbitrario con il th …
- Calcolo un vettore …
- Si definisce …
limk → ∞ xk+1 = xk / |xk||
(La successione {xn} ha la velocità di convergenza governata dal rapporto)
|λ2| / |λ1|
Esercizi
- Perché non vale la prop. associativa della somma. Fai esempio: x = 0,1234567 x 100 y = 0,6666325 x 100 z = -0,6666325 x 101f((x + y) + z) = ((0,1234567 + 0,6666325) x 100 - 0,6666325 x 101)f((x + (y + z)) = (0,1234567 + (0,6666325 - 0,6666325) x 101) x 100 = 0,1230000 x 101
- Non vale prop. distributiva nel prodotto x = 0,2; y = 0,9; z = 0,1 x 10-0f(x(y + z)) = (0,2(0,9 + 0,1) x 10-0) = 0,2 x 10-0 = 0,67 x 10-0(X x (y + z)) - y = (0,9(0,9) + (0,9-0,9)x 10-0) = 0,36 x 10-0
- Non vale l'invar. degli el. neutro rispetto alla somma quello questo non fa risp.0,91 + 0,9 x 10-1= 0,91 + 0,1 x 10-0 = 0,1 x 10-0 = 2,10-3 x 100
- Non vale l'immutabilità del prodotto Sarebbe: x' = (e1) so y po me non cal ex e vloio tempo precisor x-1=(0,1 x 0,91)-x2 x 0,91 x 0-0 = 0,1 (est 50 int)
- Cancellazione di cifrex' = -0,91 x 10-0 y = 0,91 x 10-0 z = 0,8123 x 10-4 → '2 r(-0,91 x 0,0000123)x 10-0 = 9,100123 x 10-0 Ma f((y + z)-0) momotienzia (runtal) 0,0200 = 1.100 Facendo peril, x' = -0,91 y.2.1 = (0,91 + 0,1 x 10-0) 0,00001 100 = 0,1 x 10-3
ES. di RIPASSO (CAP 2)
CAP 2.1
- Dati a1...n n vettori e n2 coefficienti. Si fa combinazione lineare di vettori. Vettore a1...n, dove a1...n si chiamano coefficienti della combinazione.
- PSEUDO-COEFFICIENTE
CAP 2.2
- PSEUDO-COEFFICIENTE
CAP 2.3
- Cij, vedi foglio ex già dati.
CAP 2.4
- già digitato
CAP 2.5
- Vedi dispensa IMPL. LAVORAZIONI DI BLOCCHI DI ARRAY da P. 4 a 6
CAP 2.6
- già visualizzato in dispensa
Pseudo-codifiche:
coeff. binomiche
xi = bi/bCi
for i = 0, 1, ..., n
Toli
ar(0) = 1; ar(1) = (1,1)
xi = ai - ai+1
Triu
S = 0
for i = 1, ..., nn+1 - 1
for j = i+1, ..., n
S = S + 2j
m ← (b-2)/ai
end
Metodo di Thomas
pi = bi/ai
vi = di/ai
xn ← vn
for i = n-1, 1
x = vi - Ci xi+1
end for
end
TABELLA Complessità computazionale
- prodotto scalare : n
- triade : n2
- matrice x matrice : n3
- sist. diag : n
- sist. triangolare : n2/2
- sist. tridiagonale : n
SISTEMI LINEARI COMPLESSI
Un metodo alternativo è ricondursi ad un sistema lineare a coefficienti reali da dimensionare doppio.
Cioè:
b = b1 + i b2
x = u + i v
Re (A x) = A1u - A1v b1
Im = A1u + A1v - b2
Esempio:
A = 1/2 1 3 3 0
A2 = 1/3 0 1
b = 7 + 3 i 2 - 3 i
b1 = 7 2
b2 = 3 3
Trovo L R P d y e confronto
METODO QR per sistemi lineari
1) Due vettori x e y sono:
● VETTORI ORTOGONALI: prodotto tx y = 0 con x ≠ 0
● VETTORI ORTONORMALI: quando la loro norma euclidea è uguale ad 1
Se n vettori x1, ..., xn reali sono due a due tra loro ortogonali, allora sono linearmente indipendenti.
Def.: Prendendo matrice Q, eseguendo la moltiplicazione per tQ ottendendo
Q = (q1, ..., qn) tQ = (tq1, ..., tqn)t
una matrice è ortogonale quando ha per colonne vettori q1, ..., qn ortonormali.
Proprietà: E non singolare o Q-1 = Qt
qti qj = {0 se i ≠ j1 se i = j}
Q Qt = (QtQ) = I t x e QtQ = I
||Qx||2 = ||x||2 ⇒ 10x||2
(ytQ)t(Qx)tt(Qx) = xtQ Qtx= xtx =||x||2
sono matrici di rotazione
→ Haurlin test (Greene G = (s, s)) dove qts ortogonali→O, c
ottenere vettori componenti su un dato asse.
Colonne della matrice di permutazione sono ortogonali:
m è pari: P t = P-1m è dispari P t Q -1
→ matrici di permutazione sono diagonali
Importante:
● Una matrice A ortogonale è simmetrica e tale che Q s = I
● Una matrice ottenuta dal procedimento di matr. ortogonale è ortogonale (P ⊕ P' )
q1, q2, ..., qn ort. o Q = {a1, a2, ... an} sc. 2 qti = qk a = Q-1Q
PROCEDIMENTO DI ORTOGONALIZZAZIONE GRAM-SCHMIDT A=QR
Si possono determinare q1, ..., qn vettori mutuamente ortogonali e ortonormali a partire da n vettori a1, ..., an linearmente indipendenti
q1 = a1+ v2q1q2 = a2 + v1q1 + v2q2 + v3q3
con vij = tqi qj ( i = 1, ..., j-1)
q‖‖e|| = (xta1)2 + (xta1)2
||qi = axi q‖_qtqi i = 1,..., j-1
Se invece si vuole costruire un insieme q fonte vettori ortonormali, allora ogni vettore qi deve essere diviso per la sua norma euclidea
q1 = a1q2 = a1 q2 - 1/1qt q1 + a2 a3 1 x_qt(q2 qn)
qn = (an) i=1,...,n-1 1/tqiqi a · qti
Infine si ottiene la matrice R(triu) composta degli coefficienti rij
e la matrice Q = (q1, ..., qn)