Matlab lezione 1 - 06-03-2014
Federico Poloni f.poloni@unipi.it
Introduzione a Matlab
MATLAB: programma diffuso nell’ambito dell’ingegneria.
- realmax: numero più grande rappresentabile.
- realmin: il più piccolo maggiore di 0.
- eps: precisione nei numeri ad ottavi.
- format long: vedo più cifre significative.
Possiamo assegnare alle variabili: b = 1e4 = 10000.
Se facciamo molti calcoli con grandi numeri, generiamo errori.
198 . 98 = 11 - (198). 98 = 1,11… Esempio di formazione dell'errore.
Se metto ; il risultato non compare a video. Ricordiamo tutti gli end, alla fine e anche dopo gli if.
Per fermare un ciclo troppo lungo ctrlE.
Script e funzioni
Uno script è una serie di comandi scritti uno dopo l’altro.
Funzione: codice che esegue un preciso valore in ingresso e che restituisce in uscita qualcosa.
Fattoriale: prodotto di tutti i numeri da 1 a n.
Function = esponenziale (x,n) calcola ex producendo i primi n termini dello sviluppo di Taylor.
Matlab lezione 1 - 06-03-2014 (Cont.)
Federico Poloni f.poloni@di.unipi.it
MATLAB: programma diffuso nell’ambito dell’ingegneria.
- realmax: numero più grande rappresentabile.
- realmin: il più piccolo maggiore di 0.
- eps: precisione in riuso od ottenere.
- format long: vedo più cifre significative.
Possiamo assegnare alle variabili: b = 1e4 = 10000.
Se facciamo molti calcoli con grandi numeri, generiamo errori!
1/98.98 = 11 - (1/98).98 = 1,11... Esempio di formazione dell'errore.
Se metto , il risultato non compare a video. Ricordiamo tutti gli end, alla fine e anche dopo gli if.
Per fermare un ciclo troppo lungo ctrl + c.
Uno script è una serie di comandi scritti uno dopo l’altro.
Funzione: eccezione, sono stati ch prende valore in ingresso e che restituisce in uscita qualcosa.
Fattoriale: prodotto di tutti i numeri da 1 a n.
Function = esponenziale, (x,n) Calcola ex producendo i primi n termini allo sviluppo di Taylor.
xn = 1 + x + x2/2! + x3/3! + ... + xn/n!
Esempi di funzioni
Function p = potenza (a,b)
p = 1; % accumulatore
for i = 1 : b
p = p * a;
if b == 0
p = 1;
end
end
Function y = potenza (x,n)
% calcola xn per n naturale
a = x; % accumulatore
for i = 1 : n-1 % oppure a = 1
a = a * x;
end
if n < 0 % per gli esponenti negativi
x = 1/x
a = a * x
end
Function y = esponenziale (x,n)
y = 1;
for i = 1 : n
y = y + potenza(x,i) / fattoriale(i);
end
y = 1; termine = 1; % k-esimo addendo
for i = 1 : n
% calcolo nuovo termine
termine = termine * x/i;
y = y + termine;
end
Ricevimento venerdì ore 9-11.
Matlab lezione 13-03-2014
-
Funzione y = esponenziale(x,n)
y = 1; for i = 1 : n y = y + xi / fattoriale(i); end -
Funzione y = esponenziale 2(x,n)
y = 1; % accumulatore per somma t = 1; % accumulatore per termine i-esimo for i = 1 : n t = t * x / i; y = y + t; end
tic fa partire il cronometro
toc ferma il tempo e dà il risultato
tic; esponenziale 2(1,80); t = toc;
Matrici
- zeros(2,2)
0 0 0 0
- ones(2,2)
1 1 1 1
- eye(4); matrice identità
- randn(2,3)
- 2:0.5:5
- 5:-1:2
- aus 5 4 3 2
for i = 2:5; i, end i = 2 i = 3 i = 4 i = 5
V = [2,44,6,7] for i = V; i, end i = 2 i = 44 i = 6 i = 7
A = [1 2 3; 4 5 6]
A =
1 2 3
4 5 6
A(2,3) = 6
> A(4,5)=9 → allarga la matrice se i valori o sovrascrive valori già esistenti.
> A' : trasponi la matrice
> 0 = 1 2 3 > b = 4 5 6 > a.*b → moltiplica termine a termine.
___ aus ___
A = [ 1 2 3 4 ] b = [ 2 1 4 ] A\b fa A\V > x = A\b > A*x = ______ - 0 - ___ > V'/A prendo un vettor riga e moltiplico per A'!
- length(v): ti dà la lunghezza
- size(A): funzione sulle matrici (dimensioni vettore o matrice)
Il numero di operazioni fatte si n...
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.