You are on page 1of 45

Mini Manuale Matlab

Antonio Salvato
Questo documento stato redatto interamente utilizzando il software OpenOffice.org, disponibile
gratuitamente in rete all'indirizzo www.openoffice.org.
Le immagini sono state generate attraverso il software Matlab, www.mathworks.com.
Matlab un marchio registrato dalla Math!orks "nc.
#ev $.% & Ottobre '%%(
"n copertina) rappresentazione grafica della funzione
x
2
y
2
Introduzione
Questa piccola guida un breve resoconto di *uanto visto nel corso dei primi due anni
di "ngegneria +lettronica in relazione a Matlab, il potente e diffusissimo software di
computo tecnico sviluppato dalla americana Math!orks.
"l presente documento ,O, vuole essere assolutamente sostitutivo di alcuna guida
ufficiale o altra opera edita da esperti disponibile in commercio, dato che il sottoscritto
,O, un esperto ma un semplice utente di Matlab alle prime armi.
Questo documento vuole invece essere una breve lettura utile per compiere i primi passi
nell'ambiente di lavoro di Matlab ed apprendere la sintassi di base dei comandi di
maggior utilizzo nell'ambito dei corsi del primo e secondo anno di "ngegneria +lettronica
e "nformatica.
-...
Indice Generale
Parte 1: Introduzione a Matlab.................................................... 3
Che cos' Matlab?...............................................................................3
Launch Pad/Workspace.................................................................. 4
Command History/Current Directory.................................................. 4
Command Window........................................................................ 4
Gli M-ile................................................................................... 4
Parte 2: Vettori e Matrici........................................................... 6
Introduzione.....................................................................................6
re co!andi basilari........................................................................... 6
CD........................................................................................... !
D"#...........................................................................................!
H$LP.........................................................................................!
"calari# Vettori e Matrici......................................................................$
%&erazioni di base............................................................................. '
%omma e Di&&eren'a.....................................................................()
Moltiplica'ione e Di*isione.............................................................()
+rasposi'ione.............................................................................((
$le*amento a poten'a.................................................................. (,
%&erazioni a(anzate......................................................................... 12
"-.......................................................................................... (/
$"G......................................................................................... (/
%"0$........................................................................................ (/
$1$.........................................................................................(/
)u!eri Co!&lessi.............................................................................13
Parte 3: Polino!i................................................................... 1*
%&erazioni sui Polino!i..................................................................... 1*
#22+%..................................................................................... (3
P2L1....................................................................................... (3
C2-....................................................................................... (!
D$C2-.................................................................................... (!
"co!&osizione in +ratti se!&lici...........................................................16
#$%"D4$................................................................................... (5
Parte ,: Control "-ste! oolbo................................................. 1/
0e (ariabili "iste!a: ss#t+#z&1..............................................................1/
%&erazioni sui siste!i dina!ici............................................................21
%%D6+6.................................................................................... ,(
+D6+6....................................................................................,,
0P7D6+6.................................................................................. ,,
M"-#$6L...................................................................................,,
$$D86C7................................................................................. ,,
DCG6"-.................................................................................... ,,
2ia3ra!!i di 4ode# )-5uist# )ichols..................................................... 23
(
P0M6P..................................................................................... ,/
82D$.......................................................................................,/
82D$M6G................................................................................. ,/
-194"%+...................................................................................,/
-"CH2L%...................................................................................,4
#L2C4%....................................................................................,4
6is&osta nel do!inio del te!&o........................................................... 2,
"MP4L%$................................................................................... ,4
%+$P....................................................................................... ,4
L%"M........................................................................................ ,3
0I Vie7er......................................................................................2*
"I"% 2esi3n ool.............................................................................. 26
Parte *: 2ia3ra!!i 22............................................................ 38
2e+inizione di inter(alli e +unzioni........................................................38
L"-%P6C$................................................................................../(
PL2+....................................................................................... /(
G#"D....................................................................................... //
82:........................................................................................ //
"G4#$.................................................................................... //
Parte 6: 2ia3ra!!i 32............................................................ 3,
2e+inizione di do!ini a 2 e 3 di!ensioni................................................ 3,
M$%HG#"D................................................................................. /4
9unzioni reali di due (ariabili reali....................................................... 3*
9unzioni (ettoriali di (ariabili reali.......................................................36
6a&&resentazione 3ra+ica di +unzioni.....................................................3$
M$%H......................................................................................./5
%4#....................................................................................... /;
%H6D"-G.................................................................................../;
C2-$PL2+................................................................................ /<
%+#$6ML"-$.............................................................................. 4)
,
Parte 1: Introduzione a Matlab
Parte 1: Introduzione a Matlab
Che cos' Matlab?
Matla= > un lin?ua??io so&tware ad alte presta'ioni che inte?ra &un'ioni di calcolo
matematico@ *isuali''a'ione ?ra&ica e pro?ramma'ione. $sso > implementato in un
potente am=iente di la*oro ad inter&accia ?ra&ica@ a*ente una struttura modulare che ne
rende note*olmente espandi=ili le &un'ionalitA.
B possi=ile in&atti installare moduli a??iunti*i@ detti oolbo.@ che &orniscano
caratteristiche speci&iche@ non presenti nel set di &un'ioni ori?inali di Matla=.
Possiamo indi&&erentemente parlare di Clin?ua??io Matla=D o Cam=iente di la*oro
Matla=D@ dato che il lin?ua??io e lEam=iente di la*oro ?odono di una note*ole
inte?ra'ione.
LEam=iente di la*oro > suddi*iso Fin modalitA di *isuali''a'ione di De&ault@ atti*a=ile
/
Fig. 1 - L'ambiente di lavoro Matlab
Parte 1: Introduzione a Matlab
mediante il menu .iewG in tre aree principaliH Launch Pad/Workspace@ Command
History/Current Directory e Command Window.
0aunch Pad:;or1s&ace
Mediante il Launch Pad > possi=ile accedere in modo rapido alle &un'ioni o&&erte da uno
speci&ico +ool=oI installato. 6d esempio dalla struttura ad al=ero > possi=ile lanciare
direttamente ?li strumenti Lti .iewer e %iso Desi?n +ool presenti nel Control %ystem
+ool=oI.
"l Workspace > in*ece un potente strumento di monitora??io delle *aria=ili utili''ate nel
corso delle opera'ioni e&&ettuate dallEutente. Possiamo ottenere in&orma'ioni sul tipo e
sullEoccupa'ione di memoria di una certa *aria=ile e addirittura accedere per *ia ?ra&ica
direttamente al contenuto della *aria=ile stessa.
Co!!and <istor-:Current 2irector-
La &inestra Command History > in pratica una lista di tutti i comandi di?itati@ la CstoriaD
dei comandi per lEappunto@ con utilissime &un'ioni di copia e incolla.
+ramite la &inestra Current Directory possiamo spostarci in*ece tra le cartelle del nostro
Hard Disk come &aremmo con un Jualsiasi ile Mana?er. Di De&ault essa *isuali''a il
contenuto della cartella /work contenuta nella directory principale di Matla=. -ella
cartella /work possiamo conser*are tutti ?li M-ile F*edi piK a*antiG da noi creati ed
acceder*i in modo rapido.
Co!!and ;indo7
9uesta &inestra >@ intuiti*amente@ il posto do*e andremo a di?itare i nostri comandi. "n
sostan'a > la shell testuale dellEam=iente di la*oro ed > sen'Ealtro lo strumento piK
potente che a==iamo a disposi'ione per usu&ruire in modo completo della enorme mole
di pro?rammi presenti in Matla=.
Gli M=9ile
4n M-ile > un &ile@ appunto@ in cui > poss=ile sal*are intere seJuen'e di comandi@ anche
molto lun?he. %ul nostro hard disk un M-ile presenterA unEestensione C.mD.
B possi=ile dunJue ese?uire in modo rapido seJuen'e di a'ioni semplicemente lanciando
lEM-ile opportunamente creato. Per &arlo =asta spostarsi nella cartella che lo contiene
mediante la shell testuale@ attra*erso il comando CcdD@ e di?itare il nome completo
dellEM-ile@ sen'a lEestensione C.mD.
PoichL Matla= o&&re &un'ionalitA di pro?ramma'ione un M-ile puM contenere anche dei
*eri e propri pro?rammi e non solo semplici ClisteD di comandi indipendenti. Possiamo in
Juesto modo a??iun?ere altre &un'ioni@ anche complesse@ a Juelle che ?iA ci *en?ono
4
Parte 1: Introduzione a Matlab
o&&erte in parten'a@ allo scopo di risol*ere pro=lemi speci&ici.
-ella Parte 2 di Juesta ?uida *erranno elencati una serie si comandi di =ase che ser*ono
per compiere a'ioni elementari allEinterno dellEam=iente di la*oro e per manipolare
semplici entitA matematiche Juali scalari@ *ettori e matrici.
-ella Parte 3 *errA introdotta la nota'ione per de&inire polinomi ed e&&ettuare
opera'ioni tra essi.
-ella Parte , *erranno esposte alcune caratteristiche del Control %ystem +ool=oI@ un
+ool=oI che implementa potenti strumenti per lEanalisi e la sintesi di sistemi dinamici
lineari e non lineari.
-ella Parte * saranno anali''ati ?li strumenti di =ase per la crea'ione di dia?rammi
=idimensionali@ utili per rappresentare ad esempio &un'ioni reali di una *aria=ile reale.
-ella Parte 6 in&ine *errano presentati alcuni comandi relati*i alla crea'ione di
dia?rammi in tre dimensioni@ utili per rappresentare ad esempio &un'ioni reali di due
*aria=ili o campi *ettoriali.
3
Parte 2: Vettori e Matrici
Parte 2: Vettori e Matrici
Introduzione
"n Juesta se'ione *erranno presentati dapprima comandi che consentono di e&&ettuare
alcune semplici ma utili opera'ioni come spostarsi tra le directory del nostro hard disk.
.errA su=ito dopo illustrata la sintassi per dichiarare *aria=ili ed e&&ettuare semplici
opera'ioni tra *arie entitA matematiche.
#isulta curioso sapere che la struttura matematica su cui si &onda Matla= > la matriceH
in Matla= anche uno scalare > una matrice ...di dimensioni (I(N
La struttura dati astratta !atrice > in pratica in Matla= il tipo &ondamentale.
-on a caso Matla= > lEacronimo di M>riI 0>4oratory.
re co!andi basilari
C2
usoH
cd nome_directory
cd ..
cd
Consente di spostarsi tra le cartelle sullEhard disk. LEattri=uto nome_directory
> la cartella in cui ci si *uole spostare. B necessario speci&icare il percorso
completo solo se la cartella desiderata non si tro*a allEinterno di Juella in cui si >
attualmente.
LEattri=uto C..D consente di spostarsi nella cartella posta al li*ello
immediatamente superiore a Juello attuale.
%e non *en?ono speci&icati attri=uti il comando restituisce semplicemente il
percorso della cartella attuale.
2I6
usoH
dir
$lenca i &iles contenuti nella cartella in cui ci si tro*a.
<?0P
usoH
help
help nomedirectory
help nomecomando
%e non *iene speci&icato alcun attri=uto *isuali''a la lista di tutti i ?ruppi di
!
Parte 2: Vettori e Matrici
pro?rammi presenti in matla= e nei tool=oI istallati. 2?ni ?ruppo di comandi >
situato in una directory. Per *isuali''are la lista dei comandi presenti in un
?ruppo occorre speci&icare lEattri=uto nomedirectory che rappresenta il nome
della directory relati*a al ?ruppo desiderato.
%e si speci&ica in&ine lEattri=uto nomecomando@ che rappresenta il nome di un
?enerico comando in un ?enerico ?ruppo@ ne *en?ono *isuali''ati tutti i detta?li
Fsi?ni&icato@ sintassi@ parametri@ ecc.G.
6d esempio di?itandoH
help matla=O?raph,d
si *isuali''a la lista dei comandi presenti nel ?ruppo graph2d
"n*ece di?itandoH
help plot
si *isuali''ano in&orma'ioni detta?liate sul comando PL2+.
"calari# Vettori e Matrici
Per dichiarare una *aria=ile reale ed asse?narle contemporaneamente un *alore =asta
scri*ere@ per esempioH
I P ,.43Q
6==iamo dichiarato la *aria=ile I e le a==iamo asse?nato il *alore ,.43.
LEomissione del punto e *ir?ola &a si che a schermo *en?a stampato esplicitamente il
contenuto della *aria=ile I.
5
Fig. 2 - Dichiarazione di una variabile reale...
Parte 2: Vettori e Matrici
Come a==iamo detto Matla= manipola solo matrici@ ed in&atti unEispe'ione al Workspace
ci dice che I > una matrice di dimensioni (I(.
Da notare lEicona posta a sinistra di I ...> una matriceN H-G
Possiamo di dichiarare un *ettoreH
a P R( , /SQ
o una matriceH
= P R( , /Q 4 3 !Q ! 5 ;SQ
utili''ando la nota'ione riportata ne?li esempi.
-ella dichiara'ione di una matrice il carattere CQD ser*e a separare le ri?he@ mentre lo
spa'io C C ser*e a separare le colonne. "l tutto > racchiuso tra parentesi Juadre CRSD.
2**iamente un *ettore > una particolare matrice a*ente una delle due dimensioni
unitaria@ cosT come lo scalare@ che ha tutte e due le dimensioni unitarie. 9uindi la
nota'ione usata per dichiarare una matrice > Juella piK ?enerale.
;
Fig. 3 - ...e i suoi dettagli: nome, dimensione, tio.
Parte 2: Vettori e Matrici
%i osser*i nella &i?ura a sinistra lEe&&etto dellEomissione del punto e *ir?ola@ ossia la
*isuali''a'ione esplicita del contenuto di a e =.
%i ?uardi poi cosa > accaduto nel Workspace@ a destra.
%&erazioni di base
"n Matla= ?li operatori &ondamentali sono i se?uentiH
U
addi'ione
-
sottra'ione
V
moltiplica'ione
/
di*isione
W
$le*amento a
poten'a
E
trasposi'ione
"n opera'ioni tra scalariFmatrici (I(G il si?ni&icato de?li operatori riportati > Juello che
=en conosciamo dalla matematica@ ad ecce'ione di Juello di trasposi'ione CED che non
ha alcun e&&ettoFo me?lio@ da come risultato lo scalare stesso a cui *iene applicatoG.
"n opera'ioni tra matrici e *ettori =iso?na stare piK attenti@ poichL de*ono essere
<
Fig. ! - Dichiarazione di un vettore riga e di
una matrice...
Fig. " - ...e i relativi dettagli nel #or$sace.
Parte 2: Vettori e Matrici
o**iamente rispettate le re?ole relati*e allEal?e=ra delle matrici.
Chiariremo Juanto detto mediante esempi.
"o!!a e 2i++erenza
Per sommare due matrici di u?uali dimensioni 6 e 8@ e mettere il risulatato in una ter'a
matrice C =asta scri*ereH
6 P R( ,Q/ 4SQ
8 P R3 !Q5 ;SQ
C P 6 U 8Q
La matrice C sarA dunJue la se?uenteH
%=
[
6 8
10 12
]
-on > possi=ile in*ece ottenere un risultato se si tenta la somma tra matrici di
dimensioni di*erse.
6 P R( ,Q/ 4SQ
8 P R3 !Q5 ;Q< ()SQ
CP 6U8Q
errore!
9uanto detto sopra *ale pari pari per lEopera'ione di di&&eren'a.
Molti&licazione e 2i(isione
La moltiplica'ione tra due matrici > intesa in*ece righe per colonne. Possiamo
e&&ettuare il prodotto tra due apportune matrici 6 e 8 scri*endoH
6 P R( ,Q/ 4SQ
8 P R3 ! 5Q; < ()SQ
C P 6V8Q
"l risultato > pertantoH
%=
[
21 24 27
47 54 61
]
()
Parte 2: Vettori e Matrici
-on > possi=ile in*ece *alutare il prodotto 8V6@ a meno che@ come > noto@ 6 e 8 non
siano matrici Juadrate di u?uali dimensioni.
La moltiplica'ione di una matrice per uno scalare > sempre possi=ile ed > commutati*a@
o**iamente.
LEoperatore C/D consente di moltiplicare una matrice per lEin*erso di uno scalare@ oppure
per la matrice in*ersa di unEaltra matriceFprodotto a destra@ ri?he per colonneG.
6d esempio scri*ereH
6/8Q
> analo?o a scri*ereH
6Vin*F8G
Diremo anche che C/D tra due matrici opportune rappresenta lEoperatore di di"isione a
destra.
Possiamo utili''are lEoperatore COD tra due matrici per e&&ettuare la di"isione a sinistraH
9uindiH
6O8Q
> analo?o aH
in*F8GV6Q
ras&osizione
Per trasporre una matrice =asta scri*ereH
6 P R( ,Q/ 4SQ
8 P 6EQ
La matrice 8 sarAH
&=
[
1 3
2 4
]
((
Parte 2: Vettori e Matrici
La trasposi'ione > sempre possi=ile.
?le(a!ento a &otenza
LEoperatore di ele*amento a poten'a CWD puM essere utili''ato in due modi.
1@ %e 6 > una matrice Juadrata possiamo scri*ereH
8 P 6WnQ
ed ottenere la moltiplica'ione di 6 per se stessa n *olteH
&=''...'

nvolte
2@ %e 6 > una matrice Jualsiasi@ di dimensioni l I m possiamo scri*ereH
8 P 6.WnQ
acendo precedere lEoperatore CWD da un punto in pratica ele*iamo a poten'a n-esima i
sin?oli elementi aiX della matrice 6. La matrice risultato > posta in 8H
b
i(
=a
i(

n
i=1,... , l (=1,... , m
%&erazioni a(anzate
%e I > una *aria=ile scalare possiamo e&&ettuare su si essa opera'ioni piK complesse
utili''ando le &un'ioni matematiche disponi=ili in Matla=.
%arA possi=ile ad esempio estrarre la radice Juadrata di I@ oppure *alutarne il lo?aritmo
naturaleH
y P sJrtFIGQ
? P lo?FIGQ
6==iamo posto la radice Juadrata di I in y e il lo?aritmo naturale di I in ?.
Per una lista completa di &un'ioni matematiche di?itareH
help el&un
(,
Parte 2: Vettori e Matrici
al prompt dei comandi.
%e in*ece a==iamo a che &are con matrici@ risultano utili le &un'ioni descritte di se?uito.
I)V
usoH
8 P in*F6GQ
.aluta lEin*ersa di una matrice. 6 > la matrice da in*ertire. "l risultato > messo in
8. %i possono in*ertire solo matrici Juadrate@ o**iamente.
?IG
usoH
R.@DS P ei?F6GQ
Calcola ?li auto"alori e ?li auto"ettori di una matrice Juadrata.
D > una matrice dia?onale contenente Fnella dia?onale e in ordine@ da sinistra a
destraG ?li auto*alori di 6.
. > una matrice a*ente per colonne Fin ordine di associa'ione ai corrispondenti
auto*alori@ da sinistra *erso destraG?li auto*ettori di 6.
"IA?
usoH
si'eF6G
%tampa a schermo le dimensioniFnumero ri?he Y numero colonneG della matrice 6.
?B?
usoH
6 P eyeF-GQ
Crea una matrice identitAFmatrice Juadrata con tutti ( sulla dia?onale principaleG
e la pone in 6.
)u!eri Co!&lessi
Matla= opera sen'a pro=lemi anche con *aria=ili complesse. Possiamo dichiararne una
scri*endo@ ad esempioH
p P 3 U 5iQ
(/
Parte 2: Vettori e Matrici
' P 3 U 5XQ
%i ha p P 'H lEoperatore imma?inario > indi&&erentemente i o X.
%u un numero complesso > possi=ile compiere tutte le opera'ioni di =ase@ nonchL Juelle
a*an'ate
(
@ *alide per un numero reale. La sintassi > esattamente la stessa.
1 Nell'interpretazione corretta dei risultati derivanti dalla applicazione di funzioni matematice elementari!o
composte" a numeri complessi sare##e opportuno far riferimento alla teoria delle funzioni complesse.
(4
Parte #: Polinomi
Parte 3: Polino!i
Come sappiamo un polinomio > uni*ocamente de&inito se si conoscono i suoi
coe&&icientiH per de&inire un polinomio in Matla= =asta de&inire un *ettore che li
conten?a. "l ?rado del polinomio > automaticamente &issato dalla dimensione del
*ettore.
6d esempio@ di?itandoH
a P R( , 3 /SQ
a*remo de&inito il polinomioH
a s=s
3
2 s
2
5 s3
"l *ettore contiene 4 elementi. "l ?rado del polinomio > / P 4 Y (.
"n ?enerale se il *ettore contiene n elementi il polinomio > di ?rado n Y (. CiM > sempre
*ero perch> Jualora nel polinomio Jualche coe&&iciente sia nullo@ =iso?nerA scri*erlo
esplicitamente nel *ettore e Juindi@ seppur nullo@ esso contri=uirA alla dimensione del
*ettore.
Da Juesto punto in poiF&ino alla &ine della Parte /G useremo semplicemente il termine
CpolinomioD per indicare un *ettore che ne conten?a i coe&&icienti.
%&erazioni sui Polino!i
6%%"
usoH
rootsFaGQ
Calcola le radici del polinomio a@ supposto di ?rado n@ e le *isuali''a a schermo.
Le radici sono in numero pari ad n e possono essere@ come sappiamo dalla
matematica reali o complesse@ a coppie coniu?ate.
P%0B
usoH
a P polyF=GQ
+ro*a i coe&&icienti di un polinomio@ a partire dalla conoscen'a delle sue radici.
= > un *ettore contenente n radici note@ reali o complesse@ a coppie coniu?ate.
a > il *ettore risultato che contiene i coe&&icienti del polinomio calcolato.
"n realtA ad n radici corrispondono in&initi polinomi di ?rado n@ tutti di&&erenti per
un semplice &attore moltiplicati*oH il comando P2L1 &ornisce pertanto il
(3
Parte #: Polinomi
polinomio monico Fcio> Juello a*ente coe&&iciente della massima poten'a di s
pari a (G.
C%)V
usoH
c P con*Fa@=GQ
$&&ettua la moltiplica'ione tra i due polinomi a e =.
c > il polinomio prodotto. %e a > di ?rado m e = > di ?rado n allora c sarA di ?rado
m U n.
2?C%)V
usoH
RJ@rS P decon*Fa@=G
$&&ettua la di*isione tra i due polinomi a e =.
J > il polinomio Juo'iente. r > il polinomio resto.
"co!&osizione in +ratti se!&lici
%upponiamo di a*ere una &un'ione ra'ionale &ratta@ costituita cio> dal rapporto tra due
polinomiH
n s
d s
=
s
m
b
1
s
m1
...b
m1
sb
m
s
n
a
1
s
n1
...a
n1
sa
n
%upponiamo di scomporre il polinomio a denominatore nel prodottoH

d s= s
1
... s
n

do*e
1
,...,
n
sono le n radici del polinomio a denominatore@ dette anche poli della
&un'ione ra'ionale &ratta.
Possiamo scri*ereH

n s
d s
=
r
1
s
1

...
r
n
s
n

) s
ossia scomporre in $ratti semplici la &un'ione n*s+,d*s+.
r
1
,...,r
n sono ?li n residui associati a?li n poli della &un'ione r. &ratta e )*s+ > la parte
intera. 9uestEultima > un polinomio di*erso da 'ero solo se m > ma??iore o u?uale a n.
"n Matla= > possi=ile usare il comando #$%"D4$ per e&&ettuare la scomposi'ione in &ratti
(!
Parte #: Polinomi
semplici.
6?"I2C?
usoH
Rr@p@kS P residueFn@dGQ
Calcola i residui della &un'ione ra'ionale &ratta a*ente per numeratore il
polinomio n e per denominatore il polinomio d.
r > il *ettore dei residui.
p > il *ettore dei poli.
k > il *ettore dei coe&&icienti della e*entuale parte intera.
(5
Parte %: &ontrol 'ystem (oolbo)
Parte ,: Control "-ste! oolbo.
0e (ariabili "iste!a: ss#t+#z&1
+ra ?li innumere*oli +ool=oI disponi=ili in Matla=@ il Control %ystem +ool=oI > sen'Ealtro
di note*ole utilitA per chi si tro*a ad a&&rontare pro=lemi di analisi dei sistemi dinamici
L+" Flineari tempo-in*ariantiG o di sintesi di sistemi di controllo.
9uesto +ool=oI introduce in Matla= due importanti tipi di *aria=ileH
ss P *aria=ile sistema dinamico in spazio di stato
t& P *aria=ile $unzione di tras$erimento nel dominio di *aplace
#icordiamo che un sistema dinamico L+" presenta nello spa'io di stato una
rappresenta'ioneFrappr. "-s-uG del tipoH

-='-&u
.=%-Du
do*e ' > la matrice dinamica@ & > la matrice degli ingressi e % > la matrice delle
uscite.
-el dominio di Laplace in*ece la &.d.t. > del tipo
,
H
# s=
s
m
b
1
s
m1
...b
m1
sb
m
s
n
a
1
s
n1
...a
n1
sa
n
=)
sz
1
... sz
m

s
1
... s
n

ossia una &un'ione ra'ionale &ratta con m 'eri ed n poli. 7 > il ?uada?no della &un'ione
di tras&erimento Fnon > il ?uada?no staticoNG.
Per creare in Matla= un o??etto sistema in spa'io di stato@ =asta de&inire le matrici
6@8@C@D Fcosa che sappiamo ?iA &areG e scri*ereH
% P ssF6@8@C@DGQ
Per speci&icare direttamente la &un'ione di tras&erimento scri*iamo in*eceH
W P t&Fn@dGQ
do*e n e d sono i *ettori che conten?ono i coe&&icienti del polinomio a numeratore e a
denominatore della &.d.t..
2 $a f.d.t. % in realt& una funzione razionale fratta solo '( il sistema % ')'*, altrimenti sar&, in caso di sistema +)+*,
un vettore o una matrice di funzioni razionali fratte. ,onsidereremo per semplicit& solo sistemi ')'*.
(;
Parte %: &ontrol 'ystem (oolbo)
Possiamo rica*are la &.d.t a partire dalla i-s-u Re *ice*ersaS scri*endoH
W P t&F%GQ R% P ssFWGQS
B possi=ile de&inire una &.d.t. anche come somma@ di&&eren'a@ prodotto o di*isione di
altre &.d.t.. 6d esempo@ detti 6@ 8 e C tre o??etti di tipo t& possiamo de&inire una W
come se?ueH
W P t&FFF6U8GVF8UCGG/FCV8GGQ
Banche possi=ile lEele*amento a poten'a mediante lEoperatore CWD.
6d esempioH
W P t&FF6W,G/8GQ
(<
Fig. / - De0iniamo le matrici ',&,%,D e dichiariamo la variabile sistema 1.
Parte %: &ontrol 'ystem (oolbo)
La &.d.t. W sarA pari al Juadrato di 6 di*iso per 8.
4n modo alternati*o@ e &orse piK naturale@ per speci&icare una &.d.t > dato nel se?uente
esempioH
s P t&FEsEGQ
W P FsU(G/FsW,U/VsU(GQ
"n pratica si dichiara la *aria=ile &un'ione di tras&erimento HFsG P s cosT come mostrato
nel primo comando e poi si dichiara la &.d.t. desiderata@ scri*endola esplicitamente
cosT come &aremmo su un pe''o di carta.
$siste in&ine un ulteriore tipo di *aria=ile di sistema dinamicoH
'pk P *aria=ile &un'ione di tras&erimento in &orma 'eri-poli-?uada?no7
Mediante esso > possi=ile speci&icare una &.d.t. indicandone ?li 'eri@ i poli e il ?uada?no
7. Per esempio@ mediante il comandoH
,)
Fig. 2 - De0iniamo una 0.d.t. 0acendo uso degli oeratori che conosciamo.
Parte %: &ontrol 'ystem (oolbo)
W P 'pkFR-( -/S@R) -3 5S@()GQ
de&iniamo una &.d.t. con due 'eri Fin -( e in -/G@ tre poli F in )@ -3 e 5G@ e 7 P ().
Possiamo altresT Ccon*ertireD un o??etto di tipo t& o ss in un altro di tipo 'pk.
$sH
6 P t&Fa@=GQ
W P 'pkF6GQ
%&erazioni sui siste!i dina!ici
.ediamo ora Juali manipola'ioni possiamo e&&ettuare su un sistema dinamico de&inito
come su esposto. "ndicheremo con %1% una ?enerica *aria=ile sistema indi&&erentemente
di tipo ss@t&@'pk.
""2>>
usoH
R6@8@C@DS P %%D6+6F%1%GQ
$strae le matrici 6@8@C@D del sistema %1% pro**edendo automaticamente alla
con*ersione in o??etto ss Jualora %1% non lo sia ?iA.
,(
Fig. 3 - %onversione di un oggetto t0 in un oggetto z$.
Parte %: &ontrol 'ystem (oolbo)
92>>
usoH
R-4M@D$-S P t&dataF%1%@E*EGQ
$strae da una &un'ione di tras&erimento il polinomio a numeratore@ -4M@ e Juello
a denominatore@ D$-. "l ta? E*E ser*e a &ar si che -4M e D$- siano dei *ettori di
coe&&icienti e non 6rray di celle ?enerici. %e %1% non > di tipo t& il comando
pro**ede automaticamente alla con*ersione.
APD2>>
usoH
R0@P@7S P 'pkdataF%1%@E*EGQ
$strae da una &un'ione di tras&erimento ?li 'eri Fnel *ettore 0G@ i poli Fnel *ettore
PG e il ?uada?no 7. "l ta? E*E ser*e a &ar si che 0@P e 7 siano dei *ettori di
coe&&icienti e non 6rray di celle ?enerici. %e %1% non > di tipo 'pk il comando
pro**ede automaticamente alla con*ersione.
MI)6?>0
usoH
M%1% P minrealF%1%GQ
$&&ettua tutte le cancella'ioni polo-'ero nella &.d.t. %1%@ &ornendone dunJue
lEespressione sempli&icata.
9??24>CD
usoH
W P &eed=ackFG@kGQ
Crea il sistema a retroa'ione Fne?ati*a di de&aultG a*ente G come $dt di catena
diretta e k come costante di retroazione.
%e k Z ) la retroa'ione > positi*a.
2CG>I)
usoH
,,
GFsG
k
-
.
Parte %: &ontrol 'ystem (oolbo)
7p P dc?ainF%1%GQ
$strae il ?uada?no statico
/
del sistema %1%.
2ia3ra!!i di 4ode# )-5uist# )ichols
-on mancano nel C.%.+ool=oI tutti ?li strumenti ?ra&ici della teoria dei sistemi Juali i
diagrammi di +ode o i diagrammi polari. B possi=ile inoltre *isuali''are direttamente sul
piano di ,auss i poli e ?li 'eri di una &.d.t. nonchL *alutare il luogo delle radici di un
sistema a ciclo chiuso a partire dalla conoscen'a della &.d.t. di guadagno di anello. Di
se?uito sono riportati i comandi relati*i.
PAM>P
usoH
p'mapF%1%GQ
ornisce la rappresenta'ione sul piano complesso dei poli e de?li 'eri del sistema
%1%.
4%2?
usoH
=odeF%1%GQ
=odeF%1%@[wmin@wmaI\GQ
+raccia i dia?rammi di 8ode dei Moduli e delle asi del sistema %1%. %i tratta dei
dia?rammi di 8ode reali. -on > disponi=ile in*ece una &un'ione che tracci Juelli
asintotici. %i puM sce?liere lEinter*allo di &reJuen'e desiderato speci&icando la
pulsa'ione minima@ wmin@ e Juella massima@ wmaI@ in rad/sec.
4%2?M>G
usoH
=odema?F%1%G/
=odema?F%1%@[wmin@wmaI\GQ
+raccia il solo dia?ramma di 8ode dei Moduli. LEuso > identico al comando 82D$.
)BECI"
usoH
nyJuistF%1%GQ
nyJuistF%1%@[wmin@wmaI\GQ
3 0p 1
lim
s 0
# s
,/
Parte %: &ontrol 'ystem (oolbo)
+raccia il dia?ramma polare Fo di -y.uistG del sistema %1%. %i puM sce?liere
lEinter*allo di &reJuen'e desiderato speci&icando la pulsa'ione minima@ wmin@ e
Juella massima@ wmaI@ in rad/sec.
)IC<%0"
usoH
nicholsF%1%GQ
nicholsF%1%@[wmin@wmaI\GQ
+raccia il diagramma di -ichols del sistema %1%. wmin e wmaI sono ?li estremi
dellEinter*allo di &reJuen'e desiderato@ in rad/sec.
60%CC"
usoH
rlocusFGGQ
rlocusFG@kGQ
+raccia il luo?o delle radici della &un'ione di tras&erimento a ciclo chiuso del
sistema a retroa'ione ne?ati*aFse k ] )G W P G/F( U kGG.
G > la &.d.t. di catena diretta del sistema retroa'ionato.
k > la costante di retroa'ione. -el caso in cui k non > speci&icato il comando
assume k P (.
%e k Z ) il sistema a ciclo chiuso > a retroa'ione positi*a.
6is&osta nel do!inio del te!&o
Di un sistema dinamico ci interesserA sen'Ealtro *alutare la risposta a determinati tipi di
in?resso. 6==iamo a disposi'ione alcuni comandi che consentono di *alutare
immediatamente la risposta impulsi"a e la risposta indiciale@ nonchL altre &un'ioni per
CtestareD un sistema con un Jualsiasi tipo di in?resso da noi de&inito.
IMPC0"?
usoH
impulseF%1%GQ
Ry@t@IS P impulseF%1%GQ
Dia?ramma la risposta impulsi*a nellEuscita del sistema %1%.
%e si speci&icano i parametri di uscitaFy@t@IG il comando non dise?na alcun
dia?ramma ma produce il *ettore contenente i campioni della risposta nellEuscita@
y@ nello stato@ I@ e il *ettore dei campioni della *aria=ile indipendente tFtempoG.
"?P
usoH
,4
Parte %: &ontrol 'ystem (oolbo)
stepF%1%GQ
Ry@t@IS P stepF%1%GQ
Dia?ramma la risposta indiciale nellEuscita del sistema %1%.
%e si speci&icano i parametri di uscita Fy@t@IG il comando non dise?na alcun
dia?ramma ma produce il *ettore contenente i campioni della risposta nellEuscita@
y@ nello stato@ I@ e il *ettore dei campioni della *aria=ile indipendente tFtempoG.
0"IM
usoH
lsimF%1%@u@tGQ
lsimF%1%@u@t@I)GQ
Dia?ramma la risposta del sistema %1% al se?nale di in?resso uFtG i cui campioni
sono contenuti nel *ettore u. "l *ettore t contiene in*ece i campioni della
*aria=ile indipendente t del se?nale di in?resso
4
. u e t hanno u?uale dimensione.
"l parametro I) speci&ica le condi'ioni ini'iali. $sso > un *ettore di dimensione n@
do*e n > lEordine del sistema %1%. "n caso di omissione di I) esso > posto
automaticamente a ) dal comando.
0I Vie7er
+utti i comandi incontrati &inora sono potentemente implementati nellEintuiti*a
inter&accia ?ra&ica &ornita dal tool 0I Vie7er.
8asta di?itareH
lti*iewF%1%GQ
per a*ere a portata di clic Jualsiasi in&orma'ione sul sistema %1%.
4 2er definire intervalli e rappresentare se3nali vedere la 2arte 4.
,3
Parte %: &ontrol 'ystem (oolbo)
-a*i?ando i menK in alto e utili''ando il tasto destro > possi=ile accedere a tutte le
op'ioni relati*e ai sin?oli dia?rammi@ *isuali''are contemporaneamente i dati di piK
sistemi dinamici@ in?randire i sin?oli ?ra&ici e *isuali''arne i parametri caratteristici.
"I"% 2esi3n ool
4n altro strumento di estrema utilitA@ Juesta *olta nellEam=ito del pro?etto di sistemi di
controllo@ > il "I"% 2esi3n ool.
,!
Fig. 4 - L'inter0accia gra0ica di L56 7ie8er. 1i ossono visualizzare i arametri caratteristici dei singoli gra0ici*temo
di assestamento, margini di stabilit9, ecc,+ utilizzando il tasto destro su ognuno di essi.
Fig. 1: - ;n sistema di controllo con retroazione.
CFsG
k
-
.
PFsG
Parte %: &ontrol 'ystem (oolbo)
2=ietti*o del pro?ettista > sinteti''are la &un'ione di tras&ermento CFsG mediante
opportune tecniche@ nota la &.d.t. dellEimpianto da controllare PFsG.
De&inita in Matla= la &.d.t. PFsG =asta di?itare al promptH
sisotoolFPGQ
.iene aperta una &inestra di*isa in di*erse se'ioni@ caratteri''ata dalla presen'a di
alcuni menK speci&ici e di una =arra de?li strumentiFtool=arG posta in alto.
-el =oI in alto a destra la &.d.t. PFsG > rappresentata dal blocco G. H > il =locco di
retroa'ione che di de&ault > pari alla costante (. C > il controllore la cui &.d.t. >
mostrata per esteso immediatamente a sinistra.
-ellEarea al centro *iene automaticamente mostrato il luo?o delle radici del sistema a
ciclo chiuso. B possi=ile a??iun?ere sul piano di Gauss direttamente poli e 'eri al
,5
Fig. 11 - L'inter0accia gra0ica del 161< Design 5ool. =ossiamo maniolare molto 0acilmente il controllore er via
gra0ica*sul iano di >auss+ o analitica e veri0icare istantaneamente il comortamento del sistema a ciclo chiuso.
Parte %: &ontrol 'ystem (oolbo)
controllore CFsG per *ia ?ra&ica utili''ando i pulsanti nella tool=ar in alto.
+ramite i menK > possi=ile *isuali''are Jualsiasi in&orma'ione o dia?ramma relati*o ad
o?nuna delle &.d.t. CFsG@ PFsG@ e HFsG e al sistema a ciclo chiuso WFsG.
+ra essi *i > anche la &arta di -ichols@ &ondamentale per soddis&are le speci&iche in
banda passante e modulo di risonanza nel sistema a ciclo chiuso.
6ttra*erso il comando $Iport dal menK ile possiamo esportare direttamente nello stack
di memoria di Matla=FWorkspaceG le *aria=ili relati*e alle &.d.t. di 'ensiti"it/ diretta e
'ensiti"it/ complementare@ risp. %FsG e +FsG@ e tante altre &.d.t. Juali il ?uada?no di
anello o la &.d.t. a ciclo chiuso@ in modo da poter e&&ettuare manipola'ioni dirette su
Jueste ultime attra*erso la shell testuale.
6ncora@ possiamo *alutare i dia?rammi tipiciF8ode@ -ichols@ risposta indiciale@ ecc.G in
reala'ione a &un'ioni di tras&erimento che a==iano in?ressi e uscite posti in punti
speci&ici dello schema a blocchi. "n Juesto modo possiamo ad esempio *alutare la
risposta a disturbi costanti in catena diretta o in catena di retroazione@ il cui
andamento > di note*ole importan'a per le presta'ioni del sistema a ciclo chiuso.
,;
Fig. 12 - =ossiamo esortare una ?ualsiasi 0.d.t. nel #or$1ace e utilizzarla a nostro
iacimento mediante il romt dei comandi.
Parte %: &ontrol 'ystem (oolbo)
Come sempre in&ine si possono settare indipendentemente tutte le op'ioni relati*e ai
sin?oli dia?rammi e *isuali''are su di essi i parametri caratteristici.
,<
Fig. 13 - La 0inestra ci consente di seci0icare un unto di ingresso e uno
di uscita nello schema a blocchi e di e00ettuare diverse oerazioni sulla
0.d.t. corrisondente.
Parte 0: 1iagrammi 21
Parte *: 2ia3ra!!i 22
2e+inizione di inter(alli e +unzioni
Per dia?rammare una ?enerica $unzione di una "ariabile reale &FtG@ rappresenta=ile
come sappiamo mediante una coppia di assi cartesiani@ occorre de&inire in Matla=
lEinter*allo dei *alori della "ariabile indipendente t per i Juali e&&etti*amente *o?liamo
?ra&icare la &FtG.
Matla= in realtA *aluta una ?enerica &un'ione &FtG per un numero &inito di punti
allEinterno dellEinter*allo di *alori di t speci&icato. " *alori della &FtG cosT ottenuti
*en?ono poi interpolati.
2ccorre Juindi speci&icare di un inter*alloFdella *aria=ile tG Juanti punti andranno
e&&etti*amente ad essere considerati per lEinterpola'ione. Ma??iore > tale numero@
ma??iore sarA la precisione del dia?ramma ma di con*erso ma??iore sarA il tempo
richiesto per il calcolo.
6 tale scopo possiamo usare la sintassi presentata nellEesempio Jui di se?uitoH
t P -()H).)(H()Q
Mediante Juesto comando a==iamo speci&icato che lEinter*allo da considerare per la
*aria=ile t > R-()@()S. "noltre > stato scelto un passo di campionamento pari a ).)(H i
punti considerati per lEinterpola'ione saranno tutti Juelli distan'iati tra loro di ).)( a
partire dallEestremo sinistro dellEinter*allo. -el caso dellEesempio essi saranno dunJue
-()@-<.<<@-<.<;@...@<.<;@<.<<@() Fnotiamo che ).)( > contenuto un numero &inito di *olte
in R-()@()S@ per cui tra i punti da interpolare saranno inclusi anche ?li estremi -()@()G.
t > in conclusione il *ettore dei campioni della *aria=ile indipendente.
/)
Fig. 1! - ;na generica 0unzione 0*t+ con la corrisondente arossimazione mediante
interolazione 0'*t+ con asso di camionamento ari a 5
a
b 4
0*t+
t
0'*t+
Parte 0: 1iagrammi 21
PiK in ?enerale scri*eremo dunJueH
t P tminH+HtmaIQ
do*e tmin e tmaI sono ?li estremi dellEinter*allo e + > il passo di campionamento.
Possiamo de&inire un inter*allo anche utili''ando il comando L"-%P6C$H
0I)"P>C?
usoH
t P linspaceFa@=@nGQ
Crea un *ettore contenente n *alori reali eJuispa'iati compresi tra a e =@ a
partire da a.
Per de&inire i *alori della &un'ione &FtG =asta scri*ereH
& P &FtGQ
do*e & > il *ettore dei campioni della *aria=ile dipendente ed ha dimensione identica al
*ettore t@mentre &FtG > una espressione matematica in cui compare la *aria=ile t.
Matla= supporta tutte le &un'ioni elementari che conosciamo e le rispetti*e in*erse. &FtG
puM essere anche una &un'ione composta mediante &un'ioni elementari.
Per un elenco completo delle &un'ioni matematiche supportate da Matla= di?itareH
help el&un
al prompt dei comandi.
Per dia?rammare in&ine la &un'ione &FtG =asta usare il comando PL2+@ di se?uito
descritto.
P0%
usoH
plotFt@&GQ
plotFt(@&(@t,@&,@...@tn@&nGQ
plotFt(@&(@Es(E@t,@&,@Es,E...@tn@&n@EsnEGQ
%tampa il dia?ramma di & in &un'ione di tQ & e t de*ono a*ere la stessa
dimensione.
B possi=ile stampare i ?ra&ici di piK &un'ioni &(@...@&n in &un'ione dei rispetti*i
inter*alli t(@...@tn in una stessa &inestra utili''ando la seconda sintassi.
/(
Parte 0: 1iagrammi 21
" parametri Es(E@...@EsnE sono stringhe
3
che consentono di impostare attri=uti Juali il
colore o lo spessore del ?ra&ico delle rispetti*e &un'ioni. Di?itando Chelp PL2+D al
prompt di Matla= si puM ottenere la lista dei *alori possi=ili per il parametro EsE.
"n &i?ura > riportato un esempio di Juanto detto &inora.
"l dia?ramma stampato dal comando PL2+ *iene proposto in una nuo*a &inestra.
#iportiamo di se?uito alcuni comandi utili per modi&icare un determinato ?ra&ico una
5 )n +atla# una strin3a va racciusa tra 3li apici 5'6. 7d esempio '*33i % 8omenica' % una strin3a in +atla#.
/,
Fig. 1" - De0inizione della 0unzione 0 t =e
t
sin10t
Fig. 1/ - 6l gra0ico della 0unzione 0 t =e
t
sin10t
Parte 0: 1iagrammi 21
*olta stampato.
G6I2
usoH
?rid onQ
?rid o&&Q
6tti*aFonG o disatti*aFo&&G la ?ri?lia tarata sul ?ra&ico nella &inestra di output
corrente.
4%F
usoH
=oI onQ
=oI o&&Q
6tti*aFonG o disatti*aFo&&G il =ordo tarato sul ?ra&ico nella &inestra di output
correnteFsele'ionataG.
Per creare una nuo*a &inestra di output =asta usare in*ece il comando 4G4#$.
9IGC6?
usoH
&i?ureQ
6??iun?e una &inestra di output e la rende corrente.
//
Fig. 12 - 7arie 0inestre di outut gra0ico. @ella attiva A la Bo. 3.
Parte 2: 1iagrammi #1
Parte 6: 2ia3ra!!i 32
2e+inizione di do!ini a 2 e 3 di!ensioni
Possiamo a Juesto punto estendere i concetti presentati per la de&ini'ione in Matla= di
inter*alli di numeri reali@ rappresenta=ili mediante se?menti@ alla de&ini'ione di domini
in #
,
e in #
/
@ rappresenta=ili rispetti*amente mediante parti di piano e parti di spa'io.
"l comando M$%HG#"D rende note*olmente a?e*oli Jueste opera'ioni.
M?"<G6I2
usoH
R:@1S P mesh?ridFI@yGQ
R:@1@0S P mesh?ridFI@y@'GQ
De&inisce domini a due e tre dimensioni.
Per creare un dominio =idimensionale occorre speci&icare solo le matrici : e 1 ed
i *ettori I e y.
Le matrici : e 1 sono create a partire dai *ettori I e y che costituiscono de?li
inter*alli di *alori monodimensionaliH le ri?he della matrice : sono copie del
*ettore I e le colonne della matrice 1 sono copie del *ettore y.
" *ettori I e y possono essere de&initi mediante il comando L"-%P6C$.
6d esempio se scri*iamoH
I P linspaceF-(@(@3GQ
y P linspaceF-,@,@()GQ
R:@1S P mesh?ridFI@yGQ
/4
Fig. 13 - ;n dominio tridimensionale.
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
1
Parte 2: 1iagrammi #1
otterremo le se?uenti matrici : e 1H
C =
[
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
1 0.5 0 0.5 1
]
D =
[
2 2 2 2 2
1.5556 1.5556 1.5556 1.5556 1.5556
1.1111 1.1111 1.1111 1.1111 1.1111
0.6667 0.6667 0.6667 0.6667 0.6667
0.2222 0.2222 0.2222 0.2222 0.2222
0.2222 0.2222 0.2222 0.2222 0.2222
0.6667 0.6667 0.6667 0.6667 0.6667
1.1111 1.1111 1.1111 1.1111 1.1111
1.5556 1.5556 1.5556 1.5556 1.5556
2 2 2 2 2
]
La Cso*rapposi'ioneD di : e 1 costituisce una ?ri?lia di punti che sono le coppie
ordinate del dominio =idimensionale da noi de&inito. "n corrisponden'a di tali
coppie ordinate potrA essere *alutata una Jualisiasi &un'ione reale di , *aria=ili.
%e i *ettori I e y sono u?uali possiamo e*itare di speci&icarli entram=i@ scri*endo
ad esempioH
R:@1S P mesh?ridFIGQ
in cui a==iamo indicato solo il *ettore I. LEe&&etto sulle matrici : e 1 resta
comunJue Juello relati*o allEuso tradi'ionale di M$%HG#"D.
6nalo?amente se speci&ichiamo anche la matrice 0 e il rispetti*o *ettore '@
possiamo de&inire un dominio tridimensionale.
9uesta *olta dunJue la ?ri?lia di punti si estenderA non piK sul piano ma nello
spa'io. B e&&etti*amente un reticolo tridimensionale di punti@ un insieme di triple
ordinate. Le matrici :@1@0 saranno in realtA de?li array a tre dimensioni.
9unzioni reali di due (ariabili reali
Per de&inire una &un'ione reale di due *aria=ili reali@ una *olta de&initone il dominio
=idimensionale mediante il comando M$%HG#"D =asta usare la sintassiH
0 P &F:@1GQ
in cui & > una ?enerica espressione matematicaFuna Jualsiasi composi'ione di &un'ioni
elementari supportate da Matla=G che conten?a le matrici : e 1. 0 sarA un array a tre
dimensioni contenente i punti dello spa'io che matematicamente rappresentano la
&un'ioneH
/3
Parte 2: 1iagrammi #1
z= 0 - , .
4n esempio chiarirA me?lio Juanto detto.
Per de&inire la &un'ione di due *aria=iliH
z=e
-
2
.
2

in rela'ione al dominioH
- , .[5,5]
=asterA scri*ere in Matla=H
I P linspaceF-(@(@())GQ
y P linspaceF-,@,@,))GQ
R:@1S P mesh?ridFI@yGQ
0 P eIpF:.W, U 1.W,GQ
6nche in Juesto caso@ come ci si potrA rendere conto@ Matla= compie unEopera'ione di
interpola'ione. La &un'ione 0 *iene *alutata solo per Juei punti che e&&etti*amente
costituiscono la ?ri?lia di punti del dominio =idimensionale dichiarato. " punti intermedi
non *en?ono in*ece calcolati. 6llEatto della rappresenta'ione di 0@ mediante uno dei
comandi che *edremo di se?uito@ i punti intermedi saranno comunJue dise?nati sullo
schermo utili''ando per la tecnica dellEinterpola'ione.
B e*idente che Juanto piK &itta > la ?ri?lia FJuanto piK ?rande > il numero di punti che
la costituisceG piK accurato sarA il ?ra&ico della &un'ione 0 ma al contempo piK ele*ati
saranno i tempi di calcolo.
La risolu'ione Fnumero di puntiG della ?ri?lia potrA essere *ariata indirettamente
accrescendo il numero di punti dei *ettori I e y come ?iA sappiamo &are ad esempio
mediante il comando L"-%P6C$.
9unzioni (ettoriali di (ariabili reali
"l caso di una &un'ione *ettoriale di tre *aria=ili reali@ e Juindi di un *ettore a tre
dimensioni@ include anche Juello di &un'ioni *ettoriali di due o una *aria=ile reale.
Presenteremo dunJue solo tale casoF&.*. di / *ar.realiG.
4na &un'ione *ettoriale di un *ettore a tre dimensioni > rappresentata in &orma
compatta da unEespressione matematica del tipoH
F=F - , . , z
/!
Parte 2: 1iagrammi #1
do*e 9 > un *ettore. "n &orma estesa possiamo scri*ereH
F=[u , v , 8]=[u - , . , z , v - , . , z , 8 - , . , z]
do*e u@*@w sono le componenti scalari di 9 e sono &un'ioni dei numeri reali I@y@'.
"n Matla= per speci&icare @ o me?lio le sue componenti scalari =asta scri*ereH
R4@.@WS P RuF:@1@0G@*F:@1@0G@wF:@1@0GSQ
do*e :@1@0 sono state de&inite mediante il comando M$%HG#"D e u@*@w sono delle
?eneriche espressioni matematicheFcomposi'ioni delle &un'ioni matematiche elementari
supportate da Matla=G contententi :@1@0.
6d esempio per de&inire la &un'ioneH
F=[ u , v , 8]=[sin - , cos . , sin - cos .]
=asterA scri*ereH
I P linspaceF-(@(@())GQ
y P linspaceF-,@,@,))GQ
' P linspaceF-(@(@())GQ
R:@1@0S P mesh?ridFI@y@'GQ
R4@.@WS P RsinF:G@cosF1G@FsinF:GG.VFcosF1GGSQ
6a&&resentazione 3ra+ica di +unzioni
-on ci resta a Juesto punto che conoscere i comandi che ci consentono in Matla= di
rappresentare ?ra&icamente i tipi di &un'ioni che a==iamo introdotto sopra.
"l se?uente ?ruppo di comandi ser*e a *isuali''are &un'ioni reali di due *aria=ili reali.
M?"<
usoH
meshF0G
Dise?na a schermo una &un'ione di , *aria=ili 0 P &F:@1G utili''ando la tecnica di
*isuali''a'ione mesh sur$ace e utili''ando la colormap di de&ault CXetD.
$sempioH
I P linspaceF-/@/@,)GQ
R:@1S P mesh?ridFIGQ
/5
Parte 2: 1iagrammi #1
0 P eIpFsJrtF:.W, U 1.W,GGQ
meshF0G
"C69
usoH
sur&F0GQ
Dise?na a schermo una &un'ione di , *aria=ili 0 P &F:@1G utili''ando la tecnica di
*isuali''a'ione colored sur$ace e utili''ando la colormap di de&ault CXetD.
Di de&ault la super&icie dise?nata presenta un modo di om=re??iatura di tipo
C&acetedD@ ossia con mesh nere so*rapposte.
"<>2I)G
usoH
shadin? tipo3
Consente di cam=iare il modo di om=re??iatura.
LEattri=uto tipo rappresenta il modo di om=re??iatura scelto tra i se?uentiH
&latH om=re??iatura costante ad aree
interpH om=re??iatura ad interpola'ione =ilineare FGoraudG
&acetedH om=re??iatura costante ad aree con mesh so*rapposte
/;
Fig. 14 - 6l gra0ico della 0unzione
z=e
-
2
.
2
disegnato attraverso il comando
ME1F.
0
5
10
15
20
0
5
10
15
20
0
10
20
30
40
50
60
70
Parte 2: 1iagrammi #1
" comandi Jui di se?uito in*ece ci permettono di rappresentare ?ra&icamente &un'ioni
*ettoriali.
C%)?P0%
usoH
coneplotF:@1@0@4@.@W@CI@Cy@C'GQ
coneplotF.......@EJui*erEG
Dise?na schermo una &un'ione *ettoriale delle tre *aria=ili reali )4y4z usando
una rappresenta'ione a coni tan?enti alle linee di campo della &un'ione.
"l numero di coni dise?nati puM essere impostato mediante i parametri
CI@Cy@C'.
:@1@0 costituiscono le matrici rappresentati*e del dominio tridimensionaleQ
4@.@W costituiscono le matrici rappresentati*e delle componenti scalari della
&un'ione *ettorialeQ
CI@Cy@C' costituiscono le matrici rappresentati*e del numero e della posi'ione
dei coni lun?o I@y e ' rispetti*amente. .anno de&inite mediante il comando
M$%HG#"D.
/<
Fig. 2: - 6l gra0ico della 0unzione
z=e
-
2
.
2
disegnato attraverso il comando
ME1F.
0
5
10
15
20
0
5
10
15
20
0
10
20
30
40
50
60
70
Parte 2: 1iagrammi #1
EJui*erE dise?na &recce an'icch> coni.
$sempioH
I P linspaceF-/@/@,)GQ
R:@1@0S P mesh?ridFIGQ
RCI@Cy@C'S P mesh?ridFlinspaceF-(@(@3GGQ
4 P sinF:GQ
. P cosF1GQ
W P 0Q
coneplotF:@1@0@4@.@W@CI@Cy@C'G
"6?>M0I)?
usoH
streamlineF:@1@0@4@.@W@%I@%y@%'GQ
Dise?na schermo una &un'ione *ettoriale delle tre *aria=ili reali )4y4z usando
una rappresenta'ione mediante linee di campo.
4)
Fig. 21 - Esemio di raresentazione di 0unzione vettoriale mediante %<BE=L<5.
-1
-0.5
0
0.5
1
-1
-0.5
0
0.5
1
-1
-0.5
0
0.5
1
Parte 2: 1iagrammi #1
" parametri :@1@0@4@.@W sono ?li stessi del comando C2-$PL2+.
%I@%y@%' costituiscono le matrici rappresentati*e del numero e della posi'ione
dei punti da interpolare per dise?nare le linee di campo lun?o I@y e '
rispetti*amente. .anno de&inite mediante il comando M$%HG#"D.
4(
Fig. 22 - Garesentazione della stessa 0unzione mediante linee di 0lusso attraverso il comando
15GE'ML6BE.
-2
-1
0
1
2
-1
-0.5
0
0.5
1
1.5
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5

You might also like