Documente Academic
Documente Profesional
Documente Cultură
Barbulea
METODE DE CALCUL
NUMERIC
IN
AUTOMATIC
A
SISTEME LINIARE
EDITURA ENCICLOPEDIC
A
Bucuresti 1996
Cuprins
Cap. 1. Rezolvarea ecuat iilor matriciale liniare
1.1 Ecuat ii matriciale liniare 15
1.2 Rezolvarea ecuat iilor matriciale de tip AX = C 17
1.3 Rezolvarea ecuat iilor Sylvester 20
1.4 Rezolvarea ecuat iilor Liapunov 27
Exercit ii 31
Bibliograe 34
Cap. 2. Calculul funct iilor de matrici. Exponent iala
matriciala
2.1 Funct ii de matrici 35
2.2 Calculul funct iilor de matrici 46
2.3 Calculul exponent ialei matriciale 51
Exercit ii 60
Bibliograe 63
Cap. 3. Tehnici de procesare a modelelor sistemice
liniare
3.1 Modele sistemice liniare 65
3.2 Conexiuni 69
3.3 Realizari 74
3.4 Conversii de modele 84
3.5 Algoritmi de calcul polinomial 88
Exercit ii 97
1
2
Bibliograe 100
Cap. 4. Calculul raspunsului n timp al sistemelor
liniare
4.1 Raspunsul liber al sistemelor liniare 101
4.2 Raspunsul la intrari liniar generate 103
4.3 Raspunsul la intrari etajate 109
4.4 Raspunsul stat ionar 112
4.5 Calculul caracteristicilor de frecvent a 115
4.6 Raspunsul sistemelor liniare discrete 117
Exercit ii 118
Bibliograe 122
Cap. 5. Proceduri de analiza sistemica
5.1 Stabilitatea sistemelor liniare 123
5.2 Descompunerea spectrala 125
5.3 Controlabilitate si observabilitate 130
5.4 Teste elementare de controlabilitate 134
5.5 Forma Hessenberg controlabila 139
5.6 Descompunerea controlabila 153
5.7 Stabilizabilitate si detectabilitate 155
5.8 Realizari minimale 157
5.9 Gramieni de controlabilitate si observabilitate 158
5.10 Echilibrarea sistemelor liniare 162
Exercit ii 168
Bibliograe 174
Cap. 6. Proceduri de alocare a polilor
6.1 Formularea problemei de alocare 175
6.2 Proceduri de alocare pentru sisteme cu o singura intrare 184
6.3 Proceduri de alocare pentru sisteme cu mai multe intrari 193
Proceduri de alocare suboptimala 194
Proceduri de alocare robusta 214
3
Exercit ii 224
Bibliograe 229
Cap. 7. Rezolvarea ecuat iilor matriciale Riccati
7.1 Problema de comanda optimala liniar-patratica 231
Ecuat ia matriciala Riccati (EMR) 238
7.2 Problema de comanda optimala liniar-patratica discreta 245
Ecuat ia matriciala Riccati discreta (DEMR) 249
7.3 Problema liniar-patratica cu orizont innit 259
Ecuat ia matriciala algebrica Riccati (EMAR) 260
Calculul solut iei stabilizatoare a EMAR 261
7.4 Problema liniar-patratica discreta cu orizont innit 274
Ecuat ia matriciala algebrica Riccati discreta (DEMAR) 275
Calculul solut iei stabilizatoare a DEMAR 277
Exercit ii 290
Bibliograe 296
Cap. 8. Proceduri de sinteza optimala
8.1 Generalizari ale problemelor de comanda optimala 299
8.2 Problema de estimare optimala 319
Ecuat ia matriciala Riccati de estimare 320
Ecuat ia matriciala Riccati de estimare discreta 326
8.3 Proceduri de sinteza sistemica 335
Exercit ii 347
Bibliograe 353
Anexa A. Proceduri de identicare sistemica 357
Bibliograe 370
4
Cuvant introductiv
Lucrarea de fat a reprezinta o prima parte a cursului universitar Metode
Numerice, destinat student ilor anului III al facultat ii Automatica si Cal-
culatoare din Universitatea POLITEHNICA din Bucuresti si, evident, poa-
te utila tuturor student ilor de la facultat ile de acelasi prol din t ara.
Desigur, ea poate interesa si pe alt i utilizatori potent iali (student i, cadre
didactice, cercetatori, ingineri, economisti, etc.) ai metodelor moderne de
calcul n analiza si proiectarea sistemica.
Cititorul ideal al lucrarii trebuie sa posede cunostint e de baza privind
metodele de calcul numeric matricial enumerate n nalul acestui cuvant
introductiv precum si unele informat ii sigure asupra principalelor not iuni
de teoria sistemelor liniare. De asemenea, el trebuie sa aiba obisnuint a unei
gandiri limpezi, algoritmice, precum si pasiunea lucrului la calculator.
Desigur, cititorul real, dispunand ntr-un grad mai mare sau mai mic de
calit at ile ment ionate mai sus, si le poate perfect iona prin studiul lucrarii,
conrmand, si pe aceasta cale, viabilitatea principiilor sistemice.
Lucrarea este structurata n 8 capitole. Ea este nsot ita de o bibliograe
de baza (cu lucrari referite prin utilizarea cifrelor romane), utila n general
pentru abordarea tuturor temelor propuse. Bibliograi specice selective,
dar care pot extinse cu usurint a de catre nsusi cititorul interesat prin
cumularea bibliograilor lucrarilor citate, sunt atasate ecarui capitol. De
asemenea, lucrarea este nsot ita de o lista de notat ii uzuale iar cuprinsul
poate constitui, n acelasi timp, indice de not iuni.
Capitolul 1 completeaza cunostint ele cititorului privind metodele de re-
zolvare a sistemelor de ecuat ii liniare cu cazul matricial n care necunos-
cutele sunt structurate ntr-o matrice X 1
mn
, m > 1, n > 1, fapt care
permite dezvoltarea unor tehnici specice.
In particular, ecuat iile matri-
ciale Liapunov vor ntalnite aproape n toate capitolele lucrarii.
Capitolul 2 trateaza problema importanta a calculului funct iilor de ma-
trici. Un accent special este pus pe calculul exponent ialei matriciale, uti-
5
6
lizate intensiv n capitolele 4 si 7.
Capitolul 3 expune principalele tehnici de procesare a modelelor sis-
temice liniare (conexiuni, realizari, conversii de modele, algoritmi de calcul
polinomial) fara de care nu este posibila abordarea niciunei probleme de
analiza sau sinteza sistemica asistate de calculator.
Capitolul 4 descrie metodele numerice de simulare, i.e. de calcul al
raspunsului n timp al sistemelor liniare la stimuli externi caracteristici
pentru diverse regimuri de funct ionare. Aceste tehnici de simulare sunt ab-
solut necesare pentru validarea demersului teoretic si calculatoriu de analiza
si sinteza sistemica si reprezinta o punte de legatura esent iala catre lumea
reala a experimentului zic.
Capitolul 5 prezinta procedurile numerice de analiza a proprietat ilor
sistemice fundamentale (stabilitate, controlabilitate, observabilitate, etc.)
precum si principalele metode de construct ie a realizarilor minimale si
echilibrate.
In acest fel cont inutul acestui capitol se constituientr-o colect ie
de algoritmi fundamentali, componente de baza ale oricarei activitat i de
concept ie asistate de calculator a unor sisteme de conducere complexe.
Capitolul 6 realizeaza o trecere n revista a principalelor proceduri nu-
merice de alocare a polilor sistemelor liniare.
In contextul general al tehni-
cilor de sinteza, alocarea polilor reprezinta un instrument necesar pentru
asigurarea unei dinamici dorite sistemelor automate elaborate. Daca n
cazul sistemelor simple react ia dupa stare ce realizeaza alocarea este unic
determinata si, deci, libertat ile de calcul sunt strict procedurale, n cazul
sistemelor multiple apar posibilitat i suplimentare de optimizare sau robus-
ticare a spectrului alocat.
Capitolul 7 abordeaza, din punctul de vedere al metodelor numerice
de calcul, problema de sinteza liniar-patratica, care vizeaza optimizarea
unui sistem liniar cu indice de calitate patratic.
In aplicat ii problema
liniar-patratica generala apare sub forma unor probleme cu nalitat i sau cu
tehnici de tratare specice.
In acest context sunt prezentate metodele de
calcul cele mai performante pentru rezolvarea ecuat iilor matriciale Riccati,
nsot ite de analize comparative ale ecient ei si stabilitat ii lor numerice.
Capitolul 8 considera unele generalizari ale problemei de sinteza liniar-
patratice si ilustreaza aplicarea algoritmilor de calcul stabilit i la construct ia
compensatoarelor H
2
si H
(sub)optimale.
Principalele rezultate ale expunerii sunt concretizate sub forma de al-
goritmi de calcul direct implementabili iar ecare capitol este nsot it de un
set de probleme.
7
Ne exprimam opinia ca pentru nsusirea materialului prezentat este ab-
solut necesara rezolvarea problemelor propuse si, mai ales, implementarea
algoritmilor, urmata de experimentarea lor pe exemple numerice concrete
si semnicative.
Autorii mult umesc colegului lor prof. Paul Flondor pentru comentariile
constructive facute pe marginea lucrarii. De asemenea, mult umesc domnu-
lui Marcel Popa, directorul Editurii Enciclopedice, pentru atent ia plina de
solicitudine cu care a urmarit aparit ia prompta si n cele mai bune condit ii a
lucrarii. Autorii apreciaza n mod deosebit interesul manifestat de domnul
ing. Sabin Stamatescu, directorul rmei ASTI Bucuresti, fat a de cont inutul
lucrarii si posibilele aplicat ii ale procedurilor de calcul prezentate n con-
ducerea cu calculator a proceselor industriale.
In sfarsit, dar, desigur, nu n
ultimul rand, mult umiri se cuvin student ilor Siana Petropol, Simona Chir-
vase, Stefan Murgu, Catalin Petrescu, Simona Ruxandu, Adrian Sandu,
Laura Stan, Florin Roman, Madalina Zamr, Ion Vasile care au realizat
redactarea computerizata a lucrarii cu ment iunea expresa ca fara munca
lor plina de daruire nimic din ce am realizat mpreuna nu ar fost posibil.
Enumeram n continuare principalele probleme de calcul numeric ma-
tricial, mpreuna cu succinte referiri la modul de rezolvare al acestora, pe
care cititorul interesat de cuprinsul lucrarii de fat a este bine sa le aiba n
vedere.
1. Pentru rezolvarea unui sistem de ecuat ii liniare Ax = b, n care ma-
tricea A 1
nn
este inversabila, se utilizeaza procedura de triangularizare
prin eliminare gaussiana cu pivotare part iala
A R = MA, b Mb,
unde R rezulta superior triunghiulara inversabila iar M este o secvent a de
transformari elementare stabilizate, urmata de rezolvarea prin substitut ie
napoi a sistemului superior triunghiular rezultat. Efortul de calcul nece-
sar este N
op
n
3
/3.
In cazul simetric A = A
T
, se recomanda conservarea acestei proprietat i
prin utilizarea schemei de eliminare simetrizate A D = MAM
T
, propuse
de Parlett [ III ], n care D rezulta cvasidiagonala.
In cazul simetric A = A
T
, se utilizeaza avantajos versiunea simetrica a
algoritmului QR, i.e. A = Q
T
AQ, unde rezulta diagonala.
5. Pentru rezolvarea problemei CMMP generale n care matricea A
1
mn
este de rang nu neaparat maximal r
def
= rangA min(m, n), precum
9
si a altor probleme importante de calcul numeric matricial (determinarea
rangului, a pseudoinversei, operat ii cu subspat ii liniare, etc.) se utilizeaza
descompunerea valorilor singulare DVS
U
T
AV = ,
unde matricea cont ine pe diagonala principala valorile singulare nenule
1
2
. . .
r
> 0 ale lui A (restul elementelor ind nule) iar ma-
tricile U, V sunt ortogonale. (Algoritmul DVS utilizat pentru calculul
descompunerii de mai sus constituie o adaptare ingenioasa a algoritmu-
lui QR simetric). Din nou, formarea factorilor ortogonali U, V necesita
acumularea (relativ costisitoare) a transformarilor part iale.
6. Pentru calculul valorilor proprii generalizate ale unui fascicol BA,
unde A, B 1
nn
, se utilizeaza algoritmul QZ care, n esent a, aduce
perechea (A, B) la forma Schur generalizata
A S = Q
T
AZ, B T = Q
T
AZ,
unde S rezulta cvasisuperior triunghiulara, T rezulta superior triunghiulara
iar Q si Z sunt secvent e de transformari ortogonale.
In cazul simetric A = A
T
, B = B
T
> 0 se utilizeaza factorizarea
Cholesky B = LL
T
si se aplica algoritmul QR simetric matricii
A =
L
1
AL
T
, ceea ce conduce la diagonalizarea simultana a ambelor matrici
A, B.
Pentru detalii privind aspectele teoretice si procedurale ale problemelor
de calcul matricial enumerate mai sus recomandam consultarea referint elor
bibliograce [ V], [ VI ] sau [ IX], [ X] .
10
Bibliograe
Pentru programe de calcul si indicat ii de utilizare:
[ I ] Smith B.T., Boyle J.M., Ikebe Y., Klema V.C., Moler C.B. Ma-
trix Eigensystem Routines: EISPACK Guide, 2-nd ed., Springer-
Verlag, New York, 1970.
[ II ] Garbow B.S., Boyle J.M., Dongarra J.J., Moler C.B. Matrix
Eigensystem Routines: EISPACK Guide Extension, Springer - Ver-
lag, New York, 1972.
[ III ] Dongarra J.J., Bunch J.R., Moler C.B., Stewart G.W. LINPACK
Users Guide, SIAM Publications, Philadelphia, PA, 1978.
[ IV] Moler C.B., Little J.N., Bangert S. PC-MATLAB Users Guide,
The Math Works Inc., 20 N. Main St., Sherborn, Mass., 1987.
Pentru algoritmi de calcul matricial:
[ V] Stewart G. W. Introduction to Matrix Computations, Academic
Press, New York and London, 1973.
[ VI ] Golub G. H., Van Loan Ch. F. Matrix Computations, Second
edition, The Johns Hopkins University Press, Baltimore and London, 1988.
Pentru chestiuni teoretice de calcul matricial:
[ VII ] Gantmaher F.R. Teoriia matrit (edit ia a 2-a), Ed. Nauka, Moscova,
1966. (The Theory of Matrices, vols. 1-2, Chelsea, New York, 1959).
Lucrari n limba roman a:
[ VIII ] Ionescu V., Lupas L. Tehnici de calcul n teoria sistemelor,
vol.1. Sisteme liniare, vol.2. Sisteme optimale, E.T., Bucuresti, 1973.
[ IX] Bucur C.M., Popeea C.A., Simion Gh.Gh. Matematici speciale.
Calcul numeric, E.D.P., Bucuresti, 1983.
[ X] Ionescu V., Varga A. Teoria sistemelor. Sinteza robust a. Me-
tode numerice de calcul., Ed. ALL, Bucuresti, 1994.
[ XI ] Iorga V., Jora B., Nicolescu C., Lopatan I., Fatu I., Programare
numeric a, Ed. Teora, Bucuresti, 1996.
Alte titluri de uz general:
11
[ XII ]
Astrom K.J., Wittenmark B. Computer Controlled Systems,
Prentice Hall Inc., Englewood Clis, NJ, 1984.
[ XIII ] Jamshidi M., Herget C.J. (ed.), Computer-Aided Control Sys-
tems Engineering, North-Holland, Amsterdam, 1985. (Masinostroienie,
Moscova, 1989.)
[ XIV] Solodovnicov V.V. (ed.), Avtomatizirovannoe proektirovanie
sistem upravleniia, Masinostroienie, Moscova, 1990.
[ XV] Jamshidi M., Tarokh M., Shafai B. Computer-Aided Analysis
and Design of Linear Control Systems, Prentice Hall Inc., Engle-
wood Clis, NJ, 1992.
Lista de notat ii
Notat ii generale
^ mult imea numerelor naturale.
Z mult imea numerelor ntregi.
1 mult imea numerelor reale.
( mult imea numerelor complexe.
(
i
(A), i = 1 : p, p = min(m, n) valorile singulare ale matricii A ordonate
astfel ncat
1
2
. . .
p
.
(A) mult imea
1
(A),
2
(A), . . . ,
p
(A) a valorilor singulare ale ma-
tricii A.
r = rangA rangul matricii A, i.e. numarul valorilor singulare nenule.
I
n
matricea unitate de ordinul n.
A
1
inversa matricii patrate nesingulare A, i.e. AA
1
= A
1
A = I
n
.
A
T
= (A
1
)
T
= (A
T
)
1
A
H
= (A
1
)
H
= (A
H
)
1
trA urma matricii patrate A, i.e. suma elementelor diagonale.
detA determinantul matricii patrate A.
i
(A), i = 1 : n valorile proprii ale matricii patrate A de ordin n.
(A) spectrul (de valori proprii)
1
(A),
2
(A), . . . ,
n
(A) al matricii A.
(A) = max
i=1:n
[
i
(A)[ raza spectrala a matricii A.
cond(A) = |A| |A
1
| numarul de condit ie la inversare al matricii A (| |
este o norma matriciala consistenta, vezi mai jos).
(x, y) = y
T
x produsul scalar standard a doi vectori reali; n cazul complex
produsul scalar este (x, y) = y
H
x.
|x| = (x, x)
1/2
norma euclidiana a vectorului x; se noteaza |x|
2
Q
= x
T
Qx
unde Q este o matrice simetrica (Q = Q
T
).
|x|
p
= (
n
i=1
[x[
p
)
1/p
p-normele vectorului n-dimensional x, p 1; n
calcule se utilizeazan special |x|
1
,|x|
2
=|x| si |x|
=max
i=1:n
[x
i
[.
(A, B) = tr(B
T
A) (tr(B
H
A)) produsul scalar a doua matrici reale (com-
plexe).
13
|A|
F
= (A, B)
1/2
norma Frobenius a matricii A,
|A|
2
F
=
m
i=1
n
j=1
[a
ij
[
2
sau |A|
2
F
=
r
i=1
i
2
.
[A[
p
= (
r
i=1
i
p
)
1/p
p-normele Schatten, p 1; n calcule se utilizeaza
n special norma-urma [A[
1
=
r
i=1
i
, norma Frobenius [A[
2
= |A|
F
si norma spectrala [A[
=
1
(A).
|A|
p
= max
x
p
=1
|Ax|
p
p-normele induse; n calcule se utilizeaza n
special norma |A|
1
= max
j=1:n
m
i=1
[a
ij
[, norma spectrala |A|
2
=
1
(A) si norma |A|
= max
i=1:m
n
j=1
[a
ij
[.
Notat ii sistemice generale
x 1
n
vectorul (marimilor) de stare.
u 1
m
vectorul (marimilor) de intrare.
y 1
l
vectorul (marimilor) de iesire.
S = (A, B, C, D) reprezentarea de stare a unui sistem liniar (A 1
nn
,
B 1
nm
, C 1
ln
si D 1
lm
).
T = (N, p) reprezentarea de transfer a unui sistem liniar (N este ma-
tricea coecient ilor polinoamelor ce denesc numaratorul matricii de
transfer iar p este vectorul coecient ilor polinomului numitor comun
i.e. T(s) = C(sI A)
1
B +D = N(s)/p(s)).
(t) ((k)) impulsul unitate continuu (discret).
1(t) (1(k)) funct ia treapta unitara continua (discreta).
Transformari
(1) MAN (MAN
1
sau MAN
T
) transformare de echivalent a (bilate-
rala) a matricii A 1
mn
(M si N sunt matrici patrate nesingulare;
transformarea de echivalent a conserva rangul iar daca M, N sunt
ortogonale atunci conserva si valorile singulare).
(2) NAN
1
transformare de asemanare a matricii A 1
nn
(transfor-
marea de asemanare conserva valorile proprii).
14
(3) NAN
T
transformare de congruent a a matricii A 1
nn
(N este
nesingulara; aplicata unei matrici A simetrice, transformarea de con-
gruent a conserva rangul si inert ia i.e. numerele de valori proprii neg-
ative, nule si, respectiv, pozitive).
Daca N este ortogonala atunci transformarile (2) si (3) coincid si denesc
transformarea de asemanare ortogonala.
Prescurtari
SISO sigla pentru sisteme simple avand o singura intrare si o singura
iesire (Single-Input Single-Output).
SIMO, (MISO, MIMO) sigla pentru sistemele cu o singura intrare si
mai multe iesiri. Celelalte prescurtari au semnicat ii evidente.
FSR(G) forma Schur reala (generalizata).
FSC(G) forma Schur complexa (generalizata).
DVS descompunerea valorilor singulare.
FSH forma (bloc-)superior Hessenberg.
EM(A)L ecuat ie matriciala (algebrica) Liapunov continua.
DEM(A)L ecuat ie matriciala (algebrica) Liapunov discreta.
EM(A)R ecuat ie matriciala (algebrica) Riccati continua.
DEM(A)R ecuat ie matriciala (algebrica) Riccati discreta.
Capitolul 1
Rezolvarea ecuat iilor
matriceale liniare
Acest capitol este consacrat tehnicilor de rezolvare a unor sisteme liniare, n
general de mari dimensiuni, structurate n exprimari matriceale care permit
dezvoltarea unor metode specice de calcul.
1.1 Ecuat ii matriceale liniare
Ecuat iile matriceale liniare sunt sisteme de ecuat ii liniare care pot scrise
compact ntr-o forma matriceala de tipul
f(X) = C (1.1)
unde X 1
mn
este matricea necunoscutelor, C 1
pq
o matrice data,
iar f : 1
mn
1
pq
o aplicat ie liniara (i.e. f satisface f(X
1
+X
2
) =
= f(X
1
) + f(X
2
) si f(X
1
) = f(X
1
) pentru orice matrice X
1
, X
2
1
mn
si orice scalar ). Se poate arata ca orice aplicat ie liniara de argu-
ment matriceal poate scrisa sub forma
f(X) =
k
i=1
A
i
XB
i
, A
i
1
pm
, B
i
1
nq
(1.2)
pentru un anumit k si, n consecint a, (1.1) devine
k
i=1
A
i
XB
i
= C. (1.3)
15
16 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
Evident, ecuat ia (1.3) poate scrisa ntr-o forma desfasurata ca sis-
tem de pq ecuat ii liniare cu mn necunoscute care poate servi ca baza pentru
exprimarea condit iilor de existent a/unicitate ca si pentru elaborarea pro-
cedurilor de rezolvare ntr-un sens sau altul. O astfel de abordare eludeaza
structura matriceala a sistemului iar aplicarea tehnicilor clasice de re-
zolvare pe sistemul desfasurat, neexploatand structura interna a datelor de
intrare, este, de cele mai multe ori, inecienta (vezi exercit iul 1.9).
Din acest motiv, pentru diferite cazuri particulare ale ecuat iei matriceale
(1.3), condit iile de existent a/unicitate ale solut iilor, ntr-un sens precizat, se
exprima n raport cu matricele A
i
, B
i
, i = 1 : k, iar metodele de rezolvare
fac apel la tehnici speciale.
Ecuat iile matriceale liniare (1.3) cele mai ntalnite se obt in pentru k = 1
AXB = C (1.4)
a carei rezolvare se reduce imediat la rezolvarea unor ecuat ii matriceale
avand forma particulara
AX = C (1.5)
XB = C (1.6)
respectiv, pentru k = 2,
A
1
XB
1
+A
2
XB
2
= C (1.7)
cu particularizarile
AX +XB = C, (1.8)
AXB +X = C. (1.9)
Ecuat iile (1.8), (1.9) sunt cunoscute sub denumirea de ecuat ii matriceale
tip Sylvester. Datorita frecventei utilizari a ecuat iilor matriceale de forma
(1.8) n teoria sistemelor dinamice continue, respectiv a ecuat iilor de forma
(1.9)n domeniul sistemelor dinamice discrete, n continuare ecuat ia (1.8) va
referita ca ecuat ie Sylvester continua, respectiv (1.9) ca ecuat ie Sylvester
discreta.
In cele ce urmeaza vom interesat i n calculul solut iilor ecuat iilor ma-
triceale liniare cu semnicat ie pentru domeniul teoriei sistemelor n general,
si al sistemelor automate n special, respectiv al sistemelor de forma (1.5),
(1.6), (1.8), (1.9) si (1.10), (1.11). Condit iile de existent a si unicitate ale
solut iilor se exprima n mod specic pentru ecare tip de ecuat ie, singurul
rezultat comun ind dat de
Propozit ia 1.1 Daca ecuat ia matriceala liniara (1.3) admite o solut ie X
1
mn
, atunci aceasta solut ie este unica daca si numai daca ecuat ia ma-
triceala omogena (obt inuta din ecuat ia init iala pentru C = 0) admite drept
unica solut ie X = 0.
Demonstrat ia este propusa ca exercit iu pentru cititor sau poate gasita n
[ VII ].
In cazul ecuat iilor matriceale liniare (1.8), (1.9) si (1.10), (1.11) o analiza
simpla arata ca matricea necunoscuta X si membrul drept C au aceleasi
dimensiuni (mn).
In consecint a, enunt ul de mai sus capata urmatoarea
forma mai precisa.
Propozit ia 1.2 Ecuat iile matriceale liniare (1.8), (1.9) si (1.10), (1.11)
sunt global solubile, i.e. admit o solut ie X 1
mn
oricare ar membrul
drept C, daca si numai daca ecuat iile matriceale omogene corespunzatoare
admit drept unica solut ie X = 0.
Altfel spus, are loc urmatoarea alternativa (a lui Fredholm): e ecuat iile
considerate sunt global solubile, e ecuat iile omogene admit o solut ie ne-
triviala X ,= 0.
1.2 Rezolvarea ecuat iilor matriceale de tip AX =
C
Ecuat iile matriceale de tipul AX = C, unde A 1
pm
, X 1
mn
,
C 1
pn
,reprezinta o colect ie de ecuat ii vectoriale obisnuite, toate avand
18 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
aceeasi matrice A a coecient ilor.
Intr-adevar, partit ionand matricele X si
C pe coloane
X = [ x
1
x
2
. . . x
n
], C = [ c
1
c
2
. . . c
n
] (1.12)
cu x
j
= Xe
j
, c
j
= Ce
j
, j = 1 : n, ecuat ia matriceala AX = C devine
echivalenta cu setul de sisteme liniare
Ax
j
= c
j
, j = 1 : n (1.13)
care se rezolva cu mijloacele clasice, cu precizarea ca transformarile nece-
sare asupra matricei A a sistemelor (1.13) (cum ar , de exemplu, n cazul
p = m si A inversabila, triangularizarea prin eliminare gaussiana cu piv-
otare part iala) se efectueaza o singura data. Avand n vedere ca rezolvarea
sistemelor (1.13) nu ridica probleme deosebite, scrierea algoritmilor face
obiectul exercit iilor 1.1 si 1.3.
Observat ia 1.1 Ecuat iile de tipul XB = C se reduc la ecuat ii de tipul
AX = C prin transpunere.
Observat ia 1.2 Daca matricea A 1
pm
este monica (i.e. are coloanele
liniar independente) iar sistemele (1.13) sunt rezolvate n sensul celor mai
mici patrate (CMMP), atunci ansamblul pseudosolut iilor
x
j
= A
+
c
j
= (A
T
A)
1
A
T
c
j
, j = 1 : n (1.14)
respectiv
X
= A
+
C, A
+
= (A
T
A)
1
A
T
(1.15)
are o semnicat ie asemanatoare si anume aceea ca matricea X
1
mn
minimizeaza norma Frobenius a reziduului matriceal
R = C AX (1.16)
adica
|R
|
F
= |C AX
|
F
= min
XR
mn
|C AX|
F
. (1.17)
Intr-adevar,
|R|
F
=
_
n
j=1
p
i=1
r
2
ij
=
_
n
j=1
|c
j
Ax
j
|
2
este minima daca si numai daca |c
j
Ax
j
| sunt minime pentru tot i j =
1 : n.
1.2. ECUAT II DE FORMA AX = C 19
Observat ia 1.3 Daca matricea A 1
pm
este epica (adica are lini-
ile liniar independente), atunci ansamblul solut iilor normale ale sistemelor
(1.13)
x
j
= A
+
c
j
= A
T
(AA
T
)
1
c
j
, j = 1 : n (1.18)
respectiv
X
= A
+
C, A
+
= A
T
(AA
T
)
1
(1.19)
reprezinta solut ia de norma Frobenius minima a sistemului AX = C :
|X
|
F
= min
AX=C
XR
mn
|X|
F
. (1.20)
0 ] (1.21)
cu L
1
pp
inferior triunghiulara nesingulara, atunci ecuat ia matriceala
AX = C se scrie
LQX = C. (1.22)
Cu notat ia
QX = Y =
_
Y
_
, (1.23)
cu Y
1
pn
, Y
1
(mp)n
, avandn vedere structura (1.21) a matricei
L, rezulta
Y
= (L
)
1
C.
)
1
C
Y
_
(1.24)
cu Y
1
(mp)n
arbitrar. Dar
|X|
2
F
= |Q
T
_
(L
)
1
C
Y
_
|
2
F
= |
_
(L
)
1
C
Y
_
|
2
F
=
= |(L
)
1
C|
2
F
+|Y
|
2
F
20 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
minimul obt inandu-se pentru Y
= Q
T
_
(L
)
1
C
0
_
(1.25)
vericandu-se imediat, pe baza factorizarii LQ, ca aceasta coincide cu
solut ia (1.19).
Observat ia 1.4
In cazul n care matricea A este de rang nemaximal
rang A < min(p, m) ,
notand cu x
j
, j = 1 : n, pseudosolut iile normale, n sensul celor mai mici
patrate, ale sistemelor (1.13), matricea X
= (x
j
)
j=1:n
poate interpre-
tata drept pseudosolut ia normala n sensul normei Frobenius a ecuat iei
matriceale AX = C. Cu alte cuvinte X
1
mn
este matricea de norma
Frobenius minima dintre toate matricele X 1
mn
care minimizeaza
norma Frobenius a reziduului matriceal R = C AX :
|X
|
F
= min
XR
mn
CAX
F
=minim
|X|
F
. (1.26)
Justicarea armat iilor de mai sus face obiectul exercit iului 1.2.
1.3 Rezolvarea ecuat iilor matriceale
Sylvester
I. Vom ncepe cu prezentarea modalitat ilor de rezolvare a ecuat iei ma-
triceale Sylvester continue (1.8)
AX +XB = C
unde n general A (
mm
, B (
nn
, C (
mn
. Condit iile de existent a
si unicitate ale solut iei acestei ecuat ii sunt date de
Propozit ia 1.3 Ecuat ia matriceala (1.8) admite o solut ie X (
mn
unica
daca si numai daca
i
+
j
,= 0 (1.27)
oricare ar
i
(A) si oricare ar
j
(B) sau, altfel spus, daca si
numai daca
(A) (B) = . (1.28)
Daca matricele A, B, C sunt reale iar condit iile (1.27) sunt satisfacute
atunci solut ia X rezulta si ea reala.
1.3. ECUAT II SYLVESTER 21
Demonstrat ie. Exista matricele unitare U (
mm
si V (
nn
(i.e.
U
H
U = UU
H
= I
m
, V
H
V = V V
H
= I
n
, indicele superior H semnicand
dubla operat ie de transpunere si conjugare) astfel ncat
U
H
AU = S (
mm
, (1.29)
V
H
BV = T (
nn
(1.30)
sunt formele Schur complexe ale matricelor A respectiv B si, deci, au o
structura superior triunghiulara. Din (1.29), (1.30) avem relat iile
A = USU
H
(1.31)
B = V TV
H
(1.32)
cu care ecuat ia (1.8) devine
USU
H
X +XV TV
H
= C
de unde
SU
H
XV +U
H
XV T = U
H
CV. (1.33)
Not and cu
Y = U
H
XV,
C = U
H
CV (1.34)
(1.33) se scrie
SY +Y T =
C. (1.35)
Avand n vedere natura nesingulara a transformarilor efectuate, ecuat ia
matriceala (1.8) admite o solut ie unica X (
mn
daca si numai daca
ecuat ia (1.35) admite o solut ie unica Y (
mn
. Condit iile de existent a
si unicitate ale solut iei ecuat iei (1.35) rezulta din aplicarea unei tehnici de
rezolvare directa.
Intr-adevar, t inand seama de structura superior triunghi-
ular a a matricelor S si T rezulta ca, scriind pe coloane, (1.35) devine
Sy
j
+Y t
j
= c
j
, j = 1 : n (1.36)
unde y
j
= Y e
j
, t
j
= Te
j
, c
j
= Ce
j
. Dar
t
j
= [ t
1j
t
2j
. . . t
jj
0 . . . 0 ]
T
si, prin urmare, (1.36) devine
Sy
j
+
j
k=1
t
kj
y
k
= c
j
, j = 1 : n (1.37)
22 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
sau
(S +t
jj
I
m
)y
j
= c
j
j1
k=1
t
kj
y
k
, j = 1 : n. (1.38)
Se vede acum limpede ca ecuat iile (1.38) sunt sisteme liniare triunghi-
ulare avand membrul drept calculabil daca ordinea de rezolvare a acestor
sisteme este j = 1, 2, 3, ..., n. Mai mult, existent a si unicitatea solut iei este
condit ionata de nesingularitatea matricelor (S + t
jj
I
m
), j = 1 : n. Ma-
tricea S ind superior triunghiulara, aceasta condit ie este satisfacuta daca
si numai daca
s
ii
+t
jj
,= 0, i = 1 : m, j = 1 : n,
condit ie identica cu (1.27) ntrucat (A) = (S) si (B) = (T), observat ie
care ncheie demonstrat ia propozit iei.
Tehnicile de rezolvare ale ecuat iei Sylvester continue fac apel la trans-
formari care conduc la ecuat ii matriceale n care, n locul matricelor A
si B, apar matrice cu o structura simplicata (Hessenberg, triunghiulara,
diagonala) fapt care permite aplicarea metodelor consacrate de la sistemele
clasice. O prima alternativa, numita ad-hoc varianta Schur-Schur, are
la baza procedura evident iata de demonstrat ia propozit iei 1.3.
In cazul
uzual, n care datele de intrare precum si solut ia X sunt reale, redactarea
algoritmului de calcul este urmatoarea.
Algoritmul 1.1 (Date matricele A 1
mm
, B 1
nn
,
C 1
mn
cu (A) (B) = , algoritmul calculeaza solut ia
X 1
mn
a ecuat iei Sylvester continue AX + XB = C prin
aducerea matricelor A si B la forma Schur complexa prin trans-
formari unitare de asemanare. Algoritmul utilizeaza funct ia fsc
care calculeaza forma Schur complexa si matricea unitara de
transformare corespunzatoare pentru o matrice de intrare data.)
1. [ U, S ] = fsc(A)
2. [ V, T ] = fsc(B)
3. C
C = U
H
CV
4. Pentru j = 1 : n
1. Daca j > 1 atunci
1. c
j
= c
j
j1
k=1
t
kj
y
k
.
2. Se rezolva sistemul superior triunghiular
(S +t
jj
I
m
)y
j
= c
j
.
1.3. ECUAT II SYLVESTER 23
5. X = Re(UY V
H
)
Comentarii. Referitor la algoritmul de mai sus se cuvin urmatoarele
precizari:
1. Aducerea unei matrice reale la forma Schur complexa prin trans-
formari de asemanare se face n doua etape: ntr-o prima etapa cu algo-
ritmul QR se obt ine forma Schur reala dupa care, ntr-o a doua etapa,
utilizand rotat ii complexe sau reectori complecsi (exercit iile 1.4 : 1.7)
blocurile 2 2 sunt reduse la forma superior triunghiulara complexa.
2. Efectuarea calculelor n format virgula mobila cu numere complexe
conduce la un rezultat afectat de erori de rotunjire complexe desi rezultatul
teoretic este o matrice reala. De aceea, n ultima instruct iune, este inclusa
eliminarea part ilor imaginare.
3. Evident, efortul de calcul cel mai important se consuma n execut ia
instruct iunilor 1 si 2 de aducere la forma Schur complexa a matricelor A si
B si de acumulare a transformarilor.
Din motive de ecient a se impune analiza alternativelor n care se renunt a
la aducerea la forma Schur a ambelor matrice A si B.
Astfel, n asa numita varianta Hessenberg-Schur numai matricea B
este adusa la forma Schur complexa aparand urmatoarele diferent en raport
cu algoritmul de mai sus:
In instruct iunea 1 matricea A este adusa printr-un algoritm de calcul
direct (neiterativ) algoritmul HQ la forma superior Hessenberg.
In
acest fel se evita faza iterativa a algoritmului QR si trecerea de la forma
Schur reala la forma Schur complexa.
In compensat ie, la instruct iunea 4.2, se rezolva, n loc de n sisteme
triunghiulare, n sisteme de tip Hessenberg incluzand eliminare gaussiana
cu eventuala pivotare.
Scrierea explicita a algoritmului face obiectul exercit iului 1.10.
In cazul matricelor A si B simple (adica al matricelor pentru care
exista un set complet de vectori proprii liniar independent i, n particular,
al matricelor cu valori proprii distincte) metoda bazata pe calculul valorilor
si vectorilor proprii poate conduce la o precizie superioara a rezultatelor
simultan cu un timp de execut ie rezonabil. Fie
(A) =
1
,
2
, . . . ,
m
(
(B) =
1
,
2
, . . . ,
n
(
(1.39)
24 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
spectrele de valori proprii ale matricelor A respectiv B si
U = [ u
1
u
2
. . . u
m
],
V = [ v
1
v
2
. . . v
n
]
(1.40)
matricele corespunzatoare de vectori proprii (adica u
j
= Ue
j
este un vector
propriu al matricei A asociat valorii proprii
j
(A), etc.). Atunci
A = ULU
1
, L = diag(
1
,
2
, . . . ,
m
)
B = V MV
1
, M = diag(
1
,
2
, . . . ,
n
)
(1.41)
si ecuat ia Sylvester (1.8) se scrie sub forma
ULU
1
X +XV MV
1
= C (1.42)
echivalenta cu
LU
1
XV +U
1
XV M = U
1
CV. (1.43)
Notand
U
1
XV = Y
U
1
CV = Z
(1.44)
din (1.43) rezulta ecuat ia
LY +Y M = Z (1.45)
cu necunoscuta matriceala Y ale carei elemente, n condit iile propozit iei
1.1, se calculeaza imediat cu relat iile
y
ij
= z
ij
/(
i
+
j
) , i = 1 : m, j = 1 : n. (1.46)
Matricea necunoscuta X din ecuat ia init iala rezulta din (1.44)
X = UY V
1
. (1.47)
Presupunand ca dispunem de o funct ie numita vvp care, pentru o ma-
trice de intrare simpla T, furnizeaza o matrice V ale carui coloane sunt vec-
torii proprii ai matricei T si un vector p al valorilor proprii corespunzatori
cu sintaxa
[ V, p ] = vvp(T) (1.48)
putem prezenta urmatorul algoritm.
Algoritmul 1.2 (Date matricele simple A 1
mm
, B
1
nn
cu (A) (B) = si matricea C 1
mn
, algoritmul
calculeaza solut ia X 1
mn
a ecuat iei matriceale AX+XB =
C pe baza calculului valorilor si vectorilor proprii cu ajutorul
funct iei vvp.)
1.3. ECUAT II SYLVESTER 25
1. [ U, l ] = vvp(A)
2. [ V, m] = vvp(B)
3. Se rezolva sistemul matriceal UZ = CV cu necunoscuta
Z.
4. Pentru i = 1 : m
1. Pentru j = 1 : n
1. y
ij
= z
ij
/(l
i
+m
j
).
5. Se rezolva sistemul matriceal XV = UY n raport cu X.
6. X = Re(X).
Rezolvarea sistemelor matriceale de la instruct iunile 3 si 5 ale algorit-
mului se realizeaza conform recomandarilor sect iunea 1.2.
II. Modalitat ile de calcul ale solut iei ecuat iei matriceale Sylvester dis-
crete (1.9)
AXB +X = C
unde A (
mm
, B (
nn
, C (
mn
sunt asemanatoare. Condit iile de
existent a si unicitate ale solut iei sunt date de
Propozit ia 1.4 Ecuat ia matriceala (1.9) are o solut ie X (
mn
unica
daca si numai daca
j
,= 1 (1.49)
oricare ar
i
(A) si oricare ar
j
(B). Daca matricele A, B, C
sunt reale iar condit iile (1.49) sunt satisfacute atunci solut ia X rezulta si
ea reala.
Demonstrat ie. Fie U (
mm
si V (
nn
matrice unitare care denesc
reducerea matricelor A si B la formele Schur complexe S, respectiv T, ca
j1
k=1
t
kj
y
k
, j = 2 : n.
(1.52)
Ecuat iile (1.52) sunt sisteme liniare superior triunghiulare care admit solut ii
unice daca si numai daca matricele St
jj
+ I
m
, j = 1 : n sunt nesingulare,
respectiv
s
ii
t
jj
+ 1 ,= 0, i 1 : m, j 1 : n. (1.53)
Cum nsa s
ii
[ i = 1 : m = (A) si t
jj
[ j = 1 : n = (B) si, n
plus, rezolvarea sistemelor (1.52) n condit iile (1.53) este posibila n ordinea
j = 1, 2, ..., nn care termenul liber este calculabil, rezulta ca propozit ia este
demonstrata.
Demonstrat ia de mai sus conduce imediat la algoritmul de rezolvare a
ecuat iei matriceale Sylvester discrete n varianta Schur-Schur.
Algoritmul 1.3 (Fiind date matricele A 1
mm
, B
1
nn
astfel ncat
i
j
,= 1 pentru tot i
i
(A) si
j
(B)
si matricea C 1
mn
algoritmul calculeaza solut ia X a ecuat iei
Sylvester discrete AXB + X = C prin reducerea matricelor A
si B la forma Schur complexa. Algoritmul utilizeaza funct ia fsc
pentru calculul formei Schur complexe si a matricei de transfor-
mare corespunzatoare.)
1. [ U, S ] = fsc(A)
2. [ V, T ] = fsc(B)
3. C
C = U
H
CV
4. Pentru j = 1 : n
1. Daca j > 1 atunci
1. c
j
c
j
S (
j1
k=1
t
kj
y
k
)
2. Se rezolva sistemul superior triunghiular
(St
jj
+I
m
)y
j
= c
j
.
5. X = Re(UY V
H
).
Avand n vedere similitudinea algoritmilor 1.1 si 1.2, similitudine care
se extinde la celelalte variante, lasamn sarcina cititorului elaborarea vari-
antei HessenbergSchur ca si justicarea faptului ca urmatorul algoritm, cu
notat iile din algoritmul 1.2, rezolva problema n cazul matricelor de intrare
A si B simple (diagonalizabile).
1.4. ECUAT II LIAPUNOV 27
Algoritmul 1.4 (Date matricele simple A 1
mm
, B
1
nn
cu
i
j
,= 1 pentru tot i
i
(A),
j
(B) si ma-
tricea C 1
mn
, algoritmul calculeaza solut ia X a ecuat iei
AXB +X = C pe baza determinarii valorilor si vectorilor pro-
prii ale matricelor A si B cu ajutorul funct iei vvp.)
1. [ U, l ] = vvp(A)
2. [ V, m] = vvp(B)
3. Se rezolva sistemul matriceal UZ = CV n raport cu Z.
4. Pentru i = 1 : m
1. Pentru j = 1 : n
1. y
ij
= z
ij
/(l
i
m
j
+ 1)
5. Se rezolva sistemul matriceal XV = UY n raport cu X.
6. X = ReX.
1.4 Rezolvarea ecuat iilor matriceale
Liapunov
Ecuat iile matriceale Liapunov continua A
T
X+XA = C si discreta A
T
XA
X = C sunt cazuri particulare ale ecuat iilor Sylvester corespunzatoare si,
prin urmare, rezultatele paragrafului precedent sunt aplicabile nntregime.
Concret, avandn vedere ca (A
T
) = (A), obt inem urmatoarele consecint e
ale propozit iilor 1.3 si 1.4.
Corolar 1.1 Ecuat ia matriceala Liapunov continua (1.10) admite o solut ie
unica daca si numai daca matricea A nu are nici o pereche de valori proprii
opuse, i.e.
i
+
j
,= 0,
i
,
j
(A), (1.54)
j
,= 1,
i
,
j
(A), (1.55)
In particular, 1 , (A) .
Algoritmii 1.1, 1.2, 1.3 si 1.4 se simplica n sensul ca este necesara
o singura reducere la forma Schur, respectiv un singur calcul de valori si
vectori proprii.
28 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
I.
Intr-adevar, sa consideram mai ntai cazul ecuat iei Liapunov continue
(1.10) si e reducerea (1.31) a matricei A 1
nn
la forma Schur complexa.
Rezulta
A
T
= A
H
= US
H
U
H
. (1.56)
Cu (1.31), (1.56) ecuat ia Liapunov (1.10) devine
US
H
U
H
X +XUSU
H
= C (1.57)
respectiv
S
H
Y +Y S =
C (1.58)
unde
Y = U
H
XU,
C = U
H
CU. (1.59)
Intrucat S
H
are o structura inferior triunghiulara, scriind ecuat ia ma-
triceala (1.58) pe coloane obt inem sistemele inferior triunghiulare
(S
H
+s
jj
I
n
)y
j
= c
j
j1
k=1
s
kj
y
k
, j = 1 : n. (1.60)
In condit iile corolarului 1.1, aceste sisteme sunt nesingulare si pot rezol-
vate n ordinea j = 1, 2 ..., n. Cu observat ia ca solut ia X a ecuat iei init iale
se calculeaza apoi din prima relat ie (1.59) rezulta urmatorul algoritm.
Algoritmul 1.5 (Date matricele A 1
nn
, satisfacand
(1.54), si C 1
nn
oarecare, algoritmul calculeaza solut ia X a
ecuat iei Liapunov A
T
X + XA = C pe baza reducerii matricei
A la forma Schur complexa cu ajutorul funct iei fsc.)
1. [ U, S ] = fsc(A)
2. C U
H
CU
3. Pentru j = 1 : n
1. Daca j > 1 atunci
1. c
j
= c
j
j1
k=1
s
kj
y
k
2. Se rezolva sistemul inferior triunghiular
(S
H
+s
jj
I
n
)y
j
= c
j
.
4. X = Re(UY U
H
).
j1
k=1
s
kj
y
k
)
2. Se rezolva sistemul inferior triunghiular
(S
H
s
jj
I
n
)y
j
= c
j
.
4. X = Re(UY U
H
).
Tratarea cazului n care matricele C si, drept consecint a, X sunt simetrice
face obiectul exercit iului 1.11.
Variantele bazate pe calculul valorilor si vectorilor proprii ale matricei
A sunt, de asemenea, propuse cititorului (exercit iul 1.12).
Cazul important, n care matricea A este stabila (vezi cap. 5) iar ma-
tricea C este simetrica si negativ (semi)denita este abordat n capitolul 7
(se pot consulta [ X] si [ 6 ], [ 7 ]).
1
V
1
T
,
1
= diag(
1
,
2
, . . . ,
r
),
1
2
. . .
r
> 0
descompunerea valorilor singulare a lui A. Aratat i ca X
= V
1
1
1
U
T
1
C
este matricea de norma Frobenius minima dintre toate matricele X 1
mn
care minimizeaza norma Frobenius a reziduului matriceal R = C AX.
E 1.3 Admit and ca dispunet i de o funct ie care calculeaza valorile singulare
si matricele de transformare corespunzatoare pentru o matrice de intrare
A 1
pm
data, scriet i algoritmul de rezolvare, n sensul celor mai mici
patrate, a ecuat iei matriceale AX = C.
E 1.4 Data o matrice A 1
22
avand (A) (1, determinat i o matrice
de rotat ie bidimensionala complexa P (
22
, denita de
P =
_
c s
s c
_
, c
2
+[s[
2
= 1, c 1
astfel ncat matricea S = P
H
AP (
22
, P
H
def
= P
T
sa e superior tri-
unghiulara.
E 1.5 Se da o matrice A 1
nn
n forma Schur reala. Se cere un
algoritm de calcul al unei matrice unitare
1
Q (
nn
si al matricei supe-
1
O matrice P C
nn
se numeste unitar a daca P
H
P = PP
H
= I
n
si joaca, n
calculul matriceal complex, acelasi rol cu cel jucat de matricele ortogonale n calculul
matriceal real.
32 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
rior triunghiulare S (
nn
astfel ncat Q
H
AQ = S. (Matricea S astfel
obt inuta se numeste forma Schur complexa a matricei A).
Indicat ie. Matricea Q poate un produs de matrice unitare de forma
Q
i
=
_
_
I 0 0
0 P
i
0
0 0 I
_
_
(
nn
cu P
i
(
22
o rotat ie complexa bidimensionala.
E 1.6 Fie A (
22
superior triunghiulara. Sa se calculeze o matrice
unitara U (
22
astfel ncat
U
H
AU =
_
a
22
0 a
11
_
,
i.e. sa se obt ina permutarea elementelor diagonale.
E 1.7 Daca B (
nn
este o matrice superior triunghiulara data, se cere un
algoritm de calcul al unei matrice unitare V (
nn
si a matricei superior
triunghiulare S (
nn
astfel ncat V
H
BV = S si [s
11
[ [s
22
[ . . .
[s
nn
[.
Observat ie. Daca B este forma Schur complexa a unei matrice A
1
nn
, atunci matricea S de mai sus poarta numele de forma Schur com-
plexa ordonata a matricei A. Evident, se poate utiliza orice alt criteriu de
ordonare a elementelor diagonale.
Indicat ie. Se foloseste o secvent a de transformari de forma
V
i
=
_
_
I 0 0
0 U
i
0
0 0 I
_
_
unde U
i
sunt matrice 2 2 determinate n exercit iul 1.6.
E 1.8 Admit and ca numarul asimptotic de operat ii aritmetice n format
virgula mobila necesar pentru execut ia algoritmului QR de aducere a unei
matrice reale n n la forma Schur reala, (inclusiv calculul matricei de
transformare) este, n medie statistica, conform [ VI ], N
1
= 12n
3
, evaluat i
a) numarul asimptotic de operat ii impus de execut ia algoritmului de la
exercit iul 1.7;
b) numarul asimptotic de operat ii necesar pentru rezolvarea, cu ajutorul
algoritmului 1.2 (varianta SchurSchur), a ecuat iei Sylvester continue (1.8);
1.4. ECUAT II LIAPUNOV 33
c) numarul asimptotic de operat ii necesar pentru rezolvarea ecuat iei
Liapunov continue (1.10) cu ajutorul algoritmului 1.5, respectiv pentru re-
zolvarea ecuat iei Liapunov discrete (1.11) cu ajutorul algoritmului 1.6.
E 1.9 Admit and ca sunt ndeplinite condit iile de existent a si unicitate a
solut iei, scriet i un algoritm ecient de rezolvare a ecuat iei matriciale Sylves-
ter continue (1.8) prin interpretarea desfasurata a acesteia ca un sistem
de mn ecuat ii cu mn necunoscute. Algoritmul nu trebuie sa includa nici o
procedura iterativa. Idem pentru ecuat ia Sylvester discreta (1.9).
Evaluat i numarul de operat ii aritmetice necesar si comparat i cu cel de-
terminat la exercit iul 1.8. Ce concluzii se impun ?
Indicat ie. Daca x 1
mn
si c 1
mn
sunt vectorii denit i, de exemplu,
prin concatenarea coloanelor matricelor X respectiv C aratat i ca ecuat ia
(1.8) se poate scrie n forma (I
n
A + B
T
I
m
) x = c iar (1.9) n forma
(B
T
A+I
mn
) x = c.
In relat iile de mai sus semnica produsul Kronecker
denit n felul urmator: daca U 1
pq
, V 1
rs
atunci W
def
= U V
1
prqs
este matricea avand structura bloc W = [ W
ij
]
i=1:p, j=1:q
cu W
ij
=
u
ij
V .
E 1.10 Fiind date matricele A 1
mm
, B 1
nn
cu (A) (B) =
si C 1
mn
, sa se scrie algoritmii Hessenberg Schur de rezolvare a
ecuat iei matriceale Sylvester continue AX + XB = C, respectiv a celei
discrete AXB +X = C, bazate pe aducerea, prin transformari ortogonale,
a matricei A la forma superior Hessenberg si a matricei B la forma Schur
complexa. Presupunet i ca se dispune de funct ia fsc de calcul a formei Schur
complexe, toate celelalte prelucrari urmand a scrise explicit.
E 1.11 Scriet i corespondent ii algoritmilor 1.5 si 1.6 (varianta Schur) pentru
rezolvarea ecuat iilor matriceale Liapunov A
T
X+XA = C si A
T
XAX =
C n ipoteza ca matricea C este simetrica, minimizand numarul de operat ii
aritmetice si memoria ocupata.
E 1.12 Elaborat i algoritmii de rezolvare a ecuat iilor Liapunov continua si
discreta (1.10) si (1.11) avand matricele A simple, folosind o procedura de
calcul a valorilor si vectorilor proprii. Exploatat i cat mai ecient ipoteza
simetriei matricei termenilor liberi. Admit and ca efortul de calcul al valo-
rilor si vectorilor proprii este N
1
= kn
3
, determinat i efortul total solicitat
de rezolvarea ecuat iilor matriceale date.
E 1.13 Fie o matrice A R
nn
cu proprietatea
i
j
,= 1,
i
,
j
(A).
Se cere sa se arate:
34 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
a) Daca B = (AI
n
)
1
(A + I
n
) atunci pentru orice
i
(A) avem
i
= (
i
+ 1)/(
i
1) (B);
b) 0, 1 (B) = ;
c) (B) (B) = .
E 1.14 Elaborat i algoritmii de tip Schur-Schur pentru rezolvarea ecuat iilor
Sylvester AX +XB = C si AXB +X = C care sa utilizeze formele Schur
reale ale matricelor A si B si exclusiv o aritmetica reala
2
.
Indicat ie. Utilizand reducerea matricelor A si B la forma Schur reala
ecuat iile (1.35), respectiv (1.51), au matricele S si T cvasisuperior triunghi-
ulare. Partit ionand matricea Y n blocuri conform dimensiunilor blocurilor
diagonale ale matricelor S si T, scriind (1.35), respectiv (1.51), pe bloc-
coloane si utilizand o tehnica de bloc-substitut ienapoi se obt ine ca ecuat iile
(1.35), respectiv (1.51), se reduc la un set de ecuat ii Sylvester continue,
respectiv discrete, denite de blocurile diagonale ale matricelor S si T.
Aceste ecuat ii se pot rezolva, n ordinea sugerata mai sus, ntr-o aritmetica
reala, prin desfasurarea lor n sisteme uzuale de ordin cel mult patru (vezi
exercit iul 1.9).
E 1.15 Elaborat i algoritmii de tip Schur pentru rezolvarea ecuat iilor Lia-
punov A
T
X +XA = C si A
T
XAX = C care sa utilizeze exclusiv forma
Schur reala a matricei A si o aritmetica reala
3
.
Indicat ie. Adaptat i indicat iile de la exercit iul precedent. Pentru detalii
putet i consulta [ 4-6 ] si [ X].
Bibliograe
[ 1 ] Davison E.J., Man F.T. The Numerical Solution of A
T
Q+QA = C,
IEEE Trans. Automat. Contr., vol. AC-13, pp. 448449, 1968.
[ 2 ] Berger C.S. A Numerical Solution of the Matrix Equation P = P
T
+S,
IEEE Trans. Automat. Contr., vol.AC-16, pp. 381-382, 1971.
[ 3 ] Bartell R.H., Stewart G.W. Solution of the Matrix Equation AX +
XB = C, Commun. Ass. Comput. Mach., vol 15, pp. 821-826, 1972.
[ 4 ] Barraud A.Y. A Numerical Algorithm to Solve A
T
XA X = Q, IEEE
Trans. Automat. Contr., vol.AC-22, pp. 883885, 1977.
2
Varianta Schur-Schur reala pentru rezolvarea ecuat iei Sylvester continue este referita
n literatura de specialitate cu denumirea de algoritmul Bartels-Stewart [ 3 ].
3
Varianta Schur reala pentru rezolvarea ecuat iei Liapunov discrete este referita n
literatura de specialitate cu denumirea de algoritmul Kitagawa-Barraud [ 4, 5 ].
1.4. ECUAT II LIAPUNOV 35
[ 5 ] Kitagawa G. An Algorithm for Solving the Matrix Equation X=F
T
XF+
S, Int. J. Control, vol. 25, pp. 745753, 1977.
[ 6 ] Sima V. Comparison of some Algorithms for Solving the Lyapunov-type
Equations, Rev. Roum. Sci.Techn. Electrotechn. Energ., vol. 25, pp.
625632, 1980.
[ 7 ] Hammarling S.J. Numerical Solution of the Stable, Non-negative Def-
inite Lyapunov Equation, IMA J. Numer. Anal., vol. 2, pp. 303323,
1982.
36 CAPITOLUL 1. ECUAT II MATRICEALE LINIARE
Capitolul 2
Calculul funct iilor de
matrice
Exponent iala matriceala
Calculul funct iilor de matrice este necesar n multe aplicat ii.
In particu-
lar, analiza comportarii dinamice a sistemelor liniare continue face apel la
exponent iala matriceala, pentru calculul careia a fost elaborata o ntreaga
serie de tehnici numerice mai mult sau mai put in performante.
In con-
secint a, prezentam n continuare unele metode generale de calcul pentru
funct iile de matrice, precum si metodele specice, cele mai apreciate, de
calcul pentru funct ia exponent iala de argument matriceal.
2.1 Funct ii de matrice
Consideram o funct ie f : D ( ( denita pe o mult ime D din planul
complex si e A (
nn
o matrice data. Ne propunem mai ntai sa denim
not iunea de funct ie de matrice adica semnicat ia expresiei
F = f(A). (2.1)
Pentru nceput observam ca daca f este o funct ie polinomiala
f(z) =
N
i=0
c
i
z
i
, c
i
(, i = 0 : N (2.2)
37
38 CAPITOLUL 2. FUNCT II DE MATRICE
atunci matricea
F =
N
i=0
c
i
A
i
(2.3)
este bine denita si poate numita valoarea polinomului f n punctul (sau
pe matricea) A.
Fie acum
A
(z) polinomul minimal al matricei A
1
si
i
(, i = 1 : l,
zerourile acestuia, zeroul
i
avand ordinul de multiplicitate m
i
. Avem
A
(z) = z
m
+
m1
k=0
i
z
i
=
l
i=1
(z
i
)
m
i
(2.4)
unde
m
def
= grad(
A
) =
l
i=1
m
i
. (2.5)
Conform teoremei mpart irii cu rest, exista unic doua polinoame q, r cu
grad(r) < m astfel ncat
f =
A
q +r. (2.6)
Polinomul minimal
A
ind un polinom anulator pentru matricea A, i.e.
A
(A) = 0, din (2.6) rezulta
F
def
= f(A) = r(A). (2.7)
(k)
A
(
i
) = 0, k = 0 : m
i
1, (2.8)
si, n consecint a, cei (cel mult) m coecient i ai polinomului r se pot deter-
mina, conform (2.6), prin rezolvarea sistemului de m ecuat ii liniare
r
(k)
(
i
) = f
(k)
(
i
), i = 1 : l, k = 0 : m
i
1, (2.9)
unde indicele superior indica ordinul derivatei.
1
Amintim ca
A
este polinomul monic de grad minim cu proprietatea
A
(A) = 0.
Daca p(z) = det(zI A) este polinomul caracteristic al matricei A iar d(z) este cel mai
mare divizor comun (monic) al tuturor minorilor de ordinul n1 ai matricei caracteristice
zI A atunci
A
(z) = p(z)/d(z).
2.1. FUNCT II DE MATRICE 39
Relat iile (2.7) si (2.9) servesc ca baza pentru denirea valorii n punctul
A a oricarei funct ii f care admite derivatele cerute n (2.9). Pentru o
abordare formala introducem
Denit ia 2.1 Fie A (
nn
si
= (
i
, m
i
) [ i = 1 : l,
i
(, m
i
^ (2.10)
mult imea zerourilor polinomului minimal
A
al matricei A mpreuna cu
multiplicitat ile respective. Daca funct ia f : D ( ( este analitica pe
o mult ime deschisa D ce cont ine punctele
i
, i = 1 : l atunci spunem ca
f este denita pe spectrul matricei A iar mult imea valorilor funct iei f pe
spectrul matricei A este
f() =
_
f
(k)
(
i
) [ i = 1 : l, k = 0 : m
i
1
_
. (2.11)
In particular f(
i
) 1 pentru orice
i
(A) 1.
(zI A)
1
f(z)dz . (2.14)
Expresia (2.14) poate servi ca denit ie pentru funct iile analitice (pe un
domeniu) iar calculul integralei Cauchy
f
ij
=
1
2i
_
e
T
i
(zI A)
1
e
j
f(z)dz (2.15)
poate efectuat cu ajutorul teoremei reziduurilor.
Exemplul 2.2 Consideram funct ia f si matricea A din exemplul 2.1.
Avem (A) = 1, 2, 2 si
(zI A)
1
=
_
_
1
z1
1
(z1)(z2)
0
0
1
z2
0
0 0
1
z2
_
_
.
Prin urmare, f ind analitica n tot planul complex, putem alege un dome-
niu simplu conex oarecare ce satisface (A) D. Obt inem
f
11
=
1
2i
_
e
z
z 1
dz = Rez
_
e
z
z 1
_
z=1
= e,
f
22
= f
33
=
1
2i
_
e
z
z 2
dz = Rez
_
e
z
z 2
_
z=2
= e
2
,
f
13
=
1
2i
_
e
z
(z 1)(z 2)
dz = Rez
_
e
z
(z 1)(z 2)
_
z=1
+
+Rez
_
e
z
(z 1)(z 2)
_
z=2
= e +e
2
,
42 CAPITOLUL 2. FUNCT II DE MATRICE
celelalte elemente ale matricei F = e
A
ind, evident, nule.
k=0
k
(z z
0
)
k
(2.16)
si seria este convergenta n discul [z z
0
[ < r atunci aceasta dezvoltare
ramane valabila daca argumentul scalar este nlocuit cu argumentul ma-
triceal A
f(A) =
k=0
k
(Az
0
I)
k
(2.17)
oricare ar matricea A al carei spectru se aa n interiorul discului de
convergent a.
Din aceasta teorema rezulta, printre altele, ca dezvoltarile
e
A
=
k=0
1
k!
A
k
,
sin A =
k=0
(1)
k
(2k + 1)!
A
2k+1
, cos A =
k=0
(1)
k
(2k)!
A
2k
sunt valabile oricare ar matricea A (
nn
.
Exemplul 2.3 Reluam matricea A si funct ia f din exemplul 2.1. Prin
induct ie rezulta imediat
A
k
=
_
_
1 2
k
1 0
0 2
k
0
0 0 2
k
_
_
si deci
F = e
A
=
k=0
1
k!
A
k
=
_
k=0
1
k!
k=0
2
k
1
k!
0
0
k=0
2
k
k!
0
0 0
k=0
2
k
k!
_
_
=
2.1. FUNCT II DE MATRICE 43
=
_
_
e e
2
e 0
0 e
2
0
0 0 e
2
_
_
.
_
1 0 0
0 1 0
.
.
.
.
.
.
.
.
.
1
0 0 0
_
_
si utilizand denit ia 2.3 obt inem
f(J) =
_
_
f() f
() . . .
f
(m1)
()
(m1)!
0 f() . . .
f
(m2)
()
(m2)!
.
.
.
.
.
.
.
.
.
.
.
.
0 0 . . . f()
_
_
,
(exercit iul 2.4).
Propozit ia 2.4 Daca matricea A (
nn
este superior (inferior) triunghi-
ulara, iar f este o funct ie denita pe spectrul lui A atunci
a) F = f(A) este superior (inferior) triunghiulara;
b) f
ii
= f(a
ii
), i = 1 : n.
Demonstrat ie.
a) Se stie ca inversa unei matrice superior (inferior) triunghiulare nesin-
gulare este superior (inferior) triunghiulara.
In consecint a (zI A)
1
este
superior (inferior) triunghiulara si, din (2.14), rezulta ca aceeasi structura
o are si matricea F = f(A).
b) Daca A este o matrice triunghiulara atunci elementele diagonale ale
matricei (zI A)
1
sunt
1
z a
ii
, i = 1 : n.
Funct ia f ind denita pe spectrul matricei A, rezulta ca
i
= a
ii
, i =
1 : n nu sunt puncte singulare pentru f si, n consecint a, utilizand formula
2.1. FUNCT II DE MATRICE 45
integrala a lui Cauchy pentru elementele diagonale din (2.14), rezulta
f
ii
=
1
2i
_
f(z)
z a
ii
dz = f(a
ii
), i = 1 : n.
q.e.d.
Propozit ia 2.5 Fie (A) =
1
, . . . ,
n
spectrul matricei A (
nn
.
Atunci pentru orice funct ie f denita pe spectrul lui A avem
(f(A)) = f(
1
), . . . , f(
n
) . (2.22)
Demonstrat ie. Fie B = Q
H
AQ forma Schur complexa a matricei A. Atunci
B este superior triunghiulara si b
ii
=
i
, i = 1 : n. Aplicand propozit iile
2.2 si 2.4 rezulta
f(A) = Qf(B)Q
H
si, deci, valorile proprii ale matricei f(A) sunt f(b
ii
) = f(
i
), i = 1 : n.
Propozit ia 2.6 Matricele A (
nn
si F = f(A) comuta i.e.
Af(A) = f(A)A. (2.23)
Demonstrat ie. Existent a matricei F = f(A) presupune ca funct ia f este
denita pe spectrul matricei A.
In acest caz nsa si funct ia h denita de
h(z) = zf(z) = f(z)z este denita pe spectrul matricei A. Din faptul ca
h(A) are semnicat ie rezulta (2.23).
Teorema 2.1 mpreuna cu proprietatea (2.23) stabileste un izomorsm
f(z) ;f(A) ntre algebra comutativa a funct iilor analitice f(z) pe spectrul
lui A si algebra (de asemenea comutativa) a funct iilor de matrice f(A).
Observat ia 2.2 Din propozit iile 2.2 si 2.4 rezulta ca daca Q
H
AQ =
B este forma Schur a lui A atunci f(A) = Qf(B)Q
H
, unde G = f(B)
este superior triunghiulara cu g
ii
= f(b
ii
). T inand seama ca forma Schur
prezinta proprietat i numerice net superioare formei canonice Jordan si ca
propozit ia 2.6 sta la baza unui algoritm abil de calcul al funct iilor de
matrice triunghiulare (vezi sect iunea urmatoare) deducem ca rezultatele de
mai sus fundamenteaza o categorie importanta de proceduri de calcul al
funct iilor de argument matriceal.
Proprietat ile urmatoare, care ilustreaza izomorsmul de algebre comu-
tative amintit anterior, permit extinderea unor identitat i care punn relat ie
funct ii de argument scalar cu funct ii de matrice.
46 CAPITOLUL 2. FUNCT II DE MATRICE
Propozit ia 2.7 Fie g(z
1
, z
2
, . . . , z
p
) un polinom n nedeterminatele z
1
,
z
2
, . . . , z
p
si f
i
, i = 1 : p funct ii denite pe spectrul matricei A (
nn
.
Denim funct ia
h(z) g(f
1
(z), . . . , f
p
(z)). (2.24)
Atunci h este o funct ie denita pe spectrul matricei A si daca
h
(k)
(
i
) = 0, i = 1 : l, k = 0 : m
i
1 (2.25)
unde (
i
, m
i
), i = 1 : l sunt zerourile polinomului minimal
A
cu multi-
plicitat ile respective, atunci
H
def
= h(A) = g(f
1
(A), . . . , f
p
(A)) = 0. (2.26)
Demonstrat ie. Daca r
i
, i = 1 : p sunt polinoamele de interpolare Lagrange-
Sylvester ale funct iilor f
i
pe spectrul matricei A, atunci consideram funct ia
u denita de
u(z) = g(r
1
(z), . . . , r
p
(z))
care este, evident, o funct ie polinomiala de argument scalar.
In aceste
condit ii, din (2.25), (2.26) si modul de denire a polinoamelor de interpolare
Lagrange-Sylvester (2.9) rezulta
u
(k)
(
i
) = 0, i = 1 : l, k = 0 : m
i
1,
respectiv polinomul de interpolare al funct iei u este identic nul, de unde
obt inem
u(A) = g(r
1
(A), . . . , r
p
(A)) = g(f
1
(A), . . . , f
p
(A)) = 0
q.e.d.
Cateva consecint e imediate ale propozit iei 2.7, care evident iaza trans-
ferul unor formule scalare n cazul matriceal sunt urmatoarele relat ii utile.
a) Fie polinomul g(z
1
, z
2
) = z
2
1
+z
2
2
1 si funct iile f
1
(z) = sin z, f
2
(z) =
cos z. Atunci funct ia denita n (2.25)
h(z) g(sin z, cos z) = sin
2
z + cos
2
z 1
este identic nula si prin urmare (2.26) este satisfacuta pentru orice matrice
A. De aici rezulta ca, pentru toate matricele patrate A, avem
sin
2
A+ cos
2
A = I.
2.1. FUNCT II DE MATRICE 47
b) Similar, considerand polinomul g(z
1
, z
2
) = z
1
z
2
1 si funct iile f
1
(z) =
e
z
, f
2
(z) = e
z
obt inem e
A
e
A
= I, adica
e
A
=
_
e
A
_
1
.
c) De asemenea, cu g(z
1
, z
2
, z
3
) = z
1
+ z
2
+ z
3
si f
1
(z) = e
iz
, f
2
(z) =
cos z, f
3
(z) = i sin z rezulta ca pentru orice matrice patrata A este
adevarata formula
e
iA
= cos A+i sin A.
Propozit ia 2.8 Daca
(z) =
g(z)
h(z)
(2.27)
este o funct ie rat ional a ireductibila, denita pe un domeniu care nu cont ine
radacinile polinomului h(z) iar A (
nn
atunci funct ia este denita pe
spectrul matricei A daca si numai daca
h(
i
) ,= 0
i
(A). (2.28)
Daca (2.28) sunt satisfacute atunci
(A) = g(A)[h(A)]
1
= [h(A)]
1
g(A). (2.29)
Demonstrat ie. Funct ia este indenit derivabila n toate punctele n care
h(z) nu se anuleaza.
In consecint a
(k)
(
i
) sunt denite daca si numai
daca (2.28) sunt adevarate. Pe de alta parte din (2.28) si propozit ia 2.5
rezulta ca 0 , (h(A)) i.e. matricea h(A) este nesingulara. Aplicand acum
propozit ia 2.7, din identitatea
h(z)(z) = (z)h(z) = g(z)
rezult a
h(A)(A) = (A)h(A) = g(A)
care mpreuna cu nesingularitatea matricei h(A) conduc la (2.29).
Propozit ia 2.9 Daca funct ia compusa h = g f este denita pe spectrul
matricei A (
nn
atunci
h(A) = g(f(A) (2.30)
i.e. h(A) = g(B) unde B = f(A).
Demonstrat ia este propusa cititorului.
48 CAPITOLUL 2. FUNCT II DE MATRICE
2.2 Calculul funct iilor de matrice
Tehnicile numerice de evaluare a funct iilor de matrice, recomandate de
experient a numerica acumulata, evita determinarea efectiva a polinomului
de interpolare Lagrange-Sylvester, n primul rand din motive de ecient a
[ 1 ]. Metodele care s-au impus si pentru care exista si unele rezultate
teoretice privind problemele legate de stabilitatea numerica se pot mpart i
n doua categorii:
a) metode bazate pe calculul valorilor proprii;
b) metode aproximative bazate pe trunchierea unor dezvoltari n serie.
Prezentam, n continuare, procedurile bazate pe calculul valorilor pro-
prii; metodele aproximative, bazate pe trunchierea unor dezvoltari n serie,
vor expuse n paragraful urmator, dedicat cazului particular dar impor-
tant pentru teoria sistemelor liniare, al calculului exponent ialei matriceale.
Pentru matricele simple (i.e. diagonalizabile) calculul funct iilor de ma-
trice prin evaluarea valorilor si vectorilor proprii se bazeaza pe propozit iile
2.2 si 2.3.
Intr-adevar, n acest caz, daca V = [ v
1
v
2
. . . v
n
] este matricea
vectorilor proprii ai matricei date A (
nn
atunci A = V V
1
unde
= diag(
1
,
2
, . . . ,
n
).
Prin urmare, pentru orice funct ie denita pe spectrul matricei A, apli-
cand (2.19) si (2.21), rezulta
F = f(A) = V f()V
1
= V diag(f(
1
), f(
2
), . . . , f(
n
))V
1
. (2.31)
Introducand acum funct ia vvp de calcul a valorilor si vectorilor proprii
ai unei matrice (desigur, prin aplicarea algoritmului QR) cu sintaxa
[ V, p ] = vvp(A)
unde p este vectorul valorilor proprii pentru matricea A, relat ia (2.31) sta la
baza urmatorului algoritm de calcul al funct iilor de matrice diagonalizabile.
Algoritmul 2.1 (Date matricea simpla A (
nn
si funct ia
f : D ( ( denita pe spectrul matricei A, algoritmul
calculeaza F = f(A) prin determinarea valorilor si vectorilor
proprii.)
1. [ V, p ] = vvp(A)
2. Pentru i = 1 : n
1.
i
= f(p
i
)
3. D = V diag(
1
,
2
, . . . ,
n
)
2.2. CALCULUL FUNCT IILOR DE MATRICE 49
4. Se rezolva sistemul matriceal liniar nesingular FV = D n
raport cu F.
Evident, efortul de calcul principal este destinat calculului valorilor si
vectorilor proprii si, ntr-o oarecare masura, rezolvarii sistemului matriceal
liniar.
k=i
t
ik
f
kj
=
j
k=i
f
ik
t
kj
, j = 1 : n, i = 1 : j, (2.33)
50 CAPITOLUL 2. FUNCT II DE MATRICE
de unde, n ipotezele ment ionate, avem
f
ij
=
1
t
jj
t
ii
[t
ij
(f
jj
f
ii
) +
j1
k=i+1
(t
ik
f
kj
f
ik
t
kj
)], j = 1 : n, i = 1 : j.
(2.34)
Relat ia (2.34) este utila numai n masuran care se poate gasi o ordine de
calcul a elementelor matricei F astfel ncat, la ecare moment al procesului
de calcul, n membrul drept al expresiei (2.34) sa apara numai elemente deja
calculate. O astfel de ordine exista si ea poate evident iata observand ca
elementele diagonale sunt calculabile, conform (2.22), cu formula
f
ii
= f(t
ii
) (2.35)
si ca n membrul drept al relat iei (2.34) apar elementele F(i, i : j 1)
din stanga elementului f
ij
si F(i + 1 : j, j) de sub elementul f
ij
(vezi
diagrama din gura 2.1).
j
i
F(i, i : j 1) f
ij
'
F(i + 1 : j, j)
d
d
d
d
d
d
d
d
d
d
d
d
Figura 2.1: Matricea F = f(T).
De exemplu, se poate adopta o ordine diagonala de calcul al elementelor
triunghiului superior, dupa cum este indicat n diagrama din gura 2.2
pentru n = 5, numarul nscris n matrice marcand numarul de ordine pentru
calculul elementului de pe pozit ia respectiva.
Aceasta nu este singura ordine posibila.
Intr-adevar, daca efectuam
calculele pe coloane n ordinea j = 1, 2, . . . , n, pe ecare coloana calculele
2.2. CALCULUL FUNCT IILOR DE MATRICE 51
1 6 10 13 15
2 7 11 14
3 8 12
4 9
5
Figura 2.2: Ordinea diagonala de calcul a elementelor matricei F = f(T).
efectuandu-se de jos n sus (vezi diagrama a) din gura 2.3) sau pe linii
n ordinea i = n, n 1, . . . , 1, pe ecare linie ordinea de calcul ind de la
st anga la dreapta (diagrama b) din gura 2.3), atunci n momentul calculu-
lui unui element curent oarecare, elementele din stanga si de sub elementul
curent sunt deja calculate.
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
11 12 13 14 15
7 8 9 10
4 5 6
2 3
1
(a) (b)
Figura 2.3: Ordinea pe coloane (a) si ordinea pe linii (b) de calcul a
elementelor matricei F = f(T).
Prezentam n continuare algoritmul corespunzator ordinii diagonale de
calcul, celelalte variante facand obiectul unor exercit ii. Pentru a urmari
mai usor indexarea, observam ca, atribuind indicele q direct iilor paralele
cu diagonala principala a matricei, rezulta urmatoarea schema de calcul.
1. Se calculeaza f
ii
, i = 1 : n cu relat ia (2.35).
2. Pentru q = 2 : n
1. Pentru i = 1 : n q + 1
1. Se calculeaza f
i,i+q1
cu relat ia (2.34).
52 CAPITOLUL 2. FUNCT II DE MATRICE
Pentru a nu modica indexarea folosita n expresia (2.34) a elementului
f
ij
facem urmatoarele schimbari de indici:
p = q 1, j = i +p,
cu care schema de mai sus ne conduce la urmatorul algoritm de calcul al
funct iilor de matrice triunghiulare cu elementele diagonale distincte.
Algoritmul 2.2 (Parlett)(Date o matrice superior triun-
ghiulara T (
nn
cu t
ii
,= t
jj
pentru orice i ,= j si o funct ie
f : D C C denita pe spectrul matricei T, algoritmul cal-
culeaza, n ordine diagonala, elementele matricei superior tri-
unghiulare F = f(T).)
1. Pentru i = 1 : n
1. f
ii
= f(t
ii
)
2. Pentru p = 1 : n 1
1. Pentru i = 1 : n p
1. j = i +p
2. s = t
ij
(f
jj
f
ii
)
3. Daca p > 1 atunci
1. Pentru k = i + 1 : j 1
1. s = s +t
ik
f
kj
f
ik
t
kj
4. f
ij
=
s
t
jj
t
ii
Schema recurenta care sta la baza algoritmului 2.2 este deosebit de
ecienta, n afara celor n evaluari de funct ii scalare de la instructiunea 1,
algoritmul necesitand un numar asimptotic de N
op
2n
3
3
operat ii n virgula
mobila.
Cu acest algoritm, completat cu procedura de aducere a unei matrice
date la forma Schur complexa (superior triunghiulara) prin transformari
ortogonale de asemanare, se obt ine o procedura cu bune calitat i numerice
pentru calculul funct iilor de matrice. Introducem funct ia fsc de calcul a
formei Schur complexe avand sintaxa
[ S, U ] = fsc(A)
unde datele de iesire sunt matricea unitara de transformare U si forma
Schur complexa S a matricei A legate prin relat iile
S = U
H
AU, A = USU
H
, (2.36)
2.3. CALCULUL EXPONENT IALEI MATRICEALE 53
indicele superior H semnicand dubla operatie de transpunere si conjugare.
Not am cu funmt (funct ie de matrice triunghiulara) funct ia de calcul
realizata de algoritmul 2.2 de mai sus, cu sintaxa (neformala)
F = funmt(f, T)
avand ca parametrii de intrare funct ia f si matricea superior triunghiu-
lara T, iar ca parametru de iesire matricea F = f(T). Cu aceste notat ii
prezentam
Algoritmul 2.3 (Date o matrice A cu valori proprii dis-
tincte si o funct ie f denita pe spectrul matricei A, algoritmul
calculeaza matricea F = f(A) prin metoda aducerii matricei A
la forma Schur complexa.)
1. [ S, U ] = fsc(A)
2. T = funmt(f, S)
3. F = UTU
H
= (A+E)
cu
(0) = I. Punand
= + , obt inem
+
= A +A +E +E,
unde (0) = I, deci (0) = 0. Pentru simplitate, neglijam termenul
E si, prin integrare, deducem
(t) =
_
t
0
e
(t)A
Ee
A
d = (t)
_
t
0
e
A
Ee
A
d .
Utilizand norma matriceala | | = | |
2
putem scrie
|(t)| |(t)| |
_
t
0
e
A
Ee
A
d|
relat ie din care rezulta
|(t)|
|(t)|
cond((t))
|E|
|A|
, (2.38)
unde
cond((t))
def
= max
|E| = 1
|
_
t
0
e
A
Ee
A
d| |A| (2.39)
este numarul de condit ie al lui A relativ la calculul lui (t) = e
tA
.
Obt inem o evaluare grosiera a lui cond((t)) observand ca
|
_
t
o
e
A
Ee
A
d|
_
t
0
|e
A
| |E| |e
A
| d
unde
|e
A
| e
A
, > 0.
De asemenea, avem
_
t
0
e
2A
dt =
1
2|A|
(e
2tA
1) ,
2.3. CALCULUL EXPONENT IALEI MATRICEALE 55
deci
cond(t)
1
2
(e
2tA
1). (2.40)
k=0
c
k
z
k
(2.44)
2
Acest lucru e posibil chiar daca tA 1 deoarece marginea e
tA
e
tA
utilizata
mai sus este n general supraestimata (de exemplu A = 5, t = 1). De aceea este util sa
dispunem pentru evaluarea lui cond((t)) de estimari mai precise pentru e
tA
, eventual
capabile sa t ina seama de repartit ia spectrului lui A si n special de dispersia acestuia
(stiness). Se stie ca daca A are valorile proprii
i
, atunci e
tA
are valorile proprii e
i
t
(propozit ia 2.5); pe de alta parte pentru orice matrice A si orice norma matriceala
avem A (A), unde (A)
def
= max |
i
|, deci e
tA
max | e
i
t
|. Se poate arata
ca daca Re
i
< atunci exista M astfel ncat e
tA
Me
t
, t 0.
In mod analog,
daca < Re
i
atunci exista N astfel nc at e
tA
Ne
t
, t 0. Prin urmare daca
spectrul lui A e cuprins n banda < Re
i
< atunci
_
t
0
e
tA
Ee
tA
dt MNE
_
t
0
e
()
d = MNE
e
()t
1
deci
cond (t) MN
e
t
1
A
unde
def
= > 0
De aici se vede inuent a nefavorabil a a dispersiei a spectrului (cu cat e mai mare cu
atat cond(t) e mai mare) precum si faptul ca numai pentru mic (adica
e
t
1
t)
cond(t) e realmente limitat de tA.
3
In cazuri speciale (matrice simetrice cu valori proprii reale si negative, cum sunt cele
rezultate prin discretizarea spat iala a problemelor la limite eliptice) se pot utiliza apro-
ximari globale (uniforme n sens Cebasev sau n medie patratic a) valabile pe domeniul
ce cont ine spectrul lui A.
2.3. CALCULUL EXPONENT IALEI MATRICEALE 57
unde coecient ii c
k
se determina din condit iile
d
k
dz
k
(e
z
T
p
(z))
z=0
= 0 , k = 0 : p . (2.45)
Obt inem
c
k
=
1
k!
, (2.46)
adica cea mai buna aproximare polinomiala locala de ordin p coincide cu
polinomul Taylor corespunzator (fapt binecunoscut, de altfel).
Exemplul 2.4 Pentru p = 1 din (2.44) obt inem T
1
(z) = 1 + z iar
aproximat ia T
1
(tA) = I + tA a lui e
tA
corespunde integrarii numerice a
ecuat iei diferent iale x(t) = Ax(t) prin metoda Euler explicita de ordin 1.
In
mod similar se poate arata ca metoda Runge-Kutta de ordin 4 corespunde
alegerii p = 4 n (2.44).
Putem evalua eroarea de trunchiere comisa prin utilizarea aproximat iei
polinomiale (2.44) observand ca
e
z
T
p
(z)
def
=
kp+1
z
k
k!
=
z
p+1
(p + 1)!
_
1 +
z
p + 2
+
z
2
(p + 2)(p + 3)
+
_
unde paranteza dreapta e majorata prin
1 +
[z[
1
+
[z[
2
1 2
+ = e
|z|
sau (daca [z[ < p + 2) prin
1 +
[z[
p + 2
+
[z[
2
(p + 2)
2
+ =
1
1
|z|
p+2
.
Punand z = tA si utilizand prima evaluare (evident, acoperitoare) obt inem
eroarea relativa de trunchiere sub forma
|e
tA
T
p
(tA)|
|e
tA
|
(t|A|)
p+1
(p + 1)!
. (2.47)
Altfel spus, avem
|e
tA
T
p
(tA)|
|e
tA
|
tol , (2.48)
unde tol este precizia de calcul impusa, daca alegem p astfel ncat
(t|A|)
p+1
(p + 1)!
< tol . (2.49)
58 CAPITOLUL 2. FUNCT II DE MATRICE
Pentru orientare, ment ionam ca daca t|A| <
1
2
si tol este de ordinul 10
5
,
atunci condit ia (2.49) impune p = 5 6.
Evaluarea polinomului matriceal T
p
(A) are loc dupa schema
T
k+1
(tA) = T
k
(tA) +X
k
, X
k
=
1
k!
t
k
A
k
, (2.50)
unde ntre doi termeni succesivi X
k
si X
k1
are loc relat ia
X
k
=
1
k
tAX
k1
, (2.51)
iar init ializarile sunt, evident, T
0
(tA) = I si X
0
= I.
T inand seama de cele spuse mai sus, algoritmul de calcul al exponent i-
alei matriceale poate formulat n felul urmator.
Algoritmul 2.4 (Date A 1
nn
si t 1 algoritmul cal-
culeaza F = e
tA
, n ipoteza t|A| < 1, utilizand aproximat ia
Taylor).
1. Se determina p din condit ia (2.49).
2. X = I
3. F = I
4. Pentru k = 1 : p
1. X
1
k
tAX
2. F F +X
Numarul de operat ii necesare este de ordinul N
op
pn
3
(pentru efectuarea
produsului matriceal de la pasul 4.1).
Observat ia 2.4
In absent a limitarii lui t|A|, la pasul 4.2 pot avea loc
fenomene de anulare prin scadere cu consecint e catastofale asupra pre-
ciziei. Prin urmare, algoritmul de mai sus se asociaza n mod obligatoriu
cu schema (1/2)
2
.
In orice caz, pentru sigurant a calculului, se recomanda
monitorizarea normei termenilor X.
II. Aproximat ia rat ionala (Pade) de grade (p , q) si de ordin p + q
este de forma
R
pq
(z) =
N
p
(z)
D
q
(z)
=
c
0
+c
1
z + +c
p
z
p
1 +d
1
z + +d
q
z
q
, (d
0
def
= 1) , (2.52)
unde coecient ii c
k
, d
k
se determina din condit iile
d
k
dz
k
(e
z
R
pq
(z)) = 0 , k = 0 : p +q . (2.53)
2.3. CALCULUL EXPONENT IALEI MATRICEALE 59
Echivalent, se poate utiliza metoda coecient ilor nedeterminat i, scriind for-
mal
D
q
(z)(
k0
z
k
k!
) = N
p
(z)
si egaland coecient ii gradelor egale din cei doi membri pana la gradul p+q
necesar. Rezulta
c
k
=
(p +q k)!p!
(p +q)!k!(p k)!
, d
k
=
(p +q k)!q!
(p +q)!k!(q k)!
(1)
k
. (2.54)
Exemplul 2.5 Pentru q = 0 obt inem aproximat ia polinomiala (Taylor).
Primele aproximat ii rat ionale diagonale, i.e. cu p = q, sunt
R
11
(z) =
1 +
z
2
1
z
2
cu polul z = 2, respectiv
R
22
(z) =
1 +
z
2
+
z
2
12
1
z
2
+
z
2
12
cu polii z
1,2
= 3 i
3 avand Re z
1,2
= 3, plasat i pe cercul de raza 2
3.
Prin urmare, trecand la cazul matriceal, constatam ca n general exis-
tent a aproximat iei rat ionale R
pq
(tA) nu este asigurata necondit ionat (vezi
propozit ia 2.8), ntrucat matricea D
q
(tA) poate singulara; de exemplu,
D
1
(tA) = I
1
2
tA
este singulara daca t = 1 si A are o valoare proprie = 2. (
In legatura
cu aceasta, observam ca daca este ndeplinita condit ia t|A| < 1, adica
|A| < 1, atunci cu att mai mult [
i
[< 1, deci aceasta situat ie este
imposibila).
In general, se poate arata ca toate zerourile lui D
q
(z) sunt
situate n Re z > 0 si se acumuleaza la pentru q astfel ncat
D
q
(tA) rezulta sigur nesingulara daca este satisfacuta cel put in una din
urmatoarele condit ii
i) Re
i
< 0, i.e. matricea A este stabila;
ii) q este sucient de mare;
iii) t|A| < 2.
4
A) , e)
C
1
= cos(
4
A) , f) S
2
= sin(
8
A) , g) C
2
= cos(
8
A).
E 2.2 Vericat i ca matricele calculate n exercit iul precedent satisfac
relat iile: a) G
2
= A (exista matrice X ,= G care satisfac X
2
= A ?),
b) S
1
= 2S
2
C
2
= 2C
2
S
2
, c) C
2
1
= C
2
2
S
2
2
, etc. Putet i generaliza
aceste rezultate aratand, e.g., ca (
A)
2
= A, sin 2A = 2 sin Acos A,
cos 2A = 2(cos A)
2
I etc, oricare ar matricea patrata A pe spectrul
careia funct iile respective sunt denite ?
E 2.3 Reluat i matricea A din exercit iul 2.1 si calculat i funct iile de matrice
cerute pe baza teoremei 2.1 (relat iile (2.15)).
E 2.4 Sa se deduca expresia analitica a matricei F = f(J) unde J (
mm
este un bloc Jordan iar f este o funct ie denita pe spectrul lui J (vezi
observat ia 2.1).
E 2.5 Vericat i ca matricea A din exercit iul 2.1 este simpla si determinat i
un set complet de vectori proprii al acesteia. Pe aceasta baza calculat i
funct iile de matrice cerute utilizand algoritmul 2.1.
E 2.6 Fie A (
nn
o matrice simpla si v
j
, j = 1 : n un set complet de
vectori proprii al acestei matrice. Daca u
j
= V
1
( : , j), unde V este ma-
tricea vectorilor proprii ment ionat i, iar f este o funct ie denita pe spectrul
2.3. CALCULUL EXPONENT IALEI MATRICEALE 63
(A) =
1
,
2
, . . . ,
n
al matricei date sa se arate ca
F
def
= f(A) =
n
j=1
f(
j
) v
j
u
H
j
.
Folosind setul de vectori proprii al matricei A din exercit iul 2.1, calculat n
exercit iul precedent, aplicat i formula de mai sus pentru calculul funct iilor
de matrice cerute.
E 2.7 Rescriet i algoritmul Parlett de calcul al funct iilor de matrice superior
triunghiulare cu valori proprii distincte calculand elementele matricei F =
f(T) n ordinea pe coloane, respectiv pe linii (vezi gura 2.3). Adaptat i
acest algoritm pentru calculul funct iilor de matrice inferior triunghiulare cu
elementele diagonale distincte.
E 2.8 Scriet i un algoritm ecient pentru calculul funct iei F = f(A), unde
A este superior bidiagonala cu elemente diagonale distincte.
E 2.9 Scriet i un algoritm ecient pentru calculul unei funct ii F = f(A),
unde A 1
nn
este simetrica. Considerat i cazurile f(z) = e
z
, f(z) =
lnz, f(z) =
z.
Indicat ie. Utilizand algoritmul QR simetric se obt ine A = Q
T
Q, unde
Q este ortogonala iar = diag (
1
,
2
, . . . ,
n
) cont ine valorile proprii
(reale) ale lui A. Apoi se aplica (2.19).
E 2.10 Scriet i un algoritm ecient pentru calculul matricei de tranzit ie
(k) = A
k
a sistemului liniar discret x(k + 1) = Ax(k).
Indicat ie. Executand A A A de zece ori se obt ine A A
1024
. Cum
procedat i daca, de exemplu, k = 1453, k = 1789 sau k = 1917 ?
E 2.11 Discutat i metodele de calcul ale exponent ialei matriceale e
tA
, unde
A este o matrice companion, e.g. are forma
A =
_
_
0 1 0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 1
a
1
a
2
a
n
_
_
,
si scriet i algoritmul de calcul pe care l recomandat i.
Indicat ie. Polinomul caracteristic al lui A este p(s)
def
= det(sI
n
A) =
s
n
+ a
n
s
n1
+ + a
1
. Utilizand teorema Cayley Hamilton, conform
64 CAPITOLUL 2. FUNCT II DE MATRICE
careia p(A) = 0, precum si dezvoltarea n serie a lui e
z
, gasim
e
tA
=
n
i=1
i
(t)A
i1
,
unde coecient ii funct iilor analitice
i
(t) pot calculat i recurent. Alterna-
tiv, utilizand transformata Laplace a exponent ialei, putem scrie
(sI A)
1
=
n
k=1
s
k1
p(s)
A
k
,
unde atat matricele A
k
cat si transformatele inverse ale funct ilor s
k1
/p(s)
pot , n principiu, evaluate numeric. Experient a numerica arata ca, n
ambele situat ii, efectul erorilor de rotunjire si trunchiere poate catastrofal,
ceea ce conrma nca o data faptul ca o metoda aplicabila n regim de
lucru cu hartia si creionul este aproape sigur contraindicata n calitate
de algoritm de uz curent (pe calculator).
In cazul de fat a se recomanda
utilizarea algoritmului 2.5, n care structura rara a lui A reduce considerabil
numarul de operat ii la pasul 5.1.
E 2.12 Aratat i ca e
A+B
= e
A
e
B
este adevarata daca si numai daca AB =
BA. Putet i da o expresie (aproximativa) pentru e
A+B
daca AB ,= BA ?
E 2.13 Scriet i schema (1/2)
2
pentru calculul funct iilor cos(tA) si sin(tA)
si argumentat i utilitatea ei. Idem pentru funct iile cosh(tA) si sinh(tA).
E 2.14 Scriet i analogul algoritmilor 2.4 si 2.5 pentru calculul funct iilor
din exercit iul 2.13.
Observat ie. Solut ia ecuat iei diferent iale x(t) + Ax(t) = 0 cu condit iile
init iale x(0) = x, x(0) = y se scrie sub forma
x(t) = ( cos A
1
2
t ) x + ( A
1
2
sin A
1
2
t ) y .
Examinand seriile corespunzatoare, explicat i cum se aplica rezultatele de
mai sus n aceasta situat ie. Cum procedat i daca A este simetrica si pozitiv
denita ?
E 2.15 Stabilit i legatura dintre funct iile considerate mai sus si exponent i-
ala matriceala e
tA
0
, unde
A
0
=
_
0 I
n
A 0
_
.
2.3. CALCULUL EXPONENT IALEI MATRICEALE 65
Ce implicat ii calculatorii are constatarea facuta?
E 2.16 Fie A 1
nn
si B 1
nm
doua matrice date. Utilizand
denit ia matricei de tranzit ie, precizat i structura exponent ialei matriceale
e
tA
0
, unde
A
0
=
_
A B
0 0
_
.
Indicat ie. Pe baza rezultatelor din 2.1, se constata imediat ca e
tA
0
are
structura
e
tA
0
=
_
F(t) G(t)
0 I
m
_
.
Cine sunt F(t) si G(t) ?
Observat ie. Aceste rezultate sunt utilizate n sect iunea 4.3 n legatura
cu problema discretizarii sistemelor liniare.
E 2.17 Generalizat i constatarea facuta n exercit iul 2.16 pentru a obt ine
o procedura ecienta de calcul a integralelor
G
k
(t) =
_
t
0
e
A
(t )
k1
(k 1)!
d, k = 1 : p.
Indicat ie. Consultat i [ 6 ].
E 2.18 Utilizand seria lui e
A
si efectuand integrarea, obt inet i dezvoltarile
n serie ale funct iilor G
k
(t) si scriet i un algoritm de tip 2.4 pentru evaluarea
lor. Estimat i eroarea de trunchiere.
Bibliograe
[1] Parlett B. N. A Recurrence among the Elements of Functions of
Triangular Matrices, Lin. Alg. and Its Applic., vol. 14, pp. 117121,
1976.
[2] Ward R. C. Numerical Computation of the Matrix Exponential with
Accuracy Estimate, SIAM J. Numer. Anal., vol. 14, pp. 600610,
1977.
[3] Van Loan C. F. The Sensitivity of the Matrix Exponential, SIAM
J. Numer. Anal., vol. 6, pp. 971981, 1977.
66 CAPITOLUL 2. FUNCT II DE MATRICE
[4] Moler C. B., Van Loan C. F. Nineteen Dubious Ways to Compute
the Exponential of a Matrix, SIAM Review, vol. 20, pp. 801836,
1978.
[5] Van Loan C. F. A Note on the Evaluation of Matrix Polynomials,
IEEE Trans. Automat. Contr., vol. AC-24, pp. 320321, 1978.
[6] Van Loan C. F. Computing Integrals Involving the Matrix Expo-
nential, IEEE Trans. Automat. Contr., vol. AC-24, pp. 395404,
1978.
Capitolul 3
Tehnici de procesare a
modelelor sistemice liniare
A = TAT
1
,
B = TB,
C = CT
1
,
D = D.
(3.3)
Modelele (S) si (
A = UAU
T
,
B = UB,
C = CU
T
,
D = D,
(3.4)
3.1. MODELE SISTEMICE LINIARE 69
sunt ortogonal echivalente si, n mod corespunzator, vom acorda o atent ie
speciala invariant ilor ortogonali ai lui (S).
In legatura cu aceste not iuni,
observam ca orice echivalent a ortogonala este o echivalent a, deci clasa
invariant ilor ortogonali este mai larga decat clasa invariant ilor (orice invari-
ant este invariant ortogonal dar reciproca este falsa!). De aceea, invariant ii
ortogonali au deseori proprietat i de robustet e si permit evaluari cantitative,
ceea ce le confera avantaje de calcul si interpretare sistemica importante.
Pentru concretizarea acestor idei n legatura cu not iunile fundamentale de
controlabilitate si observabilitate, cititorul poate consulta capitolul 5.
)
_
E x(t) = Ax(t) +Bu(t)
y(t) = Cx(t) +Du(t)
, (3.5)
unde n plus fat a de (S), aici apare si matricea nesingulara E 1
nn
.
Interesant este cazul n care E este aproape singulara astfel ncat (la
fel ca n cazul fascicolelor) formarea produselor E
1
A, E
1
B (respectiv
AE
1
, CE
1
) este nedorita.
In acest caz transformarile (3.3), (3.4) se
scriu
E = TES ,
A = TAS ,
B = TB,
C = CS ,
D = D,
(3.6)
n care T, S sunt matrice nesingulare, respectiv
E = UEV ,
A = UAV ,
B = UB,
C = CV ,
D = D,
(3.7)
n care U, V sunt matrice ortogonale.
Observam ca daca E = I, adica (S
) cu E aproape singu-
lara corespund sistemelor liniare cu constante de timp mici (sau dinamica
intern a parazita) si tehnicile de aproximare a comportarii acestui tip de sis-
teme pe baza unor modele de ordin redus se nscriu n clasa asa numitelor
metode de perturbat ii singulare.
E
E
E
T
c
u
u
1
u
2
y
1
y
2
y
+
+
(b)
S
1
S
2
E E E
' ' '
c
T
v
1
u
1
y
1
v
2
u
2
y
2
+
+
(c)
S
1
S
2
E
E
E
E
u
u
1
u
2
y
1
y
2
y
(d)
Figura 3.2: Conexiunile sistemice fundamentale: serie (a), paralel (b),
react ie (c) si produs direct (d).
_
_
x
1
x
2
_
=
_
A
1
0
0 A
2
_ _
x
1
x
2
_
+
_
B
1
B
2
_
u
y =
_
C
1
C
2
_
x
1
x
2
_
+ [D
1
+D
2
] u,
(3.16)
3.2. CONEXIUNI 73
unde matricele lui S = (A, B, C, D) au expresii evidente, n particular A
este bloc - diagonala. Matricea de transfer este
T(s) = T
1
(s) +T
2
(s), (3.17)
deci, n cazul SISO, cu notat ii evidente, avem
T(s)
def
=
N(s)
p(s)
=
N
1
(s)p
2
(s) +N
2
(s)p
1
(s)
p
1
(s)p
2
(s)
. (3.18)
Observam ca T(s) nu rezulta neaparat ireductibila chiar daca T
i
(s),
i = 1 : 2, au aceasta proprietate.
Conexiunea serie (cascada sau tandem)
Pentru a putea conectate n serie, sistemele trebuie sa satisfaca urmatoa-
rea condit ie structurala:
l
1
= m
2
. (3.19)
Relat iile de interconexiune (vezi gura 3.2 (a)) sunt
u
1
= u, u
2
= y
1
, y = y
2
. (3.20)
_
_
x
1
x
2
_
=
_
A
1
0
B
2
C
1
A
2
_ _
x
1
x
2
_
+
_
B
1
B
2
D
1
_
u
y =
_
D
2
C
1
C
2
_
x
1
x
2
_
+
_
D
2
D
1
u,
(3.21)
unde, din nou, matricele lui S au expresii evidente, n particular A este
bloc - inferior - triunghiulara. Matricea de transfer este
T(s) = T
2
(s)T
1
(s) , (3.22)
(n aceasta ordine a matricelor factor!).
Conexiunea n circuit nchis
(n bucla sau cu react ie)
Pentru a putea conectate n circuit nchis, sistemele trebuie sa satisfaca
urmatoarele condit ii structurale:
l
2
= m
1
, l
1
= m
2
, (3.23)
74 CAPITOLUL 3. MODELE SISTEMICE
precum si condit ia ,,de buna formulare a conexiunii,
det(I D
1
D
2
) ,= 0 . (3.24)
Aceasta condit ie, necesara pentru a putea exprima y n mod unic funct ie
de x
1
, x
2
precum si de intrarile externe v
1
, v
2
(vezi gura 3.2 (c)), este
generic satisfacuta n raport cu D
1
, D
2
si este satisfacuta n mod sigur daca
e D
1
= 0, e D
2
= 0, adica cel put in unul dintre sistemele conectate n
circuit nchis este strict propriu (pur dinamic).
Relat iile de interconexiune sunt
u
1
= v
1
+y
2
, u
2
= v
2
+y
1
. (3.25)
_
x
1
x
2
v
1
v
2
_
_
+
_
0 B
1
B
2
0
_ _
y
1
y
2
_
(3.26)
_
I D
1
D
2
I
_ _
y
1
y
2
_
=
_
C
1
0 [ D
1
0
0 C
2
[ 0 D
2
_
_
_
x
1
x
2
v
1
v
2
_
_
. (3.27)
Introducand matricele produsului direct S
d
= (A
d
, B
d
, C
d
, D
d
) al celor doua
sisteme, vezi g. 3.2 (d), unde
A
d
=
_
A
1
0
0 A
2
_
, B
d
=
_
B
1
0
0 B
2
_
,
C
d
=
_
C
1
0
0 C
2
_
, D
d
=
_
D
1
0
0 D
2
_
,
3.2. CONEXIUNI 75
precum si matricele de interconexiune
B
=
_
0 B
1
B
2
0
_
, D
=
_
0 D
1
D
2
0
_
ecuat iile (3.26) si (3.27) devin
x =
_
A
d
B
d
_
x
v
_
+B
y
(I D
)y =
_
C
d
D
d
_
x
v
_
,
unde, n virtutea condit iei de buna formulare, matricea I D
este in-
versabila. Prin urmare avem
_
_
x =
__
A
d
B
d
+ B
(I D
)
1
_
C
d
D
d
_
_
x
v
_
,
y = (I D
)
1
_
C
d
D
d
_
x
v
_
.
(3.28)
Matricele modelului de stare agregat S = (A, B, C, D) al conexiunii n
circuit nchis au expresiile
A = A
d
+B
(I D
)
1
C
d
, B = B
d
+B
(I D
)
1
D
d
,
C = (I D
)
1
C
d
, D = (I D
)
1
C
d
.
(3.29)
iar calculul se face n ordinea
_
C D
= (I D
)
1
_
C
d
D
d
,
_
A B
=
_
A
d
B
d
+B
_
C D
.
Matricea de transfer este
T(s) = (I T
(s))
1
T
d
(s) , (3.30)
unde
T
d
(s) =
_
T
1
(s) 0
0 T
2
(s)
_
, T
(s) =
_
0 T
1
(s)
T
2
(s) 0
_
. (3.31)
Relat iile de mai sus pentru construct ia modelelor de stare ale sistemelor
agregat evident iaza faptul can toate cazurile se face apel exclusiv la calcule
matriceale elementare precum si la manipularea unor structuri matriceale
organizate pe blocuri (ceea ce, de exemplu n MATLAB, este, de asemenea,
elementar).
In consecint a, scrierea algoritmilor corespunzatori este lasata
n sarcina cititorului (vezi exercit iile 3.1 si 3.2).
76 CAPITOLUL 3. MODELE SISTEMICE
3.3 Realizari
ij
(s)
p
ij
(s)
, N
ij
(s) = N
ij
(s) d
ij
p
ij
(s) . (3.34)
Altfel spus, daca notam d
ij
def
=
0
, atunci dispunand coecient ii a
0
= 1,
a
k
, k = 1 : n ai polinomului p
ij
si
k
, k = 0 : n ai polinomului N
ij
n
ordinea descrescatoare a puterilor
1 a
1
. . . a
n
0
1
. . .
n
si facand eliminare gaussiana pentru a anula
0
, obt inem coecient ii poli-
nomului N
ij
, adica
k
=
k
0
a
k
, k = 1 : n. (3.35)
Operat ia de mai sus se repeta pentru i = 1 : l, j = 1 : m.
(s)
strict proprie cu elementele
T
ij
(s) =
N
ij
(s)
p
ij
(s)
, (3.36)
4
Un polinom se numeste monic daca are coecientul termenului de grad maxim egal
cu 1.
3.3. REALIZ
ARI 77
adica sa construim S
(s) = C(sI A)
1
B. (3.37)
Pentru simplicarea notat iilor, mai departe eliminam indicele supe-
rior
si consideram succesiv cateva cazuri reprezentative de complexitate
crescanda. (Subliniem din nou ca, desi procedurile de realizare obt inute au
un caracter elementar si, ca atare, ar justica o tratare mai expeditiva, ele
sunt esent iale pentru aplicarea metodelor de calcul numeric n analiza si
sinteza sistemica).
A. Sisteme simple, cu o singura intrare
si o singura iesire (SISO)
_
A
c
=
_
_
a
1
a
n1
a
n
1 0 0
.
.
.
1 0
_
_
, B
c
=
_
_
1
0
.
.
.
0
_
_
,
C
c
=
_
1
. . .
n1
n
,
(3.40)
78 CAPITOLUL 3. MODELE SISTEMICE
sau, echivalent
(C
)
_
_
A
c
=
_
_
0 1
.
.
.
1
a
n
a
n1
a
1
_
_
, B
c
=
_
_
0
.
.
.
0
1
_
_
,
C
c
=
_
n
n1
1
.
(3.41)
2
0
. Forma standard observabila
(O)
_
_
A
o
=
_
_
a
1
1
.
.
.
.
.
.
a
n1
1
a
n
0 0
_
_
, B
o
=
_
1
.
.
.
n1
n
_
_
,
C
o
=
_
1 0 0
,
(3.42)
sau, echivalent
(O
)
_
_
A
o
=
_
_
0 0 a
n
1 a
n1
.
.
.
.
.
.
1 a
1
_
_
, B
o
=
_
n1
.
.
.
1
_
_
,
C
o
=
_
0 0 1
.
(3.43)
Formele (C) si (C
) (respectiv (O) si (O
) si (O
o
(respectiv A
o
si A
c
) sunt ntr-o forma superior (in-
ferior) Hessenberg particulara, numita forma superior (inferior) Frobenius.
Sugestiv, aceste matrice se mai numesc matrice companion ale polinomului
p(s), cu ai carui coecient i sunt formate.
Prin calcul direct se poate arata ca forma standard controlabila (C) se
bucura de urmatoarele proprietat i:
3.3. REALIZ
ARI 79
I. Are loc egalitatea
(sI A
c
)
1
B
c
=
L(s)
p(s)
, (3.45)
unde
L(s) =
_
_
s
n1
.
.
.
s
1
_
_
.
In consecint a
a) p(s) este polinomul caracteristic al lui A
c
.
b) (A
c
, B
c
, C
c
) e o realizare a lui T(s).
II. Matricea de controlabilitate
R
c
def
=
_
B
c
A
c
B
c
A
n1
c
B
c
_
C
c
C
c
A
c
.
.
.
C
c
A
n1
c
_
_
este nesingulara, daca si numai daca T(s) este ireductibila, adica poli-
noamele N(s) si p(s) sunt coprime.
Proprietat ile I II de mai sus justica denumirea de forma standard
controlabila atribuita realizarilor (C) (sau (C
_
T
1
(s)
.
.
.
T
l
(s)
_
_ 1
l
(s) , (3.47)
unde ecare T
i
(s) este o funct ie rat ionala strict proprie de forma
T
i
(s) =
N
i
(s)
p
i
(s)
, i = 1 : l (3.48)
cu
p
i
(s) = s
n(i)
+a
1
(i)s
n(i)1
+ +a
n(i)
(i),
N
i
(s) =
1
(i)s
n(i)1
+ +
n(i)
(i).
(3.49)
Exista doua posibilitat i de scriere a unei realizari, una naiva, care
conduce la o realizare de ordin
n
I
=
l
i=1
n(i) , (3.50)
alta ecienta, care conduce la o realizare de ordin n
II
egal cu gradul celui
mai mic multiplu comun (cmmmc) al numitorilor p
i
(s), i = 1 : l (evident,
n
II
n
I
).
B1. Realizarea naiva
Scriem relat ia y(s) = T(s)u(s) pe componente sub forma
y
i
(s) = T
i
(s)u(s), i = 1 : l (3.51)
si realizam ecare funct ie de transfer T
i
(s) printr-un sistemS
i
= (A
i
, B
i
, C
i
)
utilizand metodele expuse la punctul A, de exemplu putem considera S
i
=
3.3. REALIZ
ARI 81
(A
i
, B
i
, C
i
) n forma standard controlabila (C), i.e.
A
i
def
=
_
_
a
1
(i) a
n(i)1
(i) a
n(i)
(i)
1 0 0
.
.
.
.
.
.
.
.
.
0 1 0
_
_
, B
i
def
=
_
_
1
0
.
.
.
0
_
_
,
C
i
def
=
_
1
(i) . . .
n1
(i)
n
(i)
.
(3.52)
Apoi realizam conexiunea paralel la intrare (vezi gura 3.3 (a)), echi-
valenta cu (3.51) prin
_
_
A =
_
_
A
1
.
.
.
A
l
_
_ , B =
_
_
B
1
.
.
.
B
l
_
_ ,
C =
_
_
C
1
.
.
.
C
l
_
_ ,
(3.53)
blocurile nediagonale ale matricelor A si C ind nule.
S
1
S
l
E
E
E
E
u
u
1
u
l
y
1
y
l
.
.
.
(a)
S
1
S
m
E
E
c
T
E
u
1
u
m
y
1
y
m
y
+
+
.
.
.
(b)
Figura 3.3: Conexiunile paralel la intrare (a) si paralel la iesire (b).
Realizarea (3.53) se numeste cu iesiri decuplate (sau decuplata la iesire)
datorita formei bloc diagonale a perechii (C, A).
82 CAPITOLUL 3. MODELE SISTEMICE
B2. Realizarea ecienta
Aducand la acelasi numitor toate elementele lui T(s), scriem
T(s) =
_
_
T
1
(s)
.
.
.
T
l
(s)
_
_ =
_
_
N
1
(s)
.
.
.
N
l
(s)
_
_p
1
(s)
def
= N(s)p
1
(s) , (3.54)
unde
p(s) = s
n
+a
1
s
n1
+ +a
n
def
= cmmmc(p
1
(s), , p
l
(s)) , (3.55)
N
i
(s) =
1
(i)s
n1
+ +
n
(i) (3.56)
deci numaratorul N 1
l
[s] se scrie sub forma:
N(s) =
1
s
n1
+ +
n
(3.57)
unde vectorii
k
1
l
au componentele
k
(i), i = 1 : l, k = 1 : n.
Matricea de transfer factorizata T(s) = N(s)p
1
(s) se realizeaza direct
n forma standard controlabila (C), unde acum polinomul caracteristic al
matricei A
c
coincide cu p(s) iar C
c
cont ine, pe ecare coloana, coecient ii
k
ai lui N, adica C
c
1
ln
.
Observat ia 3.1 Realizarea obt inuta este controlabila. Daca factorizarea
Np
1
este coprima la dreapta, adica nu exista un polinom D (divizor) care
divide simultan p si ecare N
i
, atunci realizarea astfel obt inuta este si
observabila, deci de ordin minim.
C. Sisteme cu mai multe intrari
si o singura iesire (MISO)
ARI 83
C1. Realizarea naiva
Scriem relat ia y(s) = T(s)u(s) pe componente sub forma
y(s) =
m
i=1
T
i
(s)u
i
(s) (3.59)
si realizam ecare funct ie de transfer T
i
(s) printr-un model de stare S
i
=
(A
i
, B
i
, C
i
), utilizand metodele expuse la punctul A. Apoi realizam conexi-
unea paralel la iesire (vezi gura 3.3 (b)), echivalenta cu (3.59) prin
_
_
A =
_
_
A
1
.
.
.
A
m
_
_, B =
_
_
B
1
.
.
.
B
m
_
_,
C =
_
C
1
C
m
,
(3.60)
blocurile nediagonale ale matricelor A si B ind nule.
Realizarea (3.60) se numeste cu intrari decuplate (sau decuplata la in-
trare).
C2. Realizarea ecienta
Procedam ,,prin dualitate fat a de cazul B2. Aceastanseamna ca, aducand
la acelasi numitor toate elementele lui T(s), scriem
T(s) =
_
T
1
(s) T
m
(s)
=
= p
1
(s)
_
N
1
(s) N
m
(s)
= p
1
(s)N(s) , (3.61)
unde p(s)
def
= cmmmc(p
1
(s), , p
m
(s)), N
i
(s) au expresii similare cu (3.55)
si (3.56), deci numaratorul N 1
1m
[s] se scrie sub forma (3.57), unde
k
1
1m
au componentele
k
(i), i = 1 : m, k = 1 : n.
Matricea de transfer factorizata T(s) = p
1
(s)N(s) se realizeaza direct
n forma standard observabila (O), unde acum polinomul caracteristic al
matricei A
o
coincide cu p(s), iar B
o
cont ine, pe ecare linie, coecient ii lui
N, adica B
o
1
nm
.
Observat ia 3.2 Realizarea obt inuta este observabila. Daca factorizarea
p
1
N este coprima la stanga (i.e. polinoamele p(s) si ecare N
i
(s) nu au un
polinom divizor comun) atunci realizarea astfel obt inuta este si controlabila,
deci de ordin minim.
84 CAPITOLUL 3. MODELE SISTEMICE
D. Sisteme cu mai multe intrari
si mai multe iesiri (MIMO)
Se da matricea de transfer cu l linii si m coloane T(s) = [ T
ij
(s) ].
D1. Realizarea naiva
Aceasta realizare se bazeaza pe scrierea
y
i
(s) =
m
j=1
T
ij
(s)u
j
(s), i = 1 : l (3.62)
si este de ordin
n =
l
i=1
m
j=1
n(i, j) (3.63)
unde n(i, j) e gradul numitorului lui T
ij
(s).
D2. Realizarea ecienta
_
p
1
(s)
.
.
.
p
m
(s)
_
_
1
=
def
= N(s)p
1
(s) , (3.65)
unde
p
j
(s) = s
n(j)
+a
1
(j)n
(j)1
+. . . +a
n(j)
(j), a
k
(j) 1,
N
j
(s) =
1
(j)s
(j)1
+. . . +
n(j)
(j),
k
(j) 1
l
.
(3.66)
3.3. REALIZ
ARI 85
j=1
N
j
(s)p
1
j
(s)u
j
(s) , (3.67)
iar ecare coloana N
j
(s)p
1
j
(s) se realizeaza n forma standard controlabila
(A
c
(j), B
c
(j), C
c
(j)), ca n cazul B2, obt inem realizarea standard controla-
bila (decuplata la intrare)
_
_
A
c
=
_
_
A
c
(1)
.
.
.
A
c
(m)
_
_, B
c
=
_
_
B
c
(1)
.
.
.
B
c
(m)
_
_,
C
c
=
_
C
c
(1) C
c
(m)
.
(3.68)
Ordinul n = n
c
este suma gradelor n(j) ale numitorilor comuni pe
coloana. (Se poate arata ca aceste grade coincid cu indicii de controlabili-
tate ai perechii (A
c
, B
c
)).
2
0
. Partit ionand T(s) pe linii si procedand prin dualitate fat a de punctul
precedent, obt inem realizarea standard observabila (decuplata la iesire)
_
_
A
o
=
_
_
A
o
(1)
.
.
.
A
o
(l)
_
_, B
o
=
_
_
B
o
(1)
.
.
.
B
o
(l)
_
_
C
o
=
_
_
C
o
(1)
.
.
.
C
o
(l)
_
_.
(3.69)
Ordinul n = n
o
al realizarii (3.69) este suma gradelor numitorilor co-
muni pe linie. (Se poate arata ca aceste grade coincid cu indicii de obser-
vabilitate ai perechii (C
o
, A
o
)).
Observat ia 3.3
In general, niciuna dintre cele doua realizari (3.68) si
(3.69) nu este minimala caci, n general, perechea (C
c
, A
c
) nu rezulta ob-
servabila iar perechea (A
o
, B
o
) nu rezulta controlabila.
i=1
(s
i
) , (3.74)
unde
i
sunt polii lui T(s), adica valorile proprii ale matricei A. Analog,
p
0
(s) este polinomul caracteristic al matricei A
0
a sistemului n circuit nchis
obt inut punand u = u
0
y, adica u = u
0
Cx. Deci A
0
= ABC.
Prin urmare, pentru a calcula funct ia de transfer T(s) se procedeaza
astfel:
1. Se calculeaza valorile proprii
i
ale matricei A utilizand
algoritmul QR.
2. Se formeaza A
0
= ABC.
3. Se calculeaza valorile proprii
0i
ale matricei A
0
utilizand
algoritmul QR.
4. Se calculeaza (coecient ii lui) p(s) =
n
i=1
(s
i
).
5. Se calculeaza p
0
(s) =
n
i=1
(s
0i
).
6. Se calculeaza N(s) = p
0
(s) p(s).
Daca sistemul S = (A, B, C) nu este controlabil si observabil (ceea ce
este probabil sa se ntample daca provine dintr-un sistem multiplu) atunci
p si N, adica p si p
0
au un cel mai mare divizor comun (cmMdc) ,= 1, care
coincide cu produsul
(s
fi
), unde
fi
(A) (A
0
) sunt polii csi
sistemului (A, B, C). Acest divizor poate eliminat prin inspect ie nainte
de pasul 4, dar decizia poate afectata de erorile de rotunjire inerente.
Pentru o funct ie de transfer strict proprie denim, n afara de reprezen-
tarea rat ionala
T(s) =
N(s)
p(s)
, (3.75)
88 CAPITOLUL 3. MODELE SISTEMICE
ca raport de doua polinoame, nca doua reprezentari:
(T
1
) T(s) =
nk
j=1
(s
j
)
n
i=1
(s
i
)
(3.76)
si
(T
2
) T(s) =
n
i=1
r
i
s
i
, (3.77)
unde
i
sunt polii,
j
sunt zerourile, este amplicarea la innit, numarul
ntreg k 1 este excesul poli - zerouri sau ,,tipul lui T(s), iar r
i
sunt
reziduurile lui T(s) n polii
i
(a doua reprezentare exista ca atare numai
daca tot i polii lui T(s) sunt simpli.)
Relativ la reprezentarea (T
1
) discutam n primul rand:
Conversia (S) (T
1
)
Se da modelul de stare S = (A, B, C). Pentru a calcula T(s) sub forma
(T
1
) se procedeaza astfel:
1. Se calculeaza valorile proprii
i
ale matricei A.
2. Se calculeaza zerourile
j
ale sistemului (A, B, C).
3. Se alege
0
1, astfel ncat
0
,=
i
,
j
, (i, j) si se
calculeaza
=
C(
0
I A)
1
B
nk
j=1
(
0
j
)
n
i=1
(
0
i
)
.
Observat ia 3.4 La pasul 2 se pot utiliza nca cel put in doua metode.
a)Metoda generala t ine seama de faptul ca zerourile sistemului (A, B, C)
(considerat controlabil si observabil) coincid cu valorile proprii generalizate
nite ale fascicolului
_
I
n
0
0 0
_
_
A B
C 0
_
, (3.78)
deci se calculeaza utilizand algoritmul QZ, vezi [ 3 ].
b) Metoda specica n cazul l = 1, m = 1 considerat simuleaza,
n limbajul descrierii de stare S = (A, B, C), procedura de inversare a
sistemului propriu avand funct ia de transfer s
k
T(s), unde (A, B, C) este
3.4. CONVERSII DE MODELE 89
o realizare a lui T(s). Fie k ordinul relativ al lui (A, B, C), adica primul
ntreg 1 astfel ncat
def
= CA
k1
B ,= 0. Din ecuat iile de stare
_
x = Ax +Bu
y = Cx,
(3.79)
prin derivarea succesiva a iesirii y t inand seama de faptul ca CA
i
B = 0,
i = 0 : k 2, obt inem
y = CAx
.
.
.
y
(k1)
= CA
k1
x
y
(k)
= CA
k
x +CA
k1
Bu
def
= CA
k
x +u,
(3.80)
unde, prin ipoteza, ,= 0.
In consecint a, sistemul
_
x = Ax +Bu
y
(k)
= CA
k
x +u
(3.81)
este inversabil iar inversul sau are ecuat iile
_
x = (A
1
BCA
k
)x +
1
By
(k)
u =
1
CA
k
x +
1
y
(k)
.
(3.82)
Mai mult, matricea A
1
BCA
k
are exact k valori proprii nule (core-
spunzatoare celor k valori proprii generalizate innite ale fascicolului (3.78))
precum si n k valori proprii egale cu zerourile lui (A, B, C). Prin urmare
ordinul relativ k coincide cu excesul poli - zerouri iar = CA
k1
B este am-
plicarea la innit, adica s
k
T(s) , cand s .
In denitiv, zerourile
(nite)
j
, j = 1 : nk ale sistemului (A, B, C) coincid cu cele nk valori
proprii nenule ale matricei A
1
BCA
k
.
(
i
)
, (3.83)
evaluarile polinoamelor realizandu-se cu algoritmul (schema) lui Horner
(vezi sect iunea urmatoare).
Alternativ, se construieste o realizare de stare (A, B, C) a lui T(s) si
se calculeaza valorile proprii
i
(presupuse distincte) precum si vectorii
proprii x
i
ai lui A. Considerand matricea X =
_
x
1
. . . x
n
si efectuand
transformarea
X
1
AX =
_
1
.
.
.
n
_
_, X
1
B =
_
1
.
.
.
n
_
_,
CX =
_
1
n
,
(3.84)
avem
r
i
=
i
i
, i = 1 : n. (3.85)
3.5 Algoritmi de calcul polinomial
In sect iunile precedente ale capitolului de fat a s-a evident iat faptul ca proce-
sarea modelelor sistemice de tip matrice de transfer se reduce, n ultima
instant a, la efectuarea unui set de operat ii cu polinoame. De aceea reunim
aici procedurile numerice de baza pentru rezolvarea problemelor de calcul
polinomial.
3.5. ALGORITMI DE CALCUL POLINOMIAL 91
Notam un polinom a(s) de grad n prin
a(s) = a
0
s
n
+a
1
s
n1
+ +a
n
, a
0
,= 0 (3.86)
si i asociem vectorul
a =
_
_
a
0
a
1
.
.
.
a
n
_
_
(3.87)
de lungime n + 1.
5
Se stie ca polinoamele de grad m, cu operat iile de adunare si nmult ire
cu scalari denesc un spat iu vectorial de dimensiune m+1.
In acest spat iu,
cu m x
6
si n m, polinomul a(s) se reprezinta prin vectorul
T
mn
a =
_
_
0
.
.
.
0
a
0
.
.
.
a
n
_
_
1
m+1
, (3.88)
unde T este operatorul de ,,deplasare (shift) cu un pas n jos urmat de
adaugarea unui zero pe prima pozit ie denit prin
(Ta)
i
= a
i1
, i 1, (Ta)
0
= 0. (3.89)
Ret inand acest fapt simplu, n continuare trecemn revista modalitat ile
de efectuare a operat iilor principale cu polinoame.
1
0
. Suma c(s)
def
= a(s)+b(s) a doua polinoame a(s), b(s) de grade n, m
cu n m
7
este de grad m, deci
c = T
mn
a +b. (3.90)
Rezulta urmatorul algoritm.
5
Numerotarea elementelor unui vector (tablou unidimensional) se face n mod diferit
n diverse limbaje formale de programare, respectiv ncepand cu 0, ca n limbajul C,
sau cu 1 ca n MATLAB. Trecerea la cea de a doua varianta reprezinta un exercit iu util
pentru cititor.
6
De ecare data cand efectuam o operat ie alegem m minim necesar.
7
Altfel facem suma b(s) +a(s).
92 CAPITOLUL 3. MODELE SISTEMICE
Algoritmul 3.1 (Se dau vectorii a 1
n+1
si b 1
m+1
, cu
m n, ai coecient ilor polinoamelor a(s) si b(s). Algoritmul
calculeaza vectorul c 1
m+1
al coecient ilor polinomului suma
c(s) = a(s) +b(s).)
1. Pentru i = 0 : mn 1
1. c
i
= b
i
2. Pentru i = mn : m
1. c
i
= a
i(mn)
+b
i
2
0
. Produsul p(s)
def
= a(s)b(s) a doua polinoame a(s), b(s) de grade
n m
8
este de grad m+n. Avem
a(s)b(s) =
_
n
i=0
a
i
s
ni
_
_
_
m
j=0
b
j
s
mj
_
_
=
m+n
k=0
p
k
s
n+mk
, (3.91)
unde
p
k
=
i+j=k
a
i
b
j
=
_
_
_
k
j=0
a
kj
b
j
k
i=0
a
i
b
ki
. (3.92)
(Pentru comoditatea scrierii am presupus ca a
i
= 0 pentru i > n si b
j
= 0
pentru j > m.
In general, operat ia (3.92) reprezinta convolut ia discreta a
sirurilor (a
i
)
i0
, (b
j
)
j0
).
Din (3.92) se constata usor ca vectorul p 1
m+n+1
, al coecient ilor
polinomului produs, se poate exprima ntr-o forma matriceala n modul
urmator
_
_
p
0
p
1
.
.
.
p
m
.
.
.
p
n
p
n+1
.
.
.
p
n+m
_
_
=
_
_
a
0
0 0
a
1
a
0
0
.
.
.
.
.
.
.
.
.
.
.
.
a
m
a
m1
a
0
.
.
.
.
.
.
.
.
.
a
n
a
n1
a
nm
0 a
n
a
nm+1
.
.
.
.
.
.
.
.
.
.
.
.
0 0 a
n
_
_
_
_
b
0
b
1
.
.
.
b
m
_
_
, (3.93)
8
Altfel facem produsul b(s)a(s).
3.5. ALGORITMI DE CALCUL POLINOMIAL 93
adica, pentru a putea descrie produsul unui polinom a(s) de grad n cu un
polinom b(s) de grad m, i asociem lui a(s) matricea cu m+ 1 coloane
A =
_
_
a
0
.
.
.
.
.
.
a
n
a
0
.
.
.
.
.
.
a
n
_
_
1
(m+n+1)(m+1)
, (3.94)
si scriem
p = Ab. (3.95)
_
b
o
.
.
.
b
mn
b
mn+1
.
.
.
b
n
.
.
.
b
m
_
_
=
_
_
a
0
.
.
.
.
.
.
a
mn
a
0
a
mn+1
a
1
.
.
.
.
.
.
a
n
a
2nm
.
.
.
.
.
.
a
n
_
_
_
_
q
0
.
.
.
q
mn
_
_ +
_
_
0
.
.
.
0
r
0
.
.
.
r
2nm1
.
.
.
r
n1
_
_
(3.97)
deci, cu partit ii evidente, avem
b
1
= A
1
q (3.98)
b
2
= A
2
q +r (3.99)
adica
r = b
2
A
2
q. (3.100)
Cu alte cuvinte, vectorul q al coecient ilor polinomului cat se calculeaza
rezolvand sistemul inferior triunghiular nesingular format din primele m
n + 1 ecuat ii
A
1
q = b
1
, (a
0
,= 0), (3.101)
dupa care r se calculeaza cu (3.100) ca reziduu al sistemului A
2
q = b
2
,
format cu celelalte n ecuat ii.
4
0
. Reprezentarea prin fract ie continua nita a unei funt ii rat io-
nale este o aplicat ie directa a algoritmului de mpart ire ntreaga. Fie
T(s) =
N(s)
p(s)
(3.102)
strict proprie
9
si e k
1
primul coecient nenul al lui N astfel ncat N(s) =
k
1
p
1
(s) unde p
1
(s) e monic si de grad strict mai mic decat p(s). Avem
T(s) =
k
1
p
1
(s)
p(s)
=
k
1
p(s)
p
1
(s)
=
k
1
q
1
(s) +
N
1
(s)
p
1
(s)
, (3.103)
9
Altfel extragem partea ntreaga
0
si punem q
0
(s) =
0
.
3.5. ALGORITMI DE CALCUL POLINOMIAL 95
unde q
1
e catul iar N
1
e restul mpart irii lui p la p
1
, deci
T
1
(s)
def
=
N
1
(s)
p
1
(s)
e strict proprie. Putem scrie
T(s) =
k
1
q
1
(s) +T
1
(s)
=
k
1
1
q
1
(s)
1 +T
1
(s)
1
q
1
(s)
. (3.104)
Daca privim funct ia rat ionala T(s) ca funct ie de transfer a unui sis-
tem simplu atunci putem asocia relat iei (3.104) schema bloc din gura 3.5.
Procedura de mai sus se repeta pentru T
1
(s).
In general,
1
q
1
(s)
T
1
(s)
k
1
E E E E
'
T
T(s)
u y
i=1
(s
i
), (3.107)
i.e. prin acumularea produselor dupa schema:
10
Altfel facem a(s) b(s).
3.5. ALGORITMI DE CALCUL POLINOMIAL 97
1. p(s) = 1
2. Pentru i = 1 : n
1. p(s) p(s)(s
i
)
unde la nceputul pasului curent 2.1 p(s)
def
= p
i1
(s) este un polinom monic
de grad i 1, iar dupa execut ia lui un polinom monic p(s)
def
= p
i
(s) de grad
i. Deci
p
i
(s)
def
= s
i
+a
1
s
i1
+ +a
i
=
= (s
i1
+a
1
s
i2
+ +a
i1
)(s
i
) =
= s
i
+ (a
1
i
)s
i1
+ (a
2
i
a
1
)s
i2
+ +a
i
i
a
i1
.
Obt inem urmatorul algoritm.
Algoritmul 3.3 (Se dau radacinile
i
(, i = 1 : n ale unui
polinom. Algoritmul calculeaza coecient ii a
0
= 1, a
i
, i = 1 : n
ai acestuia).
1. a
0
= 1
2. Pentru k = 1 : n
1. a
k
= 0
3. Pentru i = 1 : n
1. Pentru k = i : 1 : 1
1. a
k
a
k
i
a
k1
9
0
. Evaluarea valorii unui polinomp(s) sau/si a derivatei sale pentru
o valoare s = ( precizata se face cu algoritmul lui Horner. Reamintim
acest algoritm, cu precizarea ca, n contextul scalar discutat, el este optimal
din punctul de vedere al ecient ei.
Algoritmul 3.4 (Horner) (Se dau coecient ii a
i
, i = 0 : n
ai unui polinom p(s), n ordinea descrescatoare a puterilor nede-
terminatei, si numarul (. Algoritmul calculeaza valoarea
= p() a polinomului si valoarea = p
() a derivatei aces-
tuia).
1. = a
0
2. = na
0
3. Pentru i = 1 : n 1
98 CAPITOLUL 3. MODELE SISTEMICE
1. +a
i
2. + (n i)a
i
4. +a
n
Algoritmul Horner generalizat care rezolva problema calculului coeci-
ent ilor polinomului p(s +) face obiectul exercit iului 3.15.
Observat ia 3.7 Asa cum s-a mai precizat n capitolul 2, algoritmul Horner
este util si pentru evaluarea polinoamelor matriceale.
Intr-un astfel de con-
text algoritmul nu mai este nsa optimal din punctul de vedere al numarului
de operat ii aritmetice scalare (vezi [ VI ] si exercit iul 3.16).
Programe MATLAB disponibile
Pentru realizarea unor conexiuni specice sunt disponibile funct iile ap-
pend (care efectueaza produsul direct), parallel, series, feedback si
cloop (sistem cu react ie unitara). Conexiunile de tip general se realizeaza
apeland bklbuild si conect. Pentru construct ia realizarii de stare n forma
standard controlabila a unei matrice de transfer cu o singura intrare este
disponibila funct ia tf2ss (transfer function t(w)o(!) state space). Con-
versia inversa se efectueaza cu funct ia ss2tf. Numele celorlalte funct ii de
conversie se formeaza similar, t inandu-se seama ca pentru codicarea formei
(T
1
) este folosita sigla zp (zerouri poli). Calculul descompunerii
in
fract ii simple (forma (T
2
)) se poate face cu funct ia residue. Transformarile
nesingulare de stare (3.3) se pot calcula cu ajutorul funct iei ss2ss.
Pentru implementarea algoritmilor de calcul polinomial din 3.5, men-
t ionamn primul rand convent ia MATLAB de reprezentare a polinoamelor
prin vectorii linie ai coecient ilor n ordinea descrescatoare a puterilor nede-
terminatei (primul element are indicele 1). Zerourile (radacinile) unui poli-
nom se reprezinta prin vectori coloana. Adunarea polinoamelor se face prin
adunarea vectorilor coecient ilor dupa egalarea dimensiunilor prin com-
pletarea lor corespunzatoare cu zerouri. Pentru nmult ire se utilizeaza
funct ia conv iar pentru mpart ire ntreaga deconv. Funct ia roots cal-
culeaza radacinile aplicand algoritmul QR matricei companion iar funct ia
poly calculeaza coecient ii din radacini (pentru argument matriceal cal-
culeaza polinomul caracteristic).
In sfarsit, calculul valorii unui polinom,
inclusiv pentru argument matriceal, se efectueaza cu funct ia polyval.
3.5. ALGORITMI DE CALCUL POLINOMIAL 99
Exercit ii
E 3.1 Se dau doua sisteme S
i
= (A
i
, B
i
, C
i
, D
i
), i = 1, 2. Sa se scrie
algoritmii de construct ie a matricelor sistemelor S = (A, B, C, D), rezultate
prin interconectarea paralel, serie si n circuit nchis a sistemelor date.
Indicat ie. Se utilizeaza relat iile (3.16), (3.21) si (3.28).
E 3.2 Se dau trei sisteme S
i
= (A
i
, B
i
, C
i
, D
i
), i = 1 : 3. Sa se scrie
algoritmii de construct ie a matricelor sistemelor S = (A, B, C, D), rezultate
prin interconectarea sistemelor date conform schemelor din gura 3.6.
S
1
S
2
S
3
E E E E
E E E E
c
T
u
1
u
2
y
1
y
2
(a)
S
1
S
2
S
3
E E E
E E E
'
'
T
c
u
1
u
2
y
1
y
2
(b)
S
1
S
2
S
3
E E E
E E E
' '
' '
T
c
T
c
+
+
u
1
u
2
u
3
u
4
y
1
y
2
(c)
Figura 3.6: Conexiuni pentru exercit iul 3.2.
Cum procedat i daca sistemele S
i
, i = 1 : 3 sunt date prin reprezentarile
lor de transfer ?
E 3.3 Se da sistemul S = (A, B, C, D) ale carui matrice au structura
A =
_
A
1
0
A
21
A
2
_
, B =
_
B
1
G
2
_
,
C =
_
H
1
C
2
, D =
_
D
.
Sa se scrie o procedura de reprezentare a lui S sub forma unei conexiuni
a) paralel
100 CAPITOLUL 3. MODELE SISTEMICE
b) serie
a doua sisteme S
1
, S
2
, convenabil denite.
Indicat ie. a) Cu notat ia (3.13), considerat i transformarea x
2
= x
2
+V x
1
si determinat i matricea V astfel ncat
A
21
= 0.
In ce condit ii acest lucru
este posibil?
b) Cu referire la (3.21), considerat i factorizarea
_
A
21
G
2
H
1
D
_
=
_
B
2
D
2
_
_
C
1
D
1
.
Pentru calculul factorizarii utilizat i DVS. Prin urmare numarul minim al
terminalelor comune l
1
= m
2
coincide cu rangul matricei din membrul
stang.
E 3.4 Se da o matrice de transfer T(s), nu neaparat strict proprie, ale carei
coloane (linii) sunt aduse la acelasi numitor comun. Sa se scrie un program
MATLAB de construct ie a unei realizari de stare S = (A, B, C, D) a lui
T(s) utilizand structura (3.68) (respectiv (3.69)).
E 3.5 Se da o matrice de transfer T(s), nu neaparat strict proprie, sub
forma T(s) = N(s)/p(s), unde p(s) este un polinom de grad n iar N(s)
1
lm
[s]. Scriet i prin inspect ie doua realizari ale lui T(s). Precizat i ce
relat ie exista ntre ordinul n al acestor realizari si ordinele n
I
, n
II
obt inute
n sect iunea 3.3D.
Indicat ie. Realizarile cerute se obt in generalizand convenabil formele
standard (C) si (O).
E 3.6 Se da un sistem S = (A, B, C, D) precum si doi ntregi i 1 : l,
j 1 : m. Sa se scrie algoritmii care calculeaza funct ia de transfer T
ij
n
formele (T), (T
1
) si (T
2
).
Indicat ie. Vezi procedurile de conversie (S) (T), (S) (T
1
) si
(S) (T
2
) din 3.4.
E 3.7 Se da o funct ie de transfer T(s), nu neaparat strict proprie. Sa se
scrie si sa se discute comparativ cat iva algoritmi de conversie (T) (T
1
)
si (T) (T
2
).
E 3.8 Analizat i posibilitat ile de construct ie a unei realizari de stare a unei
funct ii de transfer T(s) date n forma (T
1
), fara a construi, n prealabil,
reprezentarea rat ionala a lui T(s).
E 3.9 Sa se scrie, la nivel de operat ii scalare, algoritmul de mpart ire
ntreaga a doua polinoame.
3.5. ALGORITMI DE CALCUL POLINOMIAL 101
E 3.10 Utiliand algoritmul lui Euclid de calcul al cmMdc a doua poli-
noame, scriet i o procedura de calcul a cmMdc a l polinoame.
Indicat ie. Operat ia p
1
p
2
= cmMdc(p
1
, p
2
) este asociativa.
E 3.11 Utiliand algoritmii stabilit i n exercit iile precedente scriet i o pro-
cedur a de calcul a cmmmc a l polinoame p
i
(s), l 2.
E 3.12 Se dau l funct ii rat ionale, ecare denita ca raport de doua poli-
noame. Sa se scrie algoritmul de aducere a celor l funct ii la acelasi numitor
comun
11
.
E 3.13 Sa se scrie algoritmul de adunare a doua sau mai multe funct ii
(matrice) rat ionale
12
.
E 3.14 Sa se scrie algoritmul de nmult ire a doua sau mai multe funct ii
(matrice) rat ionale
13
.
E 3.15 Sa se scrie algoritmul (lui Horner generalizat) de calcul al coeci-
ent ilor polinomului p(s +), unde p(s) este dat prin vectorul coecient ilor
iar este un scalar dat, utilizand un volum minim de memorie. Elaborat i
o procedura de aplicare a algoritmului cu hartia si creionul.
Indicat ie. Toate calculele se pot desfasura n locat iile de memorie aso-
ciate vectorului coecient ilor polinomului init ial.
E 3.16 Se dau un polinom p(s) de grad m si o matrice A 1
nn
. Sa se
scrie un algoritm de calcul al matricei B = p(A). Cautat i un exemplu care
arata ca n cazul matriceal schema lui Horner nu este optimala din punctul
de vedere al numarului de operat ii.
E 3.17 Sa se studieze problema inversarii unei matrice de transfer (patrate)
T(s), precizand condit iile n care inversa este tot o matrice de transfer.
Formulat i aceeasi problema relativ la o realizare S = (A, B, C, D) a lui
T(s) si comentat i.
E 3.18 Ce putet i arma relativ la problema anterioara n cazul l ,= m ?
11
Vezi procedurile de realizare eciente.
12
Vezi conexiunea paralel.
13
Vezi conexiunea serie.
102 CAPITOLUL 3. MODELE SISTEMICE
Bibliograe
[ 1 ] Ionescu V. Teoria Sistemelor. Sisteme Liniare. EDP, Bu-
curesti 1985.
[ 2 ] Varga A., Sima V. Numerically Stable Algorithm for Transfer
Function Matrix Evaluation, Int J. Control, Vol. 33, pp. 1123
1133, 1981.
[ 3 ] Emami A., Naeini A., Van Dooren P. Computation of Zeros
of Linear Multivariable Systems, Automatica, Vol. 4, pp. 415 430,
1982.
[ 4 ] Barnett S. Matrices, Polynomials and Linear Time - Invariant
Systems, IEEE Trans. AC-18, No. 1, pp. 1 10, 1973.
Capitolul 4
Calculul raspunsului n
timp al sistemelor liniare
Analiza comportarii sistemelor dinamice include, n mod necesar, deter-
minarea evolut iei temporale a iesirilor (si, eventual, a starii) la diverse
tipuri de intrari externe.
In faza de concept ie a unui sistem, astfel de de-
terminari nu pot realizate decat ntr-un mediu de simulare n care testele
se fac sau pe modele la scara sau prin rezolvarea ecuat iilor ce descriu sis-
temul respectiv. Un mediu de simulare pentru sisteme cu timp continuu
ce foloseste tehnica numerica de calcul presupune, n mod obligatoriu, o
discretizare a timpului si calculul raspunsului n momentele de timp discret
corespunzatoare.
In acest scop se utilizeaza o procedura de discretizare
adecvata a carei alegere poate inuent a n mod determinant precizia rezul-
tatelor.
4.1 Raspunsul liber al sistemelor liniare
Problema determinarii raspunsului liber (la intrare nula) al unui sistem
liniar S = (A, B, C, D) consta n calculul funct iei de iesire y(t) denita prin
_
x(t) = Ax(t), x(0) = x
y(t) = Cx(t),
(4.1)
pe un interval xat [ 0, t
f
].
Solut ia ecuat iei diferent iale omogene (4.1) este
x(t) = e
tA
x(0), (4.2)
103
104 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
unde, prin denit ie, (t) = e
tA
este matricea de tranzit ie a sistemului
considerat. Prin urmare, t inand seama de ecuat ia iesirii, raspunsul liber
are expresia simpla
y(t) = Ce
tA
x(0).
Pentru a evalua numeric n mod ecient valorile y(t), divizam intervalul
[ 0, t
f
] ntr-un numar N de subintervale egale, i.e. consideram t
f
= Nh,
unde h este pasul de simulare, utilizat pentru calculul valorilor dorite y(kh),
k = 0 : N 1, ale raspunsului, iar N este numarul de pasi necesar pentru
acoperirea intervalului prescris. Scriind relat ia (4.2) la doua momente de
timp discret t = kh si t = (k + 1)h, obt inem evident
_
x((k + 1)h) = e
hA
x(kh)
y(kh) = Cx(kh) ,
(4.3)
adica y(kh) rezulta direct n funct ie de x(kh) care se determina recurent
pentru k = 0 : N1, t inand seama ca stare init iala x(0) = x este cunoscuta.
Prin urmare, totul se reduce la calculul lui F = e
hA
, utilizand, de exem-
plu, aproximat ia Pade. De fapt, sistemul (4.3) constituie reprezentarea
discretizata exacta cu element de extrapolare de ordinul 0 a sistemului
(4.1) (vezi 4.3).
Observat ia 4.1 Din acest punct de vedere, daca pasul de simulare h nu
este impus, atunci el se poate alege egal cu pasul de discretizare, utilizand
condit ia cunoscuta h|A| <
1
2
. Pe de alta parte, daca t
f
nu este nici el pre-
cizat dar se urmareste obt inerea regimului tranzitoriu esent ial, atunci
n ipoteza ca matricea A este stabila cu valorile proprii satisfacand condit ia
Re (A) < , unde > 0 putem evalua constanta de timp dominanta
prin
T =
1
iar timpul de raspuns (pentru banda de 5% din jurul regimului stat ionar
constant) prin
t
f
= (4 5) T =
4 5
.
asigura dezideratul propus. (
4.2. R
ASPUNSUL LA INTR
f
], ulterior lui t
f
.
4.2 Raspunsul la intrari liniar generate
Problema determinarii raspunsului unui sistem liniar S = (A, B, C, D)
consta n calculul funct iei de iesire y(t), denita prin
(S)
_
x(t) = Ax(t) +Bu(t), x(0) = x
y(t) = Cx(t) +Du(t),
(4.4)
pe un interval xat [ 0, t
f
], pe care funct ia de intrare u(t) se considera
cunoscuta.
Solut ia ecuat iei diferent iale (4.4) este
x(t) = e
tA
x(0) +
_
t
0
e
(t)A
Bu() d. (4.5)
u
0
, (4.7)
deci raspunsul poate calculat (mai put in termenul impulsiv Du
0
(t))
utilizand algoritmul 4.1 cu datele A, C si x = x(0) x(0)+Bu
0
, unde Bu
0
106 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
E
Tu(t)
t
0
'
u
0
E
TT(t)
t
0
'
Du
0
CB
a) b)
&
Figura 4.1: Funct ie de intrare tip impuls (a) si funct ia pondere a unui
sistem liniar (b).
este saltul traiectoriei de stare (4.6) datorat impulsului aplicat la intrare n
momentul t = 0.
Totodata, din (4.7) rezulta ca matricea pondere (v. g. 4.1 b))
T(t)
def
= Ce
tA
B1(t) +D(t), (4.8)
poate calculata pe coloane determinand succesiv (prin metoda indicata
mai sus) raspunsurile sistemului n stare init iala nula x(0) = 0 la impulsurile
unitate u
0
= e
i
1
m
, i = 1 : m. Odata T(t) cunoscut, raspunsul la
o intrare u(t) oarecare, e.g. continua pe port iuni, poate , n principiu,
obt inut utilizand relat ia
y(t) = Ce
tA
x(0) +
_
t
0
T(t )u() d. (4.9)
Deoarece nu exista metode generale de reprezentare a unei funct ii de in-
trare u(t) ,,arbitrare, iar evaluarea numerica a integralei din (4.9) este di-
cila
1
, n cele ce urmeaza vom considera situat ia (particulara, dar frecvent
ntalnita n aplicat ii) n care u(t) este liniar generata, adica poate mode-
lata ca iesire a unui sistem liniar liber (S
F
) de forma
(S
F
)
_
x
F
(t) = A
F
x
F
(t), x
F
(0) = x
F
u(t) = C
F
x
F
(t),
(4.10)
unde A
F
, C
F
sunt matrice date, iar starea init iala x
F
1
n
F
este un vector
arbitrar, dar xat. (Altfel spus, precizand x
F
xam implicit intrarea n
1
Cateva metode de reprezentare aproximativa a unor funct ii de intrare de forma
generala, precum si metodele corespunzatoare de calcul al raspunsului, sunt prezentate
ntr-o alta sect iune a acestui capitol.
4.2. R
ASPUNSUL LA INTR
_
_
x(t)
x
F
(t)
_
=
_
A BC
F
0 A
F
_ _
x(t)
x
F
(t)
_
,
_
x(0)
x
F
(0)
_
=
_
x
x
F
_
y(t) =
_
C DC
F
_
x(t)
x
F
(t)
_
,
(4.11)
i.e. calculul raspunsului sistemului (S) la intrarea liniar generata u(t) se
reduce la calculul raspunsului liber al sistemului (S
0
), prin metoda (exacta)
expusa n paragraful anterior.
Avand n vedere ca aplicand transformarea Laplace ecuat iilor (4.10) ale
sistemului (S
F
) obt inem
u(s) = C
F
(sI A
F
)
1
x
F
, (4.12)
ret eta generala de construct ie a sistemului generator (S
F
) consta n re-
alizarea transformatei u(s), interpretata ca funct ie de transfer a unui sis-
tem SIMO, sub forma unui triplet (A
F
, b
F
, C
F
) cu o singura intrare, unde
vectorul b
F
= x
F
este stare init iala a lui (S
F
). De aici rezulta ca funct ia de
intrare u(t) este liniar generata daca si numai daca transformata sa Laplace
este o matrice rat ionala strict proprie.
.
3. Se aplica algoritmul 4.1 de calcul al raspunsului liber cu
datele de intrare A, C si x(0) = x.
108 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
4. x = x(1 : n).
Pentru exemplicare, vom considera cateva cazuri particulare impor-
tante.
A. Intrari polinomiale
Intrarile polinomiale sunt de forma
u(t) =
p
k=1
k
t
k1
, t 0 , (4.13)
unde coecient ii
k
1
m
sunt vectori dat i. Notand u
k
def
=
k
(k 1)! avem
u(t) =
p
k=1
u
k
t
k1
(k 1)!
, t 0 , (4.14)
iar transformata Laplace corespunzatoare este
u(s) =
p
k=1
u
k
s
k
=
u
1
s
p1
+ +u
p
s
p
. (4.15)
Deci, o realizare de stare a lui (S
F
), n forma standard controlabila, (vezi
capitolul 3) este
A
F
=
_
_
0 0 0
1 0 0
.
.
.
.
.
.
.
.
.
.
.
.
0 1 0
_
_
, b
F
=
_
_
1
0
.
.
.
0
_
_
C
F
=
_
u
1
u
p1
u
p
.
(4.16)
ASPUNSUL LA INTR
.
(4.19)
E
Tu(t)
t
0
u
1
E
Tu(t)
t
0 1
c
T
u1
u2
a) b)
Figura 4.2: Funct iile de intrare tip treapta (a) si rampa (b).
.
(4.21)
iar matricele sistemului (S
0
) sunt
A
0
=
_
_
A Bu
1
Bu
2
0 0 0
0 1 0
_
_
, x
0
=
_
_
x
1
0
_
_
C
0
=
_
C Du
1
Du
2
.
(4.22)
Clasa tuturor intrarilor polinomiale de forma (4.14), n care vectorii
u
k
, k = 1 : p sunt arbitrari, se obt ine considerand n loc de (4.16) forma
110 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
standard observabila
A
F
=
_
_
0 I
m
0
0 0 I
m
0 0 0
_
_
, b
F
=
_
_
u
1
u
p1
u
p
_
_
C
F
=
_
I
m
0 0
,
(4.23)
unde vectorul b
F
= x
F
se alege pentru a preciza intrarea n clasa conside-
rata. (Observam ca, acum, S
F
este de ordin n
F
= pm, unde p este ordinul
transformatei Laplace (4.15), iar m este numarul de intrari ale sistemului
(4.4)).
.
(4.25)
B. Intrari armonice
Intrarile armonice sunt de forma
u(t) =
1
cos t +
2
sin t , t 0 , (4.26)
unde pulsat ia este xata iar coecient ii
1
,
2
1
m
sunt vectori dat i.
Avem
u(s) =
1
s +
2
s
2
+
2
, (4.27)
deci o realizare a lui (S
F
) este
A
F
=
_
0
2
1 0
_
, b
F
=
_
1
0
_
C
F
=
_
1
2
.
(4.28)
4.3. R
ASPUNSUL LA INTR
k=1
k
cos kt +
k
sin kt , (4.29)
u = e
t
(
1
cos t +
2
sin t) , (4.30)
n care coecient ii sunt eventual arbitrari, se trateaza analog.
4.3 Raspunsul la intrari etajate
Domeniul de aplicat ie al metodei bazate pe utilizarea sistemului generator,
expusan paragraful anterior, poate sensibil largit, considerand ca funct ia
de intrare u(t) este liniar generata pe port iuni, e.g. are o expresie de tip
(4.14) pe ecare subinterval [ kh, (k +1)h), k = 0 : N 1 al unei diviziuni
uniforme cu pasul h al intervalului [ 0, t
f
].
In cel mai simplu caz (caren acelasi timp este si cel mai frecvent ntalnit
n aplicat ii) funct ia de intrare u(t) este constanta pe port iuni (sau etajata),
i.e. avem
u(t) = u
k
, t [ kh, (k + 1)h) (4.31)
unde amplitudinile u
k
1
m
sunt vectori dat i, n general variabili de la pas
la pas (v. g. 4.3).
E
Tu(t)
t
0 h 2h 3h kh (k+1)h (k+2)h
u0
u1
u2
u
k
u
k+1
u
k+2
Figura 4.3: Funct ie de intrare etajata.
Utilizand relat ia (4.6) scrisa sub forma
x(t) = e
(tkh)A
x(kh) +
_
t
kh
e
(t)A
Bu() d,
112 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
n care punem t = (k + 1)h, n virtutea lui (4.31) obt inem usor
_
_
_
x((k + 1)h) = Fx(kh) +Gu
k
,
y(kh) = Cx(kh) +Du
k
,
(4.32)
unde
F = e
hA
, G =
_
h
0
e
A
d B. (4.33)
Prin denit ie, sistemul liniar discret S
d
= (F, G, C, D) constituie repre-
zentarea discretizata (pe scurt discretizatul) cu pasul h al sistemului liniar
S = (A, B, C, D). Matricele F si G, necesare pentru construct ia lui S
d
, se
determina calculand exponent iala matriceala F
o
= e
hA
o
, unde matricea
A
o
are expresia (4.25), corespunzatoare cazului n spet a. (Amintim ca, pe
ecare subinterval, funct ia de intrare (4.31) este de tip treapta). Procedand
n acest mod, se obt ine
e
hA
o
=
_
F G
0 I
m
_
. (4.34)
i=1
u
(i)
k
(t kh)
i1
(i 1)!
, t [ kh, (k + 1)h) (4.35)
4.3. R
ASPUNSUL LA INTR
_
x((k + 1)h) = Fx(k) +
p
i=1
G
i
u
(i)
k
y(kh) = Cx(kh) +Du
(1)
k
,
(4.36)
n care matricele F = e
hA
si
G
i
def
=
_
h
0
e
(h)A
i1
(i 1)!
d , i = 1 : p
se determinan mod corespunzator, calculand exponent iala matriceala F
o
=
e
hA
o
, unde A
o
se construieste cu datele din (4.23). (Stabilirea formei lui
F
o
, n cazul de fat a, este propusa cititorului ca exercit iu. Evident, avem
G
1
= G si n cazul p = 1 ecuat iile (4.36) se reduc la (4.32)).
Pentru determinarea coecient ilor u
(i)
k
, n special daca asigurarea ,,ra-
cordarii aproximat iilor (4.35) pe intervale adiacente este importanta, se
recomanda utilizarea metodelor de interpolare tip spline, [ IX]. Subliniem
ca n acest caz, sistemul (4.36) nu este cauzal n sensul ca, n general,
coecient ii u
(i)
k
, deci starea x((k + 1)h) rezultata din prima ecuat ie (4.36),
depind de valorile viitoare ale intrarii u(t)
2
.
In schimb, procedurile de cal-
cul astfel obt inute (net superioare tehnicilor de extrapolare clasice) combina
precizia aproximarilor spline cu ecient a si sigurant a metodelor de calcul
ale exponent ialei matriceale, concurand deseori cu succes procedurile alter-
native de tip general, bazate pe integrarea numerica a ecuat iei diferent iale
(4.4).
F ara a intra n detalii, ment ionam numai ca utilizarea metodelor de in-
tegrare numerica (tip Runge - Kutta, predictor - corector, etc., n general
cu pas variabil) devine obligatorie n cazul general, n care matricea A a sis-
temului liniar S = (A, B, C, D) este variabilan timp.
In locul exponent ialei
matriceale F = e
hA
, pe ecare subinterval [ t
k
, t
k+1
), acum se utilizeaza
matricea de tranzit ie F
k
= (t
k+1
, t
k
), calculata pe coloane prin integrarea
ecuat iei diferent iale omogene (4.1) cu condit iile init iale x(t
k
) = e
j
1
n
,
j = 1 : n.
2
Acest fenomen poate evitat numai n cazul p = 2, candn (4.35) se obt ine u
(1)
k
= u
k
si u
(2)
k
= (u
k+1
u
k
)/h. Efectuand n (4.36) schimbarea de variabila de stare
x((k + 1)h) x((k + 1)h) G
2
u
k+1
/h, ecuat iile (4.36) pot scrise sub forma uzuala
(4.32).
In cazul p = 4, corespunzator funct iilor spline cubice, frecvent utilizate n prac-
tica, acest articiu nu mai este ecient.
114 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
4.4 Raspunsul stat ionar
Consideram contextul din 4.2, unde presupunem, n plus, ca matricea A
este stabila, adica Re (A) < 0, iar funct ia de intrare u este persistenta,
adica Re (A
F
) 0.
Procedura generala de separare a componentelor tranzitorie si ,,stat io-
nara (asimptotica sau permanenta) ale raspunsului y(t) consta n a scrie
x(t) = (t) +V x
F
(t), (4.37)
unde (t) este componenta tranzitorie a traiectoriei de stare, adica (t) 0
cand t , iar matricea constanta V 1
nn
F
trebuie determinata.
Derivand relat ia (4.37) si t inand seama de ecuat iile sistemelor (S) si (S
F
),
obt inem
x =
+V x
F
=
+V A
F
x
F
=
= Ax +Bu =
= A( +V x
F
) +BC
F
x
F
=
= A + (AV +BC
F
)x
F
.
(4.38)
Prin urmare, daca matricea V este aleasa astfel ncat
V A
F
= AV +BC
F
(4.39)
atunci din (4.38) rezulta
(t) = A(t), deci (t) 0 cand t , (0)
n virtutea ipotezei de stabilitate Re (A) < 0. (
_
0 . . . 0 0
1 . . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
0 . . . 1 0
_
_
=
= A
_
v
1
v
2
. . . v
p
+B
_
u
1
. . . u
p1
u
p
. (4.44)
116 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
Obt inem
_
_
v
2
= Av
1
+Bu
1
.
.
.
v
p
= Av
p1
+Bu
p1
0 = Av
p
+Bu
p
(4.45)
deci vectorii v
p
. . . v
1
rezulta succesiv rezolvand sistemele liniare
Av
p
= Bu
p
Av
k
= Bu
k
+v
k+1
, k = p 1 : 1 .
(4.46)
(Evident, matricea A trebuie triangularizata o singura data.)
s=0
.
Raspunsul stat ionar la intrari armonice
Intrarile armonice au un ltru de formare denit prin
A
F
=
_
0
2
1 0
_
,
C
F
=
_
1
2
.
(4.48)
Partit ionand V pe coloane sub forma V = [v
1
v
2
] ecuat ia (4.39) se
scrie
[v
1
v
2
]
_
0
2
1 0
_
= A[v
1
v
2
] +B[
1
2
] (4.49)
4.5. CALCULUL CARACTERISTICILOR DE FRECVENT
A 117
Obt inem
_
v
2
= Av
1
+B
1
v
1
= Av
2
+B
2
(4.50)
deci vectorii v
i
, i = 1 : 2 rezulta rezolvand sistemul liniar
_
A I
I A
_ _
v
1
v
2
_
=
_
B
1
B
2
_
. (4.51)
ASPUNSUL
IN TIMP
Daca scriem acum (4.39) sub forma
iV = AV +B
c
(4.56)
obt inem imediat
V = (iI A)
1
B
c
, (4.57)
iar din (4.43) rezulta
W = CV +D
c
= [C(iI A)
1
B +D]
c
def
= T(i)
c
(4.58)
unde
T(i) = C(iI A)
1
B +D, 1 (4.59)
reprezinta caracteristica (complexa) de frecvent a a sistemului (S).
Problema calculului lui T(i) pentru diverse valori
k
1, k = 1 : N
ale lui presupune deci
1. Pentru k = 1 : N
1. Rezolvarea sistemelor matriceale liniare (i
k
I A)V
k
= B.
2. Calculul matricei T(i
k
) = CV
k
+D.
Deosebirea importanta fat a de cazul considerat anterior al intrarilor
polinomiale consta aici, (n afara necesitat ii evidente de a utiliza aritmetica
complexa), n faptul ca, aparent, la pasul 1.1 matricele (i
k
I A) trebui-
esc triangularizate pentru ecare k n parte, ceea ce n cazul n care A este
de forma generala presupune, n total, N
n
3
3
operat ii (n afara celor Nmn
2
necesare pentru determinarea coloanelor lui V ). Pentru a evita aceasta,
amintim ca rezolvarea unui sistem Ax = b cu A superior (sau inferior) Hes-
senberg cere numai n
2
operat ii. Prin urmare, n cazul de fat a se recomanda
determinarea unei transformari prealabile M astfel ncat
A = MAM
1
sa e, de exemplu, superior Hessenberg.
In acest scop, se utilizeaza eli-
minarea gaussiana cu pivotare part iala n aritmetica complexa si rezulta
M = M
n1
P
n1
. . . M
2
P
2
, unde M
k
sunt matrice inferior triunghiulare ele-
mentare, iar P
k
sunt matrice de permutare adecvat alese. (Alternativ, dar
mai costisitor, se poate utiliza procedura ortogonala n care M = U =
U
n1
U
2
este o secvent a de reectori). Aplicand transformarea M ma-
tricelor B si C, adica
B = MB,
C = CM
1
si denind
V = MV , problema
calculului lui T(i
k
) se reduce la
4.6. R
V
k
=
B.
2. Calculul matricei T(i
k
) =
C
V
k
+D.
Aplicarea acestei scheme de calcul necesita, la pasul 1.1, n total, nu-
mai Nmn
2
operat ii, mai precis, Nm
n
2
2
operat ii pentru triangularizare plus
Nm
n
2
2
pentru rezolvarea efectiva.
Procedura de calcul poate rezumata astfel.
Algoritmul 4.5 (Se dau A, B, C, D si
k
1, k = 1 : N,
de regula n scara logaritmica. Se calculeaza T(i
k
) , k = 1 :
N).
1. Se determina M astfel ncat A
A = MAM
1
este su-
perior Hessenberg.
2. B MB
3. C CM
1
4. Pentru k = 1 : N
1. Se formeaza matricea A
0
= i
k
I A.
2. Se face triangularizarea A
0
R = NA
0
.
3. B
0
= NB
4. Se rezolva A
0
V = B
0
n raport cu
V .
5. T(i
k
) = C
V +D
Comentarii. Matricele A
0
si B
0
sunt tablouri de lucru. La pasul 4.2. se
efectueaza eliminarea gaussiana cu pivotare part ialan aritmetica complexa
astfel ncat R rezulta superior triunghiulara. La pasul 4.3 transformarea N
se aplica lui B iar la pasul 4.4 se procedeaza ca n cap. 1, 2.
Observat ia 4.5 Aducerea prealabila a lui A la forma Schur (pentru a
evita pasii 4.2, 4.3) este mai put in ecienta.
4.6 Raspunsul sistemelor liniare discrete
Datorita specicului recurent al ecuat iilor de staren cazul discret, matricea
de tranzit ie este (k) = A
k
, k ^.
In particular, matricea de tranzit ie
120 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
ntr-un pas (1) = A este data, deci procedurile de calcul prezentate mai
sus se simplica.
In algoritmii 4.1 si 4.3 se elimina pasii 1, nlocuind peste
tot perechea discretizata (F, G) cu perechea (A, B) a sistemului discret
considerat.
In algoritmul 4.2, n locul lui u(s) se considera transformata
Z corespunzatoare u(z). Considerat iile din 4.4 raman valabile nlocuind
condit iile de stabilitate si persistent a prin versiunile lor discrete [(A)[ < 1
si, respectiv, [(A
F
)[ 1. (Vezi 5.1).
In sfarsit, n versiunea discreta a
algoritmului 4.5, numerele i
k
situate pe axa imaginara se nlocuiesc cu
numere e
i
k
, k = 1 : N, convenabil plasate pe cercul unitate T. Detaliile
de redactare sunt propuse cititorului ca exercit ii.
Programe MATLAB disponibile
Pentru calculul si reprezentarea graca a raspunsului liber al unui sis-
tem liniar este disponibila funct ia initial, care foloseste algoritmul 4.1.
Raspunsul n stare init iala nula la o intrare (scalara) de tip impuls sau
treapta unitate se poate calcula utilizand funct iile impulse si step, care
implementeaza algoritmii corespunzatori 4.1 si 4.2 considerand x(0) = b si
respectiv x(0) = 0. Funct ia lsim implementeaza algoritmul 4.3 utilizand o
aproximare liniara pe port iuni a funct iei de intrare u(t), vezi formula (4.35)
n cazul p = 2.
In cazul discret, n aceleasi scopuri, se utilizeaza funct iile
dinitial, dimpulse, dstep si dlsim.
Pentru construct ia reprezentarii discretizate cu pasul h a unei perechi
(A, B) este disponibila funct ia c2d, bazata pe formula de calcul exacta
(4.33). Diverse metode de discretizare aproximativa pot utilizate apeland
funct ia c2dm.
Pentru calculul si reprezentarea graca a caracteristicilor de frecvent a
ale unui sistem liniar sunt disponibile funct iile nyquist, bode si nichols
care apeleaza procedura freqresp, bazata pe algoritmul 4.5.
In cazul dis-
cret, n acelasi scop se utilizeaza funct iile dnyquist, dbode si dnichols.
Pentru funct ii de transfer sunt disponibile versiunile simple freqs si respec-
tiv freqz.
Exercit ii
E 4.1 Prin analogie cu algoritmii din text, scriet i algoritmii de calcul al
raspunsului n timp al unui sistem liniar, discret S = (A, B, C, D) denit
4.6. R
i=1
a
i
y(k i) +
d
i=0
b
i
u(k i), k = 0 : N 1 (4.61)
precizand cu grija datele init iale necesare.
E 4.4 Reluat i exercit iul anterior aplicand transformata Z ecuat iei (4.61)
pentru a obt ine T(z) si utilizat i n acest context procedurile stabilite la
exercit iul 4.2. Formulat i concluziile rezultate.
E 4.5 Cum se calculeaza raspunsul n timp al unui sistem liniar discret
avand funct ia de transfer data sub forma
T(z) = k
(z
i
)
(z
i
)
, respectiv T(z) =
r
i
z
i
? (4.62)
E 4.6 Reluat i exercit iul 4.1 pentru sistemul liniar discret denit prin
_
_
_
x(k + 1) = Ax(k) +
d
i=0
B
i
u(k i), x(0) = x
y(k) = x(k) +
d
i=0
D
i
u(k i)
(4.63)
n care d 1 reprezinta ntarzierea (pura) maxima pe canalul de intrare,
iar A, C si B
i
, D
i
, i = 1 : d sunt matrice date.
E 4.7 Calculat i matricele de transfer T(z) pentru sistemele din exercit iile
4.1 si 4.6, indicand o procedura ecienta de calcul al raspunsului stat ionar
la intrare treapta.
122 CAPITOLUL 4. R
ASPUNSUL
IN TIMP
E 4.8 Elaborat i proceduri eciente de calcul pentru caracteristicile de
frecvent a T(e
i
), [ 0, 2 ), unde T(z) sunt matricele de transfer calculate
n exercit iul precedent.
E 4.9 Considerat i sistemul liniar descris prin
_
_
_
x(t) = Ax(t) +
d
i=0
B
i
u(t ih), x(0) = x
0
y(t) = Cx(t) +
d
i=0
D
i
u(t ih)
(4.64)
n care d 1, iar funct ia de intrare u(t) este etajata cu pasul h. Scriet i
algoritmul de calcul al raspunsului y(kh), k = 0 : N 1.
E 4.10 Formulat i si rezolvat i versiunile continue ale exercit iilor 4.2 4.5,
4.7 si 4.8.
E 4.11 Scriet i algoritmul de calcul al raspunsului sistemului liniar (4.4)
la o intrare impuls u(t) = u
0
(t), unde vectorul u
0
1
m
este dat. Cum
procedat i n cazul u(t) =
N1
k=0
u
k
(t kh), t
f
= Nh ?
E 4.12 Formulat i si rezolvat i versiunea discreta a exercit iului 4.11.
E 4.13 Scriet i algoritmul de calcul al raspunsului sistemului liniar (4.4) la
un semnal de intrare periodic de forma dreptunghiulara, presupunand ca
perioada acestuia este ph, p 1.
E 4.14 Elaborat i algoritmul de calcul al raspunsului n timp al sistemului
liniar (4.4) pentru un semnal de intrare periodic avand forma de dint i de
erastrau cu perioada ph, p 1 si panta u
2
i.e. u(t) = u
2
(t kph),
t [ kph, (k + 1)ph), k ^.
E 4.15 Analizat i posibilitat ile de calcul al regimului stat ionar rezultat n
condit iile exercit iilor 4.13 si 4.14.
E 4.16 Propunet i un analog al formulei (4.3) pentru sistemul liniar cu
ntarziere descris de ecuat ia diferent iala x(t) = Ax(t)+Bx(t) cu condit ia
init iala x(t) = u(t), considerata cunoscuta pentru t [, 0 ], unde > 0
reprezinta ntarzierea (interna), iar A si B sunt matrice date. Indicat i
o procedura de calcul aproximativ al raspunsului liber y(kh) = Cx(kh),
k = 0 : N 1.
Indicat ie. Considerat i mai ntai ecuat ia corespunzatoare cazului n = 1
si aleget i h astfel ncat = dh, unde, de exemplu, d = 10. Cum se pot
calcula valorile x(kh), h = 1 : d ?
4.6. R
In cazul B = A
T
se obt ine ecuat ia diferent iala matriceala Liapunov.
E 4.22 Reluat i exercit iul precedent pentru ecuat ia
ASPUNSUL
IN TIMP
Indicat ie. Analogul formulei (4.5) este
X(t) = e
tA
X(0)e
tB
+
_
t
0
e
(t)A
Ce
(t)B
d.
Bibliograe
[ 1 ] Lupas L., Bogdan M. Forced Response Computation of Linear
Time - Invariant Multivariable Systems, Rev. Roum. Sci. Tehn.
Electrotehn. et Energ., Vol. 19, No. 3, pp. 475 490, 1974.
[ 2 ] Lupas L. A Numerical Method of Evaluating the Transient Response
of Linear Time - Invariant Multivariable Systems, Rev. Roum. Sci.
Tehn. Electrotehn. et Energ., Vol. 19, No. 4, pp. 639 - 648, 1974.
[ 3 ] Enright W. On the Ecient and Reliable Numerial Solution of
Large Linear Systems of ODEs, IEEE Trans. AC - 24, No. 6, pp.
905 908, 1979.
[ 4 ] Laub A.J. Ecient Multivariable Frequency Response Computa-
tions, IEEE Trans. AC - 26, No. 2, pp. 407 - 408, 1981.
Capitolul 5
Proceduri de analiza
sistemica
al planului complex (.
Pe scurt, criteriul (condit ia necesara si sucienta) de stabilitate n cazul
continuu este (A) (
A SISTEMIC
A
Denit ia 5.2 Matricea A a unui sistem discret este stabila daca toate va-
lorile proprii ale lui A au modul strict subunitar, deci sunt plasate n discul
unitate deschis T
1
(0) din planul complex (.
Pe scurt, criteriul de stabilitate n cazul discret este [(A)[ < 1.
A 127
5.2 Descompunerea spectrala
A = UAU
T
. Punem n evident a partit iile conforme
n
a
..
n
b
..
U =
_
U
a
U
b
_
n
a
n
b
, S
def
=
A =
_
A
a
0
A
ab
A
b
_
n
a
n
b
(5.2)
unde dimensiunile blocurilor satisfac relat ia n
a
+n
b
= n. Se constata usor
ca un vector x de forma
x =
_
x
a
0
_
n
a
n
b
, (5.3)
unde x
a
este arbitrar, se transforma prin
Antrun vector de aceeasi forma,
mai precis avem
A x =
_
A
a
x
a
0
_
n
a
n
b
,
Acest fapt arata ca
(i) subspat iul A
a
1
n
al vectorilor de forma (5.3) este invariant n
raport cu
A si restrict ia lui
A la acest subspat iu coincide cu blocul stanga
- sus A
a
al lui
A.
_
x
a
0
_
= U
T
a
x
a
,
deci
(j) coloanele matricei U
T
a
formeaza o baza ortogonala a subspat iului A
a
.
128 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
Proprietat iile (i) si (j) de mai sus sunt esent iale pentru orice procedura
de calcul a subspat iilor invariante A
a
, denite prin condit ii spectrale impuse
restrict iei A
a
corespunzatoare.
De exemplu, daca se cere ca evolut ia sistemului S pe subspat iul A
a
sa
e stabila atunci matricea A
a
trebuie sa e stabila, deci Re(A
a
) < 0. Cel
mai mare subspat iu A-invariant A
a
cu aceasta proprietate se noteaza cu
A
al valorilor
proprii stabile ale lui A.
Procedura de determinare a subspat iului A-invariant A
(A) asociat
valorilor proprii stabile ale lui A poate rezumata astfel.
Algoritmul 5.2 (Se determina o baza ortogonala a subspa-
t iului A-invariant stabil A
(A)).
1. Se calculeaza forma Schur reala S = UAU
T
a lui A, uti-
lizand algoritmul QR cu acumularea transformarilor U.
2. Se ordoneaza S, n acord cu criteriul (5.4), utilizand trans-
formari de asemanare ortogonala S PSP
T
si efectuand
acumularea acestora conform schemei U PU.
3. Se determina numarul n
a
def
= n
A 129
Revenim acum la sistemul liniar S = (A, B, C) adus la forma (5.2) cu
transformarea ortogonala x = Ux. Consideram transformarea suplimentara
z = V
1
0
x sau, echivalent, x = V
0
z, n care matricea V
0
1
nn
are
structura
n
a
..
n
b
..
V
0
=
_
I
0
Y
I
_
n
a
n
b
(5.6)
Se constata imediat ca avem
AV
0
= V
0
A
0
, unde A
0
def
=
_
A
a
0
0 A
b
_
, (5.7)
daca si numai daca matricea Y satisface ecuat ia matriceala Sylvester
A
a
Y Y A
b
= A
ab
. (5.8)
Pe de alta parte, se stie ca ecuat ia (5.8) are o solut ie unica Y daca si numai
daca matricele A
a
si A
b
nu au valori proprii comune, pe scurt
(A
a
) (A
b
) = . (5.9)
Deoarece condit ia (5.9) este evident satisfacuta n situat ia creata apli-
cand algoritmul 5.2, n care A
a
si A
b
colecteaza toate valorile proprii stabile
si, respectiv, nestabile ale lui A, concludem ca prin schimbarea
x
def
= V z = U
T
x = U
T
V
0
z,
sistemul S = (A, B, C) poate ntotdeauna adus la forma
_
z = A
0
z +B
0
u
y = C
0
z
(5.10)
unde
A
0
def
= V
1
AV =
_
A
a
0
0 A
b
_
, B
0
def
= V
1
B =
_
B
a
B
b
_
,
C
0
def
= CV =
_
C
a
C
b
,
(5.11)
n care matricea A
a
colecteaza toate valorile proprii ale matricei A cu
Re(A) < 0, deci, este stabila, iar matricea A
b
colecteaza toate valorile
proprii ale matricei A cu Re(A) 0, deci este total nestabila, pe scurt
(A
a
) (
, (A
b
)
(
+
, (5.12)
unde
(
+
este semiplanul drept nchis al planului complex (.
130 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
Denit ia 5.3 Forma bloc-diagonal a (5.10), (5.11) se numeste descom-
punerea spectrala a sistemului S = (A, B, C) si corespunde reprezentarii
lui S prin conexiunea paralel a doua sisteme, S
a
= (A
a
, B
a
, C
a
) si S
b
=
(A
b
, B
b
, C
b
).
In acord cu (5.12), S
a
este stabil de ordin n
a
= n
, unde n
este
numarul valorilor proprii stabile ale lui A iar S
b
este total nestabil de ordin
n
b
= n
+
, unde n
+
este numarul valorilor proprii nestabile (cu parte reala
strict pozitiva sau nula) ale lui A.
In consecint a, S
a
se numeste partea
stabila iar S
b
se numeste partea total nestabila a sistemului S.
, iar S
b
se numeste partea antistabila a sis-
temului dihotomic S.
Conform celor de mai sus, matricea V din (5.11) este
V = U
T
V
0
=
_
U
T
a
U
T
b
_
I Y
0 I
_
,
deci avem
V
def
=
_
V
a
V
b
=
_
U
T
a
U
T
b
+U
T
a
Y
. (5.13)
Punand
z =
_
z
a
z
b
_
obt inem
x = V z = V
a
z
a
+V
b
z
b
,
unde coloanele matricei V
a
= U
T
a
constituie o baza ortogonala a subspat iului
stabil A
(A) = A
a
, corespunzator vectorilor z cu z
b
= 0 (vezi (5.3)).
(/)).
1. Se aplica algoritmul 5.2.
5.2. DESCOMPUNEREA SPECTRAL
A 131
2. Se face
B UB =
_
B
a
B
b
_
, C CU
T
=
_
C
a
C
b
.
3. Se rezolva ecuat ia matriceala Sylvester (5.8), t inand seama
ca matricele A
a
, A
b
sunt deja n forma Schur reala (vezi
(5.2)).
4. Se face
B
a
B
a
Y B
b
, C
b
C
a
Y +C
b
.
Comentarii. Spre deosebire de algoritmul 5.2, algoritmul 5.3 utilizeaza
transformari de asemanare neortogonala (vezi forma (5.13) a lui V
0
), care n
general ridica probleme de condit ionare.
In practica, numarul de condit ie
cond(V
0
) se poate evalua ecient utilizand estimatorul de condit ie pen-
tru matrice triunghiulare propus n LINPACK [ III ].
In ceea ce priveste
ns asi condit ionarea problemei rezolvarii ecuat iei matriceale Sylvester (5.8),
aceasta poate apreciata (destul de nesigur) evaluand apropierea dintre
spectrele matricelor A
a
si A
b
, e.g. prin
def
= min Re(A
b
) max Re(A
a
).
(Relativ la aceasta chestiune, vezi cap. 1).
In cazul discret se obt in concluzii
similare pe baza aceleiasi ecuat ii (5.8). Daca este necesar, aceasta poate
scris a sub forma specica
A
a
Y A
1
b
Y = A
ab
A
1
b
, (5.14)
careia i se pot aplica rezultatele corespunzatoare din capitolul 1.
Opt ional, algoritmul 5.3 poate completat pentru a furniza baza V
b
=
U
T
b
+ U
T
a
Y a subspat iului
A
+
(A) sau/si matricea de transformare (neor-
togonala) T 1
nn
a tripletului S = (A, B, C) la forma (5.11), (5.12).
Prin denit ie avem
z = Tx, (5.15)
unde, conform notat iilor de mai sus
T = V
1
= V
1
0
U =
_
I Y
0 I
_ _
U
a
U
b
_
=
_
U
a
Y U
b
U
b
. (5.16)
Prin urmare, matricea T poate calculata pe loc n tabloul U furnizat de
algoritmul 5.2, efectuand actualizarea
U
a
U
a
Y U
b
.
132 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
Alternativ, pentru a evita distrugerea bazei ortogonale U
a
a subspat iului
A
, u
k
=
_
_
u(k 1)
u(k 2)
.
.
.
u(0)
_
_
, (5.19)
n care vectorul u
k
cont ine k blocuri, ecare cu m componente, iar R
k
este
o matrice bloc de forma n mk, relat iile (5.18) se scriu pe scurt
R
k
u
k
= x(k). (5.20)
Considerand can (5.20) pasul k 1 este xat iar x(k) 1
n
este un vec-
tor arbitrar care reprezinta starea dorita la pasul k, vom spune ca perechea
5.3. CONTROLABILITATEA SI OBSERVABILITATEA 133
discreta (A, B) este controlabila n k pasi daca sistemul de ecuat ii liniare
(5.20) are o solut ie u
k
, adica exista un sir de intrari u(0), u(1), . . . , u(k 1)
care realizeaza tranzit ia de stare 0 x(k). Dupa cum se stie, sistemul
(5.20) este compatibil oricare ar membrul drept daca si numai daca ma-
tricea R
k
este epica, adica
rangR
k
= n. (5.21)
Mai mult, n acest caz solut ia normala u
k
a sistemului (5.20) este unic
determinata si are expresia
u
k
= R
T
k
(R
k
R
T
k
)
1
x(k), (5.22)
deci avem
|u
k
|
2
= min
R
k
u=x(k)
|u
k
|
2
, (5.23)
unde norma (euclidiana) a unui vector u
k
de forma (5.19) este evident
|u
k
|
2
=
k1
t=0
|u(t)|
2
. (5.24)
Interpretand expresia (5.24) ca efort de comanda necesar pentru re-
alizarea tranzit iei 0 x(k), solut ia normala (5.22) se numeste sugestiv
comanda de norma sau efort minim.
, (5.25)
precum si u
n
= u, relat iile (5.20) pentru k = n se scriu
Ru = x(n) (5.26)
134 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
iar condit ia de rang (5.21), echivalenta cu controlabilitatea perechii (A, B),
devine
rangR = n. (5.27)
In cazul n care perechea (A, B) este controlabil a, cel mai mic ntreg
k 1 pentru care condit ia de rang (5.21) este satisfacuta se numeste indice
de controlabilitate al perechii (A, B) si se noteaza cu .
Observam ca, n cazul discret, reprezinta cel mai mic numar k de
pasi (deci timpul minim) n care este posibila tranzit ia de stare 0 x(k),
oricare ar starea dorita x(k) 1
n
. De asemenea, daca perechea (A, B)
are o singura intrare, deci m = 1, atunci R este patrata si nesingulara iar
= n. Din contra, daca m > 1 atunci n general avem < n.
Observabilitatea unui sistem liniar S = (A, B, C) este proprietatea duala
controlabilitat ii si, n consecint a, depinde numai de perechea (C, A). Pe
scurt, S este observabil daca starea init iala este unic determinata cunos-
cand funct iile de intrare si iesire, obt inute e.g. prin masuratori efectuate la
terminalele lui S.
Pentru precizare, consideram din nou sistemul liniar discret descris prin
ecuat iile de stare (5.17). Presupunand ca u(t) = 0, t 0 , din (5.17) rezulta
x(t) = A
t
x(0), astfel ncat sirul de iesiri corespunzator starii init iale x(0)
este
y(t) = CA
t
x(0), t = 0 : k 1. (5.28)
Introducand notat iile
Q
k
=
_
_
C
CA
.
.
.
CA
k1
_
_
, y
k
=
_
_
y(0)
y(1)
.
.
.
y(k 1)
_
_
, (5.29)
5.3. CONTROLABILITATEA SI OBSERVABILITATEA 135
n care vectorul y
k
cont ine k blocuri, ecare cu l componente, iar Q
k
este
o matrice bloc de forma kl n, relat iile (5.28) se scriu pe scurt
Q
k
x(0) = y
k
. (5.30)
Considerand ca n (5.30) pasul k 1 este xat, vom spune ca perechea
discreta (C, A) este observabila n k pasi daca sistemul de ecuat ii liniare
(5.30) are cel mult o solut ie x(0), adica starea init iala x(0) este unic deter-
minat a de sirul de iesiri y(0), y(1), . . . , y(k1). Dupa cum se stie, sistemul
(5.30) este unic determinat daca si numai daca matricea Q
k
este monica,
adica
rang Q
k
= n. (5.31)
Mai mult, n acest caz pseudosolut ia x
(0) = (Q
T
k
Q
k
)
1
Q
T
k
y
k
, (5.32)
deci avem
|y
k
Q
k
x
(0)|
2
= min
x(0)R
n
|y
k
Q
k
x(0)|
2
, (5.33)
unde evident
|y
k
Q
k
x(0)|
2
=
k1
t=0
|y
k
Cx(k)|
2
. (5.34)
Interpretand reziduurile r(k) = y(k) Cx(k) ca erori sau zgomote de
masura care afecteaza iesirile masurate y(k), pseudosolut ia x
(0) se numeste
sugestiv estimare optimala (n sensul CMMP) a starii init iale x(0).
_
C
CA
.
.
.
CA
n1
_
_
, (5.35)
136 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
precum si y
n
= y, relat iile (5.30) pentru k = n se scriu
Qx(0) = y (5.36)
iar condit ia de rang (5.31), echivalenta cu observabilitatea perechii (C, A),
devine
rang Q = n. (5.37)
In cazul n care perechea (C, A) este observabila, cel mai mic ntreg
k 1 pentru care condit ia de rang (5.31) este satisfacuta se numete indice
de observabilitate al perechii (C, A).
Examinand n paralel relat iile (5.18)-(5.27) si (5.28)-(5.37), concludem
ca not iunile de controlabilitate si observabilitate sunt duale, n sensul ca ele
se corespund prin corespondent a
A A
T
, C B
T
,
n particular avem
Q(C, A) = R
T
(A
T
, C
T
).
A SISTEMIC
A
pas k 1 matricea B
k
are numai m coloane. De asemenea, este clar ca la
ecare pas matricea B
k
este disponibila n R
k
, mai precis avem
B
k
= R
k
( : , (k 1)m+ 1 : km) (5.41)
astfel ncat nu este necesara nici alocarea unui tablou suplimentar de lucru
pentru memorarea matrice curente B
k
, nici calculul pe loc n B, conform
schemei B AB, al termenilor sirului B
k
, ceea ce ar implica distrugerea
matricei init iale B.
n
1,
unde cond(R) este numarul de condit ionare la inversare al matricei R (n
raport cu norma spectrala ) iar
i
, i = 1 : n sunt valorile singulare ale lui
R, ordonate astfel ncat
1
2
. . .
n
. Fenomenul poarta numele de
5.4. TESTE ELEMENTARE DE CONTROLABILITATE 139
necontrolabilitate numerica a perechii (A, b) si n general nu poate evitat,
indiferent de testul de rang utilizat la pasul 3 al algoritmului de mai sus.
Din acest punct de vedere, n cazul m > 1 se recomanda efectuarea
testului de rang n bucla 2, conform schemei urmatoare, care, n plus,
furnizeaza si indicele de controlabilitate al perechii (A, B).
Algoritmul 5.5 (Se testeaza controlabilitatea perechii
(A, B) construind matricea de controlabilitate R. Se presupune
m > 1.)
1. R( : , 1 : m) B
1
= B
2. Pentru k = 2 : n
1. Se calculeaza r = rangR utilizand algoritmul DVS.
2. Daca r = n atunci
1. = k
2. Tipareste Perechea (A, B) este controlabila.
3. stop
3. R( : , (k 1)m+ 1 : km) B
k
= AB
k1
Subliniem nsa ca schema de mai sus este n orice caz neecienta din
punctul de vedere al efortului de calcul datorita apelarii repetate a algorit-
mului DVS ntr-o forma bruta, care nu exploateaza rezultatele calculelor
anterioare. Cel put in aceeasi sigurant a a testului este asigurata de algo-
ritmul 5.7 prezentat mai departe, cu un efort de calcul considerabil mai
redus.
= n, (A).
3. Oricare ar vectorul g 1
m
cu proprietatea Bg ,= 0, exista o
matrice F 1
mn
astfel ncat perechea cu o singura intrare (A
BF, Bg) este controlabila.
140 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A 141
matricea de observabilitate Q a perechii (C, A).
5.5 Forma Hessenberg controlabila
Consideram sistemul liniar S = (A, B, C) si e
S = (
A,
B,
C) un sistem
asemenea cu S, avand matricele
A = TAT
1
,
B = TB,
C = CT
1
, (5.42)
unde T 1
nn
este o matrice nesingulara arbitrara. Avem
A
B = TAB,
A
2
B =
A(
A
B) = TA
2
B, . . .
astfel ncat ntre matricele de controlabilitate si observabilitate atasate sis-
temelor S si
S exista relat iile
R = TR,
Q = QT
1
. (5.43)
Deoarece multiplicarea cu o matrice nesingulara nu modica rangul, din
relat iile (5.43) rezulta ca matricele R si
R au acelasi rang, deci perechile
(A, B) si (
A,
B) sunt simultan controlabile sau necontrolabile.
In mod simi-
lar (sau prin dualitate), perechile (C, A) si (
C,
A) sunt simultan observabile
sau neobservabile. Pe scurt, proprietat ile de controlabilitate si observabi-
litate, precum si rangurile matricelor corespunzatoare de controlabilitate
si observabilitate, sunt invariant i n raport cu transformarile de asemanare
(5.42).
Daca n (5.42) presupunem ca matricea T = U este ortogonala, deci
sistemele S si
S sunt ortogonal asemenea
A = UAU
T
,
B = UB,
C = CU
T
, (5.44)
atunci relat iile (5.43) devin
R = UR,
Q = QU
T
. (5.45)
Prin urmare, nu numai proprietat ile (binare!) de controlabilitate si obser-
vabilitate ci si valorile singulare
i
(R) si
i
(Q), i 1 : n ale matricelor de
controlabilitate si observabilitate sunt invariant i ai sistemului (A, B, C) n
raport cu transformarile de asemanare ortogonala (5.44).
Observat ia 5.4 Invariant ii ortogonali
i
(R) si
i
(Q), i 1 : n au o
deosebita important a n analiza sistemelor liniare, ntrucat reprezinta o
142 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
masura cantitativa a gradelor de controlabilitate si observabilitate ale sis-
temului S = (A, B, C).
In special, cea mai mica valoare singulara
n
(R) 0
a lui R reprezinta distant a (masurata n norma spectrala) dintre perechea
data (A, B) si mult imea perechilor necontrolabile de aceeasi forma.
A = UAU
T
=
_
A
R
A
R
R
0 A
R
_
r
r
,
b = Ub =
_
b
R
0
_
r
r
(5.47)
n care perechea (A
R
, b
R
) de ordin r se aa n forma superior Hessenberg
ireductibila
A
R
=
_
_
x x . . . x x
h
2
x . . . x x
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. x
.
.
.
h
r
x
_
_
, b
R
=
_
_
h
1
0
.
.
.
0
_
_
, (5.48)
unde
h
i
,= 0, i = 1 : r (5.49)
iar x denota elemente a caror valoare numerica nu are important a n con-
text.
5.5. FORMA HESSENBERG CONTROLABIL
A 143
Daca perechea init iala (A, b) este controlabil a atunci n (5.47) avem r =
n, astfel ncat blocurile A
R
si A
R
R
dispar iar perechea (
A,
b) = (A
R
, b
R
)
are structura ireductibila (5.48) cu r = n, adica
A = UAU
T
=
_
_
x x . . . x x
h
2
x . . . x x
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
x
.
.
.
h
n
x
_
_
,
b = Ub =
_
_
h
1
0
.
.
.
0
_
_
, (5.50)
unde
h
i
,= 0, i = 1 : n. (5.51)
De aceea, structura ireductibila din (5.50) se numeste forma superior
Hessenberg controlabila a perechii (A, b).
Pe de alta parte, daca perechea (
A,
b) de
forma (5.50) este superior triunghiulara, mai precis avem
R
def
=
_
b
A
b . . .
A
n1
b
=
_
_
r
11
x . . . x
r
22
. . . x
.
.
.
.
.
.
r
nn
_
_
, (5.52)
n care elementele diagonale ale lui
R sunt
r
kk
=
k
i=1
h
i
, k = 1 : n. (5.53)
Prin urmare, perechea init iala (A, b) este controlabila, deci matricea
R = U
R este nesingulara, daca si numai daca sunt satisfacute condit iile
(5.51).
144 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
Pe o cale nca mai simpla, aceeasi concluzie rezulta utilizand criteriul de
controlabilitate furnizat de punctul 2 al propozit iei 5.1.
Intr-adevar, avem
_
b
AI
=
_
_
h
1
x . . . x x
h
2
. . . x x
.
.
.
.
.
.
.
.
.
h
n
x
_
_
, (5.54)
deci (5.51) implica evident rang
_
b
AI
= n, (. Demonstrat ia
implicat iei inverse este propusa cititorului ca exercit iu (de atent ie!).
La fel de simplu se demonstreaza armat ia urmatoare relativa la (5.47).
Propozit ia 5.3 Matricea de controlabilitate
R a unei perechi (
A,
b) de
forma (5.47) are structura superior trapezoidala
R =
_
R
R
x
0 0
_
, (5.55)
n care R
R
1
rr
este matricea de controlabilitate a perechii (A
R
, b
R
).
Prin urmare, ordinul r al perechii (A
R
, b
R
) coincide cu rangul matricei
de controlabilitate R = U
R al perechii (A, b) daca si numai daca sunt satis-
facute condit iile (5.49), deci perechea (A
R
, b
R
) din (5.47) este controlabila.
b) n
forma superior Hessenberg controlabila (5.50), (5.51).
2. Perechea (A, b) nu este controlabila, deci r
def
= rangR < n.
b)
n forma bloc superior triunghiulara (5.47), n care perechea (A
R
, b
R
) este
controlabila de ordin r, deci are structura (5.48), (5.49). (
In particular,
(5.47) poate coincide cu forma superior Hessenberg completa (5.50), n
care r este cel mai mic ntreg 1 astfel ncat h
r+1
= 0).
Aducerea unei perechi (A, b) cu o singura intrare la forma superior Hes-
senberg completa (5.50) se face printr-o procedura directa, a carei schema
de calcul este urmatoarea.
1. Se determina un reector U
1
1
nn
astfel ncat ultimele n1 com-
ponente ale vectorului transformat b U
1
b sa e nule.
2. Se aplica U
1
lui A, deci se calculeaza A U
1
AU
1
.
5.5. FORMA HESSENBERG CONTROLABIL
A 145
3. Se aduce matricea A la forma superior Hessenberg A
A =
UA
U
T
,
utilizand algoritmul HQ, [ VI,IX].
Pasul 1 este elementar. Reectorul U
1
este denit prin
U
1
= I
n
u
1
u
T
1
1
n care componentele u
i1
, i = 1 : n ale vectorului u
1
1
n
precum si
scalarul
1
se determina cu formulele cunoscute
Procedura U = H0(b)
1. = sgn(b
1
)(
n
i=1
b
2
i
)
1/2
2. u
11
= b
1
+; u
i1
= b
i
, i = 2 : n
3.
1
= u
11
4. b
1
h
1
= ; b
i
= 0, i = 2 : n
iar ultima instruct iune efectueaza transformarea b U
1
b.
Pasul 2 se desfasoaran doua faze.
In prima faza se calculeaza A U
1
A,
aplicand U
1
matricei A partit ionate pe coloane. Obt inem
Procedura A = H1(U, A)
1. Pentru j = 1 : n
1. = (
n
i=1
u
i1
a
ij
)/
1
2. a
ij
a
ij
u
i1
, i = 1 : n.
A SISTEMIC
A
Presupunem ca nainte de etapa k, k = 2 : n1, perechea (A, b) (part ial
transformata n etapele anterioare) are structura
A =
_
_
x . . . x
h
2
. . . x
.
.
.
.
.
.
h
k1
x
x
.
.
.
x
x . . . x
x . . . x
.
.
.
.
.
.
x . . . x
0
a
k,k1
.
.
.
a
n,k1
a
kk
. . . a
kn
.
.
.
.
.
.
a
nk
. . . a
nn
_
_
=
_
A
k
X
k
0
b
k
A
k
_
,
(5.56)
b =
_
_
h
1
0
.
.
.
0
0
.
.
.
0
_
_
=
_
b
k
0
_
_
n care perechea (
A
k
,
b
k
) este deja n forma superior Hessenberg completa
de ordin k 1.
La etapa k se efectueaza urmatoarele calcule:
3.1. Se determina un reector U
k
1
nn
astfel ncat ultimele n k
elemente din coloana k 1 a matricei A transformate sa e nule.
3.2. Se aplica U
k
lui A, deci se calculeaza A U
k
AU
k
.
La pasul 3.1 reectorul U
k
este denit prin
U
k
= I
n
u
k
u
T
k
k
,
n care vectorul u
k
1
n
are primele k 1 componente nule.
In virtutea
acestui fapt, U
k
are structura bloc
U
k
=
_
I
k1
0
0
U
k
_
, (5.57)
iar datorita acesteia premultiplicarea cu U
k
nu modica primele k 1 linii
iar postmultiplicarea cu U
k
nu modica primele k1 coloane ale tablourilor
5.5. FORMA HESSENBERG CONTROLABIL
A 147
transformate. Prin urmare, la pasul 3.2 obt inem
U
k
A =
_
A
k
X
k
0
U
k
b
k
U
k
A
k
_
def
=
_
A
k
0
U
k
b
k
Y
k
_
(5.58)
precum si
(U
k
A)U
k
=
_
A
k
0
U
k
b
k
Y
k
U
k
_
def
=
_
A
k+1
X
k+1
0
b
k+1
A
k+1
_
(5.59)
U
k
b = b =
_
b
k+1
0
_
_
unde, datorita alegerii lui U
k
de la pasul 3.1, perechea (
A
k+1
,
b
k+1
) rezulta
n forma superior Hessenberg completa de ordin k.
Astfel procedura a progresat, adica dimensiunea part ii transformate
(marcate cu tilda) a crescut, iar cea a part ii restante (barate) a scazut
cu o unitate.
Dupa a (n 1)-a etapa vom obt ine (A, b) n forma dorita.
Pentru organizarea procedurala a calculelor, este esent ial sa observam
ca, n acord cu (5.57), reectorul U
k
este complet determinat de blocul
sau
U
k
, care este el nsusi un reector de ordin n k + 1. T inand seama
de aceasta observat ie, precum si de modul de act iune al lui
U
k
n (5.58),
rezulta ca pasul 3.1 se reduce la aplicarea procedurii H0 vectorului
(H0)
b
k
= A(k : n, k 1)
(
b
k
din (5.59)).
Similar, pasul 3.2 se reduce la efectuarea transformarilor
A
k
U
k
A
k
si
Y
k
Y
k
U
k
din (5.58) si (5.59), ceea ce necesita aplicarea procedurilor H1
si H2 submatricelor lui A denite prin
(H1)
A
k
= A(k : n, k : n)
si respectiv
(H2) Y
k
= A(1 : n, k : n).
A SISTEMIC
b
k
| ,= 0
nainte de parcurgerea etapei k, k = 2 : n 1. Se obt ine urmatoarea
procedura de calcul.
Algoritmul 5.6 (Construieste forma superior Hessenberg
(5.47), (5.48), (5.49) a unei perechi (A, b) de ordin n cu o singura
intrare si acumuleaza transformarile. Se presupune b ,= 0).
1. k = 1
2. U
1
= H0(b)
3. A = H1(U
1
, A), A = H2(A, U
1
)
4. U = U
1
5. CONTINU
A=da
6. C^at timp CONTINU
A=da
1. r = k
2. Daca k = n
atunci
1. CONTINU
A =nu,
2. tipareste Perechea (A, b) este controlabila
5.5. FORMA HESSENBERG CONTROLABIL
A 149
altfel
1. g = A(k + 1 : n, k)
2. Daca |g| = 0
atunci
1. CONTINU
A =nu
altfel
1. k k + 1 % Etapa k, k 2
2. U
k
= H0(g)
3. A(k : n, k : n) = H1(U
k
, A(k : n, k : n)),
A(:, k : n) = H2(A(:, k : n), U
k
)
4. U(k : n, 1 : n) = H1(U
k
, U(k : n, 1 : n))
Comentarii. CONTINU
A SISTEMIC
A
unde U
1
si V 1
mm
sunt ortogonale iar
1
este diagonala de ordin r
1
> 0
cu elementele diagonale pozitive. Partit ionand V = [V
1
V
2
], unde V
1
are r
1
coloane, obt inem
B = U
1
B =
_
1
0
0 0
_ _
V
T
1
V
T
2
_
=
_
1
V
T
1
0
_
,
unde H
1
=
1
V
T
1
este evident epica de rang r
1
.
In al doilea caz obt inem
U
1
BP =
_
R
1
R
2
0 0
_
, (5.62)
unde U
1
este ortogonala iar P 1
mm
este o matrice de permutare a
coloanelor lui B, aleasa pe parcursul procedurii de triangularizare ortogo-
nala cu reectori astfel ncat matricea superior triunghiulara R
1
de ordin
r
1
sa rezulte nesingulara.
In acest caz matricea
B = U
1
B rezulta din nou
n forma (5.60) cu H
1
= [ R
1
R
2
]P
T 1
.
Dupa determinarea lui U
1
printr-una din procedurile (5.61) sau (5.62)
se aplica U
1
lui A, i.e. se calculeaza
A = U
1
AU
T
1
, si n acord cu (5.60) se
evident iaza perechea redusa (F, G) de ordin n r
1
cu r
1
intrari.
A doua armat ie din lema se demonstreaza ca n cazul m = 1, utilizand
punctul 2 al propozit iei 5.1.
A 151
unde matricele
U
2
precum si
U
2
=
_
I
r
1
0
0
U
2
_
(5.64)
sunt ortogonale iar matricea H
2
este epica de rang r
2
.
Forma nala a perechii (A, B), obt inuta prin aplicarea repetata a proce-
durii de deat ie descrisa n propozit ia 5.4, se numeste forma bloc-superior
Hessenberg si este denita prin
A
A = UAU
T
=
_
A
R
A
R
R
0 A
R
_
, B
B = UB =
_
B
R
0
_
, (5.65)
n care perechea (A
R
, B
R
), de ordin r, se gaseste n forma bloc-superior
Hessenberg controlabila
A
R
=
_
_
A
1
X X X
H
2
A
2
X X
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
H
k
A
k
_
_
, B
R
=
_
_
H
1
0
.
.
.
.
.
.
0
_
_
, (5.66)
unde toate blocurile H
i
1
riri1
sunt epice, i.e.
rangH
i
= r
i
> 0, i = 1 : k, r
0
def
= m. (5.67)
Evident avem
r =
k
i=1
r
i
n (5.68)
si n virtutea condit iilor (5.67) perechea (A
R
, B
R
) din (5.65) este contro-
labila. Mai mult, perechea init iala (A, B) este controlabila daca si numai
daca r = n, i.e. (
A,
B) = (A
R
, B
R
), si n acest caz numarul k de blocuri
din (5.66) coincide cu indicele de controlabilitate al lui (A, B).
Matricea ortogonala U 1
nn
din (5.65) rezulta prin acumularea
transformarilor part iale, i.e.
U = U
k
U
2
U
1
, (5.69)
n care U
1
se determina ca n demonstrat ia lemei 5.4, U
2
are forma (5.64)
etc. Subliniem ca n virtutea structurii lui U
2
, premultiplicarea cu U
2
nu
modica primele r
1
linii, iar postmultiplicarea cu U
T
2
nu modica primele
152 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
r
1
coloane ale matricei asupra careia act ioneaza transformarea corespunza-
toare. De asemenea, proprietat i asemanatoare au toate matricele U
i
, i =
2 : k din (5.69).
A 153
3. A = mul1(U
1
, A), A = mul2(A, U
1
)
4. U = U
1
5. r
v
= 0, r = r
1
6. CONTINU
A = da
7. C^at timp CONTINU
A = da
1. = k
2. Daca r = n
atunci
1. CONTINU
A = nu
2. Tipareste Perechea (A, B) este controlabila
altfel
1. G = A(r + 1 : n, r
v
+ 1 : r)
2. Daca |G| = 0
atunci
1. CONTINU
A = nu
altfel
1. k k + 1 % (etapa k, k 2)
2. [r
k
, U
k
, H
k
] = red(G)
3. A(r + 1 : n, r + 1 : n) =
mul1(U
k
, A(r + 1 : n, r + 1 : n),
A(1 : n, r+1 : n) = mul2(A(1 : n, r+1 : n), U
k
)
4. U(r+1 : n, 1 : n) = mul1(U
k
, U(r+1 : n, 1 : n))
5. r
v
= r, r r +r
k
Comentarii. Avand n vedere ca numarul k al etapelor de reducere
nu este apriori cunoscut, utilizam si aici variabila binara CONTINU
A cu
semnicat ia cunoscuta.
In nal, variabila r furnizeaza rangul matricei de
controlabilitate R a perechii date (A, B).
In cazul r = n, i.e. daca perechea
(A, B) este controlabila, algoritmul se opreste la instruct iunea 7.2. iar
este indicele de controlabilitate. Din contra, daca algoritmul se opreste
datorita faptului ca blocul curent G este nul, atunci perechea (A, B) nu
este controlabila, iar perechea transformata (
A,
B), furnizata de algoritmul
5.7, are forma (5.65), n care r < n.
Forma Hessenberg observabila
Pentru analiza proprietat ilor de observabilitate a unei perechi (C, A) de
ordin n cu l iesiri, l 1, se procedeaza prin dualitate. Presupunem C ,= 0
154 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
si e q
1
= rang C > 0. Lema de deat ie observabila (vezi propozit ia 5.4)
arma existent a unei matrice ortogonale U
1
1
nn
, astfel ncat
A
A = U
1
AU
T
1
=
_
A
1
H
X F
_
,
C
C = CU
T
1
=
_
G
1
0
,
(5.74)
unde matricea G
1
1
lq
1
este monica, i.e. rangG
1
= q
1
.
In plus, perechea
(C, A) este observabila daca si numai daca perechea redusa (H, F) este
observabila.
Prin aplicarea repetata a acestei proceduri de deat ie, sau echivalent,
prin aplicarea schemei de dualizare relativ la algoritmul 5.7, se obt ine forma
bloc-inferior Hessenberg a perechii (C, A), denita prin
A
A = UAU
T
=
_
A
Q
0
A
QQ
A
Q
_
,
C
C = CU
T
=
_
C
Q
0
,
(5.75)
n care perechea (C
Q
, A
Q
) de ordin q se aa n forma bloc-inferior
Hessenberg observabila
A
Q
=
_
_
A
1
G
2
X A
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
X X
.
.
.
G
k
X X A
k
_
_
, C
Q
=
_
G
1
0 0
, (5.76)
unde toate blocurile G
i
1
q
i1
q
i
sunt monice, i.e.
rangG
i
= q
i
> 0, i = 1 : k, q
0
def
= l. (5.77)
Evident avem
q =
k
i=1
q
i
n (5.78)
si n virtutea condit iilor (5.77) perechea (C
Q
, A
Q
) din (5.75) este observa-
bila.
In plus, perechea init iala (C, A) este observabila daca si numai daca
q = n, i.e. (
C,
A) = (C
Q
, A
Q
), si n acest caz numarul k de blocuri din
(5.76) coincide cu indicele de observabilitate al lui (C, A).
5.6. DESCOMPUNEREA CONTROLABIL
A 155
A SISTEMIC
T
u
B
R
A
R
A
R
R
A
R
_
'
`
_ '
(a)
d
d
d
c
y
A
Q
A
Q
Q
A
Q
C
Q
_
'
`
_ '
(b)
Figura 5.1: Semnicat ia sistemica a descompunerii controlabile (a) si a
descompunerii observabile (b).
si, utilizand aceleasi rat ionamente ca n 2, constatam ca n coordonatele
init iale coloanele matricei U
T
R
formeaza o baz a ortogonala a subspat iului
controlabil 1.
In coordonatele lui 1
n
corespunzatoare reprezentarii (5.65) subspat iul
controlabil 1 este format din totalitatea vectorilor de forma
x =
_
x
R
0
_
r
r
, (5.80)
iar structura perechii transformate (
A,
B) din (5.65) arata ca
(i) subspat iul 1 este A-invariant si
(ii) cont ine ImB.
Mai mult, n virtutea faptului ca perechea (A
R
, B
R
) este controlabila
(deci nu poate descompusa la randul ei ca n (5.65)), subspat iul 1 este
cel mai mic subspat iu al lui 1
n
cu proprietat ile de mai sus.
1 poate numit
astfel.
In aplicat ii se considera de obicei complementul ortogonal
1 = 1
,
pentru care matricea U
T
R
deneste evident o baza ortogonala. (Simpli-
tatea acestor construct ii se datoreaza faptului ca matricea de transformare
(5.80) este ortogonala, i.e. coloanele lui U
T
constituie o baza ortogonala a
ntregului spat iu al starilor 1
n
).
5.7. STABILIZABILITATEA SI DETECTABILITATEA 157
$
$
$
$
$
$
$
$
$
$
$
$
$
$$
0
1
ImB
1
1
A SISTEMIC
A
slaba decat controlabilitatea, numita stabilizabilitate si denita cu referire
la descompunerea controlabila (5.65).
Denit ia 5.6 Perechea (A, B) este stabilizabila daca partea sa total ne-
controlabila A
R
este stabila sau, echivalent, polii csi ai perechii (A, B)
sunt stabili.
In aplicat ii,
partea nestabilizabila modeleaza perturbat iile exterioare persistente ce ac-
t ioneaza asupra sistemului dat, considerat stabilizabil).
A = UAU
T
=
_
A
R
A
R
R
0 A
R
_
,
B = UB =
_
B
R
0
_
,
utilizand algoritmul 5.7 si se aplica transformarea U ma-
tricei C, i.e.
C = CU
T
= [ C
R
C
R
] .
3. Se ret ine partea controlabila S
m
= (A
R
, B
R
, C
R
) a triple-
tului transformat, unde
A
R
=
A(1 : r, 1 : r), B
R
=
B(1 : r, :)
este partea controlabila a perechii (A, B) iar
C
R
=
C( : , 1 : r).
Procedurile de identicare sistemica, bazate pe teoria realizarii sisteme-
lor liniare, sunt prezentate n ANEXA A.
Procedurile de reduct ie dimensionala aproximativa a unor sisteme con-
trolabile si observabile (deci minimale) au la baza conceptul fundamental
de realizare echilibrata si vor expuse n 10.
160 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
5.9 Gramieni de controlabilitate si
observabilitate
Pentru a introduce cat mai simplu not iunea de gramian n contextul sis-
temic al discut iei noastre, consideram din nou sistemul liniar discret S =
(A, B, C) denit prin relat iile (5.17).
Utilizand matricea de controlabilitate n k pasi R
k
a perechii (A, B) si
t inand seama de relat iile (5.19) si (5.22) denim gramianul de controlabili-
tate n k pasi prin
Y
k
def
= R
k
R
T
k
=
k1
i=0
A
i
BB
T
(A
T
)
i
. (5.81)
Evident, Y
k
este o matrice n n simetrica pozitiv semidenita, pe scurt
Y
k
= Y
T
k
0, k 1. T inand seama de relat ia (5.38) putem scrie
Y
k+1
= R
k+1
R
T
k+1
=
_
B AR
k
_
B
T
R
T
k
A
T
_
,
prin urmare sirul Y
k
satisface ecuat ia matriceala recurenta Liapunov dis-
creta (DEML)
Y
k+1
= BB
T
+AY
k
A
T
, (5.82)
cu condit ia init iala Y
1
= BB
T
(sau Y
0
= 0).
Prin dualitate, utilizand matricea de observabilitate n k pasi Q
k
a
perechii (C, A), denim gramianul de observabilitate n k pasi prin
X
k
def
= Q
T
k
Q
k
=
k1
i=0
(A
T
)
i
C
T
CA
i
, (5.83)
unde X
k
= X
T
k
0, k 1 satisface DEML
X
k+1
= C
T
C +A
T
X
k
A (5.84)
cu condit ia init iala X
1
= C
T
C (sau X
0
= 0).
Daca matricea discreta A este stabila, i.e. [(A)[ < 1, atunci se poate
arata usor ca pentru k sirurile (5.81) si (5.83) converg catre limitele
Y = Y
T
0 si respectiv X = X
T
0 care satisfac evident ecuat iile
matriceale algebrice Liapunov discrete (DEMAL)
Y = BB
T
+AY A
T
(5.85)
5.9. GRAMIENI 161
si respectiv
X = C
T
C +A
T
XA. (5.86)
A SISTEMIC
A
Pentru precizare, n continuare ne referim la ecuat ia (5.86).
Schema de iterare directa, care utilizeaza ecuat ia recurenta corespun-
zatoare (5.84), este neecienta deoarece, de regula, convergent a X
k
X
este lenta (cu atat mai lenta cu cat raza spectrala (A) < 1 a matricei
discrete A este mai apropiata de 1, vezi observat ia 5.1). Pe de alta parte,
matricele X
k
sunt pozitiv semidenite, ceea ce permite utilizarea avanta-
joasa pe parcursul calculelor a unor factorizari de tip Cholesky. Avand n
vedere aceste observat ii de principiu, n practica se recomanda doua tipuri
de scheme iterative.
Algoritmii de dublare urmaresc accelerarea convergent ei. Ideea consta
n a efectua iterarea cu pas mereu dublat, i.e. conform schemei
X
1
X
2
X
4
X
8
. . . ,
fara a mai calcula iterat iile intermediare. Notam
X
(s)
= X
k
, k = 2
s
, s 0. (5.89)
Prin calcul direct, din (5.83) sau (5.84) rezulta
X
(0)
= X
1
= C
T
C,
X
(1)
= X
2
= A
T
X
(0)
A+X
(0)
,
X
(2)
= X
4
= (A
2
)
T
X
(1)
A
2
+X
(1)
si n general
X
(s+1)
= (A
k
)
T
X
(s)
A
k
+X
(s)
. (5.90)
Prin urmare, schema de iterare accelerata, bazata pe aplicarea formulei
de dublare (5.90), poate rezumata astfel.
Algoritmul 5.9 (Rezolva DEMAL (5.86) n cazul A stabila
utilizand un algoritm de dublare).
1. CONTINU
A = da
2. X = C
T
C
3. C^at timp CONTINU
A = da
1. X(+1) = AXA
T
+X
2. Daca |X(+1) X| < tol|X|
atunci
1. CONTINU
A = nu
altfel
5.9. GRAMIENI 163
1. X = X(+1)
2. A A
2
.
La ecare iterat ie sunt necesare 2n
3
nmult iri (se exploateaza simetria
lui X), deci schema se justica daca (A) nu este prea aproape de 1 i.e.
convergent a este sucient de rapida.
Algoritmii de radacin a patrata urmaresc exploatarea caracterului po-
zitiv (semi)denit al matricelor X
k
din (5.83) prin determinarea factorilor
Cholesky
X
k
= L
T
k
L
k
0, (5.91)
unde, evident, se poate lua L
1
= C. Daca pentru k 1 matricea L
k
este
cunoscuta atunci L
k+1
se determina din (5.84), observand ca trebuie sa
avem
X
k+1
= L
T
k+1
L
k+1
= C
T
C +A
T
L
T
k
L
k
A =
_
C
T
(L
k
A)
T
_
C
L
k
A
_
.
Este clar ca putem lua
_
L
k+1
0
_
= U
k
_
C
L
k
A
_
, (5.92)
unde U
k
este o matrice ortogonala (e.g. o secvent a de reectori) care aduce
matricea bloc din dreapta la forma superior triunghiulara. (
In consecint a,
toate matricele sirului L
k
, k 2 rezulta superior triunghiulare).
Prin urmare, schema de iterare compacta, bazata pe aplicarea relat iei
(5.92) poate rezumata astfel.
Algoritmul 5.10 (Rezolva DEMAL (5.86) n cazul A sta-
bila utilizand un algoritm de radacina patrata, bazat pe trian-
gularizarea ortogonala).
1. CONTINU
A = da
2. L = C
3. C^at timp CONTINU
A = da
1.
_
L(+1)
0
_
= U
_
C
AL
_
,
2. Daca |L(+1) L| < tol|L|
atunci
1. CONTINU
A = nu
altfel
164 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
1. L = L(+1).
Datorita convergent ei n general lente, schema de radacina patrata, a
carei idee a fost expusa mai sus relativ la DEMAL (5.86), se utilizeaza avan-
tajos mai ales pentru rezolvarea DEML (5.84) si n special a unor ecuat ii
matriceale recurente de tip Riccati, la care pastrarea caracterului pozitiv
(semi-)denit al solut iei prin iterare directa este problematica.
In legatura
cu aceasta ment iune, observam ca schemele de radacina patrata raman va-
labile ca atare chiar daca sistemul discret S = (A, B, C) este variabil n
timp, i.e. matricele A = A
k
, B = B
k
, C = C
k
variaza de la pas la pas.
5.10 Echilibrarea sistemelor liniare
Consideram sistemul liniar stabil, controlabil si observabil S = (A, B, C) si
e Y = Y
T
> 0 si X = X
T
> 0 gramienii de controlabilitate si observabil-
itate, denit i ca solut ii unice ale EMAL (5.87) si respectiv (5.88).
Utilizand transformarea de asemanare
A = TAT
1
,
B = TB,
C = CT
1
, (5.93)
obt inem usor
0 =
B
B
T
+
A
Y +
Y
A
T
,
0 =
C
T
C +
A
T
X +
X
A,
unde gramienii transformat i au expresiile
Y = TY T
T
,
X = T
T
XT
1
. (5.94)
In particular avem
Y
X = T(Y X)T
1
, (5.95)
deci valorile proprii (Y X) ale produsului Y X sunt invariant i ai sistemului
S = (A, B, C) n raport cu transformarea (5.93). (Se poate arata ca aceste
valori proprii sunt pozitive si coincid cu patratul valorilor singulare Hankel
ale lui S, [ X]). Mai mult, aceste valori proprii pot interpretate ntr-un
sens ce va precizat mai departe ca expresii cantitative ale gradelor
de transfer intrare-iesire atasate (celor n componente ale starii x 1
n
a)
sistemului S = (A, B, C).
Pe de alta parte, utilizand transformarea de asemanare (5.93), n care
matricea T = U este ortogonala, relat iile (5.94) devin
Y = UY U
T
,
X = UXU
T
. (5.96)
5.10. ECHILIBRAREA SISTEMELOR LINIARE 165
Prin urmare, n acest caz se conserva separat valorile proprii (evident po-
zitive) ale matricelor simetrice pozitiv denite Y si X. Interpretand aceste
valori proprii ca expresii cantitative ale gradelor de controlabilitate si re-
spectiv observabilitate atasate lui S, putem spune sugestiv ca aceste grade
sunt invariant i ortogonali ai sistemului S. De aceea, n problemele de
analiza separata a controlabilitat ii si observabilitat ii, abordate n 38,
am utilizat cu succes transformari ortogonale.
Din contra, n acest paragraf, dedicat analizei proprietat ilor de transfer
ale sistemului S, rezultate (ntr-un sens precizat) prin compunerea pro-
prietat ilor de controlabilitate si observabilitate, vom utiliza transformari
(5.93) de forma generala, n particular, cu scopul echilibrarii (egalarii)
gradelor corespunzatoare de controlabilitate si observabilitate.
Enunt ul precis al problemei echilibrarii este urmatorul.
Se da sistemul S = (A, B, C), presupus stabil, controlabil si observabil.
Sa se determine o matrice de transformare T 1
nn
inversabila astfel
ncat gramienii transformat i (5.94) sa e diagonali si egali, i.e.
X =
Y = , (5.97)
unde este o matrice diagonala cu elemente pozitive. (Conform relat iei
(5.95) aceste elemente reprezinta valorile singulare Hankel ale lui S).
Denit ia 5.10 Daca matricea inversabila T 1
nn
este o solut ie a pro-
blemei echilibrarii formulate mai sus relativ la sistemul S, atunci sistemul
transformat
S = (
A,
B,
C), denit prin relat iile (5.93), se numeste repre-
zentare echilibrata a lui S.
Mai general, orice sistem
S = (
A,
B,
C) cu proprietatea (5.97) se nu-
meste echilibrat.
Solut ia problemei echilibrarii n formularea de mai sus este simpla din
punct de vedere principial si, n esent a, se reduce la diagonalizarea simulta-
n a a doua matrice simetrice, ambele pozitiv denite, prin transformari de
congruent a de forma (5.94).
Vom determina matricea cautata T sub forma
T = T
3
T
2
T
1
, (5.98)
unde transformarile T
k
, k = 1 : 3 se determina succesiv.
A SISTEMIC
A
unde M este inferior triunghiulara inversabila si luam T
1
= M
1
. Aplicand
(5.94) obt inem
Y
1
def
= T
1
Y T
T
1
= M
1
(MM
T
)M
T
= I,
X
1
def
= M
T
XM.
(5.100)
2
U, (5.101)
unde coloanele matricei ortogonale U
T
sunt vectorii proprii ai matricei
(simetrice) X
1
iar notat ia
2
def
= diag(
2
1
, . . . ,
2
n
) se justica t inand seama
ca valorile proprii i
def
=
i
2
ale matricei X
1
sunt strict pozitive. Convenim
sa alegem
i
> 0, i = 1 : n si luam T
2
= U. Aplicand nca o data (5.94)
obt inem
Y
2
def
= T
2
Y
1
T
T
2
= UU
T
= I,
X
2
def
= U(U
T
2
U)U
T
=
2
.
(5.102)
Acum ambele matrice X
2
si Y
2
sunt diagonale. Pentru a le face egale,
luam T
3
=
1/2
si aplicand ultima data (5.94) obt inem ntr-adevar
Y = T
3
Y
3
T
T
3
=
1/2
1/2
= ,
X =
1/2
(
2
)
1/2
= .
(5.103)
1/2
(Y X).
Este clar ca procedura de mai sus admite o versiune duala, care ncepe
cu factorizarea Cholesky X = L
T
L a matricei X > 0, unde L este superior
triunghiulara inversabila, etc.
Pentru a evident ia simetria de principiu a procedurii de echilibrare,
consideram ambele factorizari Cholesky
Y = MM
T
, X = L
T
L (5.105)
5.10. ECHILIBRAREA SISTEMELOR LINIARE 167
si formam produsul LM
2
. Aplicand algoritmul de descompunere a valorilor
singulare (DVS) obt inem
LM = V
T
U, (5.106)
unde U, V sunt matrice ortogonale,
def
= (
1
, . . . ,
n
) este diagonala, iar
1
2
. . .
n
> 0 (5.107)
sunt valorile singulare corespunzatoare. Transformarea cautata T poate
exprimata prin formulele echivalente
T =
1/2
UM
1
, respectiv T =
1/2
V L (5.108)
si conduce la realizarea egalitat ii dorite (5.97), unde n plus satisface
condit ia de ordonare (5.107).
Prin urmare, procedura de echilibrare simetrica, bazata pe relat iile
(5.105) si (5.106), poate rezumata astfel.
Algoritmul 5.11 (Se echilibreaza sistemul S = (A, B, C),
presupus stabil, controlabil si observabil).
1. Se aduce matricea A la forma Schur, i.e. A U
0
AU
T
0
,
utilizand algoritmul QR cu acumularea transformarilor.
2. Se face B U
0
B si C CU
T
0
.
3. Se rezolva EMAL (5.87) si (5.88), t inand seama ca ma-
tricele A si A
T
sunt triunghiulare.
4. Se calculeaza factorii Cholesky L si M conform relat iei
(5.105).
5. Se efectueaza produsul LM si se calculeaza DVS (5.106).
6. Se calculeaza matricea de transformare T conform (5.108).
7. Se face A TAT
1
, B TB si C CT
1
.
Comentarii. Pasii 1 si 2 au drept scop reducerea efortului de calcul im-
plicat de rezolvarea ambelor EMAL (5.87) si (5.88) prin metodele expuse
n capitolul 1, ntrucat matricea A este adusa la forma Schur o singura
dat a. Utilizand o procedura speciala de tip radacina patrata, propusa de
Hammarling [ 17 ], este posibila contragerea pasilor 3 si 4, i.e. calculul di-
rect al factorilor Cholesky L si M fara a determina explicit solut iile X si Y
2
Avand n vedere denit iile (5.81) si (5.83), matricele M si L din (5.105) constituie
versiuni prescurtate ale matricelor de controlabilitate si observabilitate, deci matricea
H = LM are o semnicat ie similara n raport cu matricea Hankel H
= QR
.
168 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
ale EMAL.
In general, procedura de echilibrare rezumata prin algoritmul
5.11, care n esent a reprezinta analogul sistemic al procedurii DVS, este
susceptibila de ameliorari vizand eliminarea a cat mai multe cantitat i inter-
mediare n favoarea operarii directe asupra datelor primare S = (A, B, C)
ale sistemului considerat. Caile prin care acest obiectiv de principiu poate
cel mai bine realizat urmeaza nca a descoperite.
Dintre aplicat iile procedurii de echilibrare, expunem mai jos numai
tehnicile de reduct ie dimensionala a unui sistem S = (A, B, C, D) n scopul
eliminarii starilor neesent iale din punctul de vedere al transferului intrare-
iesire.
Aprecierea caracterului esent ial, respectiv neesent ial, al variabilelor de
stare x
i
1, i = 1 : n se face pe forma echilibrata
S = (
A,
B,
C,
D)
satisfacand condit ia (5.97),n care elementele matricei diagonale sunt or-
donate n acord cu (5.107). Subliniem ca matricele
A,
B,
C ale lui
S rezulta
aplicand algoritmul 5.11 tripletului (A, B, C) iar
D = D.
Fie > 0 un numar dat sucient de mic, nt eles ca prag de semnicat ie,
si e t cel mai mare numar ntreg astfel ncat
0 t n cu
i
, i = 1 : t. (5.109)
Sistemul de ordin redus S
t
va de ordin t si, n esent a, se obt ine eliminand
starile x
j
, j = t + 1 : n corespunzatoare valorilor singulare nesemnicative
j
< , j = t + 1 : n.
Pentru a descrie succint cele doua modalitat i principale de calcul ale
matricelor sistemului redus S
t
, consideram partit ia matricelor sistemului
echilibrat
S denita prin
A =
_
A
1
A
12
A
21
A
2
_
,
B =
_
B
1
B
2
_
,
C =
_
C
1
C
2
,
D = D,
(5.110)
unde A
1
si B
1
au t linii iar A
1
si C
1
au t coloane.
I. Prima modalitate de reduct ie corespunde trunchierii directe a lui
S,
conform relat iei
S
t
= (A
1
, B
1
, C
1
, D
1
), (5.111)
prin urmare, matricele sistemului S
t
, dispuse sugestiv sub forma
S
t
=
_
A
1
B
1
C
1
D
1
_
, (5.112)
5.10. ECHILIBRAREA SISTEMELOR LINIARE 169
rezulta prin inspect ie din (5.110).
II. A doua modalitate de reduct ie, preferent ial utilizata n practica, co-
respunde unei trunchieri compensate n scopul conservarii transferului n
regim stat ionar constant al sistemelor S si
S, i.e. al matricei de amplicare
K
def
= T(0) = D + (sI A)
1
B
s=0
. (5.113)
Utilizand idei specice metodei perturbat iilor singulare, scriem ecuat iile lui
S sub forma
x
1
= A
1
x
1
+A
12
x
2
+B
1
u
x
2
= A
21
x
2
+A
2
x
2
+B
2
u
y = C
1
x
1
+C
2
x
2
+Du
(5.114)
si presupunand x
2
= const, i.e. x
2
= 0, din a doua ecuat ie gasim
x
2
= A
1
2
(A
21
x
1
+B
2
u) .
Introducand aceasta expresie n celelalte doua ecuat ii, obt inem
x
1
= (A
1
A
12
A
2
1
A
21
)x
1
+ (B
1
A
12
A
2
1
B
2
)u
y = (C
1
C
2
A
2
1
A
21
x
1
+ ( D C
2
A
2
1
B
2
)u
deci trunchierea compensata S
t
a lui S este
S
t
= (A
1
A
12
A
1
2
A
21
, B
1
A
12
A
1
2
B
2
, C
1
C
2
A
1
2
A
21
, D C
2
A
1
2
B
2
).
(5.115)
Prin urmare, matricele lui S
t
se calculeaza acum utilizand (5.112) si efec-
tuand actualizarea
S
t
S
t
_
A
12
C
2
_
A
1
2
_
A
21
B
2
. (5.116)
z=1
, (5.117)
scriem ecuat iile lui
S sub forma
x
1
(+1) = A
1
x
1
+A
12
x
2
+B
1
u
x
2
(+1) = A
21
x
1
+A
2
x
2
+B
2
u
y = C
1
x
1
+C
2
x
2
+Du
(5.118)
170 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
si presupunand x
2
=const, i.e. x
2
(+1) = x
2
, din a doua ecuat ie gasim
x
2
= (I A
2
)
1
(A
21
x
1
+B
1
u)
Prin urmare, trunchierea compensata a unui sistem discret este denita tot
de (5.115) sau (5.116), n care matricea (sI A
2
)[
s=0
= A
2
se nlocuieste
cu (zI A
2
)[
z=1
= I A
2
. Redactarea algoritmilor este propusa cititorului
sub forma de exercit ii.
Programe MATLAB disponibile
Testarea stabilitat ii se face conform algoritmului 5.1, i.e. calculand valo-
rile proprii ale matricei A a sistemului cu funct ia eig. Pentru obt inerea
formei Schur ordonate, necesara n algoritmul 5.2, se utilizeaza funct ia
schord. Construct ia matricei de controlabilitate R a perechii (A, B) se
face cu funct ia ctrb, care implementeaza algoritmul 5.4, mai precis versi-
unea acestuia bazata pe formula (5.38). Pentru construct ia formei bloc-
superior Hessenberg a unei perechi (A, B) este disponibila funct ia ctrbf,
care implementeaza algoritmul 5.7 cu blocurile permutate n ordine inversa.
Construct ia unei realizari minimale (vezi algoritmul 5.8) se poate face uti-
lizand funct ia minreal. Pentru calculul gramienilor de controlabilitate si
observabilitate sunt disponibile funct iile gram si dgram, care apeleaza,
evident, lyap si dlyap. Echilibrarea unei realizari stabile si minimale se
efectueaza cu balreal, care implementeaza o versiune neoptimizata a algo-
ritmului 5.11. (
A SISTEMIC
A
E 5.10 Presupunand data o funct ie de transfer T(s) ntr-una din formele
T(s) =
(s
j
)
(s
i
)
, respectiv T(s) =
r
i
s
i
,
scriet i o realizare de stare S = (A, b, c
T
) n forma (5.11) si indicat i baze
(ortogonale) pentru subspat iile A
(A) si
A
+
(A). Cum trebuie procedat
daca T(s) = N(s)/p(s) este data ca raport a doua polinoame ?
E 5.11 Formulat i si rezolvat i versiunea discreta a exercit iului 5.10.
E 5.12 Presupunand ca matricea A este simpla, scriet i algoritmul de
descompunere spectrala bazat pe calculul valorilor si vectorilor proprii ai
matricei A si comparat i-l cu algoritmul 5.3. Care este preferabil si de ce ?
E 5.13 Utilizand algoritmul QZn locul algoritmului QR, analizat i posibi-
litat ile de extindere a algoritmilor 5.2 si 5.3 la cazul sistemelor generalizate
(de tip descriptor, vezi exercit iul 5.6).
E 5.14 Formulat i si rezolvat i exercit iul 5.12 n cazul sistemelor generali-
zate.
E 5.15 Discutat i controlabilitatea si observabilitatea unui sistem S =
(A, b, c
T
) scris n forma standard controlabila. Idem, pentru forma standard
observabila.
E 5.16 Se da o funct ie de transfer discreta T(z) = N(z)/p(z). Sa se scrie o
realizare de stare S = (A, b, c
T
) astfel ncat problema (5.26) a determinarii
sirului de comenzi de efort minim sa e cat mai simpla. Scriet i algoritmul
de calcul corespunzator.
E 5.17 Se da o funct ie de tranfer discreta T(z) = N(z)/p(z). Sa se scrie
o realizare de stare S = (A, b, c
T
) astfel ncat problema (5.36) a deter-
minarii unei estimari optimale a starii init iale sa e cat mai simpla. Scriet i
algoritmul de calcul corespunzator.
E 5.18 Analizat i posibilitat ile de extindere a solut iilor exercit iilor 5.15 si
5.16 n cazul unei matrice de transfer T(z) 1
lm
(z). Considerat i separat
cazurile m = 1, l = 1 si m, l > 1.
E 5.19 Scriet i o realizare de stare S = (A, b, c
T
) a funct iei de transfer
T(z) = N(z)/p(z) astfel ncat R(A, b) = I. Idem, astfel ncat Q(c
T
, A) = I.
= x
a sistemului de ecuat ii
(5.26), utilizand transformari ortogonale.
E 5.24 Obt inet i condit ii suciente simple de controlabilitate si observa-
bilitate a conexiunilor serie, paralel si n circuit nchis. Ce putet i arma
despre stabilitatea acestor conexiuni ?
E 5.25 Extindet i propozit ia 5.1 precum si duala sa n cazul sistemelor
generalizate (vezi exercit iul 5.6). Discutat i realizarea numerica a testelor
corespunzatoare.
E 5.26 Se da un triplet S = (A, B, C). Indicat i (cel put in doua) proceduri
de calcul a unei baze ortogonale pentru subspat iul controlabil 1
def
= ImR al
perechii (A, B). Idem, pentru subspat iul neobservabil ^
def
= KerQ.
E 5.27 Formulat i problemele de calcul (5.26) si (5.36) n cazul unui sistem
S nu neaparat controlabil si observabil.
E 5.28 Scriet i programul MATLAB care implementeaza algoritmul 5.6 si
testat i-l considerand perechi (A, b) adecvat alese.
Indicat ie. Scriet i o funct ie MATLAB care genereaza o pereche (
A,
b)
de ordin n dat, nu neaparat controlabila, utilizand forma (5.47), n care
perechea controlabil a (A
R
, b
R
) de ordin r n este n FSC, iar A
R
R
si A
R
sunt generate aleator. Perechea dorita (A, b) se obt ine aplicand lui (
A,
b)
o transformare de asemanare oarecare, i.e. (A, b) = (S
AS
1
, S
b), unde
matricea nesingulara S poate , de asemenea, aleasa aleator.
E 5.29 Utilizand programul MATLAB ce implementeaza algoritmul 5.4,
bazat pe construct ia matricei de controlabilitate, ilustrat i fenomenul de
necontrolabilitate numerica a perechilor (A, b) cu o singura intrare, ur-
marind variat ia numarului de condit ionare cond(R) n raport cu cresterea
174 CAPITOLUL 5. PROCEDURI DE ANALIZ
A SISTEMIC
A
ordinului perechii. Comentat i comparativ rezultatele numerice obt inute
utilizand procedura din exercit iul 5.28.
E 5.30 Scriet i funct iile MATLAB ce implementeaza procedura de deat ie
controlabila descrisa n propozit ia 5.4 utilizand DVS, procedura de trian-
gularizare ortogonala cu pivotarea coloanelor si, respectiv, procedura de
eliminare gaussiana cu pivotare completa.
E 5.31 Scriet i programul MATLAB care implementeaza algoritmul 5.7 si
testat i-l considerand perechi (A, B) adecvat alese.
Indicat ie. Generarea perechilor controlabile (A
R
, B
R
) cu m 1 are la
baza utilizarea FSC cu intrari decuplate descrise n capitolul 3, 3. Indicele
de controlabilitate al perechii astfel obt inute coincide cu cel mai mare
indice de controlabilitate al perechilor diagonale din FSC.
E 5.32 Considerat i un sistem S = (A, B, C), nu neaparat controlabil
sau observabil, avand perechea (A, B) de forma (5.65), unde (A
R
, B
R
) este
controlabila si e C
R
= C(: , 1 : r). Aratat i ca S si S
R
def
= (A
R
, B
R
, C
R
) au
aceeasi matrice de transfer, mai precis avem
T(s)
def
= C(sI A)
1
B = C
R
(sI A
R
)
1
B
R
. (5.119)
Egalitatea (5.119) arata ca polii csi (A
R
) corespunzatori part ii necontro-
labile a perechii (A, B) sunt poli simplicabili ai lui T(s). Prin dualitate,
aceeasi proprietate apart ine polilor csi (A
Q
) corespunzatori part ii neob-
servabile a perechii (C, A).
E 5.33 Aratat i ca n cazul SISO, sistemul S = (A, b, c
T
) este o realizare
minimala a funct iei de transfer ireductibile T(s) = N(s)/p(s) daca si numai
daca ordinul matricei A coincide cu gradul numitorului p(s). Ce sentampla
n cazul sistemelor cu mai multe intrari sau/si cu mai multe iesiri ?
E 5.34 O matrice de transfer T(s) se numeste stabila daca polii tuturor
elementelor lui T(s) sunt stabili, i.e. au partea reala strict negativa, re-
spectiv au modulul strict subunitar. Aratat i ca T(s) este stabila daca si
numai daca orice realizare minimala S
m
= (A
m
, B
m
, C
m
) a lui T(s) este
stabila. Scriet i algoritmul de testare a stabilitat ii unei matrice de transfer
T(s) date.
E 5.35 Enumerat i cateva proprietat i semnicative ale realizarilor stabili-
zabile sau/si detectabile.
5.10. ECHILIBRAREA SISTEMELOR LINIARE 175
E 5.36 Indicat i cateva metode de calcul a unei baze a subspat iului stabili-
zabil o = 1+A
trT
H
(i)T(i)d .
(
A SISTEMIC
A
Bibliograe
[ 1 ] Ionescu V., Popeea C. Conducerea structural a a sisteme-
lor liniare, ET Bucuresti, 1986.
[ 2 ] Ionescu V. Introduceren teoria structural a a sistemelor
liniare, EA Bucuresti, 1975.
[ 3 ] Aplevich J.D. Direct Computation of Canonical Forms for Linear
Systems by Elementary Matrix Operations, IEEE Trans. AC - 19, No.
2, pp. 124 126, 1974.
[ 4 ] Aplevich J.D. Tableau Methods for Analysis and Design of Linear
Systems, Automatica, Vol. 15, pp. 419 429, 1979.
[ 5 ] Varga A. Numerically Reliable Algorithm to Test Controllability,
Electron. Lett. 15, pp. 454 455, 1981.
[ 6 ] Varga A. Numerically Stable Algorithm for Standard Controllability
Form, Electron. Lett. 17, pp. 74 75, 1981.
[ 7 ] Klema V., Laub A.J. The Singular Value Decomposition: Its Com-
putation and Some Applications, IEEE Trans. AC - 25, No. 2, pp.
164 176, 1980.
[ 8 ] Moore B.C. Principal Component Analysis in Linear Systems Con-
trolability, Observability and Model Reduction, IEEE Trans. AC - 26,
No. 2, pp. 17 32, 1981.
[ 9 ] Laub A.J., Heath M.T., Paige C.C., Ward R.C. Computation
of System Balancing Transformations, IEEE Trans. AC - 32, No. 2,
1987.
[ 10 ] Uhlig F. Simultaneous Block - Diagonalization of Two Real Sym-
metric Matrices. Linear Algebra and Its Applications, Vol. 7, pp.
281 289, 1973.
[ 11 ] Heath M.T., Laub A.J., Paige C.C., Ward R.C. Computing
SVD of a Product of Two Matrices, SIAM J. Sci. Stat. Comp., Vol.
7, pp. 1147 1159, 1986.
[ 12 ] Hammarling S.J. Numerical Solution of the Stable, Non-negative
Denite Lyapunov Equations, IMA J. numer. Anal., Vol. 2, pp. 303
323, 1982.