+ All Categories
Home > Documents > MN Metode Numerice Carte(Matematici)

MN Metode Numerice Carte(Matematici)

Date post: 10-Jun-2015
Category:
Upload: storm-rider
View: 2,448 times
Download: 12 times
Share this document with a friend
Description:
Metode Numerice
177
B. Jora C. Popeea S. Barbulea METODE DE CALCUL NUMERIC ˆ IN AUTOMATIC ˘ A SISTEME LINIARE EDITURA ENCICLOPEDIC ˘ A Bucure¸ sti 1996
Transcript
Page 1: MN Metode Numerice Carte(Matematici)

B. Jora C. Popeea S. Barbulea

METODE DE CALCULNUMERIC INAUTOMATICA

SISTEME LINIARE

EDITURA ENCICLOPEDICABucuresti 1996

Page 2: MN Metode Numerice Carte(Matematici)

Cuprins

Cap. 1. Rezolvarea ecuatiilor matriciale liniare

1.1 Ecuatii matriciale liniare 15

1.2 Rezolvarea ecuatiilor matriciale de tip AX = C 17

1.3 Rezolvarea ecuatiilor Sylvester 20

1.4 Rezolvarea ecuatiilor Liapunov 27

Exercitii 31

Bibliografie 34

Cap. 2. Calculul functiilor de matrici. Exponentialamatriciala

2.1 Functii de matrici 35

2.2 Calculul functiilor de matrici 46

2.3 Calculul exponentialei matriciale 51

Exercitii 60

Bibliografie 63

Cap. 3. Tehnici de procesare a modelelor sistemiceliniare

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

Exercitii 97

1

Page 3: MN Metode Numerice Carte(Matematici)

2

Bibliografie 100

Cap. 4. Calculul raspunsului ın timp al sistemelorliniare

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 stationar 112

4.5 Calculul caracteristicilor de frecventa 115

4.6 Raspunsul sistemelor liniare discrete 117

Exercitii 118

Bibliografie 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

Exercitii 168

Bibliografie 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

Page 4: MN Metode Numerice Carte(Matematici)

3

Exercitii 224

Bibliografie 229

Cap. 7. Rezolvarea ecuatiilor matriciale Riccati

7.1 Problema de comanda optimala liniar-patratica 231

Ecuatia matriciala Riccati (EMR) 238

7.2 Problema de comanda optimala liniar-patratica discreta 245

Ecuatia matriciala Riccati discreta (DEMR) 249

7.3 Problema liniar-patratica cu orizont infinit 259

Ecuatia matriciala algebrica Riccati (EMAR) 260

Calculul solutiei stabilizatoare a EMAR 261

7.4 Problema liniar-patratica discreta cu orizont infinit 274

Ecuatia matriciala algebrica Riccati discreta (DEMAR) 275

Calculul solutiei stabilizatoare a DEMAR 277

Exercitii 290

Bibliografie 296

Cap. 8. Proceduri de sinteza optimala

8.1 Generalizari ale problemelor de comanda optimala 299

8.2 Problema de estimare optimala 319

Ecuatia matriciala Riccati de estimare 320

Ecuatia matriciala Riccati de estimare discreta 326

8.3 Proceduri de sinteza sistemica 335

Exercitii 347

Bibliografie 353

Anexa A. Proceduri de identificare sistemica 357

Bibliografie 370

Page 5: MN Metode Numerice Carte(Matematici)

4

Page 6: MN Metode Numerice Carte(Matematici)

Cuvant introductiv

Lucrarea de fata reprezinta o prima parte a cursului universitar MetodeNumerice, destinat studentilor anului III al facultatii Automatica si Cal-culatoare din Universitatea POLITEHNICA din Bucuresti si, evident, poa-te fi utila tuturor studentilor de la facultatile de acelasi profil din tara.Desigur, ea poate interesa si pe alti utilizatori potentiali (studenti, cadredidactice, cercetatori, ingineri, economisti, etc.) ai metodelor moderne decalcul ın analiza si proiectarea sistemica.

Cititorul ideal al lucrarii trebuie sa posede cunostinte de baza privindmetodele de calcul numeric matricial – enumerate ın finalul acestui cuvantintroductiv – precum si unele informatii sigure asupra principalelor notiunide teoria sistemelor liniare. De asemenea, el trebuie sa aiba obisnuinta uneigandiri limpezi, ”algoritmice”, precum si pasiunea lucrului la calculator.

Desigur, cititorul real, dispunand ıntr-un grad mai mare sau mai mic decalitatile mentionate mai sus, si le poate perfectiona prin studiul lucrarii,confirmand, si pe aceasta cale, viabilitatea principiilor sistemice.

Lucrarea este structurata ın 8 capitole. Ea este ınsotita de o bibliografiede baza (cu lucrari referite prin utilizarea cifrelor romane), utila ın generalpentru abordarea tuturor temelor propuse. Bibliografii specifice selective,dar care pot fi extinse cu usurinta de catre ınsusi cititorul interesat princumularea bibliografiilor lucrarilor citate, sunt atasate fiecarui capitol. Deasemenea, lucrarea este ınsotita de o lista de notatii uzuale iar cuprinsulpoate constitui, ın acelasi timp, indice de notiuni.

Capitolul 1 completeaza cunostintele cititorului privind metodele de re-zolvare a sistemelor de ecuatii liniare cu cazul matricial ın care necunos-cutele sunt structurate ıntr-o matrice X ∈ Rm×n, m > 1, n > 1, fapt carepermite dezvoltarea unor tehnici specifice. In particular, ecuatiile matri-ciale Liapunov vor fi ıntalnite aproape ın toate capitolele lucrarii.

Capitolul 2 trateaza problema importanta a calculului functiilor de ma-trici. Un accent special este pus pe calculul exponentialei matriciale, uti-

5

Page 7: MN Metode Numerice Carte(Matematici)

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 calculpolinomial) fara de care nu este posibila abordarea niciunei probleme deanaliza sau sinteza sistemica asistate de calculator.

Capitolul 4 descrie metodele numerice de simulare, i.e. de calcul alraspunsului ın timp al sistemelor liniare la stimuli externi caracteristicipentru diverse regimuri de functionare. Aceste tehnici de simulare sunt ab-solut necesare pentru validarea demersului teoretic si calculatoriu de analizasi sinteza sistemica si reprezinta o punte de legatura esentiala catre lumeareala a experimentului fizic.

Capitolul 5 prezinta procedurile numerice de analiza a proprietatilorsistemice fundamentale (stabilitate, controlabilitate, observabilitate, etc.)precum si principalele metode de constructie a realizarilor minimale siechilibrate. In acest fel continutul acestui capitol se constituie ıntr-o colectiede algoritmi fundamentali, componente de baza ale oricarei activitati deconceptie 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 pentruasigurarea unei dinamici dorite sistemelor automate elaborate. Daca ıncazul sistemelor simple reactia dupa stare ce realizeaza alocarea este unicdeterminata si, deci, libertatile de calcul sunt strict procedurale, ın cazulsistemelor multiple apar posibilitati suplimentare de optimizare sau robus-tificare a spectrului alocat.

Capitolul 7 abordeaza, din punctul de vedere al metodelor numericede calcul, problema de sinteza liniar-patratica, care vizeaza optimizareaunui sistem liniar cu indice de calitate patratic. In aplicatii problemaliniar-patratica generala apare sub forma unor probleme cu finalitati sau cutehnici de tratare specifice. In acest context sunt prezentate metodele decalcul cele mai performante pentru rezolvarea ecuatiilor matriciale Riccati,ınsotite de analize comparative ale eficientei si stabilitatii lor numerice.

Capitolul 8 considera unele generalizari ale problemei de sinteza liniar-patratice si ilustreaza aplicarea algoritmilor de calcul stabiliti la constructiacompensatoarelor H2 si H∞ (sub)optimale.

Principalele rezultate ale expunerii sunt concretizate sub forma de al-goritmi de calcul direct implementabili iar fiecare capitol este ınsotit de unset de probleme.

Page 8: MN Metode Numerice Carte(Matematici)

7

Ne exprimam opinia ca pentru ınsusirea materialului prezentat este ab-solut necesara rezolvarea problemelor propuse si, mai ales, implementareaalgoritmilor, urmata de experimentarea lor pe exemple numerice concretesi semnificative.

Autorii multumesc colegului lor prof. Paul Flondor pentru comentariileconstructive facute pe marginea lucrarii. De asemenea, multumesc domnu-lui Marcel Popa, directorul Editurii Enciclopedice, pentru atentia plina desolicitudine cu care a urmarit aparitia prompta si ın cele mai bune conditii alucrarii. Autorii apreciaza ın mod deosebit interesul manifestat de domnuling. Sabin Stamatescu, directorul firmei ASTI Bucuresti, fata de continutullucrarii si posibilele aplicatii ale procedurilor de calcul prezentate ın con-ducerea cu calculator a proceselor industriale. In sfarsit, dar, desigur, nu ınultimul rand, multumiri se cuvin studentilor Siana Petropol, Simona Chir-vase, Stefan Murgu, Catalin Petrescu, Simona Ruxandu, Adrian Sandu,Laura Stan, Florin Roman, Madalina Zamfir, Ion Vasile care au realizatredactarea computerizata a lucrarii cu mentiunea expresa ca fara muncalor plina de daruire nimic din ce am realizat ımpreuna nu ar fi fost posibil.

∗∗ ∗

Enumeram ın continuare principalele probleme de calcul numeric ma-tricial, ımpreuna cu succinte referiri la modul de rezolvare al acestora, pecare cititorul interesat de cuprinsul lucrarii de fata este bine sa le aiba ınvedere.

1. Pentru rezolvarea unui sistem de ecuatii liniare Ax = b, ın care ma-tricea A ∈ Rn×n este inversabila, se utilizeaza procedura de triangularizareprin eliminare gaussiana cu pivotare partiala

A ← R = MA, b ← Mb,

unde R rezulta superior triunghiulara inversabila iar M este o secventa detransformari elementare stabilizate, urmata de rezolvarea – prin substitutieınapoi – a sistemului superior triunghiular rezultat. Efortul de calcul nece-sar este Nop ≈ n3/3.

In cazul simetric A = AT , se recomanda conservarea acestei proprietatiprin utilizarea schemei de eliminare simetrizate A ← D = MAMT , propusede Parlett [ III ], ın care D rezulta cvasidiagonala.

In cazul simetric pozitiv definit A = AT > 0, se impune aplicarea fac-torizarii Cholesky A = LLT .

2. Pentru rezolvarea, ın sensul celor mai mici patrate (CMMP), asistemului supradeterminat Ax = b, unde matricea A ∈ Rm×n este monica,

Page 9: MN Metode Numerice Carte(Matematici)

8

i.e. are coloanele liniar independente (rangA = n), se utilizeaza procedurade triangularizare ortogonala

A ← R = UA, b ← Ub,

unde R rezulta superior triunghiulara iar U este o secventa de transformariortogonale elementare (reflectori sau rotatii). Triangularizarea ortogonalaeste, evident, echivalenta cu factorizarea (sau descompunerea) A = QR,unde factorul ortogonal Q = UT se obtine ın forma factorizata. Efortulde calcul necesar este Nop ≈ mn2 − n3/3 iar eventuala formare explicitaa matricii Q, prin acumularea transformarilor elementare partiale, necesitaınca ≈ 2n3/3 operatii ın cazul cel mai defavorabil (m = n).

Daca matricea A nu este neaparat monica, atunci, pentru asigurareastabilitatii numerice este necesara utilizarea unei strategii adecvate de piv-otare a coloanelor, i.e. A ← R = UAP , unde P este o matrice de permutareiar R rezulta superior trapezoidala, vezi [ III ].

3. Pentru rezolvarea, ın sens CMMP, a sistemului subdeterminatAx = b, unde matricea A ∈ Rm×n este epica, i.e. are liniile liniar indepen-dente (rangA = m), se utilizeaza procedura de triangularizare ortogonala ladreapta

A ← L = AV,

unde L rezulta inferior triunghiulara. (Aceasta procedura este echivalentacu procedura precedenta reformulata prin dualitate, i.e. aplicata lui AT .)Efortul de calcul necesar este Nop ≈ nm2 −m3/3.

4. Pentru calculul valorilor proprii ale unei matrici A ∈ Rn×n seutilizeaza algoritmul QR care, ın esenta, construieste iterativ forma SchurS a lui A, i.e.

A ← S = QT AQ, (Nop ≈ 6n3),

unde S rezulta cvasisuperior triunghiulara iar Q este o secventa de trans-formari ortogonale. In caz de necesitate valorile proprii pot fi ordonatepe diagonala principala a lui S, conform oricarui criteriu de ordonare im-pus, cu ajutorul unei secvente suplimentare de transformari ortogonale deasemanare. Calculul matricii Q prin acumularea transformarilor partiale(necesara, e.g. pentru calculul vectorilor proprii) implica aproape dublareanumarului de operatii mentionat.

In cazul simetric A = AT , se utilizeaza avantajos versiunea simetrica aalgoritmului QR, i.e. A ← Λ = QT AQ, unde Λ rezulta diagonala.

5. Pentru rezolvarea problemei CMMP generale ın care matricea A ∈Rm×n este de rang nu neaparat maximal r

def= rangA ≤ min(m,n), precum

Page 10: MN Metode Numerice Carte(Matematici)

9

si a altor probleme importante de calcul numeric matricial (determinarearangului, a pseudoinversei, operatii cu subspatii liniare, etc.) se utilizeazadescompunerea valorilor singulare DVS

UT AV = Σ,

unde matricea Σ contine pe diagonala principala valorile singulare nenuleσ1 ≥ σ2 ≥ . . . ≥ σr > 0 ale lui A (restul elementelor fiind nule) iar ma-tricile U , V sunt ortogonale. (Algoritmul DVS utilizat pentru calcululdescompunerii de mai sus constituie o adaptare ingenioasa a algoritmu-lui QR simetric). Din nou, formarea factorilor ortogonali U , V necesitaacumularea (relativ costisitoare) a transformarilor partiale.

6. Pentru calculul valorilor proprii generalizate ale unui fascicol λB−A,unde A, B ∈ Rn×n, se utilizeaza algoritmul QZ care, ın esenta, aduceperechea (A, B) la forma Schur generalizata

A ← S = QT AZ, B ← T = QT AZ,

unde S rezulta cvasisuperior triunghiulara, T rezulta superior triunghiularaiar Q si Z sunt secvente de transformari ortogonale.

In cazul simetric A = AT , B = BT > 0 se utilizeaza factorizareaCholesky B = LLT si se aplica algoritmul QR simetric matricii A =L−1AL−T , ceea ce conduce la diagonalizarea simultana a ambelor matriciA, B.

Pentru detalii privind aspectele teoretice si procedurale ale problemelorde calcul matricial enumerate mai sus recomandam consultarea referintelorbibliografice [ V ], [ VI ] sau [ IX ], [ X ] .

Page 11: MN Metode Numerice Carte(Matematici)

10

Bibliografie

• Pentru programe de calcul si indicatii 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. MatrixEigensystem Routines: EISPACK Guide Extension, Springer - Ver-lag, New York, 1972.

[ III ] Dongarra J.J., Bunch J.R., Moler C.B., Stewart G.W. LINPACKUser’s Guide, SIAM Publications, Philadelphia, PA, 1978.

[ IV ] Moler C.B., Little J.N., Bangert S. PC-MATLAB User’s 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, AcademicPress, New York and London, 1973.

[ VI ] Golub G. H., Van Loan Ch. F. Matrix Computations, Secondedition, The Johns Hopkins University Press, Baltimore and London, 1988.

• Pentru chestiuni teoretice de calcul matricial:

[ VII ] Gantmaher F.R. Teoriia matrit (editia a 2-a), Ed. Nauka, Moscova,1966. (The Theory of Matrices, vols. 1-2, Chelsea, New York, 1959).

• Lucrari ın limba romana:

[ 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 robusta. Me-tode numerice de calcul., Ed. ALL, Bucuresti, 1994.

[ XI ] Iorga V., Jora B., Nicolescu C., Lopatan I., Fatu I., Programarenumerica, Ed. Teora, Bucuresti, 1996.

• Alte titluri de uz general:

Page 12: MN Metode Numerice Carte(Matematici)

11

[XII ] Astrom K.J., Wittenmark B. Computer Controlled Systems,Prentice Hall Inc., Englewood Cliffs, 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 proektirovaniesistem upravleniia, Masinostroienie, Moscova, 1990.

[ XV ] Jamshidi M., Tarokh M., Shafai B. Computer-Aided Analysisand Design of Linear Control Systems, Prentice Hall Inc., Engle-wood Cliffs, NJ, 1992.

Lista de notatii

• Notatii generale

N – multimea numerelor naturale.

Z – multimea numerelor ıntregi.

R – multimea numerelor reale.

C – multimea numerelor complexe.

C− – semiplanul stang deschis al planului variabilei complexe s.

D1(0) – discul unitate deschis al planului variabilei complexe z.

Rn – spatiul liniar n-dimensional al vectorilor (coloana) x cu n componentereale xi ∈ R, i = 1 : n.

Cn – spatiul liniar n-dimensional al vectorilor (coloana) x cu n componentecomplexe xi ∈ C, i = 1 : n.

ek, k = 1 : n – baza standard a spatiului liniar Rn, respectiv Cn.

Rm×n – spatiul liniar al matricilor cu m linii si n coloane cu elemente realeaij ∈ R, i = 1 : m, j = 1 : n.

Cm×n – spatiul liniar al matricilor cu m linii si n coloane cu elementecomplexe aij ∈ C, i = 1 : m, j = 1 : n. 1

1 In calcule, vectorii se identifica cu matricile cu o singura coloana iar scalarii seidentifica cu matricile (sau vectorii) cu un singur element.

Page 13: MN Metode Numerice Carte(Matematici)

12

AT – transpusa matricii (reale sau complexe) A.

AH – conjugata hermitica a matricii (complexe) A, i.e. AH = AT , unde Aeste conjugata complexa a lui A.

A+ – pseudoinversa normala (Moore-Penrose) a matricii A; daca A estemonica A+ =(ATA)−1

AT , daca A este epica atunci A+ =AT(AAT )−1.

σi(A), i = 1 : p, p = min(m,n) – valorile singulare ale matricii A ordonateastfel ıncat σ1 ≥ σ2 ≥ . . . ≥ σp.

σ(A) – multimea {σ1(A), σ2(A), . . . , σp(A)} a valorilor singulare ale ma-tricii A.

r = rangA – rangul matricii A, i.e. numarul valorilor singulare nenule.

In – matricea unitate de ordinul n.

A−1 – inversa matricii patrate nesingulare A, i.e. AA−1 = A−1A = In.

A−T = (A−1)T = (AT )−1

A−H = (A−1)H = (AH)−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) = maxi=1:n|λi(A)| – raza spectrala a matricii A.

cond(A) = ‖A‖ ‖A−1‖ – numarul de conditie la inversare al matricii A (‖·‖este o norma matriciala consistenta, vezi mai jos).

(x, y) = yT x – produsul scalar standard a doi vectori reali; ın cazul complexprodusul scalar este (x, y) = yHx.

‖x‖ = (x, x)1/2 – norma euclidiana a vectorului x; se noteaza ‖x‖2Q = xT Qx

unde Q este o matrice simetrica (Q = QT ).

‖x‖p = (∑n

i=1 |x|p)1/p – p-normele vectorului n-dimensional x, p ≥ 1; ın

calcule se utilizeaza ın special ‖x‖1,‖x‖2 =‖x‖ si ‖x‖∞=maxi=1:n|xi|.(A,B) = tr(BT A) (tr(BHA)) – produsul scalar a doua matrici reale (com-

plexe).

Page 14: MN Metode Numerice Carte(Matematici)

13

‖A‖F = (A, B)1/2 – norma Frobenius a matricii A,‖A‖2F =

∑mi=1

∑nj=1 |aij |2 sau ‖A‖2F =

∑ri=1 σi

2.

|A|p = (∑r

i=1 σip)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 ınspecial norma ‖A‖1 = maxj=1:n

∑mi=1 |aij |, norma spectrala ‖A‖2 =

σ1(A) si norma ‖A‖∞ = maxi=1:m

∑nj=1 |aij |.

• Notatii sistemice generale

x ∈ Rn – vectorul (marimilor) de stare.

u ∈ Rm – vectorul (marimilor) de intrare.

y ∈ Rl – vectorul (marimilor) de iesire.

S = (A, B,C, D) – reprezentarea de stare a unui sistem liniar (A ∈ Rn×n,B ∈ Rn×m, C ∈ Rl×n si D ∈ Rl×m).

T = (N, p) – reprezentarea de transfer a unui sistem liniar (N este ma-tricea coeficientilor polinoamelor ce definesc numaratorul matricii detransfer iar p este vectorul coeficientilor polinomului numitor comuni.e. T (s) = C(sI −A)−1

B + D = N(s)/p(s)).

δ(t) (δ(k)) – impulsul unitate continuu (discret).

1(t) (1(k)) – functia treapta unitara continua (discreta).

• Transformari

(1) MAN (MAN−1 sau MANT ) – transformare de echivalenta (bilate-rala) a matricii A ∈ Rm×n (M si N sunt matrici patrate nesingulare;transformarea de echivalenta conserva rangul iar daca M , N suntortogonale atunci conserva si valorile singulare).

(2) NAN−1 – transformare de asemanare a matricii A ∈ Rn×n (transfor-marea de asemanare conserva valorile proprii).

Page 15: MN Metode Numerice Carte(Matematici)

14

(3) NANT – transformare de congruenta a matricii A ∈ Rn×n (N estenesingulara; aplicata unei matrici A simetrice, transformarea de con-gruenta conserva rangul si inertia i.e. numerele de valori proprii neg-ative, nule si, respectiv, pozitive).

Daca N este ortogonala atunci transformarile (2) si (3) coincid si definesctransformarea de asemanare ortogonala.

• Prescurtari

SISO – sigla pentru sisteme simple avand o singura intrare si o singuraiesire (Single-Input Single-Output).

SIMO, (MISO, MIMO) – sigla pentru sistemele cu o singura intrare simai multe iesiri. Celelalte prescurtari au semnificatii 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 – ecuatie matriciala (algebrica) Liapunov continua.

DEM(A)L – ecuatie matriciala (algebrica) Liapunov discreta.

EM(A)R – ecuatie matriciala (algebrica) Riccati continua.

DEM(A)R – ecuatie matriciala (algebrica) Riccati discreta.

Page 16: MN Metode Numerice Carte(Matematici)

Capitolul 1

Rezolvarea ecuatiilormatriceale liniare

Acest capitol este consacrat tehnicilor de rezolvare a unor sisteme liniare, ıngeneral de mari dimensiuni, structurate ın exprimari matriceale care permitdezvoltarea unor metode specifice de calcul.

1.1 Ecuatii matriceale liniare

Ecuatiile matriceale liniare sunt sisteme de ecuatii liniare care pot fi scrisecompact ıntr-o forma matriceala de tipul

f(X) = C (1.1)

unde X ∈ Rm×n este matricea necunoscutelor, C ∈ Rp×q o matrice data,iar f : Rm×n →Rp×q o aplicatie liniara (i.e. f satisface f(X1 + X2) == f(X1) + f(X2) si f(αX1) = αf(X1) pentru orice matrice X1, X2 ∈Rm×n si orice scalar α ). Se poate arata ca orice aplicatie liniara de argu-ment matriceal poate fi scrisa sub forma

f(X) =k∑

i=1

AiXBi, Ai ∈ Rp×m, Bi ∈ Rn×q (1.2)

pentru un anumit k si, ın consecinta, (1.1) devine

k∑

i=1

AiXBi = C. (1.3)

15

Page 17: MN Metode Numerice Carte(Matematici)

16 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

Evident, ecuatia (1.3) poate fi scrisa ıntr-o forma ”desfasurata” ca sis-tem de pq ecuatii liniare cu mn necunoscute care poate servi ca baza pentruexprimarea conditiilor de existenta/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 deintrare, este, de cele mai multe ori, ineficienta (vezi exercitiul 1.9).

Din acest motiv, pentru diferite cazuri particulare ale ecuatiei matriceale(1.3), conditiile de existenta/unicitate ale solutiilor, ıntr-un sens precizat, seexprima ın raport cu matricele Ai, Bi, i = 1 : k, iar metodele de rezolvarefac apel la tehnici speciale.

Ecuatiile matriceale liniare (1.3) cele mai ıntalnite se obtin pentru k = 1

AXB = C (1.4)

a carei rezolvare se reduce imediat la rezolvarea unor ecuatii matricealeavand forma particulara

AX = C (1.5)

XB = C (1.6)

respectiv, pentru k = 2,

A1XB1 + A2XB2 = C (1.7)

cu particularizarileAX + XB = C, (1.8)

AXB + X = C. (1.9)

Ecuatiile (1.8), (1.9) sunt cunoscute sub denumirea de ecuatii matricealetip Sylvester. Datorita frecventei utilizari a ecuatiilor matriceale de forma(1.8) ın teoria sistemelor dinamice continue, respectiv a ecuatiilor de forma(1.9) ın domeniul sistemelor dinamice discrete, ın continuare ecuatia (1.8) vafi referita ca ecuatie Sylvester continua, respectiv (1.9) ca ecuatie Sylvesterdiscreta.

In sfarsit, considerand ın (1.8) B ← A, A ← AT si ın (1.9) B ← A,A ← −AT , C ← −C, obtinem ecuatiile matriceale liniare cunoscute subdenumirile de ecuatie Liapunov continua pentru

AT X + XA = C (1.10)

respectiv ecuatie Liapunov discreta pentru

AT XA−X = C. (1.11)

Page 18: MN Metode Numerice Carte(Matematici)

1.2. ECUATII DE FORMA AX = C 17

In cele mai multe aplicatii matricele de intrare A, B, C sunt reale, ma-tricea solutie X rezultand, la randul sau, reala. Totusi, algoritmii prezentatiraman aplicabili si ın cazul matricelor de intrare complexe. Mai mult, chiarın cazul unor date initiale reale, unele din metode de calcul, apeland ladeterminarea valorilor si vectorilor proprii, necesita, tranzitoriu, utilizareaunei aritmetici complexe. Atunci cand pentru date de intrare reale se poateutiliza exclusiv o aritmetica reala (vezi exercitiul 1.14) vor fi facute pre-cizarile cuvenite.

In cele ce urmeaza vom fi interesati ın calculul solutiilor ecuatiilor ma-triceale liniare cu semnificatie 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). Conditiile de existenta si unicitate alesolutiilor se exprima ın mod specific pentru fiecare tip de ecuatie, singurulrezultat comun fiind dat de

Propozitia 1.1 Daca ecuatia matriceala liniara (1.3) admite o solutie X ∈Rm×n, atunci aceasta solutie este unica daca si numai daca ecuatia ma-triceala omogena (obtinuta din ecuatia initiala pentru C = 0) admite dreptunica solutie X = 0.

Demonstratia este propusa ca exercitiu pentru cititor sau poate fi gasita ın[ VII ]. ¦

In cazul ecuatiilor matriceale liniare (1.8), (1.9) si (1.10), (1.11) o analizasimpla arata ca matricea necunoscuta X si membrul drept C au aceleasidimensiuni (m× n). In consecinta, enuntul de mai sus capata urmatoareaforma mai precisa.

Propozitia 1.2 Ecuatiile matriceale liniare (1.8), (1.9) si (1.10), (1.11)sunt global solubile, i.e. admit o solutie X ∈ Rm×n oricare ar fi membruldrept C, daca si numai daca ecuatiile matriceale omogene corespunzatoareadmit drept unica solutie X = 0.

Altfel spus, are loc urmatoarea alternativa (a lui Fredholm): fie ecuatiileconsiderate sunt global solubile, fie ecuatiile omogene admit o solutie ne-triviala X 6= 0.

1.2 Rezolvarea ecuatiilor matriceale de tip AX =C

Ecuatiile matriceale de tipul AX = C, unde A ∈ Rp×m, X ∈ Rm×n,C ∈ Rp×n,reprezinta o colectie de ecuatii vectoriale obisnuite, toate avand

Page 19: MN Metode Numerice Carte(Matematici)

18 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

aceeasi matrice A a coeficientilor. Intr-adevar, partitionand matricele X siC pe coloane

X = [ x1 x2 . . . xn ], C = [ c1 c2 . . . cn ] (1.12)

cu xj = Xej , cj = Cej , j = 1 : n, ecuatia matriceala AX = C devineechivalenta cu setul de sisteme liniare

Axj = cj , 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 fi, de exemplu, ın cazulp = m si A inversabila, triangularizarea prin eliminare gaussiana cu piv-otare partiala) se efectueaza o singura data. Avand ın vedere ca rezolvareasistemelor (1.13) nu ridica probleme deosebite, scrierea algoritmilor faceobiectul exercitiilor 1.1 si 1.3.

Observatia 1.1 Ecuatiile de tipul XB = C se reduc la ecuatii de tipulAX = C prin transpunere. ¦

Observatia 1.2 Daca matricea A ∈ Rp×m este monica (i.e. are coloaneleliniar independente) iar sistemele (1.13) sunt rezolvate ın sensul celor maimici patrate (CMMP), atunci ansamblul pseudosolutiilor

x∗j = A+cj = (AT A)−1

AT cj , j = 1 : n (1.14)

respectivX∗ = A+C, A+ = (AT A)

−1AT (1.15)

are o semnificatie asemanatoare si anume aceea ca matricea X∗ ∈ Rm×n

minimizeaza norma Frobenius a reziduului matriceal

R = C −AX (1.16)

adica‖R∗‖F = ‖C −AX∗‖F = min

X∈Rm×n

‖C −AX‖F . (1.17)

Intr-adevar,

‖R‖F =

√√√√n∑

j=1

p∑

i=1

r2ij =

√√√√n∑

j=1

‖cj −Axj‖2

este minima daca si numai daca ‖cj − Axj‖ sunt minime pentru toti j =1 : n. ¦

Page 20: MN Metode Numerice Carte(Matematici)

1.2. ECUATII DE FORMA AX = C 19

Observatia 1.3 Daca matricea A ∈ Rp×m este epica (adica are lini-ile liniar independente), atunci ansamblul solutiilor normale ale sistemelor(1.13)

x∗j = A+cj = AT (AAT )−1

cj , j = 1 : n (1.18)

respectiv

X∗ = A+C, A+ = AT (AAT )−1

(1.19)

reprezinta solutia de norma Frobenius minima a sistemului AX = C :

‖X∗‖F = minAX=C

X∈Rm×n

‖X‖F . (1.20)

Intr-adevar, este evident ca X∗ dat de (1.19) este o solutie a ecuatiei ma-triceale AX = C. In plus, daca A = LQ este o factorizare a matricei A,unde Q ∈ Rm×m este ortogonala iar L ∈ Rp×m are structura

L = [ L′ 0 ] (1.21)

cu L′ ∈ Rp×p inferior triunghiulara nesingulara, atunci ecuatia matricealaAX = C se scrie

LQX = C. (1.22)

Cu notatia

QX = Y =[

Y ′

Y ′′

], (1.23)

cu Y ′ ∈ Rp×n, Y ′′ ∈ R(m−p)×n, avand ın vedere structura (1.21) a matriceiL, rezulta

Y ′ = (L′)−1C.

In consecinta, toate solutiile sistemului AX = C se scriu sub forma

X = QT

[(L′)−1

CY ′′

](1.24)

cu Y ′′ ∈ R(m−p)×n arbitrar. Dar

‖X‖2F = ‖QT

[(L′)−1

CY ′′

]‖2F = ‖

[(L′)−1C

Y ′′

]‖2F =

= ‖(L′)−1C‖2F + ‖Y ′′‖2F

Page 21: MN Metode Numerice Carte(Matematici)

20 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

minimul obtinandu-se pentru Y ′′ = 0. Prin urmare solutia de norma Frobe-nius minima este

X∗ = QT

[(L′)−1

C0

](1.25)

verificandu-se imediat, pe baza factorizarii LQ, ca aceasta coincide cusolutia (1.19). ¦

Observatia 1.4 In cazul ın care matricea A este de rang nemaximal

rang A < min(p,m) ,

notand cu x∗j , j = 1 : n, pseudosolutiile normale, ın sensul celor mai micipatrate, ale sistemelor (1.13), matricea X∗ = (xj)j=1:n poate fi interpre-tata drept pseudosolutia normala ın sensul normei Frobenius a ecuatieimatriceale AX = C. Cu alte cuvinte X∗ ∈ Rm×n este matricea de normaFrobenius minima dintre toate matricele X ∈ Rm×n care minimizeazanorma Frobenius a reziduului matriceal R = C −AX :

‖X∗‖F = minX∈Rm×n

‖C−AX‖F =minim

‖X‖F . (1.26)

Justificarea afirmatiilor de mai sus face obiectul exercitiului 1.2. ¦

1.3 Rezolvarea ecuatiilor matricealeSylvester

I. Vom ıncepe cu prezentarea modalitatilor de rezolvare a ecuatiei ma-triceale Sylvester continue (1.8)

AX + XB = C

unde ın general A ∈ Cm×m, B ∈ Cn×n, C ∈ Cm×n. Conditiile de existentasi unicitate ale solutiei acestei ecuatii sunt date de

Propozitia 1.3 Ecuatia matriceala (1.8) admite o solutie X ∈ Cm×n unicadaca si numai daca

λi + µj 6= 0 (1.27)

oricare ar fi λi ∈ λ(A) si oricare ar fi µj ∈ λ(B) sau, altfel spus, daca sinumai daca

λ(A) ∩ λ(−B) = ∅. (1.28)

Daca matricele A, B, C sunt reale iar conditiile (1.27) sunt satisfacuteatunci solutia X rezulta si ea reala.

Page 22: MN Metode Numerice Carte(Matematici)

1.3. ECUATII SYLVESTER 21

Demonstratie. Exista matricele unitare U ∈ Cm×m si V ∈ Cn×n (i.e.UHU = UUH = Im, V HV = V V H = In, indicele superior H semnificanddubla operatie de transpunere si conjugare) astfel ıncat

UHAU = S ∈ Cm×m, (1.29)

V HBV = T ∈ Cn×n (1.30)

sunt formele Schur complexe ale matricelor A respectiv B si, deci, au ostructura superior triunghiulara. Din (1.29), (1.30) avem relatiile

A = USUH (1.31)

B = V TV H (1.32)

cu care ecuatia (1.8) devine

USUHX + XV TV H = C

de undeSUHXV + UHXV T = UHCV. (1.33)

Notand cuY = UHXV, C = UHCV (1.34)

(1.33) se scrieSY + Y T = C. (1.35)

Avand ın vedere natura nesingulara a transformarilor efectuate, ecuatiamatriceala (1.8) admite o solutie unica X ∈ Cm×n daca si numai dacaecuatia (1.35) admite o solutie unica Y ∈ Cm×n. Conditiile de existentasi unicitate ale solutiei ecuatiei (1.35) rezulta din aplicarea unei tehnici derezolvare directa. Intr-adevar, tinand seama de structura superior triunghi-ulara a matricelor S si T rezulta ca, scriind pe coloane, (1.35) devine

Syj + Y tj = cj , j = 1 : n (1.36)

unde yj = Y ej , tj = Tej , cj = Cej . Dar

tj = [ t1j t2j . . . tjj 0 . . . 0 ]T

si, prin urmare, (1.36) devine

Syj +j∑

k=1

tkjyk = cj , j = 1 : n (1.37)

Page 23: MN Metode Numerice Carte(Matematici)

22 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

sau

(S + tjjIm)yj = cj −j−1∑

k=1

tkjyk, j = 1 : n. (1.38)

Se vede acum limpede ca ecuatiile (1.38) sunt sisteme liniare triunghi-ulare avand membrul drept calculabil daca ordinea de rezolvare a acestorsisteme este j = 1, 2, 3, ..., n. Mai mult, existenta si unicitatea solutiei esteconditionata de nesingularitatea matricelor (S + tjjIm), j = 1 : n. Ma-tricea S fiind superior triunghiulara, aceasta conditie este satisfacuta dacasi numai daca

sii + tjj 6= 0, ∀ i = 1 : m, ∀ j = 1 : n,

conditie identica cu (1.27) ıntrucat λ(A) = λ(S) si λ(B) = λ(T ), observatiecare ıncheie demonstratia propozitiei. ¦

Tehnicile de rezolvare ale ecuatiei Sylvester continue fac apel la trans-formari care conduc la ecuatii matriceale ın care, ın locul matricelor Asi B, apar matrice cu o structura simplificata (Hessenberg, triunghiulara,diagonala) fapt care permite aplicarea metodelor consacrate de la sistemeleclasice. O prima alternativa, numita ad-hoc varianta Schur-Schur, arela baza procedura evidentiata de demonstratia propozitiei 1.3. In cazuluzual, ın care datele de intrare precum si solutia X sunt reale, redactareaalgoritmului de calcul este urmatoarea.

Algoritmul 1.1 (Date matricele A ∈ Rm×m, B ∈ Rn×n,C ∈ Rm×n cu λ(A) ∩ λ(−B) = ∅, algoritmul calculeaza solutiaX ∈ Rm×n a ecuatiei Sylvester continue AX + XB = C prinaducerea matricelor A si B la forma Schur complexa prin trans-formari unitare de asemanare. Algoritmul utilizeaza functia fsccare calculeaza forma Schur complexa si matricea unitara detransformare corespunzatoare pentru o matrice de intrare data.)

1. [ U, S ] = fsc(A)

2. [ V, T ] = fsc(B)

3. C ← C = UHCV

4. Pentru j = 1 : n

1. Daca j > 1 atunci

1. cj = cj −∑j−1

k=1 tkjyk.

2. Se rezolva sistemul superior triunghiular(S + tjjIm)yj = cj .

Page 24: MN Metode Numerice Carte(Matematici)

1.3. ECUATII SYLVESTER 23

5. X = Re(UY V H)

Comentarii. Referitor la algoritmul de mai sus se cuvin urmatoareleprecizari:

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 obtine forma Schur reala dupa care, ıntr-o a doua etapa,utilizand rotatii complexe sau reflectori complecsi (exercitiile 1.4 : 1.7)blocurile 2× 2 sunt reduse la forma superior triunghiulara complexa.

2. Efectuarea calculelor ın format virgula mobila cu numere complexeconduce la un rezultat afectat de erori de rotunjire complexe desi rezultatulteoretic este o matrice reala. De aceea, ın ultima instructiune, este inclusaeliminarea partilor imaginare.

3. Evident, efortul de calcul cel mai important se consuma ın executiainstructiunilor 1 si 2 de aducere la forma Schur complexa a matricelor A siB si de acumulare a transformarilor. ¦Din motive de eficienta se impune analiza alternativelor ın care se renuntala aducerea la forma Schur a ambelor matrice A si B.

• Astfel, ın asa numita varianta Hessenberg-Schur numai matricea Beste adusa la forma Schur complexa aparand urmatoarele diferente ın raportcu algoritmul de mai sus:

– In instructiunea 1 matricea A este adusa printr-un algoritm de calculdirect (neiterativ) – algoritmul HQ – la forma superior Hessenberg. Inacest fel se evita faza iterativa a algoritmului QR si trecerea de la formaSchur reala la forma Schur complexa.

– In compensatie, la instructiunea 4.2, se rezolva, ın loc de n sistemetriunghiulare, n sisteme de tip Hessenberg incluzand eliminare gaussianacu eventuala pivotare.

Scrierea explicita a algoritmului face obiectul exercitiului 1.10.

• In cazul matricelor A si B simple (adica al matricelor pentru careexista un set complet de vectori proprii liniar independenti, ın particular,al matricelor cu valori proprii distincte) metoda bazata pe calculul valorilorsi vectorilor proprii poate conduce la o precizie superioara a rezultatelorsimultan cu un timp de executie rezonabil. Fie

λ(A) = {λ1, λ2, . . . , λm} ⊂ Cλ(B) = {µ1, µ2, . . . , µn} ⊂ C (1.39)

Page 25: MN Metode Numerice Carte(Matematici)

24 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

spectrele de valori proprii ale matricelor A respectiv B si

U = [ u1 u2 . . . um ],V = [ v1 v2 . . . vn ] (1.40)

matricele corespunzatoare de vectori proprii (adica uj = Uej este un vectorpropriu 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 ecuatia Sylvester (1.8) se scrie sub forma

ULU−1X + XV MV −1 = C (1.42)

echivalenta cuLU−1XV + U−1XV M = U−1CV. (1.43)

NotandU−1XV = YU−1CV = Z

(1.44)

din (1.43) rezulta ecuatia

LY + Y M = Z (1.45)

cu necunoscuta matriceala Y ale carei elemente, ın conditiile propozitiei1.1, se calculeaza imediat cu relatiile

yij = zij/(λi + µj) , i = 1 : m, j = 1 : n. (1.46)

Matricea necunoscuta X din ecuatia initiala rezulta din (1.44)

X = UY V −1. (1.47)

Presupunand ca dispunem de o functie 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 corespunzatoricu sintaxa

[V, p ] = vvp(T ) (1.48)

putem prezenta urmatorul algoritm.

Algoritmul 1.2 (Date matricele simple A ∈ Rm×m, B ∈Rn×n cu λ(A) ∩ λ(−B) = ∅ si matricea C ∈ Rm×n, algoritmulcalculeaza solutia X ∈ Rm×n a ecuatiei matriceale AX +XB =C pe baza calculului valorilor si vectorilor proprii cu ajutorulfunctiei vvp.)

Page 26: MN Metode Numerice Carte(Matematici)

1.3. ECUATII SYLVESTER 25

1. [ U, l ] = vvp(A)

2. [ V, m ] = vvp(B)

3. Se rezolva sistemul matriceal UZ = CV cu necunoscutaZ.

4. Pentru i = 1 : m

1. Pentru j = 1 : n

1. yij = zij/(li + mj).

5. Se rezolva sistemul matriceal XV = UY ın raport cu X.

6. X = Re(X).

Rezolvarea sistemelor matriceale de la instructiunile 3 si 5 ale algorit-mului se realizeaza conform recomandarilor sectiunea 1.2.

II. Modalitatile de calcul ale solutiei ecuatiei matriceale Sylvester dis-crete (1.9)

AXB + X = C

unde A ∈ Cm×m, B ∈ Cn×n, C ∈ Cm×n sunt asemanatoare. Conditiile deexistenta si unicitate ale solutiei sunt date de

Propozitia 1.4 Ecuatia matriceala (1.9) are o solutie X ∈ Cm×n unicadaca si numai daca

λiµj 6= −1 (1.49)

oricare ar fi λi ∈ λ(A) si oricare ar fi µj ∈ λ(B). Daca matricele A, B, Csunt reale iar conditiile (1.49) sunt satisfacute atunci solutia X rezulta siea reala.

Demonstratie. Fie U ∈ Cm×m si V ∈ Cn×n matrice unitare care definescreducerea matricelor A si B la formele Schur complexe S, respectiv T , cain (1.29) si (1.30). Cu (1.31) si (1.32), ecuatia (1.9) devine

USUHXV TV H + X = C (1.50)

care, la randul ei, este echivalenta cu

SY T + Y = C (1.51)

unde Y si C sunt date de (1.34). Ecuatia (1.9) are o solutie unica X dacasi numai daca ecuatia (1.51) are o solutie unica Y . Daca yj = Y ej , tj =

Page 27: MN Metode Numerice Carte(Matematici)

26 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

Tej , cj = Cej , j = 1 : n atunci, tinand seama de structura superiortriunghiulara a matricelor T si S, din (1.51) obtinem

(St11 + Im)y1 = c1,

(Stjj + Im)yj = cj − S∑j−1

k=1 tkjyk, j = 2 : n.

(1.52)

Ecuatiile (1.52) sunt sisteme liniare superior triunghiulare care admit solutiiunice daca si numai daca matricele Stjj + Im, j = 1 : n sunt nesingulare,respectiv

siitjj + 1 6= 0, ∀ i ∈ 1 : m, ∀ j ∈ 1 : n. (1.53)

Cum ınsa {sii | i = 1 : m} = λ(A) si {tjj | j = 1 : n} = λ(B) si, ınplus, rezolvarea sistemelor (1.52) ın conditiile (1.53) este posibila ın ordineaj = 1, 2, ..., n ın care termenul liber este calculabil, rezulta ca propozitia estedemonstrata. ¦

Demonstratia de mai sus conduce imediat la algoritmul de rezolvare aecuatiei matriceale Sylvester discrete ın varianta Schur-Schur.

Algoritmul 1.3 (Fiind date matricele A ∈ Rm×m, B ∈Rn×n astfel ıncat λiµj 6= −1 pentru toti λi ∈ λ(A) si µj ∈ λ(B)si matricea C ∈ Rm×n algoritmul calculeaza solutia X a ecuatieiSylvester discrete AXB + X = C prin reducerea matricelor Asi B la forma Schur complexa. Algoritmul utilizeaza functia fscpentru calculul formei Schur complexe si a matricei de transfor-mare corespunzatoare.)

1. [ U, S ] = fsc(A)

2. [ V, T ] = fsc(B)

3. C ← C = UHCV

4. Pentru j = 1 : n

1. Daca j > 1 atunci

1. cj ← cj − S (∑j−1

k=1 tkjyk )2. Se rezolva sistemul superior triunghiular

(Stjj + Im)yj = cj .

5. X = Re(UY V H).

Avand ın vedere similitudinea algoritmilor 1.1 si 1.2, similitudine carese extinde la celelalte variante, lasam ın sarcina cititorului elaborarea vari-antei Hessenberg–Schur ca si justificarea faptului ca urmatorul algoritm, cunotatiile din algoritmul 1.2, rezolva problema ın cazul matricelor de intrareA si B simple (diagonalizabile).

Page 28: MN Metode Numerice Carte(Matematici)

1.4. ECUATII LIAPUNOV 27

Algoritmul 1.4 (Date matricele simple A ∈ Rm×m , B ∈Rn×n cu λiµj 6= −1 pentru toti λi ∈ λ(A), µj ∈ λ(B) si ma-tricea C ∈ Rm×n, algoritmul calculeaza solutia X a ecuatieiAXB + X = C pe baza determinarii valorilor si vectorilor pro-prii ale matricelor A si B cu ajutorul functiei 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. yij = zij/(limj + 1)5. Se rezolva sistemul matriceal XV = UY ın raport cu X.6. X = ReX.

1.4 Rezolvarea ecuatiilor matricealeLiapunov

Ecuatiile matriceale Liapunov continua AT X+XA = C si discreta AT XA−X = C sunt cazuri particulare ale ecuatiilor Sylvester corespunzatoare si,prin urmare, rezultatele paragrafului precedent sunt aplicabile ın ıntregime.Concret, avand ın vedere ca λ(AT ) = λ(A), obtinem urmatoarele consecinteale propozitiilor 1.3 si 1.4.

Corolar 1.1 Ecuatia matriceala Liapunov continua (1.10) admite o solutieunica daca si numai daca matricea A nu are nici o pereche de valori propriiopuse, i.e.

λi + λj 6= 0, ∀λi, λj ∈ λ(A), (1.54)

In particular, 0 6∈ λ(A) i.e. matricea A este nesingulara.

Corolar 1.2 Ecuatia matriceala Liapunov discreta (1.11) admite o solutieunica daca si numai daca matricea A nu are nici o pereche de valori propriiinverse, i.e.

λiλj 6= 1, ∀λi, λj ∈ λ(A), (1.55)

In particular, ±1 6∈ λ(A) .

Algoritmii 1.1, 1.2, 1.3 si 1.4 se simplifica ın sensul ca este necesarao singura reducere la forma Schur, respectiv un singur calcul de valori sivectori proprii.

Page 29: MN Metode Numerice Carte(Matematici)

28 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

I. Intr-adevar, sa consideram mai ıntai cazul ecuatiei Liapunov continue(1.10) si fie reducerea (1.31) a matricei A ∈ Rn×n la forma Schur complexa.Rezulta

AT = AH = USHUH . (1.56)

Cu (1.31), (1.56) ecuatia Liapunov (1.10) devine

USHUHX + XUSUH = C (1.57)

respectivSHY + Y S = C (1.58)

undeY = UHXU, C = UHCU. (1.59)

Intrucat SH are o structura inferior triunghiulara, scriind ecuatia ma-triceala (1.58) pe coloane obtinem sistemele inferior triunghiulare

(SH + sjjIn)yj = cj −j−1∑

k=1

skjyk, j = 1 : n. (1.60)

In conditiile corolarului 1.1, aceste sisteme sunt nesingulare si pot fi rezol-vate ın ordinea j = 1, 2 ..., n. Cu observatia ca solutia X a ecuatiei initialese calculeaza apoi din prima relatie (1.59) rezulta urmatorul algoritm.

Algoritmul 1.5 (Date matricele A ∈ Rn×n, satisfacand(1.54), si C ∈ Rn×n oarecare, algoritmul calculeaza solutia X aecuatiei Liapunov AT X + XA = C pe baza reducerii matriceiA la forma Schur complexa cu ajutorul functiei fsc.)

1. [ U, S ] = fsc(A)

2. C ← UHCU

3. Pentru j = 1 : n

1. Daca j > 1 atunci

1. cj = cj −∑j−1

k=1 skjyk

2. Se rezolva sistemul inferior triunghiular(SH + sjjIn)yj = cj .

4. X = Re(UY UH).

In multe aplicatii matricea C din (1.10) este simetrica. Intr-un astfelde caz apar simplificari suplimentare datorita faptului ca, ın conditiile deexistenta si unicitate mentionate, si matricea solutie este simetrica. Intr-adevar, daca X este solutia, se verifica imediat ca XT satisface ecuatia

Page 30: MN Metode Numerice Carte(Matematici)

1.4. ECUATII LIAPUNOV 29

matriceala (1.10) si, cum solutia este unica, rezulta X = XT . Acest faptpoate fi exploatat observand ca, datorita simetriei matricelor C si X, ma-tricele Y si C din (1.58) sunt hermitice si ın consecinta este suficient sa secalculeze, de exemplu, numai triunghiul superior al matricelor C, Y si, ınfinal, X (exercitiul 1.11).

II. Algoritmul de rezolvare a ecuatiei Liapunov discrete (1.11), bazatpe reducerea matricei A la forma Schur complexa, urmareste ındeaproapeschema de mai sus.

Algoritmul 1.6 (Date matricele A ∈ Rn×n, satisfacand(1.55), si C ∈ Rn×n oarecare, algoritmul calculeaza solutia X aecuatiei Liapunov AT XA − X = C pe baza reducerii matriceiA la forma Schur complexa cu ajutorul functiei fsc.)

1. [ U, S ] = fsc(A)

2. C ← UHCU

3. Pentru j = 1 : n

1. Daca j > 1 atunci

1. cj = cj − SH(∑j−1

k=1 skjyk)2. Se rezolva sistemul inferior triunghiular

(SHsjj − In)yj = cj .

4. X = Re(UY UH).

Tratarea cazului ın care matricele C si, drept consecinta, X sunt simetriceface obiectul exercitiului 1.11.

Variantele bazate pe calculul valorilor si vectorilor proprii ale matriceiA sunt, de asemenea, propuse cititorului (exercitiul 1.12).

Cazul important, ın care matricea A este stabila (vezi cap. 5) iar ma-tricea C este simetrica si negativ (semi)definita este abordat ın capitolul 7(se pot consulta [ X ] si [ 6 ], [ 7 ]).

Incheiem prezentarea metodelor de rezolvare a ecuatiilor matriceale li-niare prin evidentierea posibilitatii de a reduce rezolvarea unei ecuatii Lia-punov continue la rezolvarea unei ecuatii corespondente discrete si reciproc.Pentru ınceput sa observam ca daca ecuatia Liapunov discreta (1.11) ad-mite o solutie unica atunci, conform (1.55), ±1 6∈ λ(A) respectiv matriceaA− In este nesingulara si, deci, putem defini transformarea (omografica)

B = (A− In)−1(A + In). (1.61)

Page 31: MN Metode Numerice Carte(Matematici)

30 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

Apoi, din (1.61) rezulta ca 1 6∈ λ(B), i.e B− In este nesingulara (exercitiul1.13), deci

A = (B + In)(B − In)−1, (1.62)

respectiv,

AT = (BT − In)−1

(BT + In) (1.63)

expresii care, introduse ın ecuatia Liapunov discreta (1.11), conduc, dupacateva prelucrari elementare care conserva solutia, la

BT X + XB = D (1.64)

unde

D =12(BT − In)C(B − In). (1.65)

In consecinta, ecuatia Liapunov continua definita de (1.64), (1.61) si (1.65)are aceeasi solutie cu ecuatia Liapunov discreta (1.11) si poate servi casuport pentru o modalitate de rezolvare a acesteia din urma. Reciproc,data ecuatia Liapunov continua (1.64), respectiv date matricele n× n B siD cu valorile proprii ale matricei B satisfacand conditia µi +µj 6= 0 oricarear fi µi, µj ∈ λ(B) (ın particular 0 6∈ λ(B)) putem gasi solutia X a acesteiecuatii rezolvand ecuatia Liapunov discreta (1.11) cu A dat de (1.62) si

C = 2(BT − In)−1

D(B − In)−1 (1.66)

obtinut din (1.65).

Proprietati numerice

Algoritmii prezentati utilizeaza ın exclusivitate transformari ortogonale (u-nitare) ceea ce le confera remarcabile proprietati numerice. Toti algoritmiiinclud cel putin o executie a algoritmului QR de aducere iterativa a un-eia din matricele de intrare la forma Schur reala sau complexa urmata derezolvarea unor sisteme triunghiulare sau de tip Hessenberg. AlgoritmulQR este admis a fi un algoritm numeric stabil ca si algoritmii de rezolvareprin substitutie a sistemelor triunghiulare. Mai mult, se poate arata caalgoritmii din prezentul capitol sunt numeric stabili ın ıntregul lor, i.e.solutia calculata reprezinta solutia exacta a problemei respective cu datelede intrare perturbate nesemnificativ. In consecinta, preciziile efective ce seobtin depind de conditionarile numerice ale matricelor initiale si de nivelulpracticat al tolerantelor.

Page 32: MN Metode Numerice Carte(Matematici)

1.4. ECUATII LIAPUNOV 31

Programe MATLAB disponibile

Pentru rezolvarea ecuatiilor matriceale Sylvester si Liapunov continue estedisponibila functia lyap, care implementeaza algoritmii 1.1 si 1.5 (se ape-leaza functiile schur pentru aducerea la forma Schur reala si rsf2csf pentruobtinerea formei Schur complexe). In cazul discret se poate utiliza functiadlyap, care impementeaza metoda transformarii omografice (1.61).

Exercitii

E 1.1 Fie date matricele A ∈ Rm×m nesingulara si C ∈ Cm×n. Scrietialgoritmii de rezolvare a sistemului matriceal AX = C folosind eliminareagaussiana cu pivotare partiala si completa. Evaluati numarul asimptoticde operatii aritmetice. Cum procedati daca matricea A este simetrica,eventual pozitiv definita ?

E 1.2 Se considera date matricele A ∈ Rp×m, C ∈ Rp×n si fie

A = U1Σ1V1T , Σ1 = diag(σ1, σ2, . . . , σr), σ1 ≥ σ2 ≥ . . . ≥ σr > 0

descompunerea valorilor singulare a lui A. Aratati ca X∗ = V1Σ−11 UT

1 Ceste matricea de norma Frobenius minima dintre toate matricele X ∈ Rm×n

care minimizeaza norma Frobenius a reziduului matriceal R = C −AX.

E 1.3 Admitand ca dispuneti de o functie care calculeaza valorile singularesi matricele de transformare corespunzatoare pentru o matrice de intrareA ∈ Rp×m data, scrieti algoritmul de rezolvare, ın sensul celor mai micipatrate, a ecuatiei matriceale AX = C.

E 1.4 Data o matrice A ∈ R2×2 avand λ(A) ⊂ C\R, determinati o matricede rotatie bidimensionala complexa P ∈ C2×2, definita de

P =[

c s−s c

], c2 + |s|2 = 1, c ∈ R

astfel ıncat matricea S = PHAP ∈ C2×2, PH def= PT

sa fie superior tri-unghiulara.

E 1.5 Se da o matrice A ∈ Rn×n ın forma Schur reala. Se cere unalgoritm de calcul al unei matrice unitare 1 Q ∈ Cn×n si al matricei supe-

1O matrice P ∈ Cn×n se numeste unitara daca P HP = PP H = In si joaca, ıncalculul matriceal complex, acelasi rol cu cel jucat de matricele ortogonale ın calcululmatriceal real.

Page 33: MN Metode Numerice Carte(Matematici)

32 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

rior triunghiulare S ∈ Cn×n astfel ıncat QHAQ = S. (Matricea S astfelobtinuta se numeste forma Schur complexa a matricei A).

Indicatie. Matricea Q poate fi un produs de matrice unitare de forma

Qi =

I 0 00 Pi 00 0 I

∈ Cn×n

cu Pi ∈ C2×2 o rotatie complexa bidimensionala.

E 1.6 Fie A ∈ C2×2 superior triunghiulara. Sa se calculeze o matriceunitara U ∈ C2×2 astfel ıncat

UHAU =[

a22 ∗0 a11

],

i.e. sa se obtina permutarea elementelor diagonale.

E 1.7 Daca B ∈ Cn×n este o matrice superior triunghiulara data, se cere unalgoritm de calcul al unei matrice unitare V ∈ Cn×n si a matricei superiortriunghiulare S ∈ Cn×n astfel ıncat V HBV = S si |s11| ≤ |s22| ≤ . . . ≤|snn|.

Observatie. Daca B este forma Schur complexa a unei matrice A ∈Rn×n, atunci matricea S de mai sus poarta numele de forma Schur com-plexa ordonata a matricei A. Evident, se poate utiliza orice alt criteriu deordonare a elementelor diagonale.

Indicatie. Se foloseste o secventa de transformari de forma

Vi =

I 0 00 Ui 00 0 I

unde Ui sunt matrice 2× 2 determinate ın exercitiul 1.6.

E 1.8 Admitand ca numarul asimptotic de operatii aritmetice ın formatvirgula mobila necesar pentru executia algoritmului QR de aducere a uneimatrice reale n × n la forma Schur reala, (inclusiv calculul matricei detransformare) este, ın medie statistica, conform [VI ], N1 = 12n3, evaluati

a) numarul asimptotic de operatii impus de executia algoritmului de laexercitiul 1.7;

b) numarul asimptotic de operatii necesar pentru rezolvarea, cu ajutorulalgoritmului 1.2 (varianta Schur–Schur), a ecuatiei Sylvester continue (1.8);

Page 34: MN Metode Numerice Carte(Matematici)

1.4. ECUATII LIAPUNOV 33

c) numarul asimptotic de operatii necesar pentru rezolvarea ecuatieiLiapunov continue (1.10) cu ajutorul algoritmului 1.5, respectiv pentru re-zolvarea ecuatiei Liapunov discrete (1.11) cu ajutorul algoritmului 1.6.

E 1.9 Admitand ca sunt ındeplinite conditiile de existenta si unicitate asolutiei, scrieti un algoritm eficient de rezolvare a ecuatiei matriciale Sylves-ter continue (1.8) prin interpretarea ”desfasurata” a acesteia ca un sistemde mn ecuatii cu mn necunoscute. Algoritmul nu trebuie sa includa nici oprocedura iterativa. Idem pentru ecuatia Sylvester discreta (1.9).

Evaluati numarul de operatii aritmetice necesar si comparati cu cel de-terminat la exercitiul 1.8. Ce concluzii se impun ?

Indicatie. Daca x ∈ Rmn si c ∈ Rmn sunt vectorii definiti, de exemplu,prin concatenarea coloanelor matricelor X respectiv C aratati ca ecuatia(1.8) se poate scrie ın forma (In ⊗ A + BT ⊗ Im)x = c iar (1.9) ın forma(BT⊗A+Imn)x = c. In relatiile de mai sus ⊗ semnifica produsul Kroneckerdefinit ın felul urmator: daca U ∈ Rp×q, V ∈ Rr×s atunci W

def= U ⊗ V ∈Rpr×qs este matricea avand structura bloc W = [Wij ]i=1:p, j=1:q cu Wij =uijV .

E 1.10 Fiind date matricele A ∈ Rm×m, B ∈ Rn×n cu λ(A)∩ λ(−B) = ∅si C ∈ Rm×n, sa se scrie algoritmii Hessenberg – Schur de rezolvare aecuatiei matriceale Sylvester continue AX + XB = C, respectiv a celeidiscrete AXB + X = C, bazate pe aducerea, prin transformari ortogonale,a matricei A la forma superior Hessenberg si a matricei B la forma Schurcomplexa. Presupuneti ca se dispune de functia fsc de calcul a formei Schurcomplexe, toate celelalte prelucrari urmand a fi scrise explicit.

E 1.11 Scrieti corespondentii algoritmilor 1.5 si 1.6 (varianta Schur) pentrurezolvarea ecuatiilor matriceale Liapunov AT X +XA = C si AT XA−X =C ın ipoteza ca matricea C este simetrica, minimizand numarul de operatiiaritmetice si memoria ocupata.

E 1.12 Elaborati algoritmii de rezolvare a ecuatiilor Liapunov continua sidiscreta (1.10) si (1.11) avand matricele A simple, folosind o procedura decalcul a valorilor si vectorilor proprii. Exploatati cat mai eficient ipotezasimetriei matricei termenilor liberi. Admitand ca efortul de calcul al valo-rilor si vectorilor proprii este N1 = kn3, determinati efortul total solicitatde rezolvarea ecuatiilor matriceale date.

E 1.13 Fie o matrice A ∈ Rn×n cu proprietatea λiλj 6= 1, ∀λi, λj ∈ λ(A).Se cere sa se arate:

Page 35: MN Metode Numerice Carte(Matematici)

34 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

a) Daca B = (A− In)−1(A + In) atunci pentru orice λi ∈ λ(A) avemµi = (λi + 1)/(λi − 1) ∈ λ(B);

b) {0, 1} ∩ λ(B) = ∅;c) λ(B) ∩ λ(−B) = ∅.

E 1.14 Elaborati algoritmii de tip Schur-Schur pentru rezolvarea ecuatiilorSylvester AX + XB = C si AXB + X = C care sa utilizeze formele Schurreale ale matricelor A si B si exclusiv o aritmetica reala 2.

Indicatie. Utilizand reducerea matricelor A si B la forma Schur realaecuatiile (1.35), respectiv (1.51), au matricele S si T cvasisuperior triunghi-ulare. Partitionand matricea Y ın blocuri conform dimensiunilor blocurilordiagonale ale matricelor S si T , scriind (1.35), respectiv (1.51), pe bloc-coloane si utilizand o tehnica de bloc-substitutie ınapoi se obtine ca ecuatiile(1.35), respectiv (1.51), se reduc la un set de ecuatii Sylvester continue,respectiv discrete, definite de blocurile diagonale ale matricelor S si T .Aceste ecuatii se pot rezolva, ın ordinea sugerata mai sus, ıntr-o aritmeticareala, prin desfasurarea lor ın sisteme uzuale de ordin cel mult patru (veziexercitiul 1.9).

E 1.15 Elaborati algoritmii de tip Schur pentru rezolvarea ecuatiilor Lia-punov AT X + XA = C si AT XA−X = C care sa utilizeze exclusiv formaSchur reala a matricei A si o aritmetica reala 3.

Indicatie. Adaptati indicatiile de la exercitiul precedent. Pentru detaliiputeti consulta [ 4-6 ] si [ X ].

Bibliografie

[ 1 ] Davison E.J., Man F.T. The Numerical Solution of AT Q + QA = −C,IEEE Trans. Automat. Contr., vol. AC-13, pp. 448–449, 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 AT XA−X = Q, IEEETrans. Automat. Contr., vol.AC-22, pp. 883–885, 1977.

2Varianta Schur-Schur reala pentru rezolvarea ecuatiei Sylvester continue este referitaın literatura de specialitate cu denumirea de algoritmul Bartels-Stewart [ 3 ].

3Varianta Schur reala pentru rezolvarea ecuatiei Liapunov discrete este referita ınliteratura de specialitate cu denumirea de algoritmul Kitagawa-Barraud [ 4, 5 ].

Page 36: MN Metode Numerice Carte(Matematici)

1.4. ECUATII LIAPUNOV 35

[ 5 ] Kitagawa G. An Algorithm for Solving the Matrix Equation X =F T XF+S, Int. J. Control, vol. 25, pp. 745–753, 1977.

[ 6 ] Sima V. Comparison of some Algorithms for Solving the Lyapunov-typeEquations, Rev. Roum. Sci.Techn. – Electrotechn. Energ., vol. 25, pp.625–632, 1980.

[ 7 ] Hammarling S.J. Numerical Solution of the Stable, Non-negative Def-inite Lyapunov Equation, IMA J. Numer. Anal., vol. 2, pp. 303–323,1982.

Page 37: MN Metode Numerice Carte(Matematici)

36 CAPITOLUL 1. ECUATII MATRICEALE LINIARE

Page 38: MN Metode Numerice Carte(Matematici)

Capitolul 2

Calculul functiilor dematriceExponentiala matriceala

Calculul functiilor de matrice este necesar ın multe aplicatii. In particu-lar, analiza comportarii dinamice a sistemelor liniare continue face apel laexponentiala matriceala, pentru calculul careia a fost elaborata o ıntreagaserie de tehnici numerice mai mult sau mai putin performante. In con-secinta, prezentam ın continuare unele metode generale de calcul pentrufunctiile de matrice, precum si metodele specifice, cele mai apreciate, decalcul pentru functia exponentiala de argument matriceal.

2.1 Functii de matrice

Consideram o functie f : D ⊂ C → C definita pe o multime D din planulcomplex si fie A ∈ Cn×n o matrice data. Ne propunem mai ıntai sa definimnotiunea de functie de matrice adica semnificatia expresiei

F = f(A). (2.1)

Pentru ınceput observam ca daca f este o functie polinomiala

f(z) =N∑

i=0

cizi, ci ∈ C, i = 0 : N (2.2)

37

Page 39: MN Metode Numerice Carte(Matematici)

38 CAPITOLUL 2. FUNCTII DE MATRICE

atunci matricea

F =N∑

i=0

ciAi (2.3)

este bine definita si poate fi numita valoarea polinomului f ın punctul (saupe matricea) A.

Fie acum µA(z) polinomul minimal al matricei A 1 si λi ∈ C, i = 1 : l,zerourile acestuia, zeroul λi avand ordinul de multiplicitate mi. Avem

µA(z) = zm +m−1∑

k=0

αizi =

l∏

i=1

(z − λi)mi (2.4)

unde

mdef= grad(µA) =

l∑

i=1

mi. (2.5)

Conform teoremei ımpartirii cu rest, exista unic doua polinoame q, r cugrad(r) < m astfel ıncat

f = µA q + r. (2.6)

Polinomul minimal µA fiind un polinom anulator pentru matricea A, i.e.µA(A) = 0, din (2.6) rezulta

Fdef= f(A) = r(A). (2.7)

In consecinta, valoarea polinomului f ın punctul A este aceeasi cu cea apolinomului r si acelasi lucru se poate spune despre orice alt polinom alcarui rest la ımpartirea prin µA este r. Polinomul r poate fi determinatprin aplicarea algoritmului de ımpartire cu rest a polinoamelor.

O alta modalitate de calcul a polinomului r se bazeaza pe faptul ca din(2.4) rezulta

µ(k)A (λi) = 0, k = 0 : mi − 1, (2.8)

si, ın consecinta, cei (cel mult) m coeficienti ai polinomului r se pot deter-mina, conform (2.6), prin rezolvarea sistemului de m ecuatii liniare

r(k)(λi) = f (k)(λi), i = 1 : l, k = 0 : mi − 1, (2.9)

unde indicele superior indica ordinul derivatei.1Amintim 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 maimare divizor comun (monic) al tuturor minorilor de ordinul n−1 ai matricei caracteristicezI −A atunci µA(z) = p(z)/d(z).

Page 40: MN Metode Numerice Carte(Matematici)

2.1. FUNCTII DE MATRICE 39

Relatiile (2.7) si (2.9) servesc ca baza pentru definirea valorii ın punctulA a oricarei functii f care admite derivatele cerute ın (2.9). Pentru oabordare formala introducem

Definitia 2.1 Fie A ∈ Cn×n si

Λ = {(λi, mi) | i = 1 : l, λi ∈ C, mi ∈ N} (2.10)

multimea zerourilor polinomului minimal µA al matricei A ımpreuna cumultiplicitatile respective. Daca functia f : D ⊂ C → C este analitica peo multime deschisa D ce contine punctele λi , i = 1 : l atunci spunem caf este definita pe spectrul matricei A iar multimea valorilor functiei f pespectrul matricei A este

f(Λ) ={

f (k)(λi) | i = 1 : l, k = 0 : mi − 1}

. (2.11)

In particular, o functie ıntreaga f (i.e. analitica pe D = C) este definitape spectrul oricarei matrice A ∈ Cn×n.

In conditiile definitiei 2.1 introducem

Definitia 2.2 Fie date o matrice A ⊂ Cn×n si o functie f definita pespectrul lui A. Daca polinomul minimal µA al matricei A are gradul matunci polinomul r de grad cel mult m−1, unic determinat de sistemul liniar(2.9), se numeste polinomul de interpolare Lagrange-Sylvester al functieif pe spectrul matricei A.

Putem acum sa introducem notiunea de functie de matrice extinzandrelatia (2.7) de la polinoame la orice functie definita pe spectrul matriceiargument.

Definitia 2.3 Daca f este o functie definita pe spectrul unei matrice Aatunci valoarea functiei f ın punctul A este

f(A) = r(A), (2.12)

unde r este polinomul de interpolare Lagrange-Sylvester al functiei f pespectrul lui A.

In scopul evidentierii cazurilor cand o functie de matrice este reala, ıncontinuare vom utiliza urmatoarea terminologie

Definitia 2.4 O functie f : D ⊂ C → C este reala pe spectrul matriceiA ∈ Rn×n daca

f(λi) = f(λi), ∀λi , λi ∈ λ(A),

Page 41: MN Metode Numerice Carte(Matematici)

40 CAPITOLUL 2. FUNCTII DE MATRICE

unde z este notatia pentru conjugatul numarului complex z.In particular f(λi) ∈ R pentru orice λi ∈ λ(A) ∩R.

In acest context avem

Propozitia 2.1 Daca functia f este reala pe spectrul matricei reale A ∈Rn×n atunci polinomul de interpolare Lagrange-Sylvester are coeficientiireali si, ın consecinta, matricea F = f(A) este reala.

Exemplul 2.1 Fie f(z) = ez si

A =

1 1 00 2 00 0 2

.

Avem µA(z) = z2 − 3z + 2 si Λ = {(1, 1) , (2, 1)} . Daca r(z) = r1z + r0,atunci sistemul (2.9) se scrie

{r1 + r0 = e2r1 + r0 = e2

de unde rezulta r0 = 2e− e2 , r1 = e2 − e si, ın consecinta,

F = eA = (e2 − e)A + (2e− e2)I3 =

e e2 − e 00 e2 00 0 e2

. ¦

Definitia 2.3 a functiilor de matrice pe baza polinomului de interpolareLagrange-Sylvester pune ın evidenta urmatoarele aspecte.

a) Evaluarea oricarei functii de matrice se reduce la evaluarea unuipolinom matriceal. Totusi, desi sunt stabilite expresii analitice pentrucoeficientii polinomului de interpolare Lagrange-Sylvester, aceasta cale nueste recomandata pentru calculul numeric al functiilor de matrice din con-siderente de eficienta si stabilitate numerica.

b) Valoarea functiei f ın punctul A este determinata exclusiv de multi-mea valorilor functiei f pe spectrul matricei A.

c) Daca matricea A nu are valori proprii multiple, atunci polinomulminimal coincide cu polinomul caracteristic iar sistemul liniar (2.9) a caruisolutie furnizeaza coeficientii polinomului de interpolare Lagrange-Sylvesterdevine

r(λi) = f(λi), i = 1 : n. (2.13)

Page 42: MN Metode Numerice Carte(Matematici)

2.1. FUNCTII DE MATRICE 41

Urmatoarele rezultate (ale caror demonstratii pot fi gasite, de exemplu,ın [ VII ]), permit evidentierea unor proprietati utile ın elaborarea unorproceduri de calcul efectiv.

Teorema 2.1 Fie λ(A) spectrul matricei A ∈ Cn×n si D ⊂ C un domeniucu frontiera Γ suficient de neteda astfel ıncat λ(A) ⊂ D. Daca f este ofunctie analitica pe D ∪ Γ atunci

f(A) =1

2πi

Γ

(zI −A)−1f(z)dz . (2.14)

Expresia (2.14) poate servi ca definitie pentru functiile analitice (pe undomeniu) iar calculul integralei Cauchy

fij =1

2πi

Γ

eTi (zI −A)−1ejf(z)dz (2.15)

poate fi efectuat cu ajutorul teoremei reziduurilor.

Exemplul 2.2 Consideram functia f si matricea A din exemplul 2.1.Avem λ(A) = {1, 2, 2} si

(zI −A)−1 =

1z−1

1(z−1)(z−2) 0

0 1z−2 0

0 0 1z−2

.

Prin urmare, f fiind analitica ın tot planul complex, putem alege un dome-niu simplu conex oarecare ce satisface λ(A) ⊂ D. Obtinem

f11 =1

2πi

Γ

ez

z − 1dz = Rez

[ez

z − 1

]∣∣∣∣z=1

= e,

f22 = f33 =1

2πi

Γ

ez

z − 2dz = Rez

[ez

z − 2

]∣∣∣∣z=2

= e2,

f13 =1

2πi

Γ

ez

(z − 1)(z − 2)dz = Rez

[ez

(z − 1)(z − 2)

]∣∣∣∣z=1

+

+Rez[

ez

(z − 1)(z − 2)

]∣∣∣∣z=2

= −e + e2,

Page 43: MN Metode Numerice Carte(Matematici)

42 CAPITOLUL 2. FUNCTII DE MATRICE

celelalte elemente ale matricei F = eA fiind, evident, nule. ¦In cele ce urmeaza vom aborda ın exclusivitate cazul functiilor analitice

si vom putea utiliza, ın consecinta, relatia (2.14) ca o relatie definitorie afunctiilor de matrice.

Mentionam, de asemenea, posibilitatea exprimarii functiilor de matriceprin serii matriceale de puteri. In acest sens avem urmatoarea

Teorema 2.2 Daca functia f(z) se poate dezvolta ın serie de puteri ınjurul punctului z = z0

f(z) =∞∑

k=0

αk(z − z0)k (2.16)

si seria este convergenta ın discul |z − z0| < r atunci aceasta dezvoltareramane valabila daca argumentul scalar este ınlocuit cu argumentul ma-triceal A

f(A) =∞∑

k=0

αk(A− z0I)k (2.17)

oricare ar fi matricea A al carei spectru se afla ın interiorul discului deconvergenta.

Din aceasta teorema rezulta, printre altele, ca dezvoltarile

eA =∞∑

k=0

1k!

Ak,

sin A =∞∑

k=0

(−1)k

(2k + 1)!A2k+1, cos A =

∞∑

k=0

(−1)k

(2k)!A2k

sunt valabile oricare ar fi matricea A ∈ Cn×n.

Exemplul 2.3 Reluam matricea A si functia f din exemplul 2.1. Prininductie rezulta imediat

Ak =

1 2k − 1 00 2k 00 0 2k

si deci

F = eA =∞∑

k=0

1k!

Ak =

∑∞k=0

1k!

∑∞k=0

2k−1k! 0

0∑∞

k=02k

k! 0

0 0∑∞

k=02k

k!

=

Page 44: MN Metode Numerice Carte(Matematici)

2.1. FUNCTII DE MATRICE 43

=

e e2 − e 00 e2 00 0 e2

. ¦

In continuare, prezentam cateva proprietati ale functiilor de matrice,utile ın dezvoltarile procedurale care fac obiectul metodelor de calcul reco-mandate ca fiind cele mai bune ın momentul actual.

Propozitia 2.2 Daca functia f este definita pe spectrul matricei A si

B = TAT−1 (2.18)

unde T este o matrice nesingulara, atunci

f(B) = Tf(A)T−1. (2.19)

Demonstratia este imediata pentru functiile analitice pe baza relatiei defi-nitorii (2.14) ıntrucat din (2.18) rezulta

(zI −B)−1 = (T (zI −A)T−1)−1 = T (zI −A)−1T−1. ¦

Transferul transformarilor de asemanare (2.18) de la nivelul argumentelormatriceale la nivelul functiilor are o importanta decisiva ın elaborarea unortehnici de calcul adecvate care se pot focaliza asupra unor structuri ma-triceale remarcabile.

Propozitia 2.3 Daca matricea A este (bloc-) diagonala

A = diag(A11, A22, . . . , App) (2.20)

atunci f(A) este (bloc-) diagonala si

Fdef= f(A) = diag (f(A11), f(A22), . . . , f(App)) . (2.21)

Demonstratie. Din faptul ca

(zI −A)−1 = diag((zI −A11)−1, (zI −A22)−1, . . . , (zI −App)−1

)

(2.21) rezulta direct din (2.14). ¦Observatia 2.1 Conform propozitiilor 2.2 si 2.3, daca

T−1AT = diag(J1, . . . , Jp)

Page 45: MN Metode Numerice Carte(Matematici)

44 CAPITOLUL 2. FUNCTII DE MATRICE

este forma Jordan a lui A, atunci avem

f(A) = T diag(f(J1), . . . , f(Jp))T−1,

si calculul lui f(A) se reduce la calculul matricelor f(Jk), unde Jk suntblocurile Jordan. Considerand un bloc Jordan generic

J =

λ 1 0 · · · 00 λ 1 · · · 0

. . . . . .. . . 1

0 0 0 · · · λ

si utilizand definitia 2.3 obtinem

f(J) =

f(λ) f ′(λ) . . .f (m−1)(λ)(m− 1)!

0 f(λ) . . .f (m−2)(λ)(m− 2)!

......

. . ....

0 0 . . . f(λ)

,

(exercitiul 2.4). ¦

Propozitia 2.4 Daca matricea A ∈ Cn×n este superior (inferior) triunghi-ulara, iar f este o functie definita pe spectrul lui A atunci

a) F = f(A) este superior (inferior) triunghiulara;b) fii = f(aii), i = 1 : n.

Demonstratie.a) Se stie ca inversa unei matrice superior (inferior) triunghiulare nesin-

gulare este superior (inferior) triunghiulara. In consecinta (zI −A)−1 estesuperior (inferior) triunghiulara si, din (2.14), rezulta ca aceeasi structurao are si matricea F = f(A).

b) Daca A este o matrice triunghiulara atunci elementele diagonale alematricei (zI −A)−1 sunt

1z − aii

, i = 1 : n.

Functia f fiind definita pe spectrul matricei A, rezulta ca λi = aii, i =1 : n nu sunt puncte singulare pentru f si, ın consecinta, utilizand formula

Page 46: MN Metode Numerice Carte(Matematici)

2.1. FUNCTII DE MATRICE 45

integrala a lui Cauchy pentru elementele diagonale din (2.14), rezulta

fii =1

2πi

Γ

f(z)z − aii

dz = f(aii), i = 1 : n.

q.e.d. ¦

Propozitia 2.5 Fie λ(A) = {λ1, . . . , λn} spectrul matricei A ∈ Cn×n.Atunci pentru orice functie f definita pe spectrul lui A avem

λ(f(A)) = {f(λ1), . . . , f(λn)} . (2.22)

Demonstratie. Fie B = QHAQ forma Schur complexa a matricei A. AtunciB este superior triunghiulara si bii = λi, i = 1 : n. Aplicand propozitiile2.2 si 2.4 rezulta

f(A) = Qf(B)QH

si, deci, valorile proprii ale matricei f(A) sunt f(bii) = f(λi), i = 1 : n. ¦

Propozitia 2.6 Matricele A ∈ Cn×n si F = f(A) comuta i.e.

Af(A) = f(A)A. (2.23)

Demonstratie. Existenta matricei F = f(A) presupune ca functia f estedefinita pe spectrul matricei A. In acest caz ınsa si functia h definita deh(z) = zf(z) = f(z)z este definita pe spectrul matricei A. Din faptul cah(A) are semnificatie rezulta (2.23). ¦

Teorema 2.1 ımpreuna cu proprietatea (2.23) stabileste un izomorfismf(z) ; f(A) ıntre algebra comutativa a functiilor analitice f(z) pe spectrullui A si algebra (de asemenea comutativa) a functiilor de matrice f(A).

Observatia 2.2 Din propozitiile 2.2 si 2.4 rezulta ca daca QHAQ =B este forma Schur a lui A atunci f(A) = Qf(B)QH , unde G = f(B)este superior triunghiulara cu gii = f(bii). Tinand seama ca forma Schurprezinta proprietati numerice net superioare formei canonice Jordan si capropozitia 2.6 sta la baza unui algoritm fiabil de calcul al functiilor dematrice triunghiulare (vezi sectiunea urmatoare) deducem ca rezultatele demai sus fundamenteaza o categorie importanta de proceduri de calcul alfunctiilor de argument matriceal. ¦

Proprietatile urmatoare, care ilustreaza izomorfismul de algebre comu-tative amintit anterior, permit extinderea unor identitati care pun ın relatiefunctii de argument scalar cu functii de matrice.

Page 47: MN Metode Numerice Carte(Matematici)

46 CAPITOLUL 2. FUNCTII DE MATRICE

Propozitia 2.7 Fie g(z1, z2, . . . , zp) un polinom ın nedeterminatele z1,z2, . . . , zp si fi, i = 1 : p functii definite pe spectrul matricei A ∈ Cn×n.Definim functia

h(z) ≡ g(f1(z), . . . , fp(z)). (2.24)

Atunci h este o functie definita pe spectrul matricei A si daca

h(k)(λi) = 0, i = 1 : l, k = 0 : mi − 1 (2.25)

unde (λi, mi), i = 1 : l sunt zerourile polinomului minimal µA cu multi-plicitatile respective, atunci

Hdef= h(A) = g(f1(A), . . . , fp(A)) = 0. (2.26)

Demonstratie. Daca ri, i = 1 : p sunt polinoamele de interpolare Lagrange-Sylvester ale functiilor fi pe spectrul matricei A, atunci consideram functiau definita de

u(z) = g(r1(z), . . . , rp(z))

care este, evident, o functie polinomiala de argument scalar. In acesteconditii, din (2.25), (2.26) si modul de definire a polinoamelor de interpolareLagrange-Sylvester (2.9) rezulta

u(k)(λi) = 0, i = 1 : l, k = 0 : mi − 1,

respectiv polinomul de interpolare al functiei u este identic nul, de undeobtinem

u(A) = g(r1(A), . . . , rp(A)) = g(f1(A), . . . , fp(A)) = 0

q.e.d. ¦Cateva consecinte imediate ale propozitiei 2.7, care evidentiaza trans-

ferul unor formule scalare ın cazul matriceal sunt urmatoarele relatii utile.

a) Fie polinomul g(z1, z2) = z21 +z2

2−1 si functiile f1(z) = sin z, f2(z) =cos z. Atunci functia definita ın (2.25)

h(z) ≡ g(sin z, cos z) = sin2z + cos2z − 1

este identic nula si prin urmare (2.26) este satisfacuta pentru orice matriceA. De aici rezulta ca, pentru toate matricele patrate A, avem

sin2A + cos2A = I.

Page 48: MN Metode Numerice Carte(Matematici)

2.1. FUNCTII DE MATRICE 47

b) Similar, considerand polinomul g(z1, z2) = z1z2−1 si functiile f1(z) =ez, f2(z) = e−z obtinem eAe−A = I, adica

e−A =(eA

)−1.

c) De asemenea, cu g(z1, z2, z3) = z1 + z2 + z3 si f1(z) = eiz, f2(z) =− cos z, f3(z) = −i sin z rezulta ca pentru orice matrice patrata A esteadevarata formula

eiA = cos A + i sin A.

Propozitia 2.8 Daca

ρ(z) =g(z)h(z)

(2.27)

este o functie rationala ireductibila, definita pe un domeniu care nu contineradacinile polinomului h(z) iar A ∈ Cn×n atunci functia ρ este definita pespectrul matricei A daca si numai daca

h(λi) 6= 0 ∀λi ∈ λ(A). (2.28)

Daca (2.28) sunt satisfacute atunci

ρ(A) = g(A)[h(A)]−1 = [h(A)]−1g(A). (2.29)

Demonstratie. Functia ρ este indefinit derivabila ın toate punctele ın careh(z) nu se anuleaza. In consecinta ρ(k)(λi) sunt definite daca si numaidaca (2.28) sunt adevarate. Pe de alta parte din (2.28) si propozitia 2.5rezulta ca 0 6∈ λ(h(A)) i.e. matricea h(A) este nesingulara. Aplicand acumpropozitia 2.7, din identitatea

h(z)ρ(z) = ρ(z)h(z) = g(z)

rezultah(A)ρ(A) = ρ(A)h(A) = g(A)

care ımpreuna cu nesingularitatea matricei h(A) conduc la (2.29). ¦

Propozitia 2.9 Daca functia compusa h = g ◦ f este definita pe spectrulmatricei A ∈ Cn×n atunci

h(A) = g(f(A) (2.30)

i.e. h(A) = g(B) unde B = f(A).

Demonstratia este propusa cititorului. ¦

Page 49: MN Metode Numerice Carte(Matematici)

48 CAPITOLUL 2. FUNCTII DE MATRICE

2.2 Calculul functiilor de matrice

Tehnicile numerice de evaluare a functiilor de matrice, recomandate deexperienta numerica acumulata, evita determinarea efectiva a polinomuluide interpolare Lagrange-Sylvester, ın primul rand din motive de eficienta[ 1 ]. Metodele care s-au impus – si pentru care exista si unele rezultateteoretice privind problemele legate de stabilitatea numerica – se pot ımpartiı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 fi expuse ın paragraful urmator, dedicat cazului particular dar impor-tant pentru teoria sistemelor liniare, al calculului exponentialei matriceale.

Pentru matricele simple (i.e. diagonalizabile) calculul functiilor de ma-trice prin evaluarea valorilor si vectorilor proprii se bazeaza pe propozitiile2.2 si 2.3. Intr-adevar, ın acest caz, daca V = [ v1 v2 . . . vn ] este matriceavectorilor proprii ai matricei date A ∈ Cn×n atunci A = V ΛV −1 undeΛ = diag(λ1, λ2, . . . , λn).

Prin urmare, pentru orice functie definita 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 functia vvp de calcul a valorilor si vectorilor propriiai unei matrice (desigur, prin aplicarea algoritmului QR) cu sintaxa

[ V, p ] = vvp(A)

unde p este vectorul valorilor proprii pentru matricea A, relatia (2.31) sta labaza urmatorului algoritm de calcul al functiilor de matrice diagonalizabile.

Algoritmul 2.1 (Date matricea simpla A ∈ Cn×n si functiaf : D ⊂ C → C definita pe spectrul matricei A, algoritmulcalculeaza F = f(A) prin determinarea valorilor si vectorilorproprii.)

1. [ V, p ] = vvp(A)

2. Pentru i = 1 : n

1. βi = f(pi)

3. D = V diag(β1, β2, . . . , βn)

Page 50: MN Metode Numerice Carte(Matematici)

2.2. CALCULUL FUNCTIILOR DE MATRICE 49

4. Se rezolva sistemul matriceal liniar nesingular FV = D ınraport cu F .

Evident, efortul de calcul principal este destinat calculului valorilor sivectorilor proprii si, ıntr-o oarecare masura, rezolvarii sistemului matricealliniar.

In cazul functiilor f reale pe spectrul matricei reale A ∈ Rn×n (vezidefinitia 2.4), conform propozitiei 2.1 matricea rezultat F este reala. Intru-cat matricele V , D si vectorul p din algoritmul 2.1 nu sunt ın mod necesarreale, calculul (aproximativ) ın aritmetica complexa conduce la aparitiaunor componente parazite imaginare ın solutia calculata . De aceea, ıntr-un astfel de caz, algoritmul 2.1 se completeaza cu o instructiune de eliminarea acestor componente:

5. F = Re(F ).

Daca matricea A nu este diagonalizabila, o extindere a algoritmului 2.1apeleaza la calculul formei Jordan a matricei A, iar aplicarea propozitiilor2.1 si 2.2 reduce calculul functiei de matrice la calculul functiilor avand caargumente blocurile Jordan. Aceasta tehnica nu este ınsa recomandata ınprimul rand datorita unei sensibilitati ridicate a structurii Jordan ın raportcu perturbatiile ce apar la nivelul datelor de intrare.

Proprietati numerice mult mai bune, ın toate cazurile, se obtin dacaın locul formei canonice Jordan se utilizeaza forma Schur complexa (saureala) a matricei A. Aceasta alternativa este conditionata de existentaunui algoritm eficient de calcul al functiilor de matrice triunghiulare (saucvasitriunghiulare). Un astfel de algoritm, propus de B.N. Parlett [ 1 ],are la baza propozitia 2.3 si proprietatea de comutativitate formulata ınpropozitia 2.6. Vom deduce algoritmul pentru cazul generic al matricelorcu valori proprii distincte.

Fie T ∈ Cn×n o matrice superior triunghiulara cu tii 6= tjj pentru oricei 6= j si f o functie definita pe spectrul lui T . Daca F = f(T ) atunci,conform (2.23), avem

FT = TF. (2.32)

Tinand cont, conform propozitiei 2.4, ca matricea F este, de asemenea,superior triunghiulara si scriind (2.32) pe elemente obtinem

j∑

k=i

tikfkj =j∑

k=i

fiktkj , j = 1 : n, i = 1 : j, (2.33)

Page 51: MN Metode Numerice Carte(Matematici)

50 CAPITOLUL 2. FUNCTII DE MATRICE

de unde, ın ipotezele mentionate, avem

fij =1

tjj − tii[tij(fjj − fii) +

j−1∑

k=i+1

(tikfkj − fiktkj)], j = 1 : n, i = 1 : j.

(2.34)Relatia (2.34) este utila numai ın masura ın care se poate gasi o ordine de

calcul a elementelor matricei F astfel ıncat, la fiecare moment al procesuluide calcul, ın membrul drept al expresiei (2.34) sa apara numai elemente dejacalculate. O astfel de ordine exista si ea poate fi evidentiata observand caelementele diagonale sunt calculabile, conform (2.22), cu formula

fii = f(tii) (2.35)

si ca ın membrul drept al relatiei (2.34) apar elementele F (i, i : j − 1)din ”stanga” elementului fij si F (i + 1 : j, j) de ”sub” elementul fij (vezidiagrama din figura 2.1).

j

i F (i, i : j − 1) fij

¾ F (i + 1 : j, j)¨§

¥¦

@@

@@

@@

@@

@@

@@

Figura 2.1: Matricea F = f(T ).

De exemplu, se poate adopta o ordine diagonala de calcul al elementelortriunghiului superior, dupa cum este indicat ın diagrama din figura 2.2pentru n = 5, numarul ınscris ın matrice marcand numarul de ordine pentrucalculul elementului de pe pozitia respectiva.

Aceasta nu este singura ordine posibila. Intr-adevar, daca efectuamcalculele pe coloane ın ordinea j = 1, 2, . . . , n, pe fiecare coloana calculele

Page 52: MN Metode Numerice Carte(Matematici)

2.2. CALCULUL FUNCTIILOR DE MATRICE 51

1 6 10 13 152 7 11 14

3 8 124 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 figura 2.3) sau pe liniiın ordinea i = n, n− 1, . . . , 1, pe fiecare linie ordinea de calcul fiind de lastanga la dreapta (diagrama b) din figura 2.3), atunci ın momentul calculu-lui unui element curent oarecare, elementele din stanga si de sub elementulcurent sunt deja calculate.

1 3 6 10 152 5 9 14

4 8 137 12

11

11 12 13 14 157 8 9 10

4 5 62 3

1

(a) (b)

Figura 2.3: Ordinea ”pe coloane” (a) si ordinea ”pe linii” (b) de calcul aelementelor matricei F = f(T ).

Prezentam ın continuare algoritmul corespunzator ordinii diagonale decalcul, celelalte variante facand obiectul unor exercitii. Pentru a urmarimai usor indexarea, observam ca, atribuind indicele q directiilor paralelecu diagonala principala a matricei, rezulta urmatoarea schema de calcul.

1. Se calculeaza fii, i = 1 : n cu relatia (2.35).

2. Pentru q = 2 : n

1. Pentru i = 1 : n− q + 1

1. Se calculeaza fi,i+q−1 cu relatia (2.34).

Page 53: MN Metode Numerice Carte(Matematici)

52 CAPITOLUL 2. FUNCTII DE MATRICE

Pentru a nu modifica indexarea folosita ın expresia (2.34) a elementuluifij facem urmatoarele schimbari de indici:

p = q − 1, j = i + p,

cu care schema de mai sus ne conduce la urmatorul algoritm de calcul alfunctiilor de matrice triunghiulare cu elementele diagonale distincte.

Algoritmul 2.2 (Parlett)(Date o matrice superior triun-ghiulara T ∈ Cn×n cu tii 6= tjj pentru orice i 6= j si o functief : D ⊂ C → C definita pe spectrul matricei T , algoritmul cal-culeaza, ın ordine diagonala, elementele matricei superior tri-unghiulare F = f(T ).)

1. Pentru i = 1 : n

1. fii = f(tii)

2. Pentru p = 1 : n− 1

1. Pentru i = 1 : n− p

1. j = i + p

2. s = tij(fjj − fii)3. Daca p > 1 atunci

1. Pentru k = i + 1 : j − 11. s = s + tikfkj − fiktkj

4. fij = stjj − tii

Schema recurenta care sta la baza algoritmului 2.2 este deosebit deeficienta, ın afara celor n evaluari de functii scalare de la instructiunea 1,algoritmul necesitand un numar asimptotic de Nop ≈ 2n3

3 operatii ın virgulamobila.

Cu acest algoritm, completat cu procedura de aducere a unei matricedate la forma Schur complexa (superior triunghiulara) prin transformariortogonale de asemanare, se obtine o procedura cu bune calitati numericepentru calculul functiilor de matrice. Introducem functia fsc de calcul aformei Schur complexe avand sintaxa

[S, U ] = fsc(A)

unde datele de iesire sunt matricea unitara de transformare U si formaSchur complexa S a matricei A legate prin relatiile

S = UHAU, A = USUH , (2.36)

Page 54: MN Metode Numerice Carte(Matematici)

2.3. CALCULUL EXPONENTIALEI MATRICEALE 53

indicele superior H semnificand dubla operatie de transpunere si conjugare.Notam cu funmt (”functie de matrice triunghiulara”) functia de calculrealizata de algoritmul 2.2 de mai sus, cu sintaxa (neformala)

F = funmt(f, T )

avand ca parametrii de intrare functia f si matricea superior triunghiu-lara T , iar ca parametru de iesire matricea F = f(T ). Cu aceste notatiiprezentam

Algoritmul 2.3 (Date o matrice A cu valori proprii dis-tincte si o functie f definita pe spectrul matricei A, algoritmulcalculeaza matricea F = f(A) prin metoda aducerii matricei Ala forma Schur complexa.)

1. [ S, U ] = fsc(A)

2. T = funmt(f, S)

3. F = UTUH

In cazul ın care matricea A are valori proprii multiple, algoritmul 2.3nu mai este functional pentru ca formula (2.34) nu mai este aplicabila.De asemenea, ın situatia existentei unor valori proprii foarte apropiate,aplicarea formulei (2.34) conduce la fenomene de instabilitate numerica.Solutia problemei ıntr-un astfel de caz poate consta ın utilizarea unei vari-ante ”bloc” a algoritmului Parlett dupa o prealabila grupare a valorilorproprii apropiate ın cadrul asa numitei forme Schur complexe ordonate.Pentru detalii recomandam [ 1 ], [ VII ].

2.3 Calculul exponentialei matriceale

Desi metodele de calcul prezentate ın sectiunea precedenta sunt aplicabilepentru toate functiile definite pe spectrul matricei argument, pentru anu-mite functii, de un interes aplicativ deosebit, au fost dezvoltate procedurialternative, cu calitati numerice superioare.

In acest paragraf prezentam principalele metode pentru calculul expo-nentialei matriceale

Φ(t) = etA, (2.37)

unde t > 0 este un parametru scalar. Dupa cum se stie, functia Φ(t) estematricea de tranzitie a starilor sistemului liniar x = Ax, adica satisfaceecuatia diferentiala matriceala liniara Φ = AΦ cu conditia initiala Φ(0) = I.

Page 55: MN Metode Numerice Carte(Matematici)

54 CAPITOLUL 2. FUNCTII DE MATRICE

Avand ın vedere importanta unui calcul fiabil al exponentialei ma-triceale pentru studiul sistemelor liniare, o discutie prealabila a conditionariinumerice a problemei calculului lui Φ(t) = etA, adica a sensibilitatii lui Φ(t)ın raport cu variatiile lui A, este necesara, ıntrucat erorile de calcul ale luiΦ(t) se traduc, prin mecanismul de propagare inversa, ın perturbatii lanivelul datelor de intrare, adica al matricei A.

Notand cu Φ(t) exponentiala asociata matricei peturbate A + E avem˙Φ = (A + E)Φ cu Φ(0) = I. Punand Φ = Φ + ∆Φ, obtinem

Φ + ∆Φ = AΦ + A∆Φ + EΦ + E∆Φ ,

unde Φ(0) = I, deci ∆Φ(0) = 0. Pentru simplitate, neglijam termenulE∆Φ si, prin integrare, deducem

∆Φ(t) =∫ t

0

e(t−τ)AEeτA dτ = Φ(t)∫ t

0

e−τAEeτA dτ .

Utilizand norma matriceala ‖ · ‖ = ‖ · ‖2 putem scrie

‖∆Φ(t)‖ ≤ ‖Φ(t)‖ · ‖∫ t

0

e−τAEeτA dτ‖

relatie din care rezulta

‖∆Φ(t)‖‖Φ(t)‖ ≤ cond(Φ(t))

‖E‖‖A‖ , (2.38)

unde

cond(Φ(t)) def= max‖E‖ = 1

‖∫ t

0

e−τAEeτA dτ‖ · ‖A‖ (2.39)

este numarul de conditie al lui A relativ la calculul lui Φ(t) = etA.Obtinem o evaluare grosiera a lui cond(Φ(t)) observand ca

‖∫ t

o

e−τAEeτA dτ‖ ≤∫ t

0

‖e−τA‖ · ‖E‖ · ‖eτA‖ dτ

unde‖e±τA‖ ≤ eτ‖A‖ , τ > 0.

De asemenea, avem∫ t

0

e2τ‖A‖ dt =1

2‖A‖ (e2t‖A‖ − 1) ,

Page 56: MN Metode Numerice Carte(Matematici)

2.3. CALCULUL EXPONENTIALEI MATRICEALE 55

decicondΦ(t) ≤ 1

2(e2t‖A‖ − 1). (2.40)

In concluzie, pentru a limita sensibilitatea lui Φ(t) ın raport cu variatiilelui A e necesar sa limitam t‖A‖, de exemplu astfel ıncat

t‖A‖ ≤ 1, (2.41)

fie alegand t suficient de mic, fie (ın cazul ın care t este impus) utilizandproprietatea

etA = (et

2m A)2m

, m ≥ 1. (2.42)

Intr-adevar, oricare ar fi t‖A‖ exista m astfel ıncat t2m ‖A‖ ≤ 1 iar daca

et

2m A e cunoscut atunci, conform (2.42), etA poate fi calculat printr-unproces de ridicare succesiva la patrat. O evaluare a lui m rezulta observandca daca t‖A‖ ≥ 1 atunci trebuie sa avem log2(t‖A‖) < m, deci

m = 1 + [ log2(t‖A‖) ], (2.43)

unde [·] este partea ıntreaga a argumentului.In practica m se poate alege printr-un procedeu de ınjumatatire suc-

cesiva. Schema de calcul, numita ”de ınjumatatire si ridicare la patrat”(scalling and squaring), pe scurt (1/2)2, este urmatoarea:

Schema (1/2)2

1. Se calculeaza ‖A‖.2. Se initializeaza m = 0.

3. Cat timp t‖A‖ ≥ 1

1. t ← t/22. m ← m + 1

4. Se calculeaza F = etA.

5. Cat timp m ≥ 1

1. F ← F 2

2. m ← m− 1

Observatia 2.3 Avand ın vedere necesitatea limitarii normei lui tA lacalculul exponentialei, schema (1/2)2 se aplica ıntotdeauna indiferent demetoda utilizata pentru calculul efectiv (Taylor, Pade, etc.). Trebuie ınsa

Page 57: MN Metode Numerice Carte(Matematici)

56 CAPITOLUL 2. FUNCTII DE MATRICE

mentionat ca ridicarea la patrat (adica ınmultirea a doua matrice) intro-duce erori de rotunjire suplimentare, mai precis calculul lui F 2 se face cuerori mici fata de ‖F‖2, dar nu neaparat fata de ‖F 2‖. Din aceasta cauzautilizarea schemei (1/2)2 ridica probleme de precizie daca norma ‖etA‖ emica 2. Pe de alta parte, daca exponentiala e utilizata pentru simulareaevolutiei unui sistem liniar, o conditie de tipul t‖A‖ < 1 orienteaza alegereapasului de discretizare si, ın consecinta, poate fi asigurata de la ınceput. ¦

In ipoteza ca t‖A‖ e limitata (de exemplu cu schema (1/2)2), metodeleuzuale de calcul al exponentialei matriceale constau ın constructia uneiaproximari locale ın jurul lui z = 0 a functiei ez 3. De regula aproximarileutilizate sunt de tip polinomial (Taylor) sau rational (Pade) si permit cal-culul lui etA prin evaluarea aproximarii considerate pentru z = tA.

I. Aproximatia polinomiala (Taylor) de ordin p este de forma

Tp(z) =p∑

k=0

ckzk (2.44)

2Acest lucru e posibil chiar daca t‖A‖ À 1 deoarece marginea ‖etA‖ ≤ et‖A‖ utilizatamai sus este ın general supraestimata (de exemplu A = −5, t = 1). De aceea este util sadispunem pentru evaluarea lui cond(Φ(t)) de estimari mai precise pentru ‖etA‖, eventualcapabile sa tina seama de repartitia spectrului lui A si ın special de ”dispersia” acestuia(”stiffness”). Se stie ca daca A are valorile proprii λi, atunci etA are valorile proprii eλit

(propozitia 2.5); pe de alta parte pentru orice matrice A si orice norma matriceala ‖ · ‖avem ‖A‖ ≥ ρ(A), unde ρ(A)

def= max | λi |, deci ‖etA‖ ≥ max | eλit |. Se poate arata

ca daca Re λi < α atunci exista M astfel ıncat ‖etA‖ ≤ Meαt , t ≥ 0. In mod analog,daca β < Re λi atunci exista N astfel ıncat ‖e−tA‖ ≤ Ne−βt , t ≥ 0. Prin urmare dacaspectrul lui A e cuprins ın banda β < Re λi < α atunci

‖∫ t

0

e−tAEetA dt‖ ≤ MN‖E‖∫ t

0

e(α−β)τ dτ = MN‖E‖ e(α−β)t − 1

α− β

deci

condΦ(t) ≤ MNeδt − 1

δ‖A‖

unde

δdef= α− β > 0

De aici se vede influenta nefavorabila 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 t‖A‖.3 In cazuri speciale (matrice simetrice cu valori proprii reale si negative, cum sunt cele

rezultate prin discretizarea spatiala a problemelor la limite eliptice) se pot utiliza apro-ximari globale (uniforme ın sens Cebasev sau ın medie patratica) valabile pe domeniulce contine spectrul lui A.

Page 58: MN Metode Numerice Carte(Matematici)

2.3. CALCULUL EXPONENTIALEI MATRICEALE 57

unde coeficientii ck se determina din conditiile

dk

dzk(ez − Tp(z))

∣∣∣∣z=0

= 0 , k = 0 : p . (2.45)

Obtinem

ck =1k!

, (2.46)

adica cea mai buna aproximare polinomiala locala de ordin p coincide cupolinomul Taylor corespunzator (fapt binecunoscut, de altfel).

Exemplul 2.4 Pentru p = 1 din (2.44) obtinem T1(z) = 1 + z iaraproximatia T1(tA) = I + tA a lui etA corespunde integrarii numerice aecuatiei diferentiale x(t) = Ax(t) prin metoda Euler explicita de ordin 1. Inmod similar se poate arata ca metoda Runge-Kutta de ordin 4 corespundealegerii p = 4 ın (2.44). ¦

Putem evalua eroarea de trunchiere comisa prin utilizarea aproximatieipolinomiale (2.44) observand ca

ez − Tp(z) def=∑

k≥p+1

zk

k!=

zp+1

(p + 1)!

[1 +

z

p + 2+

z2

(p + 2)(p + 3)+ · · ·

]

unde paranteza dreapta e majorata prin

1 +|z|1

+|z|21 · 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) obtinemeroarea relativa de trunchiere sub forma

‖etA − Tp(tA)‖‖etA‖ ≤ (t‖A‖)p+1

(p + 1)!. (2.47)

Altfel spus, avem‖etA − Tp(tA)‖

‖etA‖ ≤ tol , (2.48)

unde tol este precizia de calcul impusa, daca alegem p astfel ıncat

(t‖A‖)p+1

(p + 1)!< tol . (2.49)

Page 59: MN Metode Numerice Carte(Matematici)

58 CAPITOLUL 2. FUNCTII DE MATRICE

Pentru orientare, mentionam ca daca t‖A‖ < 12 si tol este de ordinul 10−5,

atunci conditia (2.49) impune p = 5÷ 6.Evaluarea polinomului matriceal Tp(A) are loc dupa schema

Tk+1(tA) = Tk(tA) + Xk , Xk =1k!

tkAk , (2.50)

unde ıntre doi termeni succesivi Xk si Xk−1 are loc relatia

Xk =1k

tAXk−1 , (2.51)

iar initializarile sunt, evident, T0(tA) = I si X0 = I.Tinand seama de cele spuse mai sus, algoritmul de calcul al exponenti-

alei matriceale poate fi formulat ın felul urmator.

Algoritmul 2.4 (Date A ∈ Rn×n si t ∈ R algoritmul cal-culeaza F = etA, ın ipoteza t‖A‖ < 1, utilizand aproximatiaTaylor).

1. Se determina p din conditia (2.49).2. X = I

3. F = I

4. Pentru k = 1 : p

1. X ← 1k tAX

2. F ← F + X

Numarul de operatii necesare este de ordinul Nop ∼ pn3 (pentru efectuareaprodusului matriceal de la pasul 4.1).

Observatia 2.4 In absenta limitarii lui t‖A‖, la pasul 4.2 pot avea locfenomene de anulare prin scadere cu consecinte catastofale asupra pre-ciziei. Prin urmare, algoritmul de mai sus se asociaza ın mod obligatoriucu schema (1/2)2. In orice caz, pentru siguranta calculului, se recomandamonitorizarea normei termenilor X. ¦

II. Aproximatia rationala (Pade) de grade (p , q) si de ordin p + qeste de forma

Rpq(z) =Np(z)Dq(z)

=c0 + c1z + · · ·+ cpz

p

1 + d1z + · · ·+ dqzq, (d0

def= 1) , (2.52)

unde coeficientii ck , dk se determina din conditiile

dk

dzk(ez −Rpq(z)) = 0 , k = 0 : p + q . (2.53)

Page 60: MN Metode Numerice Carte(Matematici)

2.3. CALCULUL EXPONENTIALEI MATRICEALE 59

Echivalent, se poate utiliza metoda coeficientilor nedeterminati, scriind for-mal

Dq(z)(∑

k≥0

zk

k!) = Np(z)

si egaland coeficientii gradelor egale din cei doi membri pana la gradul p+qnecesar. Rezulta

ck =(p + q − k)!p!

(p + q)!k!(p− k)!, dk =

(p + q − k)!q!(p + q)!k!(q − k)!

(−1)k . (2.54)

Exemplul 2.5 Pentru q = 0 obtinem aproximatia polinomiala (Taylor).Primele aproximatii rationale ”diagonale”, i.e. cu p = q, sunt

R11(z) =1 + z

2

1− z2

cu polul z = 2, respectiv

R22(z) =1 + z

2 + z2

12

1− z2 + z2

12

cu polii z1,2 = 3± i√

3 avand Re z1,2 = 3, plasati pe cercul de raza 2√

3. ¦Prin urmare, trecand la cazul matriceal, constatam ca ın general exis-

tenta aproximatiei rationale Rpq(tA) nu este asigurata neconditionat (vezipropozitia 2.8), ıntrucat matricea Dq(tA) poate fi singulara; de exemplu,

D1(tA) = I − 12tA

este singulara daca t = 1 si A are o valoare proprie λ = 2. (In legaturacu aceasta, observam ca daca este ındeplinita conditia t‖A‖ < 1, adica‖A‖ < 1, atunci cu atıt mai mult | λi |< 1, deci aceasta situatie esteimposibila). In general, se poate arata ca toate zerourile lui Dq(z) suntsituate ın Re z > 0 si se acumuleaza la ∞ pentru q → ∞ astfel ıncatDq(tA) rezulta sigur nesingulara daca este satisfacuta cel putin una dinurmatoarele conditii

i) Re λi < 0, i.e. matricea A este stabila;ii) q este suficient de mare;

iii) t‖A‖ < 2.In consecinta, conditia de limitare a normei lui tA este utila pentru

a asigura nu numai buna conditionare a problemei calculului lui etA ci si

Page 61: MN Metode Numerice Carte(Matematici)

60 CAPITOLUL 2. FUNCTII DE MATRICE

existenta aproximatiei rationale considerate mai sus, independent de ca-racteristicile de stabilitate ale matricei date A sau de ordinul q adoptat ıncalcule.

Pe de alta parte, pentru a conecta exemplele 2.4 si 2.5, este instructiv saobservam ca aproximatia rationala R11(tA) corespunde integrarii numericea ecuatiei diferentiale x(t) = Ax(t) prin metoda Euler implicita de ordin 1.

Eroarea de trunchiere poate fi limitata alegınd convenabil gradele p, qale aproximarii (2.51). Se poate arata ca (vezi [ 4 ]) daca t‖A‖ < 1

2 atunci

Rpq(tA) = et(A+E) (2.55)

unde AE = EA iar

‖tE‖ ≤ 8p!q!

(p + q)!· (t‖A‖)p+q+1

(p + q + 1)!. (2.56)

Mai mult, deoarece AE = EA implica et(A+E) = etA · etE (exercitiul2.12), eroarea relativa de trunchiere comisa prin utilizarea aproximatieiPade Rpq(tA) poate fi evaluata acoperitor prin

‖et(A+E) − etA‖‖etA‖ ≤ ‖etE − I‖ = ‖tE +

t2E2

2!+ · · · ‖ ≤ t ‖E‖ et‖E‖ . (2.57)

De exemplu, ın cazul aproximatiei polinomiale (q = 0) avem

‖tE‖ ≤ 8(t‖A‖)p+1

(p + 1)!(2.58)

si aceasta inegalitate poate fi utilizata ın locul lui (2.47). De mentionat ca,ın orice caz, evaluarea (2.56), valabila ın cazul general p 6= q, este simetricaın raport cu p si q, deci nu permite alegerea lor univoca.

Avem nevoie de un criteriu suplimentar care ın cazul de fata este efortulde calcul necesar pentru realizarea unei aproximatii de ordin p+q dat. Intr-adevar, daca p+q e fixat, atunci trebuie sa calculam polinoamele Np(tA) siDq(tA) (printr-o schema similara cu cea utilizata mai sus pentru Tp(tA)),iar ın acest scop sunt necesare pn3 si, respectiv, qn3 operatii. Avand ınvedere expresiile coeficientiilor ck , dk, cazul diagonal p = q este evidentoptimal deoarece corespunde la dk = (−1)kck adica Np(tA) si Dp(tA) au(pana la semn) aceiasi termeni care se calculeaza – o singura data pentruambele polinoame – ın pn3 operatii. Odata fixata relatia p = q valoareaconcreta se alege din conditia ‖tE‖ < eps, mai precis

8(p!)2

(2p)!· (t‖A‖)2p+1

(2p + 1)!≤ eps , (2.59)

Page 62: MN Metode Numerice Carte(Matematici)

2.3. CALCULUL EXPONENTIALEI MATRICEALE 61

adica, deoarece exponentul din (2.59) este 2p + 1 ın loc de p + 1 din (2.49),p corespunzator aproximatiei rationale e aproximativ jumatate din p core-spunzator aproximatiei polinomiale. Altfel spus, cu acelasi p aproximatiarationala asigura un ordin de precizie dublu.

Polinoamele Np(tA) si Dp(tA) se evalueaza dupa schema cunoscuta,adica

Nk+1(tA) = Nk(tA) + Xk , Xk = cktkAk (2.60)

undeXk =

p− k + 1k(2p− k + 1)

tAXk−1. (2.61)

Rezulta urmatorul algoritm.

Algoritmul 2.5 (Pade) (Date A ∈ Rn×n si t ∈ R ast-fel ıncat t‖A‖ < 1

2 , algoritmul calculeaza F = etA utilizandaproximatia Pade).

1. Se determina p din conditia (2.59).2. X = I

3. N = I

4. D = I

5. Pentru k = 1 : p

1. X ← p− k + 1k(2p− k + 1) tAX

2. N ← N + X

3. D ← D + (−1)kX

6. Se rezolva ecuatia matriceala DF = N ın raport cu F .

Numarul de operatii necesar este de ordinul N1 = pn3 (pentru efectuareaprodusului matriceal de la pasul 5.1.), N2 = n3

3 (pentru triangularizarea luiD) si N3 = n3 (pentru calculul celor n coloane ale lui F ), adica, ın total,Nop ≈ (p + 4

3 )n3, comparabil cu cel obtinut anterior.

Observatia 2.5 Pentru siguranta calculului, ın afara de monitorizareanormei termenilor X, se recomanda testarea lui cond(D) la pasul 6. ¦

Programe MATLAB disponibile

Pentru calculul unei functii de matrice cu valori proprii distincte se poatefolosi functia funm, care implementeaza algoritmul 2.3. Pentru calcu-lul exponentialei matriceale este disponibila functia expm, care imple-menteaza algoritmul 2.5, bazat pe aproximarea Pade. (Optional, pentru

Page 63: MN Metode Numerice Carte(Matematici)

62 CAPITOLUL 2. FUNCTII DE MATRICE

compararea rezultatelor, se poate recurge la utilizarea unor versiuni alefunctiei expm ce implementeaza algoritmii 2.1 si 2.3).

Alte proceduri de discretizare aproximativa a unor sisteme de ecuatiidiferentiale liniare, utilizate traditional ın analiza si simulare (aproximatiilede ordin zero si unu, aproximatia Tustin, etc.) fac obiectul functiei MAT-LAB c2dm.

Exercitii

E 2.1 Se considera data matricea

A =

3 −3 2−1 5 −2−1 3 0

.

Sa se calculeze urmatoarele functii de matrice folosind definitia 2.3 si veri-ficand ın prealabil ca functiile respective sunt definite pe spectrul matriceiargument: a) F = A−1 , b) G =

√A , c) H = eAln2 , d) S1 = sin(π

4 A) , e)C1 = cos(π

4 A) , f) S2 = sin(π8 A) , g) C2 = cos(π

8 A).

E 2.2 Verificati ca matricele calculate ın exercitiul precedent satisfacrelatiile: a) G2 = A (exista matrice X 6= G care satisfac X2 = A ?),b) S1 = 2S2C2 = 2C2S2, c) C2

1 = C22 − S2

2 , etc. Puteti generalizaaceste rezultate aratand, e.g., ca (

√A)

2= A , sin 2A = 2 sin A cosA ,

cos 2A = 2(cos A)2 − I etc, oricare ar fi matricea patrata A pe spectrulcareia functiile respective sunt definite ?

E 2.3 Reluati matricea A din exercitiul 2.1 si calculati functiile de matricecerute pe baza teoremei 2.1 (relatiile (2.15)).

E 2.4 Sa se deduca expresia analitica a matricei F = f(J) unde J ∈ Cm×m

este un bloc Jordan iar f este o functie definita pe spectrul lui J (veziobservatia 2.1).

E 2.5 Verificati ca matricea A din exercitiul 2.1 este simpla si determinatiun set complet de vectori proprii al acesteia. Pe aceasta baza calculatifunctiile de matrice cerute utilizand algoritmul 2.1.

E 2.6 Fie A ∈ Cn×n o matrice simpla si vj , j = 1 : n un set complet devectori proprii al acestei matrice. Daca uj = V −1( : , j), unde V este ma-tricea vectorilor proprii mentionati, iar f este o functie definita pe spectrul

Page 64: MN Metode Numerice Carte(Matematici)

2.3. CALCULUL EXPONENTIALEI MATRICEALE 63

λ(A) = {λ1, λ2, . . . , λn } al matricei date sa se arate ca

Fdef= f(A) =

n∑

j=1

f(λj) vjuHj .

Folosind setul de vectori proprii al matricei A din exercitiul 2.1, calculat ınexercitiul precedent, aplicati formula de mai sus pentru calculul functiilorde matrice cerute.

E 2.7 Rescrieti algoritmul Parlett de calcul al functiilor de matrice superiortriunghiulare cu valori proprii distincte calculand elementele matricei F =f(T ) ın ordinea ”pe coloane”, respectiv ”pe linii” (vezi figura 2.3). Adaptatiacest algoritm pentru calculul functiilor de matrice inferior triunghiulare cuelementele diagonale distincte.

E 2.8 Scrieti un algoritm eficient pentru calculul functiei F = f(A), undeA este superior bidiagonala cu elemente diagonale distincte.

E 2.9 Scrieti un algoritm eficient pentru calculul unei functii F = f(A),unde A ∈ Rn×n este simetrica. Considerati cazurile f(z) = ez, f(z) =ln z, f(z) =

√z.

Indicatie. Utilizand algoritmul QR simetric se obtine A = QT ΛQ, undeQ este ortogonala iar Λ = diag (λ1, λ2, . . . , λn) contine valorile proprii(reale) ale lui A. Apoi se aplica (2.19).

E 2.10 Scrieti un algoritm eficient pentru calculul matricei de tranzitieΦ(k) = Ak a sistemului liniar discret x(k + 1) = Ax(k).

Indicatie. Executand A ← A ∗A de zece ori se obtine A ← A1024. Cumprocedati daca, de exemplu, k = 1453, k = 1789 sau k = 1917 ?

E 2.11 Discutati metodele de calcul ale exponentialei matriceale etA, undeA este o matrice companion, e.g. are forma

A =

0 1 · · · 0...

.... . .

...0 0 · · · 1−a1 −a2 · · · −an

,

si scrieti algoritmul de calcul pe care ıl recomandati.

Indicatie. Polinomul caracteristic al lui A este p(s) def= det(sIn − A) =sn + ansn−1 + · · · + a1. Utilizand teorema Cayley – Hamilton, conform

Page 65: MN Metode Numerice Carte(Matematici)

64 CAPITOLUL 2. FUNCTII DE MATRICE

careia p(A) = 0, precum si dezvoltarea ın serie a lui ez, gasim

etA =n∑

i=1

αi(t)Ai−1 ,

unde coeficientii functiilor analitice αi(t) pot fi calculati recurent. Alterna-tiv, utilizand transformata Laplace a exponentialei, putem scrie

(sI −A)−1 =n∑

k=1

sk−1

p(s)Ak ,

unde atat matricele Ak cat si transformatele inverse ale functilor sk−1/p(s)pot fi, ın principiu, evaluate numeric. Experienta numerica arata ca, ınambele situatii, efectul erorilor de rotunjire si trunchiere poate fi catastrofal,ceea ce confirma ınca o data faptul ca o metoda aplicabila ın regim delucru ”cu hartia si creionul” este aproape sigur contraindicata ın calitatede algoritm de uz curent (pe calculator). In cazul de fata se recomandautilizarea algoritmului 2.5, ın care structura rara a lui A reduce considerabilnumarul de operatii la pasul 5.1.

E 2.12 Aratati ca eA+B = eAeB este adevarata daca si numai daca AB =BA. Puteti da o expresie (aproximativa) pentru eA+B daca AB 6= BA ?

E 2.13 Scrieti schema (1/2)2 pentru calculul functiilor cos(tA) si sin(tA)si argumentati utilitatea ei. Idem pentru functiile cosh(tA) si sinh(tA).

E 2.14 Scrieti analogul algoritmilor 2.4 si 2.5 pentru calculul functiilordin exercitiul 2.13.

Observatie. Solutia ecuatiei diferentiale x(t) + Ax(t) = 0 cu conditiileinitiale x(0) = x, x(0) = y se scrie sub forma

x(t) = ( cos A12 t )x + ( A−

12 sin A

12 t ) y .

Examinand seriile corespunzatoare, explicati cum se aplica rezultatele demai sus ın aceasta situatie. Cum procedati daca A este simetrica si pozitivdefinita ?

E 2.15 Stabiliti legatura dintre functiile considerate mai sus si exponenti-ala matriceala etA0

, unde

A0 =[

0 In

−A 0

].

Page 66: MN Metode Numerice Carte(Matematici)

2.3. CALCULUL EXPONENTIALEI MATRICEALE 65

Ce implicatii calculatorii are constatarea facuta?

E 2.16 Fie A ∈ Rn×n si B ∈ Rn×m doua matrice date. Utilizanddefinitia matricei de tranzitie, precizati structura exponentialei matricealeetA0

, unde

A0 =[

A B0 0

].

Indicatie. Pe baza rezultatelor din § 2.1, se constata imediat ca etA0are

structura

etA0=

[F (t) G(t)

0 Im

].

Cine sunt F (t) si G(t) ?Observatie. Aceste rezultate sunt utilizate ın sectiunea 4.3 ın legatura

cu problema discretizarii sistemelor liniare.

E 2.17 Generalizati constatarea facuta ın exercitiul 2.16 pentru a obtineo procedura eficienta de calcul a integralelor

Gk(t) =∫ t

0

eηA (t− η)k−1

(k − 1)!dη, k = 1 : p.

Indicatie. Consultati [ 6 ].

E 2.18 Utilizand seria lui eηA si efectuand integrarea, obtineti dezvoltarileın serie ale functiilor Gk(t) si scrieti un algoritm de tip 2.4 pentru evaluarealor. Estimati eroarea de trunchiere.

Bibliografie

[1] Parlett B. N. A Recurrence among the Elements of Functions ofTriangular Matrices, Lin. Alg. and Its Applic., vol. 14, pp. 117–121,1976.

[2] Ward R. C. Numerical Computation of the Matrix Exponential withAccuracy Estimate, SIAM J. Numer. Anal., vol. 14, pp. 600–610,1977.

[3] Van Loan C. F. The Sensitivity of the Matrix Exponential, SIAMJ. Numer. Anal., vol. 6, pp. 971–981, 1977.

Page 67: MN Metode Numerice Carte(Matematici)

66 CAPITOLUL 2. FUNCTII DE MATRICE

[4] Moler C. B., Van Loan C. F. Nineteen Dubious Ways to Computethe Exponential of a Matrix, SIAM Review, vol. 20, pp. 801–836,1978.

[5] Van Loan C. F. A Note on the Evaluation of Matrix Polynomials,IEEE Trans. Automat. Contr., vol. AC-24, pp. 320–321, 1978.

[6] Van Loan C. F. Computing Integrals Involving the Matrix Expo-nential, IEEE Trans. Automat. Contr., vol. AC-24, pp. 395–404,1978.

Page 68: MN Metode Numerice Carte(Matematici)

Capitolul 3

Tehnici de procesare amodelelor sistemice liniare

In acest capitol ne vom ocupa de reprezentarile numerice ale modelelormatematice ale sistemelor liniare si vom prezenta principalele proceduri decalcul privitoare la utilizarea si manipularea acestora ın rezolvarea prob-lemelor de analiza si sinteza sistemica.

3.1 Modele sistemice liniare

In general, un sistem liniar este definit printr-un model de stare de forma

(S){

x(t) = Ax(t) + Bu(t)y(t) = Cx(t) + Du(t) (3.1)

unde vectorii x(t) ∈ Rn, u(t) ∈ Rm si y(t) ∈ Rl sunt starea, intrareasi, respectiv, iesirea sistemului la momentul curent t ∈ R iar A,B, C,Dsunt matrice constante de dimensiuni corespunzatoare. Dimensiunea n aspatiului starilor X = Rn se numeste ordinul (sau dimensiunea) lui (S).

Pe scurt, un model de stare al unui sistem liniar este definit de un cvartetde matrice si ın consecinta se noteaza S = (A,B,C, D).

Semnificatia dinamica a modelului de stare (S) poate fi rezumata astfel.Daca starea initiala x(0) = x si functia de intrare u(t), t ≥ 0 sunt pre-cizate, atunci traiectoria de stare x(t), t ≥0 este solutia ecuatiei diferentialedin (3.1) iar functia de iesire y(t), t ≥ 0 rezulta din a doua relatie (3.1).(Metodele de calcul corespunzatoare sunt expuse ın capitolul 4). Din acest

67

Page 69: MN Metode Numerice Carte(Matematici)

68 CAPITOLUL 3. MODELE SISTEMICE

punct de vedere, matricea A ∈ Rn×n caracterizeaza dinamica interna asistemului (adica evolutia acestuia la nivelul spatiului starilor), coloanelematricei B ∈ Rn×m definesc canalele de intrare, liniile matricei C ∈ Rl×n

definesc canalele de iesire iar elementele matricei D ∈ Rl×m reprezintacaile de transfer direct intrare-iesire. Daca D = 0 atunci sistemul S, no-tat pe scurt S = (A, B,C), este pur dinamic, ın sensul ca orice transferintrare-iesire este posibil numai prin intermediul modificarii (dinamice) astarii x(t), t ≥ 0. Aceste idei sunt evidentiate de schema bloc asociata lui(S) (figura 3.1).

D

B∫

C

A

h h- - - - - -

-

¾

?

6

u x x y

+

+

Figura 3.1: Structura modelului de stare al unui sistem liniar.

Modelul de stare (S) este invariant la o transformare liniara de stare

x = Tx, (3.2)

unde T ∈ Rn×n este o matrice nesingulara arbitrara, ın sensul ca noulvector de stare x satisface ecuatii (S) de acelasi tip cu (S), ın care matricelecorespunzatoare sunt

A = TAT−1 , B = TB ,

C = CT−1 , D = D .(3.3)

Modelele (S) si (S) legate prin relatiile (3.3) se numesc echivalente(sau asemenea) si sunt indiscernabile prin experimente intrare-iesire, decireprezinta un acelasi sistem liniar considerat modulo relatia de echivalenta(3.3). Pe scurt, au sens sistemic numai acele proprietati ale sistemului (S)care sunt invarianti ai lui (S) ın raport cu transformarile (3.3).

Din motive de eficienta si siguranta a calculului, deseori vom restrangeclasa transformarilor utilizand ın (3.3) numai matrice T = U ortogonale.In acest caz, vom spune ca modelele (S) si (S), legate prin relatiile

A = UAUT , B = UB ,

C = CUT , D = D ,(3.4)

Page 70: MN Metode Numerice Carte(Matematici)

3.1. MODELE SISTEMICE LINIARE 69

sunt ortogonal echivalente si, ın mod corespunzator, vom acorda o atentiespeciala invariantilor ortogonali ai lui (S). In legatura cu aceste notiuni,observam ca orice echivalenta ortogonala este o echivalenta, deci clasainvariantilor ortogonali este mai larga decat clasa invariantilor (orice invari-ant este invariant ortogonal dar reciproca este falsa!). De aceea, invariantiiortogonali au deseori proprietati de robustete si permit evaluari cantitative,ceea ce le confera avantaje de calcul si interpretare sistemica importante.Pentru concretizarea acestor idei ın legatura cu notiunile fundamentale decontrolabilitate si observabilitate, cititorul poate consulta capitolul 5.

In practica se considera deseori modele de stare generalizate (de tip,,descriptor”) de forma

(S′){

Ex(t) = Ax(t) + Bu(t)y(t) = Cx(t) + Du(t) , (3.5)

unde ın plus fata de (S), aici apare si matricea nesingulara E ∈ Rn×n.Interesant este cazul ın care E este aproape singulara astfel ıncat (la

fel ca ın cazul fascicolelor) formarea produselor E−1A, E−1B (respectivAE−1, CE−1) este nedorita. In acest caz transformarile (3.3), (3.4) sescriu

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′) este de forma (S), atunci obtinem

E = I daca si numai daca S = T−1 si ın acest caz (3.6), (3.7) se reducrespectiv la (3.3), (3.4). Pe de alta parte, daca E 6= I atunci obtinemE = I daca si numai daca TES = I, de exemplu S = I si T = E−1 sauS = E−1 si T = I, ın ambele cazuri transformarea (care implica calculullui E−1) fiind rau conditionata.

Din punct de vedere sistemic, modelele de tip (S′) cu E aproape singu-lara corespund sistemelor liniare cu constante de timp mici (sau dinamicainterna parazita) si tehnicile de aproximare a comportarii acestui tip de sis-teme pe baza unor modele de ordin redus se ınscriu ın clasa asa numitelormetode de perturbatii singulare.

In ultimul timp se studiaza si modele de tip (S′) ın care matricea E este

Page 71: MN Metode Numerice Carte(Matematici)

70 CAPITOLUL 3. MODELE SISTEMICE

singulara. In cazul ın care fascicolul (E, A) este regulat 1 aceste modelecorespund unor sisteme ,,singulare” care, de exemplu, contin elemente dederivare pura.

In practica inginereasca proprietatile de transfer intrare-iesire ale unuisistem liniar ın starea initiala nula, adica pentru x(0) = 0, sunt caracterizateprin intermediul matricei de transfer T (s).

De exemplu, daca sistemul este definit printr-un model de tip (S) atunciavem

T (s) = C(sI −A)−1B + D (3.8)

si se constata usor (pe baza expresiei lui (sI −A)−1) ca T (s) este o matricecu l linii si m coloane ale carei elemente sunt functii rationale de variabilacomplexa s, pe scurt T (s) ∈ Rl×m(s) 2. De asemenea avem

lims→∞

T (s) = D , (3.9)

deci T (s) este proprie, adica fiecare element are gradul numitorului maimare decat sau cel mult egal cu gradul numaratorului; ın particular T (s)este strict proprie daca si numai daca D = 0. In sfarsit, T (s) este evidentinvarianta ın raport cu transformarile de echivalenta (3.3) astfel ıncat eaare ıntr-adevar caracter sistemic (caracterizeaza efectiv sistemul, si nu doarmodelul (S) considerat).

In teoria realizarii sistemelor liniare se arata ca, reciproc, orice matricede transfer T (s) admite o realizare de stare, adica exista un model de tip(S) ale carui matrice A,B, C, D satisfac (3.8). Mai mult, acest model este ınesenta unic determinat (modulo echivalenta (3.3)) si de ordin minim dacasi numai daca el este controlabil si observabil. (Altfel spus, matricea detransfer este un invariant complet pentru sistemele controlabile si observ-abile). Prin urmare, ın toate chestiunile care privesc exclusiv proprietatilede transfer intrare-iesire ale sistemelor liniare, modelele de stare pot fi su-plinite de matricele de transfer corespunzatoare 3.

1Un fascicol matriceal (E, A) se numeste regulat daca polinomul det(λE−A) nu esteidentic nul.

2Notam cu R[s] inelul polinoamelor si cu R(s) corpul sau de fractii, i.e. corpulfunctiilor rationale, ambele cu coeficienti reali. Indicam, ca de obicei, prin indici superioridimensiunea vectorilor si matricelor formate cu aceste elemente.

3Afirmatia nu e valabila pentru modelele de stare necontrolabile sau/si neobservabile(utilizate ın multe aplicatii), pentru care nu exista (si nu poate exista) o descriere adec-vata ın termenii matricelor de transfer. Altfel spus, ın general o matrice de transferidentifica nu un sistem ci o ıntreaga clasa de sisteme liniare echivalente intrare-iesire cuun sistem dat.

Page 72: MN Metode Numerice Carte(Matematici)

3.2. CONEXIUNI 71

In acest sens ın continuare vom considera si modele sistemice ,,de trans-fer”, definite prin matrice de forma

(T) T (s) = [ Tij(s) ] , Tij(s) =Nij(s)pij(s)

(3.10)

ın care pij , Nij ∈ R[s] si ∂pij ≥ ∂Nij , i = 1 : l, j = 1 : m iar ∂ denotagradul.

Alte forme sub care se poate prezenta modelul (T) precum si procedurilede conversie corespunzatoare vor fi discutate ın continuare.

Similar cu (3.1), un sistem liniar discret este definit tot printr-un cvartetde matrice S = (A, B,C, D), iar matricea de transfer corespunzatoare T (z)are aceeasi expresie (3.8). Deoarece toate rezultatele procedurale (pur al-gebrice) din acest capitol se aplica identic si ın cazul discret, orice referireexplicita la acesta este lipsita de interes.

3.2 Conexiuni

In acest paragraf aratam cum se construiesc modelele sistemice de tip (S)si (T) pentru conexiunile uzuale a doua sisteme Si, i = 1, 2 definite prinmodele de stare

(Si){

xi(t) = Aixi(t) + Biui(t)yi(t) = Cixi(t) + Diui(t) ,

(3.11)

respectiv prin matrice de transfer

(Ti) yi(s) = Ti(s)ui(s) . (3.12)

Constructia modelelor sistemice pentru structuri oricat de complexe se re-duce, ın ultima instanta, la aplicarea repetata a procedurilor prezentatemai jos.

In toate cazurile considerate vectorul de stare al sistemului realizat princonexiune este

x =[

x1

x2

]∈ Rn , n = n1 + n2 , (3.13)

adica ıntotdeauna vectorul de stare rezulta prin agregarea vectorilor destare ai sistemelor componente iar ordinul conexiunii este egal cu sumaordinelor sistemelor conectate.

Page 73: MN Metode Numerice Carte(Matematici)

72 CAPITOLUL 3. MODELE SISTEMICE

Conexiunea paralel

Pentru a putea fi conectate ın paralel, sistemele S1 si S2 trebuie sa satisfacaurmatoarele conditii structurale:

m1 = m2 , l1 = l2 , (3.14)

adica sa aiba acelasi numar de intrari si acelasi numar de iesiri. Relatiilede interconexiune (vezi figura 3.2 (b)) sunt

u1 = u2 = u , y = y1 + y2 . (3.15)

S1 S2- - -u u1 y1 = u2 y2 y

(a)

S1

S2

h-

-

-6

?u

u1

u2

y1

y2

y+

+

(b)

S1

S2

h

h

- - -

¾¾¾ ?6

v1 u1 y1

v2u2y2

++

(c)

S1

S2

-

-

-

-u

u1

u2

y1

y2

y

(d)

Figura 3.2: Conexiunile sistemice fundamentale: serie (a), paralel (b),reactie (c) si produs direct (d).

In consecinta, ecuatiile de stare se scriu

[x1

x2

]=

[A1 00 A2

] [x1

x2

]+

[B1

B2

]u

y =[

C1 C2

] [x1

x2

]+ [D1 + D2]u,

(3.16)

Page 74: MN Metode Numerice Carte(Matematici)

3.2. CONEXIUNI 73

unde matricele lui S = (A,B,C, D) au expresii evidente, ın particular Aeste bloc - diagonala. Matricea de transfer este

T (s) = T1(s) + T2(s), (3.17)

deci, ın cazul SISO, cu notatii evidente, avem

T (s) def=N(s)p(s)

=N1(s)p2(s) + N2(s)p1(s)

p1(s)p2(s). (3.18)

Observam ca T (s) nu rezulta neaparat ireductibila chiar daca Ti(s),i = 1 : 2, au aceasta proprietate.

Conexiunea serie (cascada sau tandem)

Pentru a putea fi conectate ın serie, sistemele trebuie sa satisfaca urmatoa-rea conditie structurala:

l1 = m2 . (3.19)

Relatiile de interconexiune (vezi figura 3.2 (a)) sunt

u1 = u, u2 = y1, y = y2 . (3.20)

In consecinta, ecuatiile de stare se scriu

[x1

x2

]=

[A1 0

B2C1 A2

] [x1

x2

]+

[B1

B2D1

]u

y =[

D2C1 C2

] [x1

x2

]+

[D2D1

]u,

(3.21)

unde, din nou, matricele lui S au expresii evidente, ın particular A estebloc - inferior - triunghiulara. Matricea de transfer este

T (s) = T2(s)T1(s) , (3.22)

(ın aceasta ordine a matricelor factor!).

Conexiunea ın circuit ınchis(ın bucla sau cu reactie)

Pentru a putea fi conectate ın circuit ınchis, sistemele trebuie sa satisfacaurmatoarele conditii structurale:

l2 = m1, l1 = m2 , (3.23)

Page 75: MN Metode Numerice Carte(Matematici)

74 CAPITOLUL 3. MODELE SISTEMICE

precum si conditia ,,de buna formulare” a conexiunii,

det(I −D1D2) 6= 0 . (3.24)

Aceasta conditie, necesara pentru a putea exprima y ın mod unic functiede x1, x2 precum si de intrarile externe v1, v2 (vezi figura 3.2 (c)), estegeneric satisfacuta ın raport cu D1, D2 si este satisfacuta ın mod sigur dacafie D1 = 0, fie D2 = 0, adica cel putin unul dintre sistemele conectate ıncircuit ınchis este strict propriu (pur dinamic).

Relatiile de interconexiune sunt

u1 = v1 + y2 , u2 = v2 + y1 . (3.25)

In consecinta, ecuatiile de stare ale conexiunii{

x1 = A1x1 + B1(v1 + y2)x2 = A2x2 + B2(v2 + y1)

{y1 = C1x1 + D1(v1 + y2)y2 = C2x2 + D2(v2 + y1)

se scriu sub forma evidenta

[x1

x2

]=

[A1 0 | B1 00 A2 | 0 B2

]

x1

x2

−−v1

v2

+[

0 B1

B2 0

] [y1

y2

]

(3.26)

[I −D1

−D2 I

] [y1

y2

]=

[C1 0 | D1 00 C2 | 0 D2

]

x1

x2

−−v1

v2

. (3.27)

Introducand matricele produsului direct Sd = (Ad, Bd, Cd, Dd) al celor douasisteme, vezi fig. 3.2 (d), unde

Ad =[

A1 00 A2

], Bd =

[B1 00 B2

],

Cd =[

C1 00 C2

], Dd =

[D1 00 D2

],

Page 76: MN Metode Numerice Carte(Matematici)

3.2. CONEXIUNI 75

precum si matricele de interconexiune

B∗ =[

0 B1

B2 0

], D∗ =

[0 D1

D2 0

]

ecuatiile (3.26) si (3.27) devin

x =[

Ad Bd

][ xv

]+ B∗y

(I −D∗)y =[

Cd Dd

][ xv

],

unde, ın virtutea conditiei de buna formulare, matricea I − D∗ este in-versabila. Prin urmare avem

x =([

Ad Bd

]+ B∗(I −D∗)−1 [

Cd Dd

]) [xv

],

y = (I −D∗)−1[ Cd Dd

] [xv

].

(3.28)

Matricele modelului de stare agregat S = (A,B, C, D) al conexiunii ıncircuit ınchis au expresiile

A = Ad + B∗(I −D∗)−1Cd, B = Bd + B∗(I −D∗)−1

Dd ,

C = (I −D∗)−1Cd, D = (I −D∗)−1

Cd .(3.29)

iar calculul se face ın ordinea[C D

]= (I −D∗)−1

[Cd Dd

],

[A B

]=

[Ad Bd

]+ B∗ [

C D].

Matricea de transfer este

T (s) = (I − T ∗(s))−1Td(s) , (3.30)

unde

Td(s) =[

T1(s) 00 T2(s)

], T ∗(s) =

[0 T1(s)

T2(s) 0

]. (3.31)

Relatiile de mai sus pentru constructia modelelor de stare ale sistemeloragregat evidentiaza faptul ca ın toate cazurile se face apel exclusiv la calculematriceale elementare precum si la manipularea unor structuri matricealeorganizate pe blocuri (ceea ce, de exemplu ın MATLAB, este, de asemenea,elementar). In consecinta, scrierea algoritmilor corespunzatori este lasataın sarcina cititorului (vezi exercitiile 3.1 si 3.2).

Page 77: MN Metode Numerice Carte(Matematici)

76 CAPITOLUL 3. MODELE SISTEMICE

3.3 Realizari

In acest paragraf prezentam modalitatile de constructie a realizarilor destare S = (A,B, C, D), nu neparat de ordin minim, pentru sisteme definitede matrice de transfer T (s) rationale proprii. Aceste proceduri sunt im-portante ın aplicatii, deoarece deseori sistemele liniare se descriu utilizandlimbajul intrare - iesire al matricelor de transfer dar se trateaza numericutilizand, aproape exclusiv, realizarile de stare corespunzatoare.

In toate cazurile considerate, matricea D a realizarii de stare se obtine”extragand partea ıntreaga” a lui T (s), adica scriind

T (s) = T ′(s) + D, (3.32)

unde T ′(s) este strict proprie. Aceasta operatie se poate efectua separatpentru fiecare element al lui T , mai precis, daca

Tij(s)def=

Nij(s)pij(s)

, (3.33)

unde polinomul pij este monic 4 si de grad n, atunci dij este coeficientultermenului de grad n al lui Nij astfel ıncat

Nij(s)pij(s)

= dij +N ′

ij(s)pij(s)

, N ′ij(s) = Nij(s)− dijpij(s) . (3.34)

Altfel spus, daca notam dijdef= ν0, atunci dispunand coeficientii a0 = 1,

ak, k = 1 : n ai polinomului pij si νk, k = 0 : n ai polinomului Nij ınordinea descrescatoare a puterilor

1 a1 . . . an

ν0 ν1 . . . νn

si facand eliminare gaussiana pentru a anula ν0, obtinem coeficientii poli-nomului N ′

ij , adica

νk ← ν′k = νk − ν0ak , k = 1 : n. (3.35)

Operatia de mai sus se repeta pentru i = 1 : l, j = 1 : m.

In consecinta, ramane sa construim realizarea de stare a matricei T ′(s)strict proprie cu elementele

T ′ij(s) =N ′

ij(s)pij(s)

, (3.36)

4Un polinom se numeste monic daca are coeficientul termenului de grad maxim egalcu 1.

Page 78: MN Metode Numerice Carte(Matematici)

3.3. REALIZARI 77

adica sa construim S′ = (A,B, C) astfel ıncat

T ′(s) = C(sI −A)−1B . (3.37)

Pentru simplificarea notatiilor, mai departe eliminam indicele supe-rior ′ si consideram succesiv cateva cazuri reprezentative de complexitatecrescanda. (Subliniem din nou ca, desi procedurile de realizare obtinute auun caracter elementar si, ca atare, ar justifica o tratare mai expeditiva, elesunt esentiale pentru aplicarea metodelor de calcul numeric ın analiza sisinteza sistemica).

A. Sisteme simple, cu o singura intraresi o singura iesire (SISO)

In cazul sistemelor cu o singura intrare si o singura iesire sau, pe scurt, SISO(Single-Input, Single-Output) se da functia de transfer (scalara) strict pro-prie

T (s) =N(s)p(s)

, (3.38)

cu

p(s) = sn + a1sn−1 + · · ·+ an,

N(s) = ν1sn−1 + · · ·+ νn.

(3.39)

O realizare de stare a lui T (s) se scrie, prin inspectie, ıntr-una din celedoua forme duale urmatoare

10. Forma standard controlabila

(C)

Ac =

−a1 · · · −an−1 −an

1 · · · 0 0. . .

1 0

, Bc =

10...0

,

Cc =[

ν1 . . . νn−1 νn

],

(3.40)

Page 79: MN Metode Numerice Carte(Matematici)

78 CAPITOLUL 3. MODELE SISTEMICE

sau, echivalent

(C′)

A′c =

0 1. . .

1−an −an−1 · · · −a1

, B′

c =

0...01

,

C ′c =[

νn νn−1 · · · ν1

].

(3.41)

20. Forma standard observabila

(O)

Ao =

−a1 1...

. . .−an−1 1−an 0 · · · 0

, Bo =

ν1

...νn−1

νn

,

Co =[

1 0 · · · 0],

(3.42)

sau, echivalent

(O′)

A′o =

0 0 −an

1 −an−1

. . ....

1 −a1

, B′

o =

νn

νn−1

...ν1

,

C ′o =[

0 · · · 0 1].

(3.43)

Formele (C) si (C′) (respectiv (O) si (O′)) difera neesential ıntre eleprintr-o permutare evidenta a variabilelor de stare. Formele (C) si (O)(respectiv (C′) si (O′)) se numesc duale deoarece au loc relatiile

Ao = ATc , Bo = CT

c , Co = BTc . (3.44)

(Implicatiile calculatorii ale acestui tip de relatii vor fi exploatate intensivın capitolele urmatoare).

Matricele Ac si A′o (respectiv Ao 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 polinomuluip(s), cu ai carui coeficienti sunt formate.

Prin calcul direct se poate arata ca forma standard controlabila (C) sebucura de urmatoarele proprietati:

Page 80: MN Metode Numerice Carte(Matematici)

3.3. REALIZARI 79

I. Are loc egalitatea

(sI −Ac)−1Bc =L(s)p(s)

, (3.45)

unde

L(s) =

sn−1

...s1

.

In consecinta

a) p(s) este polinomul caracteristic al lui Ac.

b) (Ac, Bc, Cc) e o realizare a lui T (s).

II. Matricea de controlabilitate

Rcdef=

[Bc AcBc · · · An−1

c Bc

]

este superior triunghiulara nesingulara, deci perechea (Ac, Bc) estecontrolabila.

III. Perechea (Cc, Ac) este observabila (rang Qc = n), deci matricea deobservabilitate

Qc =

Cc

CcAc

...CcA

n−1c

este nesingulara, daca si numai daca T (s) este ireductibila, adica poli-noamele N(s) si p(s) sunt coprime.

Proprietatile I – II de mai sus justifica denumirea de forma standardcontrolabila atribuita realizarilor (C) (sau (C′)), iar proprietatea III arataca ordinul minim al realizarii coincide cu gradul numitorului functiei detransfer T (s), presupusa ireductibila.

Proprietatile formei standard observabile (O) se formuleaza prin duali-tate. In particular avem

Ro = QTc , Qo = RT

c , (3.46)

deci, la fel ca mai sus, ordinul minim coincide cu gradul numitorului functieide transfer, presupusa ireductibila.

Page 81: MN Metode Numerice Carte(Matematici)

80 CAPITOLUL 3. MODELE SISTEMICE

B. Sisteme cu o singura intraresi mai multe iesiri (SIMO)

In cazul sistemelor SIMO (Single-Input, Multi-Output) matricea de trans-fer, considerata data, are o structura tip coloana

T (s) =

T1(s)...

Tl(s)

∈ Rl(s) , (3.47)

unde fiecare Ti(s) este o functie rationala strict proprie de forma

Ti(s) =Ni(s)pi(s)

, i = 1 : l (3.48)

cu

pi(s) = sn(i) + a1(i)sn(i)−1 + · · ·+ an(i)(i),

Ni(s) = ν1(i)sn(i)−1 + · · ·+ νn(i)(i).(3.49)

Exista doua posibilitati de scriere a unei realizari, una ”naiva”, careconduce la o realizare de ordin

nI =l∑

i=1

n(i) , (3.50)

alta ”eficienta”, care conduce la o realizare de ordin nII egal cu gradul celuimai mic multiplu comun (cmmmc) al numitorilor pi(s), i = 1 : l (evident,nII ≤ nI).

B1. Realizarea ”naiva”

Scriem relatia y(s) = T (s)u(s) pe componente sub forma

yi(s) = Ti(s)u(s), i = 1 : l (3.51)

si realizam fiecare functie de transfer Ti(s) printr-un sistem Si = (Ai, Bi, Ci)utilizand metodele expuse la punctul A, de exemplu putem considera Si =

Page 82: MN Metode Numerice Carte(Matematici)

3.3. REALIZARI 81

(Ai, Bi, Ci) ın forma standard controlabila (C), i.e.

Aidef=

−a1(i) · · · −an(i)−1(i) −an(i)(i)1 · · · 0 0

. . ....

...0 · · · 1 0

, Bi

def=

10...0

,

Cidef=

[ν1(i) . . . νn−1(i) νn(i)

].

(3.52)Apoi realizam conexiunea ”paralel la intrare” (vezi figura 3.3 (a)), echi-

valenta cu (3.51) prin

A =

A1

. . .Al

, B =

B1

...Bl

,

C =

C1

. . .Cl

,

(3.53)

blocurile nediagonale ale matricelor A si C fiind nule.

S1

Sl

-

-

-

-

u

u1

ul

y1

yl

...

(a)

S1

Sm

-

-

?

6h -

u1

um

y1

ym

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).

Page 83: MN Metode Numerice Carte(Matematici)

82 CAPITOLUL 3. MODELE SISTEMICE

B2. Realizarea ”eficienta”

Aducand la acelasi numitor toate elementele lui T (s), scriem

T (s) =

T1(s)...

Tl(s)

=

N∗1 (s)...

N∗l (s)

p−1(s) def= N(s)p−1(s) , (3.54)

unde

p(s) = sn + a1sn−1 + · · ·+ an

def= cmmmc(p1(s), · · · , pl(s)) , (3.55)

N∗i (s) = ν∗1 (i)sn−1 + · · ·+ ν∗n(i) (3.56)

deci numaratorul N ∈ Rl[s] se scrie sub forma:

N(s) = ν1sn−1 + · · ·+ νn (3.57)

unde vectorii νk ∈ Rl 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 almatricei Ac coincide cu p(s) iar Cc contine, pe fiecare coloana, coeficientiiνk ai lui N , adica Cc ∈ Rl×n.

Observatia 3.1 Realizarea obtinuta este controlabila. Daca factorizareaNp−1 este coprima la dreapta, adica nu exista un polinom D (divizor) caredivide simultan p si fiecare N∗

i , atunci realizarea astfel obtinuta este siobservabila, deci de ordin minim. ¦

C. Sisteme cu mai multe intrarisi o singura iesire (MISO)

In acest caz matricea de transfer are o structura linie

T (s) =[

T1(s) · · · Tm(s)] ∈ R1×m(s) . (3.58)

unde fiecare Ti(s) este o functie rationala strict proprie de forma

Ti(s) =Ni(s)pi(s)

, i = 1 : m.

Ca si ın cazul precedent, prezentam pentru problema realizarii o solutie”naiva” si una ”eficienta”.

Page 84: MN Metode Numerice Carte(Matematici)

3.3. REALIZARI 83

C1. Realizarea ”naiva”

Scriem relatia y(s) = T (s)u(s) pe componente sub forma

y(s) =m∑

i=1

Ti(s)ui(s) (3.59)

si realizam fiecare functie de transfer Ti(s) printr-un model de stare Si =(Ai, Bi, Ci), utilizand metodele expuse la punctul A. Apoi realizam conexi-unea ”paralel la iesire” (vezi figura 3.3 (b)), echivalenta cu (3.59) prin

A =

A1

. . .Am

, B =

B1

. . .Bm

,

C =[

C1 · · · Cm

],

(3.60)

blocurile nediagonale ale matricelor A si B fiind nule.Realizarea (3.60) se numeste cu intrari decuplate (sau decuplata la in-

trare).

C2. Realizarea ”eficienta”

Procedam ,,prin dualitate” fata de cazul B2. Aceasta ınseamna ca, aducandla acelasi numitor toate elementele lui T (s), scriem

T (s) =[

T1(s) · · · Tm(s)]

=

= p−1(s)[

N∗1 (s) · · · N∗

m(s)]

= p−1(s)N(s) , (3.61)

unde p(s) def= cmmmc(p1(s), · · · , pm(s)), N∗i (s) au expresii similare cu (3.55)

si (3.56), deci numaratorul N ∈ R1×m[s] se scrie sub forma (3.57), undeνk ∈ R1×m 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 almatricei Ao coincide cu p(s), iar Bo contine, pe fiecare linie, coeficientii luiN , adica Bo ∈ Rn×m.

Observatia 3.2 Realizarea obtinuta este observabila. Daca factorizareap−1N este coprima la stanga (i.e. polinoamele p(s) si fiecare N∗

i (s) nu au unpolinom divizor comun) atunci realizarea astfel obtinuta este si controlabila,deci de ordin minim. ¦

Page 85: MN Metode Numerice Carte(Matematici)

84 CAPITOLUL 3. MODELE SISTEMICE

D. Sisteme cu mai multe intrarisi mai multe iesiri (MIMO)

Se da matricea de transfer cu l linii si m coloane T (s) = [ Tij(s) ].

D1. Realizarea ”naiva”

Aceasta realizare se bazeaza pe scrierea

yi(s) =m∑

j=1

Tij(s)uj(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 Tij(s).

D2. Realizarea ”eficienta”

In acest caz, o realizare eficienta se poate construi ın doua moduri.

10. Partitionam T (s) pe coloane

T (s) =[

T1(s) . . . Tm(s)]

(3.64)

si aducem fiecare coloana Tj(s) ∈ Rl(s) la acelasi numitor ca la punctul B,adica scriem Tj(s) = Nj(s)p−1

j (s), unde Nj(s) ∈ Rl[s], p(s) ∈ R[s]. Deciavem

T (s) =[

N1(s)p−11 (s) . . . Nm(s)p−1

m (s)]

=

=[

N1(s) . . . Nm(s)]

p1(s). . .

pm(s)

−1

=

def= N(s)p−1(s) , (3.65)

unde

pj(s) = sn(j) + a1(j)n(j)−1 + . . . + an(j)(j), ak(j) ∈ R,

Nj(s) = ν1(j)s(j)−1 + . . . + νn(j)(j), νk(j) ∈ Rl.(3.66)

Page 86: MN Metode Numerice Carte(Matematici)

3.3. REALIZARI 85

Intrucat relatia y(s) = T (s)u(s) se scrie

y(s) =m∑

j=1

Nj(s)p−1j (s)uj(s) , (3.67)

iar fiecare coloana Nj(s)p−1j (s) se realizeaza ın forma standard controlabila

(Ac(j), Bc(j), Cc(j)), ca ın cazul B2, obtinem realizarea standard controla-bila (decuplata la intrare)

Ac =

Ac(1). . .

Ac(m)

, Bc =

Bc(1). . .

Bc(m)

,

Cc =[

Cc(1) · · · Cc(m)].

(3.68)Ordinul n = nc este suma gradelor n(j) ale numitorilor comuni pe

coloana. (Se poate arata ca aceste grade coincid cu indicii de controlabili-tate ai perechii (Ac, Bc)).

20. Partitionand T (s) pe linii si procedand prin dualitate fata de punctulprecedent, obtinem realizarea standard observabila (decuplata la iesire)

Ao =

Ao(1). . .

Ao(l)

, Bo =

Bo(1)...

Bo(l)

Co =

Co(1). . .

Co(l)

.

(3.69)

Ordinul n = no 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 (Co, Ao)).

Observatia 3.3 In general, niciuna dintre cele doua realizari (3.68) si(3.69) nu este minimala caci, ın general, perechea (Cc, Ac) nu rezulta ob-servabila iar perechea (Ao, Bo) nu rezulta controlabila. ¦

In finalul acestei sectiuni precizam ca obtinerea efectiva a realizarilorde mai sus necesita, ın primul rand, un mecanism de manipulare a ma-tricelor bloc cum este cel oferit de MATLAB (sau cel care poate fi creat

Page 87: MN Metode Numerice Carte(Matematici)

86 CAPITOLUL 3. MODELE SISTEMICE

cu relativa usurinta de utilizator ın orice limbaj de programare). Cu unastfel de mecanism la dispozitie, scrierea algoritmilor de constructie a re-alizarilor prezentate devine extrem de simpla si, din acest motiv, face obiec-tul exercitiilor.

3.4 Conversii de modele

Conversia de la un model de tip matrice de transfer la un model de stare, pescurt (T) → (S), consta din aplicarea uneia dintre procedurile de realizare,care au fost discutate ın paragraful anterior. Conversia inversa (S) → (T),respectiv calculul matricei de transfer asociate unui model de stare dat,se face separat pentru fiecare pereche (uj , yi) de intrari si iesiri, adica ınesenta se refera la un sistem simplu (SISO). Deoarece formele alternativede reprezentare ale unei matrice de transfer se refera tot la sisteme simple,adica la functii de transfer, ın acest paragraf ne vom referi numai la acesteobiecte.

Calculul functiei de transfer (Conversia (S) → (T))

Se da un sistem simplu definit prin{

x = Ax + Buy = Cx

, (3.70)

unde matricele A ∈ Rn×n, B ∈ Rn, C ∈ R1×n sunt cunoscute.Pentru a calcula functia de transfer, adica doua polinoame p(s), N(s)

astfel ıncat

T (s) def= C(sI −A)−1B =N(s)p(s)

, (3.71)

constatam ca functia de transfer a unui sistem cu reactie unitara (vezi figura3.4) este

T0(s) =T (s)

1 + T (s)=

N(s)p(s) + N(s)

=N(s)p0(s)

(3.72)

unde p0(s) = p(s) + N(s). Deci

N(s) = p0(s)− p(s). (3.73)

(Mentionam ca radacinile polinomului N(s) sunt zerourile sistemului S =(A,B,C)).

Problema s-a redus la a calcula p(s) si p0(s).

Page 88: MN Metode Numerice Carte(Matematici)

3.4. CONVERSII DE MODELE 87

T (s)h- - -6

u0 u y

Figura 3.4: Conexiune cu reactie unitara.

Dar p(s) este polinomul caracteristic al lui A adica

p(s) =n∏

i=1

(s− λi) , (3.74)

unde λi sunt polii lui T (s), adica valorile proprii ale matricei A. Analog,p0(s) este polinomul caracteristic al matricei A0 a sistemului ın circuit ınchisobtinut punand u = u0 − y, adica u = u0 − Cx. Deci A0 = A−BC.

Prin urmare, pentru a calcula functia de transfer T (s) se procedeazaastfel:

1. Se calculeaza valorile proprii λi ale matricei A utilizandalgoritmul QR.

2. Se formeaza A0 = A−BC.

3. Se calculeaza valorile proprii λ0i ale matricei A0 utilizandalgoritmul QR.

4. Se calculeaza (coeficientii lui) p(s) =∏n

i=1(s− λi).

5. Se calculeaza p0(s) =∏n

i=1(s− λ0i).

6. Se calculeaza N(s) = p0(s)− p(s).

Daca sistemul S = (A,B, C) nu este controlabil si observabil (ceea ceeste probabil sa se ıntample daca provine dintr-un sistem multiplu) atuncip si N , adica p si p0 au un cel mai mare divizor comun (cmMdc) 6= 1, carecoincide cu produsul

∏(s − λfi), unde λfi ∈ σ(A) ∩ σ(A0) sunt polii ficsi

sistemului (A,B, C). Acest divizor poate fi eliminat prin inspectie ınaintede pasul 4, dar decizia poate fi afectata de erorile de rotunjire inerente.

Pentru o functie de transfer strict proprie definim, ın afara de reprezen-tarea ”rationala”

T (s) =N(s)p(s)

, (3.75)

Page 89: MN Metode Numerice Carte(Matematici)

88 CAPITOLUL 3. MODELE SISTEMICE

ca raport de doua polinoame, ınca doua reprezentari:

(T1) T (s) = δ

∏n−kj=1 (s− µj)∏ni=1(s− λi)

(3.76)

si

(T2) T (s) =n∑

i=1

ri

s− λi, (3.77)

unde λi sunt polii, µj sunt zerourile, δ este amplificarea la infinit, numarulıntreg k ≥ 1 este excesul poli - zerouri sau ,,tipul” lui T (s), iar ri suntreziduurile lui T (s) ın polii λi (a doua reprezentare exista ca atare numaidaca toti polii lui T (s) sunt simpli.)

Relativ la reprezentarea (T1) discutam ın primul rand:

Conversia (S) → (T1)

Se da modelul de stare S = (A,B, C). Pentru a calcula T (s) sub forma(T1) 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 ∈ R, astfel ıncat σ0 6= λi, µj , ∀(i, j) si secalculeaza

δ =C(σ0I −A)−1B∏n−k

j=1(σ0 − µj)∏n

i=1(σ0 − λi)

.

Observatia 3.4 La pasul 2 se pot utiliza ınca cel putin doua metode.

a)Metoda generala tine seama de faptul ca zerourile sistemului (A,B, C)(considerat controlabil si observabil) coincid cu valorile proprii generalizatefinite ale fascicolului

λ

[In 00 0

]−

[A BC 0

], (3.78)

deci se calculeaza utilizand algoritmul QZ, vezi [ 3 ].

b) Metoda specifica ın cazul l = 1, m = 1 considerat ”simuleaza”,ın limbajul descrierii de stare S = (A,B, C), procedura de inversare asistemului propriu avand functia de transfer skT (s), unde (A,B, C) este

Page 90: MN Metode Numerice Carte(Matematici)

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= CAk−1B 6= 0. Din ecuatiile de stare{

x = Ax + Buy = Cx,

(3.79)

prin derivarea succesiva a iesirii y tinand seama de faptul ca CAiB = 0,i = 0 : k − 2, obtinem

y = CAx...

y(k−1) = CAk−1x

y(k) = CAkx + CAk−1Budef= CAkx + δu ,

(3.80)

unde, prin ipoteza, δ 6= 0. In consecinta, sistemul{

x = Ax + Buy(k) = CAkx + δu

(3.81)

este inversabil iar inversul sau are ecuatiile{

x = (A− δ−1BCAk)x + δ−1By(k)

u = −δ−1CAkx + δ−1y(k).(3.82)

Mai mult, matricea A − δ−1BCAk are exact k valori proprii nule (core-spunzatoare celor k valori proprii generalizate infinite ale fascicolului (3.78))precum si n− k valori proprii egale cu zerourile lui (A, B,C). Prin urmareordinul relativ k coincide cu excesul poli - zerouri iar δ = CAk−1B este am-plificarea la infinit, adica skT (s) → δ, cand s → ∞. In definitiv, zerourile(finite) µj , j = 1 : n−k ale sistemului (A,B, C) coincid cu cele n−k valoriproprii nenule ale matricei A− δ−1BCAk. ¦

In ceea ce priveste celelalte conversii, dam numai cateva sugestii. (Men-tionam ca procedurile de calcul polinomial care apar ın schemele de calculde mai jos sunt discutate ın sectiunea finala a acestui capitol.)

Conversia (T1) → (T)

1. Se calculeaza p(s) =∏n

i=1(s− λi).2. Se calculeaza N(s) =

∏(s− µi).

2. N(s) ← δN(s)

Observatia 3.5 Uneori ın loc de algoritmul (S) → (T) prezentat mai susse utilizeaza (S) → (T1) urmat de (T1) → (T). ¦

Page 91: MN Metode Numerice Carte(Matematici)

90 CAPITOLUL 3. MODELE SISTEMICE

Conversia (T) → (T1)

1. Se construieste o realizare de stare a lui T (s).

2. Se aplica procedura de conversie (S) → (T1).

Conversia (T1) → (S)

1. Se construieste reprezentarea rationala a lui T (s).

2. Se aplica algoritmul de realizare (T) → (S).

Relativ la reprezentarea (T2), mentionam numai ca ea se obtine din(T) calculand polii λi cu algoritmul QR aplicat matricei companion Ac

(respectiv Ao) si apoi calculand reziduurile ri cu formula cunoscuta

ri =N(λi)p′(λi)

, (3.83)

evaluarile polinoamelor realizandu-se cu algoritmul (schema) lui Horner(vezi sectiunea urmatoare).

Alternativ, se construieste o realizare de stare (A,B,C) a lui T (s) sise calculeaza valorile proprii λi (presupuse distincte) precum si vectoriiproprii xi ai lui A. Considerand matricea X =

[x1 . . . xn

]si efectuand

transformarea

X−1AX =

λ1

. . .λn

, X−1B =

β1

...βn

,

CX =[

γ1 · · · γn

],

(3.84)

avemri = γiβi, i = 1 : n. (3.85)

3.5 Algoritmi de calcul polinomial

In sectiunile precedente ale capitolului de fata s-a evidentiat faptul ca proce-sarea modelelor sistemice de tip matrice de transfer se reduce, ın ultimainstanta, la efectuarea unui set de operatii cu polinoame. De aceea reunimaici procedurile numerice de baza pentru rezolvarea problemelor de calculpolinomial.

Page 92: MN Metode Numerice Carte(Matematici)

3.5. ALGORITMI DE CALCUL POLINOMIAL 91

Notam un polinom a(s) de grad n prin

a(s) = a0sn + a1s

n−1 + · · ·+ an , a0 6= 0 (3.86)

si ıi asociem vectorul

a =

a0

a1

...an

(3.87)

de lungime n + 1. 5

Se stie ca polinoamele de grad ≤ m, cu operatiile de adunare si ınmultirecu scalari definesc un spatiu vectorial de dimensiune m+1. In acest spatiu,cu m fix 6 si n ≤ m, polinomul a(s) se reprezinta prin vectorul

Tm−n a =

0...0a0

...an

∈ Rm+1 , (3.88)

unde T este operatorul de ,,deplasare (shift) cu un pas ın jos urmat deadaugarea unui zero pe prima pozitie” definit prin

(Ta)i = ai−1, i ≥ 1, (Ta)0 = 0. (3.89)

Retinand acest fapt simplu, ın continuare trecem ın revista modalitatilede efectuare a operatiilor principale cu polinoame.

10. Suma c(s) def= a(s)+b(s) a doua polinoame a(s), b(s) de grade n, mcu n ≤ m 7 este de grad m, deci

c = Tm−na + b. (3.90)

Rezulta urmatorul algoritm.5Numerotarea 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 exercitiu utilpentru cititor.

6De fiecare data cand efectuam o operatie alegem m minim necesar.7Altfel facem suma b(s) + a(s).

Page 93: MN Metode Numerice Carte(Matematici)

92 CAPITOLUL 3. MODELE SISTEMICE

Algoritmul 3.1 (Se dau vectorii a ∈ Rn+1 si b ∈ Rm+1, cum ≥ n, ai coeficientilor polinoamelor a(s) si b(s). Algoritmulcalculeaza vectorul c ∈ Rm+1 al coeficientilor polinomului sumac(s) = a(s) + b(s).)

1. Pentru i = 0 : m− n− 1

1. ci = bi

2. Pentru i = m− n : m

1. ci = ai−(m−n) + bi

20. Produsul p(s) def= a(s)b(s) a doua polinoame a(s), b(s) de graden ≥ m 8 este de grad m + n. Avem

a(s)b(s) =

(n∑

i=0

aisn−i

)

m∑

j=0

bjsm−j

=

m+n∑

k=0

pksn+m−k, (3.91)

unde

pk =∑

i+j=k

aibj =

∑kj=0 ak−jbj

∑ki=0 aibk−i

. (3.92)

(Pentru comoditatea scrierii am presupus ca ai = 0 pentru i > n si bj = 0pentru j > m. In general, operatia (3.92) reprezinta convolutia discreta asirurilor (ai)i≥0, (bj)j≥0).

Din (3.92) se constata usor ca vectorul p ∈ Rm+n+1, al coeficientilorpolinomului produs, se poate exprima ıntr-o forma matriceala ın modulurmator

p0

p1

...pm

...pn

pn+1

...pn+m

=

a0 0 · · · 0a1 a0 · · · 0...

.... . .

...am am−1 · · · a0

......

...an an−1 · · · an−m

0 an · · · an−m+1

......

. . ....

0 0 · · · an

b0

b1

...bm

, (3.93)

8Altfel facem produsul b(s)a(s).

Page 94: MN Metode Numerice Carte(Matematici)

3.5. ALGORITMI DE CALCUL POLINOMIAL 93

adica, pentru a putea descrie produsul unui polinom a(s) de grad n cu unpolinom b(s) de grad m, ıi asociem lui a(s) matricea cu m + 1 coloane

A =

a0

.... . .

an a0

. . ....

an

∈ R(m+n+1)×(m+1), (3.94)

si scriemp = Ab. (3.95)

In mod analog, datorita comutativitatii produsului de polinoame, avemsi p = Ba unde matricea cu n+1 coloane B ∈ R(m+n+1)×(n+1) se formeaza,ın aceeasi maniera, cu coeficientii lui b(s).

Obtinem urmatorul algoritm.

Algoritmul 3.2 (Se dau vectorii a ∈ Rn+1 si b ∈ Rm+1, cum ≥ n, ai coeficientilor polinoamelor a(s) si b(s). Algoritmulcalculeaza vectorul c ∈ Rm+n+1 al coeficientilor polinomuluiprodus c(s) = a(s)b(s).)

1. Pentru k = 0 : m + n

1. pk = 0

2. Pentru j = 0 : m

1. Pentru i = 0 : n

1. pi+j = pi+j + aibj

Observatia 3.6 Operatiile 10 si 20 definesc inelul comutativ R[s] al poli-noamelor cu coeficienti reali. ¦

30. Teorema ımpartirii ıntregi pentru doua polinoame a(s), b(s) degrade n ≤ m afirma existenta unica a doua polinoame q(s) de grad m− nsi r(s) de grad cel mult n− 1 astfel ıncat

b(s) = a(s)q(s) + r(s). (3.96)

Daca n > m − n, tinand seama de exprimarea matriceala a produsului de

Page 95: MN Metode Numerice Carte(Matematici)

94 CAPITOLUL 3. MODELE SISTEMICE

polinoame, (3.96) se scrie

bo

...bm−n

−−−bm−n+1

...bn

...bm

=

a0

.... . .

am−n · · · a0

−−− −−− −−−am−n+1 · · · a1

... · · · ...an · · · a2n−m

. . ....

an

q0

...qm−n

+

0...0

−−−r0

...r2n−m−1

...rn−1

(3.97)deci, cu partitii evidente, avem

b1 = A1q (3.98)

b2 = A2q + r (3.99)

adicar = b2 −A2q. (3.100)

Cu alte cuvinte, vectorul q al coeficientilor polinomului cat se calculeazarezolvand sistemul inferior triunghiular nesingular format din primele m−n + 1 ecuatii

A1q = b1 , (a0 6= 0), (3.101)

dupa care r se calculeaza cu (3.100) ca reziduu al sistemului A2q = b2,format cu celelalte n ecuatii.

40. Reprezentarea prin fractie continua finita a unei funtii ratio-nale este o aplicatie directa a algoritmului de ımpartire ıntreaga. Fie

T (s) =N(s)p(s)

(3.102)

strict proprie 9 si fie k1 primul coeficient nenul al lui N astfel ıncat N(s) =k1p1(s) unde p1(s) e monic si de grad strict mai mic decat p(s). Avem

T (s) =k1p1(s)

p(s)=

k1

p(s)p1(s)

=k1

q1(s) + N1(s)p1(s)

, (3.103)

9Altfel extragem partea ıntreaga ν0 si punem q0(s) = ν0.

Page 96: MN Metode Numerice Carte(Matematici)

3.5. ALGORITMI DE CALCUL POLINOMIAL 95

unde q1 e catul iar N1 e restul ımpartirii lui p la p1, deci

T1(s)def=

N1(s)p1(s)

e strict proprie. Putem scrie

T (s) =k1

q1(s) + T1(s)=

k11

q1(s)1 + T1(s) 1

q1(s). (3.104)

Daca privim functia rationala T (s) ca functie de transfer a unui sis-tem simplu atunci putem asocia relatiei (3.104) schema bloc din figura 3.5.Procedura de mai sus se repeta pentru T1(s). In general,

1q1(s)

T1(s)

k1h- - - -

¾

6

T (s)

u y

Figura 3.5: Corespondentul sistemic al primei etape de descompunere ınfractie continua finita a functiei rationale T (s).

Ti−1(s)def=

kipi(s)pi−1(s)

=ki

qi + ki+1pi+1(s)pi(s)

, i = 1, 2, . . . (3.105)

unde T0(s) = T (s). Deoarece gradele lui pi scad strict cu i si grad p0(s) =n < ∞, procedura are un numar finit de pasi. (In mod analog, fractiacontinua asociata unui numar rational e finita si reciproc.)

Calculul reprezentarii prin fractie continua finita a unei functii rationaledate consta ın determinarea tripletelor (ki, qi(s), pi(s)), i = 1, 2, . . . prinaplicarea repetata a algoritmului de ımpartire ıntreaga. Scrierea efectiva aalgoritmului este propusa ca exercitiu cititorului.

50. Calculul celui mai mare divizor comun (cmMdc) a doua poli-noame a(s) si b(s) se face cel mai bine cu algoritmul lui Euclid, deci consti-

Page 97: MN Metode Numerice Carte(Matematici)

96 CAPITOLUL 3. MODELE SISTEMICE

tuie o alta aplicatie directa a algoritmului de ımpartire ıntreaga. Reamin-tim schema de calcul care descrie algoritmul lui Euclid, unde presupunemn = grad a(s) ≤ grad b(s) = m 10.

1. r(s) = 1

2. Cat timp r(s) 6≡ 0

1. Se calculeaza polinoamele q(s) si r(s) astfel ıncatb(s) = a(s)q(s)+r(s) utilizand algoritmul de ımpartireıntreaga.

2. b(s) ← a(s)3. a(s) ← r(s)

3. cmMdc = b(s)

De notat faptul ca la implementarea schemei de mai sus conditia din ins-tructiunea 2 trebuie relaxata introducandu-se o toleranta corespunzatoare.

60. Calculul celui mai mic multiplu comun (cmmmc) a douapolinoame a(s) si b(s) se face pe baza relatiei

cmmmc(a(s), b(s)) =a(s)b(s)

cmMdc(a(s), b(s)). (3.106)

70. Calculul radacinilor unui polinom dat prin coeficienti, i.e. re-zolvarea ecuatiilor polinomiale p(s) = 0, este o problema careia i s-a acor-dat, de foarte mult timp, o atentie cu totul deosebita si pentru care existanumerosi algoritmi ,,candidat”, e.g. metoda bisectiei, metode de inter-polare (liniara sau patratica), metodele Newton, Laguerre, Bairstow, etc.Subliniem, ınca odata, ca metoda cu cele mai bune performante numericeeste aplicarea algoritmului QR matricelor companion Ac sau Ao din (3.40),respectiv (3.42) (evident, dupa ımpartirea prin coeficientul termenului degrad maxim).

80. Calculul coeficientilor unui polinom atunci cand se cunoscradacinile λi, i = 1 : n se face pe baza relatiei

p(s) =n∏

i=1

(s− λi), (3.107)

i.e. prin ”acumularea” produselor dupa schema:10Altfel facem a(s) ↔ b(s).

Page 98: MN Metode Numerice Carte(Matematici)

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= pi−1(s) este un polinom monicde grad i− 1, iar dupa executia lui un polinom monic p(s) def= pi(s) de gradi. Deci

pi(s)def= si + a∗1s

i−1 + · · ·+ a∗i == (si−1 + a1s

i−2 + · · ·+ ai−1)(s− λi) == si + (a1 − λi)si−1 + (a2 − λia1)si−2 + · · ·+ ai − λiai−1.

Obtinem urmatorul algoritm.

Algoritmul 3.3 (Se dau radacinile λi ∈ C, i = 1 : n ale unuipolinom. Algoritmul calculeaza coeficientii a0 = 1, ai, i = 1 : nai acestuia).

1. a0 = 1

2. Pentru k = 1 : n

1. ak = 0

3. Pentru i = 1 : n

1. Pentru k = i : −1 : 11. ak ← ak − λiak−1

90. Evaluarea valorii unui polinom p(s) sau/si a derivatei sale pentruo valoare s = σ ∈ C precizata se face cu algoritmul lui Horner. Reamintimacest algoritm, cu precizarea ca, ın contextul scalar discutat, el este optimaldin punctul de vedere al eficientei.

Algoritmul 3.4 (Horner) (Se dau coeficientii ai, i = 0 : nai unui polinom p(s), ın ordinea descrescatoare a puterilor nede-terminatei, si numarul σ ∈ C. Algoritmul calculeaza valoareaα = p(σ) a polinomului si valoarea δ = p′(σ) a derivatei aces-tuia).

1. α = a0

2. δ = na0

3. Pentru i = 1 : n− 1

Page 99: MN Metode Numerice Carte(Matematici)

98 CAPITOLUL 3. MODELE SISTEMICE

1. α ← ασ + ai

2. δ ← δσ + (n− i)ai

4. α ← ασ + an

Algoritmul Horner generalizat care rezolva problema calculului coefici-entilor polinomului p(s + σ) face obiectul exercitiului 3.15.

Observatia 3.7 Asa cum s-a mai precizat ın capitolul 2, algoritmul Hornereste util si pentru evaluarea polinoamelor matriceale. Intr-un astfel de con-text algoritmul nu mai este ınsa optimal din punctul de vedere al numaruluide operatii aritmetice scalare (vezi [ VI ] si exercitiul 3.16). ¦

Programe MATLAB disponibile

Pentru realizarea unor conexiuni specifice sunt disponibile functiile ap-pend (care efectueaza produsul direct), parallel, series, feedback sicloop (sistem cu reactie unitara). Conexiunile de tip general se realizeazaapeland bklbuild si conect. Pentru constructia realizarii de stare ın formastandard controlabila a unei matrice de transfer cu o singura intrare estedisponibila functia tf2ss (”transfer function t(w)o(!) state space”). Con-versia inversa se efectueaza cu functia ss2tf. Numele celorlalte functii deconversie se formeaza similar, tinandu-se seama ca pentru codificarea formei(T1) este folosita sigla zp (”zerouri – poli”). Calculul descompunerii infractii simple (forma (T2)) se poate face cu functia residue. Transformarilenesingulare de stare (3.3) se pot calcula cu ajutorul functiei ss2ss.

Pentru implementarea algoritmilor de calcul polinomial din § 3.5, men-tionam ın primul rand conventia MATLAB de reprezentare a polinoamelorprin vectorii linie ai coeficientilor ı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 prinadunarea vectorilor coeficientilor dupa egalarea dimensiunilor prin com-pletarea lor corespunzatoare cu zerouri. Pentru ınmultire se utilizeazafunctia conv iar pentru ımpartire ıntreaga deconv. Functia roots cal-culeaza radacinile aplicand algoritmul QR matricei companion iar functiapoly calculeaza coeficientii din radacini (pentru argument matriceal cal-culeaza polinomul caracteristic). In sfarsit, calculul valorii unui polinom,inclusiv pentru argument matriceal, se efectueaza cu functia polyval.

Page 100: MN Metode Numerice Carte(Matematici)

3.5. ALGORITMI DE CALCUL POLINOMIAL 99

Exercitii

E 3.1 Se dau doua sisteme Si = (Ai, Bi, Ci, Di), i = 1, 2. Sa se scriealgoritmii de constructie a matricelor sistemelor S = (A,B, C,D), rezultateprin interconectarea paralel, serie si ın circuit ınchis a sistemelor date.

Indicatie. Se utilizeaza relatiile (3.16), (3.21) si (3.28).

E 3.2 Se dau trei sisteme Si = (Ai, Bi, Ci, Di), i = 1 : 3. Sa se scriealgoritmii de constructie a matricelor sistemelor S = (A,B, C,D), rezultateprin interconectarea sistemelor date conform schemelor din figura 3.6.

S1

S2

S3

h

h

- - - -

- - - -

?

6

u1

u2

y1

y2

(a)

S1

S2

S3

hh

- - -- - -

¾

¾6

?−

u1

u2

y1

y2

(b)

S1

S2

S3

hh

h

h

- - -- - -

¾¾

¾¾6

? 6

?

+

+

u1

u2

u3

u4

y1

y2

(c)

Figura 3.6: Conexiuni pentru exercitiul 3.2.

Cum procedati daca sistemele Si, i = 1 : 3 sunt date prin reprezentarilelor de transfer ?

E 3.3 Se da sistemul S = (A,B, C, D) ale carui matrice au structura

A =[

A1 0A21 A2

], B =

[B1

G2

],

C =[

H1 C2

], D =

[D

].

Sa se scrie o procedura de reprezentare a lui S sub forma unei conexiunia) paralel

Page 101: MN Metode Numerice Carte(Matematici)

100 CAPITOLUL 3. MODELE SISTEMICE

b) seriea doua sisteme S1, S2, convenabil definite.

Indicatie. a) Cu notatia (3.13), considerati transformarea x2 = x2+V x1

si determinati matricea V astfel ıncat A21 = 0. In ce conditii acest lucrueste posibil?b) Cu referire la (3.21), considerati factorizarea

[A21 G2

H1 D

]=

[B2

D2

] [C1 D1

].

Pentru calculul factorizarii utilizati DVS. Prin urmare numarul minim alterminalelor comune l1 = m2 coincide cu rangul matricei din membrulstang.

E 3.4 Se da o matrice de transfer T (s), nu neaparat strict proprie, ale careicoloane (linii) sunt aduse la acelasi numitor comun. Sa se scrie un programMATLAB de constructie a unei realizari de stare S = (A,B, C,D) a luiT (s) utilizand structura (3.68) (respectiv (3.69)).

E 3.5 Se da o matrice de transfer T (s), nu neaparat strict proprie, subforma T (s) = N(s)/p(s), unde p(s) este un polinom de grad n iar N(s) ∈Rl×m[s]. Scrieti prin inspectie doua realizari ale lui T (s). Precizati cerelatie exista ıntre ordinul n al acestor realizari si ordinele nI , nII obtinuteın sectiunea 3.3D.

Indicatie. Realizarile cerute se obtin generalizand convenabil formelestandard (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 functia de transfer Tij ınformele (T), (T1) si (T2).

Indicatie. Vezi procedurile de conversie (S) → (T), (S) → (T1) si(S) → (T2) din § 3.4.

E 3.7 Se da o functie de transfer T (s), nu neaparat strict proprie. Sa sescrie si sa se discute comparativ cativa algoritmi de conversie (T) → (T1)si (T) → (T2).

E 3.8 Analizati posibilitatile de constructie a unei realizari de stare a uneifunctii de transfer T (s) date ın forma (T1), fara a construi, ın prealabil,reprezentarea rationala a lui T (s).

E 3.9 Sa se scrie, la nivel de operatii scalare, algoritmul de ımpartireıntreaga a doua polinoame.

Page 102: MN Metode Numerice Carte(Matematici)

3.5. ALGORITMI DE CALCUL POLINOMIAL 101

E 3.10 Utiliand algoritmul lui Euclid de calcul al cmMdc a doua poli-noame, scrieti o procedura de calcul a cmMdc a l polinoame.

Indicatie. Operatia p1 ◦ p2 = cmMdc(p1, p2) este asociativa.

E 3.11 Utiliand algoritmii stabiliti ın exercitiile precedente scrieti o pro-cedura de calcul a cmmmc a l polinoame pi(s), l ≥ 2.

E 3.12 Se dau l functii rationale, fiecare definita ca raport de doua poli-noame. Sa se scrie algoritmul de aducere a celor l functii la acelasi numitorcomun 11.

E 3.13 Sa se scrie algoritmul de adunare a doua sau mai multe functii(matrice) rationale 12.

E 3.14 Sa se scrie algoritmul de ınmultire a doua sau mai multe functii(matrice) rationale 13.

E 3.15 Sa se scrie algoritmul (lui Horner generalizat) de calcul al coefici-entilor polinomului p(s + σ), unde p(s) este dat prin vectorul coeficientiloriar σ este un scalar dat, utilizand un volum minim de memorie. Elaboratio procedura de aplicare a algoritmului ”cu hartia si creionul”.

Indicatie. Toate calculele se pot desfasura ın locatiile de memorie aso-ciate vectorului coeficientilor polinomului initial.

E 3.16 Se dau un polinom p(s) de grad m si o matrice A ∈ Rn×n. Sa sescrie un algoritm de calcul al matricei B = p(A). Cautati un exemplu carearata ca ın cazul matriceal schema lui Horner nu este optimala din punctulde vedere al numarului de operatii.

E 3.17 Sa se studieze problema inversarii unei matrice de transfer (patrate)T (s), precizand conditiile ın care inversa este tot o matrice de transfer.Formulati aceeasi problema relativ la o realizare S = (A,B, C, D) a luiT (s) si comentati.

E 3.18 Ce puteti afirma relativ la problema anterioara ın cazul l 6= m ?

11Vezi procedurile de realizare ”eficiente”.12Vezi conexiunea paralel.13Vezi conexiunea serie.

Page 103: MN Metode Numerice Carte(Matematici)

102 CAPITOLUL 3. MODELE SISTEMICE

Bibliografie

[ 1 ] Ionescu V. Teoria Sistemelor. Sisteme Liniare. EDP, Bu-curesti 1985.

[ 2 ] Varga A., Sima V. Numerically Stable Algorithm for TransferFunction Matrix Evaluation, Int J. Control, Vol. 33, pp. 1123 –1133, 1981.

[ 3 ] Emami A., Naeini A., Van Dooren P. Computation of Zerosof Linear Multivariable Systems, Automatica, Vol. 4, pp. 415 – 430,1982.

[ 4 ] Barnett S. Matrices, Polynomials and Linear Time - InvariantSystems, IEEE Trans. AC-18, No. 1, pp. 1 – 10, 1973.

Page 104: MN Metode Numerice Carte(Matematici)

Capitolul 4

Calculul raspunsului ıntimp al sistemelor liniare

Analiza comportarii sistemelor dinamice include, ın mod necesar, deter-minarea evolutiei temporale a iesirilor (si, eventual, a starii) la diversetipuri de intrari externe. In faza de conceptie a unui sistem, astfel de de-terminari nu pot fi realizate decat ıntr-un mediu de simulare ın care testelese fac sau pe modele la scara sau prin rezolvarea ecuatiilor ce descriu sis-temul respectiv. Un mediu de simulare pentru sisteme cu timp continuuce foloseste tehnica numerica de calcul presupune, ın mod obligatoriu, odiscretizare a timpului si calculul raspunsului ın momentele de timp discretcorespunzatoare. In acest scop se utilizeaza o procedura de discretizareadecvata a carei alegere poate influenta ın mod determinant precizia rezul-tatelor.

4.1 Raspunsul liber al sistemelor liniare

Problema determinarii raspunsului liber (la intrare nula) al unui sistemliniar S = (A, B,C, D) consta ın calculul functiei de iesire y(t) definita prin

{x(t) = Ax(t), x(0) = xy(t) = Cx(t), (4.1)

pe un interval fixat [ 0, tf ].Solutia ecuatiei diferentiale omogene (4.1) este

x(t) = etAx(0), (4.2)

103

Page 105: MN Metode Numerice Carte(Matematici)

104 CAPITOLUL 4. RASPUNSUL IN TIMP

unde, prin definitie, Φ(t) = etA este matricea de tranzitie a sistemuluiconsiderat. Prin urmare, tinand seama de ecuatia iesirii, raspunsul liberare expresia simpla

y(t) = CetAx(0).

Pentru a evalua numeric ın mod eficient valorile y(t), divizam intervalul[ 0, tf ] ıntr-un numar N de subintervale egale, i.e. consideram tf = 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 pentruacoperirea intervalului prescris. Scriind relatia (4.2) la doua momente detimp discret t = kh si t = (k + 1)h, obtinem evident

{x((k + 1)h) = ehAx(kh)

y(kh) = Cx(kh) ,(4.3)

adica y(kh) rezulta direct ın functie de x(kh) care se determina recurentpentru k = 0 : N−1, tinand seama ca stare initiala x(0) = x este cunoscuta.Prin urmare, totul se reduce la calculul lui F = ehA, utilizand, de exem-plu, aproximatia Pade. De fapt, sistemul (4.3) constituie reprezentareadiscretizata exacta – cu element de extrapolare de ordinul 0 – a sistemului(4.1) (vezi § 4.3).

Observatia 4.1 Din acest punct de vedere, daca pasul de simulare h nueste impus, atunci el se poate alege egal cu pasul de discretizare, utilizandconditia cunoscuta h‖A‖ < 1

2 . Pe de alta parte, daca tf nu este nici el pre-cizat dar se urmareste obtinerea regimului tranzitoriu ”esential”, atunci –ın ipoteza ca matricea A este stabila cu valorile proprii satisfacand conditiaRe λ(A) < −α, unde α > 0 – putem evalua constanta de timp dominantaprin

T =1α

iar timpul de raspuns (pentru banda de 5% din jurul regimului stationarconstant) prin

tf = (4÷ 5) T =4÷ 5

α.

In definitiv, un N ales astfel ıncat

Nh ≈ 4÷ 5α

.

asigura dezideratul propus. (In legatura cu aceasta, vezi si observatia 5.1).¦

Page 106: MN Metode Numerice Carte(Matematici)

4.2. RASPUNSUL LA INTRARI LINIAR GENERATE 105

In concluzie, convenind sa memoram valorile ykdef= y(kh) ıntr-o ma-

trice Y de forma l × N astfel ıncat Y ( : , k) = yk−1, k = 1 : N, calcululraspunsului liber al sistemelor liniare se poate face utilizand urmatoareaprocedura.

Algoritmul 4.1 (Se dau sistemul liber (A,C), starea initialax(0) = x, intervalul de simulare [ 0, tf ] precum si parametrii h,N astfel ıncat Nh = tf . Se calculeaza raspunsul liber Y ınmomentele tk = kh, k = 0 : N − 1 si se returneaza x = x(tf ).)

1. Se calculeaza F = ehA.

2. Pentru k = 1 : N

1. Y (:, k) = Cx

2. x ← FxComentarii. Starea finala x(tf ) = x, furnizata de algoritmul 4.1, estenecesara ın calitatea de noua stare initiala pentru o eventuala continuare asimularii pe un interval de timp [ tf , t′f ], ulterior lui tf . ¦

4.2 Raspunsul la intrari liniar generate

Problema determinarii raspunsului unui sistem liniar S = (A,B,C, D)consta ın calculul functiei de iesire y(t), definita prin

(S){

x(t) = Ax(t) + Bu(t), x(0) = xy(t) = Cx(t) + Du(t), (4.4)

pe un interval fixat [ 0, tf ], pe care functia de intrare u(t) se consideracunoscuta.

Solutia ecuatiei diferentiale (4.4) este

x(t) = etAx(0) +∫ t

0

e(t−τ)ABu(τ) dτ. (4.5)

In cazul unei intrari de tip impuls u(t) = u0δ(t), u0 ∈ Rm (v. fig. 4.1 a))se obtine

x(t) = etAx(0) + etABu0, (4.6)

respectivy(t) = CetAx(0) +

[CetAB + Dδ(t)

]u0, (4.7)

deci raspunsul poate fi calculat (mai putin termenul impulsiv Du0δ(t))utilizand algoritmul 4.1 cu datele A, C si x = x(0) ← x(0)+Bu0, unde Bu0

Page 107: MN Metode Numerice Carte(Matematici)

106 CAPITOLUL 4. RASPUNSUL IN TIMP

-

6u(t)

t0

¾u0

-

6T (t)

t0

¾Du0

CB

a) b)&

Figura 4.1: Functie de intrare tip impuls (a) si functia pondere a unuisistem liniar (b).

este saltul traiectoriei de stare (4.6) datorat impulsului aplicat la intrare ınmomentul t = 0.

Totodata, din (4.7) rezulta ca matricea pondere (v. fig. 4.1 b))

T (t) def= CetAB 1(t) + Dδ(t), (4.8)

poate fi calculata pe coloane determinand succesiv (prin metoda indicatamai sus) raspunsurile sistemului ın stare initiala nula x(0) = 0 la impulsurileunitate u0 = ei ∈ Rm, i = 1 : m. Odata T (t) cunoscut, raspunsul lao intrare u(t) oarecare, e.g. continua pe portiuni, poate fi, ın principiu,obtinut utilizand relatia

y(t) = CetAx(0) +∫ t

0

T (t− τ)u(τ) dτ. (4.9)

Deoarece nu exista metode generale de reprezentare a unei functii de in-trare u(t) ,,arbitrare”, iar evaluarea numerica a integralei din (4.9) este di-ficila 1, ın cele ce urmeaza vom considera situatia (particulara, dar frecventıntalnita ın aplicatii) ın care u(t) este liniar generata, adica poate fi mode-lata ca iesire a unui sistem liniar liber (SF ) de forma

(SF ){

xF (t) = AF xF (t), xF (0) = xF

u(t) = CF xF (t), (4.10)

unde AF , CF sunt matrice date, iar starea initiala xF ∈ RnF este un vectorarbitrar, dar fixat. (Altfel spus, precizand xF fixam implicit intrarea ın

1Cateva metode de reprezentare aproximativa a unor functii de intrare de formagenerala, precum si metodele corespunzatoare de calcul al raspunsului, sunt prezentateıntr-o alta sectiune a acestui capitol.

Page 108: MN Metode Numerice Carte(Matematici)

4.2. RASPUNSUL LA INTRARI LINIAR GENERATE 107

clasa tuturor intrarilor u(t) ce pot fi obtinute ca iesiri ale lui SF ). SistemulSF se numeste generator sau filtru de formare al functiei de intrare u.Conectand sistemele (S) si (SF ) ın serie putem scrie

(S0)

[x(t)xF (t)

]=

[A BCF

0 AF

] [x(t)xF (t)

],

[x(0)xF (0)

]=

[xxF

]

y(t) =[

C DCF

] [x(t)xF (t)

],

(4.11)i.e. calculul raspunsului sistemului (S) la intrarea liniar generata u(t) sereduce la calculul raspunsului liber al sistemului (S0), prin metoda (exacta)expusa ın paragraful anterior.

Avand ın vedere ca aplicand transformarea Laplace ecuatiilor (4.10) alesistemului (SF ) obtinem

u(s) = CF (sI −AF )−1xF , (4.12)

reteta generala de constructie a sistemului generator (SF ) consta ın re-alizarea transformatei u(s), interpretata ca functie de transfer a unui sis-tem SIMO, sub forma unui triplet (AF , bF , CF ) cu o singura intrare, undevectorul bF = xF este stare initiala a lui (SF ). De aici rezulta ca functia deintrare u(t) este liniar generata daca si numai daca transformata sa Laplaceeste o matrice rationala strict proprie.

In concluzie, calculul raspunsului sistemelor liniare la intrari liniar ge-nerate se poate face utilizand urmatoarea procedura.

Algoritmul 4.2 (Se dau sistemul (A,B, C,D), starea initia-la x(0) = x, intervalul de simulare [ 0, tf ], parametrii h, N ast-fel ıncat Nh = tf , precum si transformata u(s) sub forma ma-tricei de transfer a unui sistem SIMO. Se calculeaza raspunsul Yın momentele tk = kh, k = 0 : N−1 si se returneaza x = x(tf ).)

1. Se realizeaza u(s) sub forma (AF , bF , CF ).

2. Se construiesc matricele

A ← A0 =[

A BCF

0 AF

], x ← x0 =

[xbF

]

C ← C0 =[

C DCF

].

3. Se aplica algoritmul 4.1 de calcul al raspunsului liber cudatele de intrare A, C si x(0) = x.

Page 109: MN Metode Numerice Carte(Matematici)

108 CAPITOLUL 4. RASPUNSUL IN TIMP

4. x = x(1 : n).

Pentru exemplificare, vom considera cateva cazuri particulare impor-tante.

A. Intrari polinomiale

Intrarile polinomiale sunt de forma

u(t) =p∑

k=1

αktk−1 , t ≥ 0 , (4.13)

unde coeficientii αk ∈ Rm sunt vectori dati. Notand ukdef= αk(k−1)! avem

u(t) =p∑

k=1

uktk−1

(k − 1)!, t ≥ 0 , (4.14)

iar transformata Laplace corespunzatoare este

u(s) =p∑

k=1

uk

sk=

u1sp−1 + · · ·+ up

sp. (4.15)

Deci, o realizare de stare a lui (SF ), ın forma standard controlabila, (vezicapitolul 3) este

AF =

0 · · · 0 01 · · · 0 0...

. . ....

...0 · · · 1 0

, bF =

10...0

CF =[

u1 · · · up−1 up

].

(4.16)

In particular, daca p = 1 atunci u(t) = u1 1(t) sau

u(t) = u1, t ≥ 0 (4.17)

este o intrare treapta de amplitudine u1 ∈ Rm data (v. fig. 4.2 a)). Inacest caz filtrul de formare este

AF = [ 0 ], bF = [ 1 ]

CF = [ u1 ](4.18)

Page 110: MN Metode Numerice Carte(Matematici)

4.2. RASPUNSUL LA INTRARI LINIAR GENERATE 109

iar matricele sistemului (S0) sunt

A0 =[

A Bu1

0 0

], x0 =

[x1

]

C0 =[

C Du1

].

(4.19)

-

6u(t)

t0

u1

-

6u(t)

t0 1

?6

u1

u2

a) b)

������

Figura 4.2: Functiile de intrare tip treapta (a) si rampa (b).

In mod analog, daca p = 2 atunci

u(t) = u1 + u2t, t ≥ 0 (4.20)

este o intrare rampa de amplitudine initiala u(0) = u1 si panta u2 ∈ Rm

date (v. fig. 4.2 b)). In acest caz filtrul de formare este

AF =[

0 01 0

], bF =

[10

]

CF =[

u1 u2

].

(4.21)

iar matricele sistemului (S0) sunt

A0 =

A Bu1 Bu2

0 0 00 1 0

, x0 =

x10

C0 =[

C Du1 Du2

].

(4.22)

Clasa tuturor intrarilor polinomiale de forma (4.14), ın care vectoriiuk, k = 1 : p sunt arbitrari, se obtine considerand ın loc de (4.16) forma

Page 111: MN Metode Numerice Carte(Matematici)

110 CAPITOLUL 4. RASPUNSUL IN TIMP

standard observabila

AF =

0 Im · · · 0· · · · · · · · · · · ·0 0 · · · Im

0 0 · · · 0

, bF =

u1

· · ·up−1

up

CF =[

Im 0 · · · 0],

(4.23)

unde vectorul bF = xF se alege pentru a preciza intrarea ın clasa conside-rata. (Observam ca, acum, SF este de ordin nF = pm, unde p este ordinultransformatei Laplace (4.15), iar m este numarul de intrari ale sistemului(4.4)).

In particular, daca u(t) = u1 1(t) este o intrare treapta de amplitudinearbitrara, atunci filtrul de formare este

AF = [ 0 ], bF = [u1]CF = [Im], (4.24)

iar matricele sistemului (So) sunt

Ao =[

A B0 0

], xo =

[xu1

]

Co =[

C D].

(4.25)

B. Intrari armonice

Intrarile armonice sunt de forma

u(t) = γ1 cos ωt + γ2 sin ωt , t ≥ 0 , (4.26)

unde pulsatia ω este fixata iar coeficientii γ1, γ2 ∈ Rm sunt vectori dati.Avem

u(s) =γ1s + γ2ω

s2 + ω2, (4.27)

deci o realizare a lui (SF ) este

AF =[

0 −ω2

1 0

], bF =

[10

]

CF =[

γ1 ωγ2

].

(4.28)

Page 112: MN Metode Numerice Carte(Matematici)

4.3. RASPUNSUL LA INTRARI ETAJATE 111

Cazurile relativ mai complicate, de tipul

u =p∑

k=1

γk cos kωt + δk sin kωt , (4.29)

u = eαt(γ1 cos ωt + γ2 sin ωt) , (4.30)

ın care coeficientii sunt eventual arbitrari, se trateaza analog.

4.3 Raspunsul la intrari etajate

Domeniul de aplicatie al metodei bazate pe utilizarea sistemului generator,expusa ın paragraful anterior, poate fi sensibil largit, considerand ca functiade intrare u(t) este liniar generata pe portiuni, e.g. are o expresie de tip(4.14) pe fiecare subinterval [ kh, (k + 1)h ), k = 0 : N − 1 al unei diviziuniuniforme cu pasul h al intervalului [ 0, tf ].

In cel mai simplu caz (care ın acelasi timp este si cel mai frecvent ıntalnitın aplicatii) functia de intrare u(t) este constanta pe portiuni (sau etajata),i.e. avem

u(t) = uk, t ∈ [ kh, (k + 1)h ) (4.31)

unde amplitudinile uk ∈ Rm sunt vectori dati, ın general variabili de la pasla pas (v. fig. 4.3).

-

6u(t)

t0 h 2h 3h · · · kh (k+1)h (k+2)h

u0

u1

u2

uk

uk+1

uk+2

Figura 4.3: Functie de intrare etajata.

Utilizand relatia (4.6) scrisa sub forma

x(t) = e(t−kh)Ax(kh) +∫ t

kh

e(t−τ)ABu(τ) dτ,

Page 113: MN Metode Numerice Carte(Matematici)

112 CAPITOLUL 4. RASPUNSUL IN TIMP

ın care punem t = (k + 1)h, ın virtutea lui (4.31) obtinem usor

x((k + 1)h) = Fx(kh) + Guk,

y(kh) = Cx(kh) + Duk,(4.32)

unde

F = ehA, G =∫ h

0

eηA dη B. (4.33)

Prin definitie, sistemul liniar discret Sd = (F, G,C, D) constituie repre-zentarea discretizata (pe scurt discretizatul) cu pasul h al sistemului liniarS = (A,B, C, D). Matricele F si G, necesare pentru constructia lui Sd, sedetermina calculand exponentiala matriceala F o = ehAo

, unde matriceaAo are expresia (4.25), corespunzatoare cazului ın speta. (Amintim ca, pefiecare subinterval, functia de intrare (4.31) este de tip treapta). Procedandın acest mod, se obtine

ehAo

=[

F G0 Im

]. (4.34)

In concluzie, convenind sa dispunem valorile date uk ıntr-o matrice Ude forma m × N , astfel ıncat U( : , k) = uk−1, k = 1 : N , calculul raspun-sului sistemelor liniare la intrari etajate se poate face utilizand urmatoareaprocedura

Algoritmul 4.3 (Se dau sistemul (A,B,C, D), starea ini-tiala x(0) = x, intervalul de simulare [ 0, tf ], parametrii h, Nastfel ıncat Nh = tf precum si tabloul U ce contine palierelefunctiei de intrare etajate u(t). Se calculeaza raspunsul Y ınmomentele tk = kh, k = 0 : N − 1 si se returneaza x = x(tf )).

1. Se calculeaza F = ehA si G ın acord cu (4.34), unde Ao

are expresia (4.25).2. Pentru k = 1 : N

1. Y ( : , k) = Cx + DU( : , k)2. x ← Fx + GU( : , k).

Idei asemanatoare se aplica ın cazul utilizarii unor reprezentari alefunctiei de intrare u(t), mai complicate decat (4.31). In cazul general,corespunzator lui (4.14), putem scrie

u(t) =p∑

i=1

u(i)k

(t− kh)i−1

(i− 1)!, t ∈ [ kh, (k + 1)h ) (4.35)

Page 114: MN Metode Numerice Carte(Matematici)

4.3. RASPUNSUL LA INTRARI ETAJATE 113

unde coeficientii u(i)k au o semnificatie evidenta, ın particular u

(1)k = u(kh)

coincide cu uk din (4.31). In locul lui (4.32), acum se obtine o realizarediscretizata de forma

x((k + 1)h) = Fx(k) +∑p

i=1 Giu(i)k

y(kh) = Cx(kh) + Du(1)k ,

(4.36)

ın care matricele F = ehA si

Gidef=

∫ h

0

e(h−τ)A τ i−1

(i− 1)!dτ , i = 1 : p

se determina ın mod corespunzator, calculand exponentiala matriceala F o =ehAo

, unde Ao se construieste cu datele din (4.23). (Stabilirea formei luiF o, ın cazul de fata, este propusa cititorului ca exercitiu. Evident, avemG1 = G si ın cazul p = 1 ecuatiile (4.36) se reduc la (4.32)).

Pentru determinarea coeficientilor u(i)k , ın special daca asigurarea ,,ra-

cordarii” aproximatiilor (4.35) pe intervale adiacente este importanta, serecomanda utilizarea metodelor de interpolare tip spline, [ IX ]. Subliniemca ın acest caz, sistemul (4.36) nu este cauzal ın sensul ca, ın general,coeficientii u

(i)k , deci starea x((k + 1)h) rezultata din prima ecuatie (4.36),

depind de valorile viitoare ale intrarii u(t) 2. In schimb, procedurile de cal-cul astfel obtinute (net superioare tehnicilor de extrapolare clasice) combinaprecizia aproximarilor spline cu eficienta si siguranta metodelor de calculale exponentialei matriceale, concurand deseori cu succes procedurile alter-native de tip general, bazate pe integrarea numerica a ecuatiei diferentiale(4.4).

Fara a intra ın detalii, mentionam numai ca utilizarea metodelor de in-tegrare numerica (tip Runge - Kutta, predictor - corector, etc., ın generalcu pas variabil) devine obligatorie ın cazul general, ın care matricea A a sis-temului liniar S = (A,B, C,D) este variabila ın timp. In locul exponentialeimatriceale F = ehA, pe fiecare subinterval [ tk, tk+1 ), acum se utilizeazamatricea de tranzitie Fk = Φ(tk+1, tk), calculata pe coloane prin integrareaecuatiei diferentiale omogene (4.1) cu conditiile initiale x(tk) = ej ∈ Rn,j = 1 : n.

2Acest fenomen poate fi evitat numai ın cazul p = 2, cand ın (4.35) se obtine u(1)k

= uk

si u(2)k = (uk+1 − uk)/h. Efectuand ın (4.36) schimbarea de variabila de stare

x((k + 1)h) ← x((k + 1)h) − G2uk+1/h, ecuatiile (4.36) pot fi scrise sub forma uzuala

(4.32). In cazul p = 4, corespunzator functiilor spline cubice, frecvent utilizate ın prac-tica, acest artificiu nu mai este eficient.

Page 115: MN Metode Numerice Carte(Matematici)

114 CAPITOLUL 4. RASPUNSUL IN TIMP

4.4 Raspunsul stationar

Consideram contextul din § 4.2, unde presupunem, ın plus, ca matricea Aeste stabila, adica Re λ(A) < 0, iar functia de intrare u este persistenta,adica Re λ(AF ) ≥ 0.

Procedura generala de separare a componentelor tranzitorie si ,,statio-nara” (asimptotica sau permanenta) ale raspunsului y(t) consta ın a scrie

x(t) = ξ(t) + V xF (t), (4.37)

unde ξ(t) este componenta tranzitorie a traiectoriei de stare, adica ξ(t) → 0cand t → ∞, iar matricea constanta V ∈ Rn×nF trebuie determinata.Derivand relatia (4.37) si tinand seama de ecuatiile sistemelor (S) si (SF ),obtinem

x = ξ + V xF = ξ + V AF xF == Ax + Bu == A(ξ + V xF ) + BCF xF == Aξ + (AV + BCF )xF .

(4.38)

Prin urmare, daca matricea V este aleasa astfel ıncat

V AF = AV + BCF (4.39)

atunci din (4.38) rezulta ξ(t) = Aξ(t), deci ξ(t) → 0 cand t → ∞, ∀ ξ(0)ın virtutea ipotezei de stabilitate Re λ(A) < 0. (In fapt, daca x(0) esteprecizat, atunci din (4.37) avem ξ(0) = x(0)− V xF (0)).

Cu alte cuvinte, considerand un moment initial flotant t0 ∈ R, pre-supunand mai sus t ≥ t0 si facand t0 → −∞, obtinem din nou ξ(t) → 0,deci x(t) → V xF (t), ∀x(t0). In virtutea acestui fapt, spunem ca V xF (t)este componenta ”stationara” (asimptotica sau permanenta) a traiectorieide stare x(t).

Observatia 4.2 Dupa cum se stie, ecuatia matriceala Sylvester (4.39)are solutie unica V oricare ar fi membrul drept BCF daca si numai dacaλ(A)∩ λ(AF ) = ∅, (vezi capitolul 1) adica nici o valoare proprie a lui A nucoincide cu nici o valoare proprie a lui AF . In cazul de fata aceasta conditieeste evident satisfacuta ın virtutea ipotezelor de stabilitate Reλ(A) < 0 sipersistenta Re λ(AF ) ≥ 0. ¦

In continuare obtinem

y(t) = C(ξ(t) + V xF (t)) + DCF xF (t) , (4.40)

deci avemy(t) = η(t) + WxF (t) , (4.41)

Page 116: MN Metode Numerice Carte(Matematici)

4.4. RASPUNSUL STATIONAR 115

undeη(t) = Cξ(t) (4.42)

este (prin definitie) componenta tranzitorie a raspunsului, iar matricea Weste definita prin

W = CV + DCF . (4.43)

Avand ın vedere ca, ın esenta, xF (t) = etAF xF (0) este cunoscut, com-ponenta stationara WxF (t) a raspunsului este complet determinata prin(4.43) ın functie de solutia V a ecuatiei matriceale algebrice liniare (4.39).

In concluzie, calculul raspunsului stationar al sistemelor liniare la intraripersistente liniar - generate se poate face utilizand urmatoarea procedura.

Algoritmul 4.4 (Se dau sistemul (A,B, C, D) precum sitransformata u(s) sub forma matricei de transfer a unui sistemSIMO. Se calculeaza raspunsul stationar WxF (t) pe un interval[ 0, tf ] convenabil precizat).

1. Se realizeaza u(s) sub forma (AF , bF , CF ).

2. Se calculeaza matricea V rezolvand ecuatia matricealaSylvester (4.39).

3. Se calculeaza matricea W ın acord cu (4.43).

4. Se determina raspunsul stationar aplicand algoritmul 4.1cu datele de intrare AF , W si xF = bF .

Pentru exemplificare, vom considera cateva cazuri particulare impor-tante.

Raspunsul stationar la intrari polinomiale

Intrarile polinomiale au un filtru de formare SF definit prin matricele AF ,CF date ın (4.16). Prin urmare, partitionand V pe coloane sub formaV = [ v1 . . . vp ] unde vi ∈ Rn, ecuatia (4.39) se scrie

[v1 v2 . . . vp

]

0 . . . 0 01 . . . 0 0...

. . ....

...0 . . . 1 0

=

= A[

v1 v2 . . . vp

]+ B

[u1 . . . up−1 up

]. (4.44)

Page 117: MN Metode Numerice Carte(Matematici)

116 CAPITOLUL 4. RASPUNSUL IN TIMP

Obtinem

v2 = Av1 + Bu1

...vp = Avp−1 + Bup−1

0 = Avp + Bup

(4.45)

deci vectorii vp . . . v1 rezulta succesiv rezolvand sistemele liniare

Avp = −Bup

Avk = −Buk + vk+1, k = p− 1 : 1 .(4.46)

(Evident, matricea A trebuie triangularizata o singura data.)In sfarsit, din (4.43), unde W = [w1 . . . wp ] rezulta usor

wk = Cvk + Duk , k = 1 : p . (4.47)

Observatia 4.3 Unicitatea solutiei V este ın acest caz garantata dacaA e inversabila (adica 0 6∈ λ(A)), ceea ce evident rezulta din ipoteza Astabila, adoptata mai sus. Altfel spus, S poate avea solutia polinomialaV xF (t), dar ea nu este solutie asimptotica (pentru t → ∞), decat daca Aeste stabila. ¦

In particular, raspunsul stationar la o intrare treapta de amplitudineu1 ∈ Rm corespunde la p = 1 si xF (t) = 1, deci are expresia

W = [−CA−1B + D ]u1def= T (0)u1,

undeT (0) = [ C(sI −A)−1B + D ]

∣∣s=0

.

Raspunsul stationar la intrari armonice

Intrarile armonice au un filtru de formare definit prin

AF =[

0 −ω2

1 0

],

CF =[

γ1 ωγ2

].

(4.48)

Partitionand V pe coloane sub forma V = [v1 ωv2] ecuatia (4.39) sescrie

[v1 ωv2][

0 −ω2

1 0

]= A[v1 ωv2] + B[γ1 ωγ2] (4.49)

Page 118: MN Metode Numerice Carte(Matematici)

4.5. CALCULUL CARACTERISTICILOR DE FRECVENTA 117

Obtinem {ωv2 = Av1 + Bγ1

−ωv1 = Av2 + Bγ2(4.50)

deci vectorii vi, i = 1 : 2 rezulta rezolvand sistemul liniar[ −A ωI−ωI −A

] [v1

v2

]=

[Bγ1

Bγ2

]. (4.51)

In sfarsit, din (4.43), unde W = [w1 ωw2], rezulta usor

wi = Cvi + Dγi, i = 1 : 2 (4.52)

Observatia 4.4 Unicitatea solutiei V este ın acest caz garantata dacaiω 6∈ λ(A), adica ın absenta rezonantei pe frecventa ω a intrarii, ceea cerezulta evident din ipoteza A stabila, adoptata mai sus. ¦

4.5 Calculul caracteristicilor de frecventa

Deseori, problema de calcul abordata ın finalul paragrafului precedent inter-vine sub o forma modificata, adica se cere calculul raspunsului armonic pen-tru diverse valori ale frecventei ω renuntand la ipoteza A stabila ın favoareaconditiei mai slabe iω 6∈ λ(A) de absenta a rezonantelor pe frecventele ωprescrise. Evident, aceasta ınseamna calculul caracteristicilor de frecventaale sistemului considerat, ceea ce, traditional, se face recurgand la ”com-plexificarea” acestuia.

Concret, aceasta ınseamna ca ın locul functiei de intrare reale (4.26),i.e. u(t) = γ1 cos ωt + γ2 sin ωt se considera intrarea complexa

uc(t) = γceiωt , (4.53)

unde γc ∈ Cm este un vector dat cu componente complexe. Avem

uc(s) =γc

s− iω(4.54)

deci o realizare (complexa) a lui (SF ) este

AF = iω, bF = 1,CF = γc.

(4.55)

Page 119: MN Metode Numerice Carte(Matematici)

118 CAPITOLUL 4. RASPUNSUL IN TIMP

Daca scriem acum (4.39) sub forma

iωV = AV + Bγc (4.56)

obtinem imediatV = (iωI −A)−1Bγc, (4.57)

iar din (4.43) rezulta

W = CV + Dγc = [C(iωI −A)−1B + D]γcdef= T (iω)γc (4.58)

undeT (iω) = C(iωI −A)−1B + D , ω ∈ R (4.59)

reprezinta caracteristica (complexa) de frecventa a sistemului (S).Problema calculului lui T (iω) pentru diverse valori ωk ∈ R , k = 1 : N

ale lui ω presupune deci

1. Pentru k = 1 : N

1. Rezolvarea sistemelor matriceale liniare (iωkI −A)Vk = B.

2. Calculul matricei T (iωk) = CVk + D.

Deosebirea importanta fata de cazul considerat anterior al intrarilorpolinomiale consta aici, (ın afara necesitatii evidente de a utiliza aritmeticacomplexa), ın faptul ca, aparent, la pasul 1.1 matricele (iωkI − A) trebui-esc triangularizate pentru fiecare k ın parte, ceea ce ın cazul ın care A estede forma generala presupune, ın total, N n3

3 operatii (ın afara celor Nmn2

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 n2 operatii. Prin urmare, ın cazul de fata se recomandadeterminarea unei transformari prealabile M astfel ıncat

A = MAM−1

sa fie, de exemplu, superior Hessenberg. In acest scop, se utilizeaza eli-minarea gaussiana cu pivotare partiala ın aritmetica complexa si rezultaM = Mn−1Pn−1 . . .M2P2, unde Mk sunt matrice inferior triunghiulare ele-mentare, iar Pk sunt matrice de permutare adecvat alese. (Alternativ, darmai costisitor, se poate utiliza procedura ortogonala ın care M = U =Un−1 · · ·U2 este o secventa de reflectori). Aplicand transformarea M ma-tricelor B si C, adica B = MB, C = CM−1 si definind V = MV , problemacalculului lui T (iωk) se reduce la

Page 120: MN Metode Numerice Carte(Matematici)

4.6. RASPUNSUL SISTEMELOR DISCRETE 119

1. Pentru k = 1 : N

1. Rezolvarea sistemelor matriceale liniare superiorHessenberg (iωkI − A)Vk = B.

2. Calculul matricei T (iωk) = CVk + D.

Aplicarea acestei scheme de calcul necesita, la pasul 1.1, ın total, nu-mai Nmn2 operatii, mai precis, Nmn2

2 operatii pentru triangularizare plus

Nmn2

2 pentru rezolvarea efectiva.Procedura de calcul poate fi rezumata astfel.

Algoritmul 4.5 (Se dau A, B, C, D si ωk ∈ R , 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 A0 = iωkI −A.2. Se face triangularizarea A0 ← R = NA0.3. B0 = NB

4. Se rezolva A0V = B0 ın raport cu V .

5. T (iωk) = CV + D

Comentarii. Matricele A0 si B0 sunt tablouri de lucru. La pasul 4.2. seefectueaza eliminarea gaussiana cu pivotare partiala ın aritmetica complexaastfel ıncat R rezulta superior triunghiulara. La pasul 4.3 transformarea Nse aplica lui B iar la pasul 4.4 se procedeaza ca ın cap. 1, § 2. ¦

Observatia 4.5 Aducerea prealabila a lui A la forma Schur (pentru aevita pasii 4.2, 4.3) este mai putin eficienta. ¦

4.6 Raspunsul sistemelor liniare discrete

Datorita specificului recurent al ecuatiilor de stare ın cazul discret, matriceade tranzitie este Φ(k) = Ak, k ∈ N . In particular, matricea de tranzitie

Page 121: MN Metode Numerice Carte(Matematici)

120 CAPITOLUL 4. RASPUNSUL IN TIMP

ıntr-un pas Φ(1) = A este data, deci procedurile de calcul prezentate maisus se simplifica. In algoritmii 4.1 si 4.3 se elimina pasii 1, ınlocuind pestetot perechea discretizata (F,G) cu perechea (A,B) a sistemului discretconsiderat. In algoritmul 4.2, ın locul lui u(s) se considera transformataZ corespunzatoare u(z). Consideratiile din § 4.4 raman valabile ınlocuindconditiile de stabilitate si persistenta prin versiunile lor discrete |λ(A)| < 1si, respectiv, |λ(AF )| ≥ 1. (Vezi § 5.1). In sfarsit, ın versiunea discreta aalgoritmului 4.5, numerele iωk situate pe axa imaginara se ınlocuiesc cunumere eiθk , k = 1 : N , convenabil plasate pe cercul unitate T . Detaliilede redactare sunt propuse cititorului ca exercitii.

Programe MATLAB disponibile

Pentru calculul si reprezentarea grafica a raspunsului liber al unui sis-tem liniar este disponibila functia initial, care foloseste algoritmul 4.1.Raspunsul ın stare initiala nula la o intrare (scalara) de tip impuls sautreapta unitate se poate calcula utilizand functiile impulse si step, careimplementeaza algoritmii corespunzatori 4.1 si 4.2 considerand x(0) = b sirespectiv x(0) = 0. Functia lsim implementeaza algoritmul 4.3 utilizand oaproximare liniara pe portiuni a functiei de intrare u(t), vezi formula (4.35)ın cazul p = 2. In cazul discret, ın aceleasi scopuri, se utilizeaza functiiledinitial, dimpulse, dstep si dlsim.

Pentru constructia reprezentarii discretizate cu pasul h a unei perechi(A,B) este disponibila functia c2d, bazata pe formula de calcul exacta(4.33). Diverse metode de discretizare aproximativa pot fi utilizate apelandfunctia c2dm.

Pentru calculul si reprezentarea grafica a caracteristicilor de frecventaale unui sistem liniar sunt disponibile functiile nyquist, bode si nicholscare apeleaza procedura freqresp, bazata pe algoritmul 4.5. In cazul dis-cret, ın acelasi scop se utilizeaza functiile dnyquist, dbode si dnichols.Pentru functii de transfer sunt disponibile versiunile simple freqs si respec-tiv freqz.

Exercitii

E 4.1 Prin analogie cu algoritmii din text, scrieti algoritmii de calcul alraspunsului ın timp al unui sistem liniar, discret S = (A, B,C, D) definit

Page 122: MN Metode Numerice Carte(Matematici)

4.6. RASPUNSUL SISTEMELOR DISCRETE 121

prin ecuatiile de stare{

x(k + 1) = Ax(k) + Bu(k), x(0) = xy(k) = Cx(k) + Du(k) (4.60)

E 4.2 Reluati exercitiul 4.1 ın ipoteza ca matricele sistemului discret S auformele particulare obtinute prin aplicarea procedurilor de realizare expuseın capitolul 1, § 3. Considerati succesiv cazurile SISO, MISO, SIMO si ınfiecare caz scrieti algoritmii propusi cat mai amanuntit posibil, evaluandmemoria necesara precum si numarul de operatii. Formulati concluziilerezultate.

E 4.3 Scrieti algoritmul de calcul al raspunsului unui sistem liniar discretS descris printr-o relatie intrare - iesire de forma

y(k) =n∑

i=1

aiy(k − i) +d∑

i=0

biu(k − i), k = 0 : N − 1 (4.61)

precizand cu grija datele initiale necesare.

E 4.4 Reluati exercitiul anterior aplicand transformata Z ecuatiei (4.61)pentru a obtine T (z) si utilizati ın acest context procedurile stabilite laexercitiul 4.2. Formulati concluziile rezultate.

E 4.5 Cum se calculeaza raspunsul ın timp al unui sistem liniar discretavand functia de transfer data sub forma

T (z) = k

∏(z − µi)∏(z − λi)

, respectiv T (z) =∑ ri

z − λi? (4.62)

E 4.6 Reluati exercitiul 4.1 pentru sistemul liniar discret definit prin

x(k + 1) = Ax(k) +∑d

i=0 Biu(k − i), x(0) = x

y(k) = x(k) +∑d

i=0 Diu(k − i)(4.63)

ın care d ≥ 1 reprezinta ıntarzierea (pura) maxima pe canalul de intrare,iar A, C si Bi, Di, i = 1 : d sunt matrice date.

E 4.7 Calculati matricele de transfer T (z) pentru sistemele din exercitiile4.1 si 4.6, indicand o procedura eficienta de calcul al raspunsului stationarla intrare treapta.

Page 123: MN Metode Numerice Carte(Matematici)

122 CAPITOLUL 4. RASPUNSUL IN TIMP

E 4.8 Elaborati proceduri eficiente de calcul pentru caracteristicile defrecventa T (eiθ), θ ∈ [ 0, 2π ), unde T (z) sunt matricele de transfer calculateın exercitiul precedent.

E 4.9 Considerati sistemul liniar descris prin

x(t) = Ax(t) +∑d

i=0 Biu(t− ih), x(0) = x0

y(t) = Cx(t) +∑d

i=0 Diu(t− ih)(4.64)

ın care d ≥ 1, iar functia de intrare u(t) este etajata cu pasul h. Scrietialgoritmul de calcul al raspunsului y(kh), k = 0 : N − 1.

E 4.10 Formulati si rezolvati versiunile continue ale exercitiilor 4.2 – 4.5,4.7 si 4.8.

E 4.11 Scrieti algoritmul de calcul al raspunsului sistemului liniar (4.4)la o intrare impuls u(t) = u0δ(t), unde vectorul u0 ∈ Rm este dat. Cumprocedati ın cazul u(t) =

∑N−1k=0 ukδ(t− kh), tf = Nh ?

E 4.12 Formulati si rezolvati versiunea discreta a exercitiului 4.11.

E 4.13 Scrieti algoritmul de calcul al raspunsului sistemului liniar (4.4) laun semnal de intrare periodic de forma dreptunghiulara, presupunand caperioada acestuia este ph, p ≥ 1.

E 4.14 Elaborati algoritmul de calcul al raspunsului ın timp al sistemuluiliniar (4.4) pentru un semnal de intrare periodic avand forma de dinti defierastrau cu perioada ph, p ≥ 1 si panta u2 i.e. u(t) = u2(t − kph),t ∈ [ kph, (k + 1)ph ), k ∈ N .

E 4.15 Analizati posibilitatile de calcul al regimului stationar rezultat ınconditiile exercitiilor 4.13 si 4.14.

E 4.16 Propuneti un analog al formulei (4.3) pentru sistemul liniar cuıntarziere descris de ecuatia diferentiala x(t) = Ax(t)+Bx(t−τ) cu conditiainitiala x(t) = u(t), considerata cunoscuta pentru t ∈ [−τ, 0 ], unde τ > 0reprezinta ıntarzierea (interna), iar A si B sunt matrice date. Indicatio procedura de calcul aproximativ al raspunsului liber y(kh) = Cx(kh),k = 0 : N − 1.

Indicatie. Considerati mai ıntai ecuatia corespunzatoare cazului n = 1si alegeti h astfel ıncat τ = dh, unde, de exemplu, d = 10. Cum se potcalcula valorile x(kh), h = 1 : d ?

Page 124: MN Metode Numerice Carte(Matematici)

4.6. RASPUNSUL SISTEMELOR DISCRETE 123

E 4.17 Scrieti algoritmul de calcul al raspunsului y(kh), k = 1 : N , alsistemului (4.1) daca ın locul starii initiale x(0) = x0 se da starea finalax(tf ) = ξ.

E 4.18 Scrieti algoritmul de calcul al raspunsului y(kh), k = 0 : N , alsistemului (4.1) daca ıntre x(0) si x(tf ) se da o relatie de forma Lx(0) +Mx(tf ) = d, unde L, M sunt doua matrice de ordin n iar d ∈ Rn este unvector dat. (Cazul L = In, M = 0 corespunde algoritmului 4.1, iar cazulL = 0, M = In corespunde exercitiului 4.17).

Indicatie. Spre deosebire de algoritmul 4.1 si exercitiul 4.17, care ınesenta efectueaza integrarea sistemului x = Ax ın timp direct si, respectiv,ın timp invers, problema bilocala considerata acum nu are ıntotdeaunasolutie unica. Considerand t = tf ın expresia (4.2) a raspunsului liber,obtinem x(tf ) = etf Ax(0), deci trebuie sa avem (L + Metf A)x(0) = d.Acest sistem de n ecuatii liniare cu n necunoscute x(0) ∈ Rn are solutieunica daca si numai daca matricea L = L + Metf A rezulta inversabila. Inacest caz, se calculeaza x(0) = L−1d si se aplica algoritmul 4.1.

E 4.19 Formulati si rezolvati exercitiile 4.17 si 4.18 ın cazul u(·) 6= 0.

E 4.20 Formulati si rezolvati versiunile discrete ale exercitiilor 4.17 – 4.19,precizand ipotezele necesare pentru buna formulare a problemelor de calculastfel obtinute.

E 4.21 Scrieti un algoritm pentru rezolvarea ecuatiei diferentiale ma-triceale Sylvester

X(t) = AX(t) + X(t)B, (4.65)

cu conditia initiala X(0) = X, unde A, B, X sunt matrice date de dimen-siuni corespunzatoare.

Indicatie. Analogul formulei (4.2) ın cazul de fata este

X(t) = etAX(0)etB .

In cazul B = AT se obtine ecuatia diferentiala matriceala Liapunov.

E 4.22 Reluati exercitiul precedent pentru ecuatia

X(t) = AX(t) + X(t)B + C (4.66)

cu X(0) = X, unde, ın plus, C este o matrice data, eventual variabila ıntimp.

Page 125: MN Metode Numerice Carte(Matematici)

124 CAPITOLUL 4. RASPUNSUL IN TIMP

Indicatie. Analogul formulei (4.5) este

X(t) = etAX(0)etB +∫ t

0

e(t−τ)ACe(t−τ)B dτ.

Bibliografie

[ 1 ] Lupas L., Bogdan M. Forced Response Computation of LinearTime - 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 Responseof 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 Efficient and Reliable Numerial Solution ofLarge Linear Systems of ODE’s, IEEE Trans. AC - 24, No. 6, pp.905 – 908, 1979.

[ 4 ] Laub A.J. Efficient Multivariable Frequency Response Computa-tions, IEEE Trans. AC - 26, No. 2, pp. 407 - 408, 1981.

Page 126: MN Metode Numerice Carte(Matematici)

Capitolul 5

Proceduri de analizasistemica

In acest capitol vom discuta procedurile de analiza numerica a proprietatilorsistemice fundamentale (stabilitate, controlabilitate si observabilitate, etc.)precum si procedurile conexe de minimizare dimensionala si echilibrare amodelelor sistemice liniare.

5.1 Stabilitatea sistemelor liniare

Stabilitatea unui sistem liniar S = (A,B, C) este o proprietate ce depindenumai de matricea A a sistemului si, ın ultima instanta, numai de ma-tricea de tranzitie Φ(t) asociata lui A. Mai precis, sistemul S este stabildaca Φ(t) → 0 cand t → ∞. Deoarece matricea de tranzitie are expresiidiferite ın cazurile continuu si discret, adica Φ(t) = etA, t ∈ R, respectivΦ(t) = At, t ∈ N , proprietatea de stabilitate are si ea exprimari diferite ıncele doua cazuri.

Definitia 5.1 Matricea A a unui sistem continuu este stabila daca toatevalorile proprii ale lui A au partea reala strict negativa, deci sunt plasateın semiplanul stang deschis C− al planului complex C.

Pe scurt, criteriul (conditia necesara si suficienta) de stabilitate ın cazulcontinuu este λ(A) ⊂ C− sau, mai sugestiv, Reλ(A) < 0.

125

Page 127: MN Metode Numerice Carte(Matematici)

126 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Definitia 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 disculunitate deschis D1(0) din planul complex C.

Pe scurt, criteriul de stabilitate ın cazul discret este |λ(A)| < 1.

In general, o valoare proprie λ a lui A satisfacand conditia de stabilitateReλ < 0, respectiv |λ| < 1, se numeste valoare proprie stabila. Prin urmare,matricea A este stabila daca si numai daca toate valorile sale proprii suntstabile.

Deoarece ın ambele cazuri, continuu si discret, proprietatea de stabili-tate vizeaza o anumita plasare a valorilor proprii, iar acestea se calculeazaeficient utilizand algoritmul QR, obtinem urmatorul test de stabilitate pen-tru sisteme liniare.

Algoritmul 5.1 (Se testeaza stabilitatea matricei A).

1. Se calculeaza valorile proprii λ(A) utilizand algoritmul QR(fara acumularea transformarilor).

2. Se determina α = max Reλ(A) ın cazul continuu, respectivρ = max |λ(A)| ın cazul discret. Matricea A este stabiladaca si numai daca α < 0, respectiv ρ < 1.

Observatia 5.1 Proprietatea de stabilitate este o proprietate binara, i.e.poate fi numai adevarata sau falsa. In aplicatii intereseaza deseori evaluaricantitative ale unor ”margini” sau ”rezerve” de stabilitate. Asemeneaevaluari sunt furnizate de parametri α si ρ calculati mai sus. De exem-plu, daca un sistem continuu este stabil, adica α < 0, atunci |α| reprezintainversul constantei de timp dominante, deci relatia

tr ≈ 4÷ 5|α|

ofera o evaluare orientativa a timpului de raspuns (definit pentru banda de5% din jurul regimului stationar constant) al sistemului considerat. Pe dealta parte, daca matricea discreta A rezulta prin discretizarea cu pasul ha unei matrice Ac, apartinand unui sistem continuu atunci avem λ(A) =ehλAc , ın particular ρ = ehαc , deci numarul Nr de pasi necesar pentrustabilizarea raspunsului discret poate fi evaluat cu formula

Nr ≈ 4÷ 5|lnρ| .

¦In general, numarul ρ = ρ(A) se numeste raza spectrala a matricei A.

Page 128: MN Metode Numerice Carte(Matematici)

5.2. DESCOMPUNEREA SPECTRALA 127

5.2 Descompunerea spectrala

In anumite probleme de analiza si sinteza structurala ın care matricea Anu este stabila, intereseaza evidentierea subspatiilor invariante ale matriceiA generate de vectorii proprii asociati valorilor proprii stabile si respectivnestabile.

Pentru precizare, fie sistemul liniar S = (A,B,C) definit prin ecuatiilede stare {

x = Ax + Buy = Cx

(5.1)

unde x ∈ Rn este un vector cu n componente.Consideram transformarea de coordonate x = Ux , ın care U ∈ Rn×n

este matricea ortogonala ce aduce matricea A la forma Schur reala Sdef=

A = UAUT . Punem ın evidenta partitiile conforme

na︷︸︸︷ nb︷︸︸︷U =

[Ua

Ub

]}na

}nb, S

def= A =[

Aa

0Aab

Ab

]}na

}nb

(5.2)

unde dimensiunile blocurilor satisfac relatia na + nb = n. Se constata usorca un vector x de forma

x =[

xa

0

]}na

}nb, (5.3)

unde xa este arbitrar, se transforma prin A ıntr−un vector de aceeasi forma,mai precis avem

Ax =[

Aaxa

0

]}na

}nb,

Acest fapt arata ca

(i) subspatiul X a ⊂ Rn al vectorilor de forma (5.3) este invariant ınraport cu A si restrictia lui A la acest subspatiu coincide cu blocul stanga- sus Aa al lui A.

In coordonatele initiale x = UT x obtinem

x =[

UTa UT

b

] [xa

0

]= UT

a xa,

deci

(j) coloanele matricei UTa formeaza o baza ortogonala a subspatiului X a.

Page 129: MN Metode Numerice Carte(Matematici)

128 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Proprietatiile (i) si (j) de mai sus sunt esentiale pentru orice procedurade calcul a subspatiilor invariante X a, definite prin conditii spectrale impuserestrictiei Aa corespunzatoare.

De exemplu, daca se cere ca evolutia sistemului S pe subspatiul Xa safie stabila atunci matricea Aa trebuie sa fie stabila, deci Reλ(Aa) < 0. Celmai mare subspatiu A-invariant Xa cu aceasta proprietate se noteaza cuX−(A) si corespunde situatiei ın care matricea Aa din (5.2) contine toatevalorile proprii ale lui A cu parte reala negativa.

Aceasta situatie se realizeaza usor daca presupunem ca matricea S din(5.2) reprezinta forma Schur reala ordonata a lui A, ın care ordonareavalorilor proprii pe diagonala lui S se face ın sensul crescator al partilorreale, deci valorile proprii λi ale lui A apar pe diagonala lui S ın ordinea

Reλ1 ≤ Reλ2 ≤ . . . ≤ Reλn. (5.4)

In acest caz submatricea Aa satisface conditia de stabilitate si are di-mensiunea maxima daca na se considera egal cu numarul n− al valorilorproprii stabile ale lui A.

Procedura de determinare a subspatiului A-invariant X−(A) asociatvalorilor proprii stabile ale lui A poate fi rezumata astfel.

Algoritmul 5.2 (Se determina o baza ortogonala a subspa-tiului A-invariant stabil X−(A)).

1. Se calculeaza forma Schur reala S = UAUT 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 ← PSPT si efectuandacumularea acestora conform schemei U ← PU .

3. Se determina numarul nadef= n− al valorilor proprii stabile

inspectand diagonala lui S. O baza ortogonala a subspatiu-lui X−(A) este formata din primele n− coloane ale matriceiUT .

Comentarii. Algoritmul 5.2 utilizeaza exclusiv transformari ortogonalesi, ca atare, este numeric stabil. In cazul discret se obtin concluzii similareutilizand forma Schur reala ordonata a lui A, ın care ordonarea valorilorproprii pe diagonala lui S se face ın sensul crescator al modulelor, deciastfel ıncat

|λ1| ≤ |λ2| ≤ . . . ≤ |λn|. (5.5)

¦

Page 130: MN Metode Numerice Carte(Matematici)

5.2. DESCOMPUNEREA SPECTRALA 129

Revenim acum la sistemul liniar S = (A,B, C) adus la forma (5.2) cutransformarea ortogonala x = Ux. Consideram transformarea suplimentaraz = V −1

0 x sau, echivalent, x = V0z, ın care matricea V0 ∈ Rn×n arestructura

na︷︸︸︷ nb︷︸︸︷V0 =

[I0

YI

]}na

}nb

(5.6)

Se constata imediat ca avem

AV0 = V0A0, unde A0def=

[Aa 00 Ab

], (5.7)

daca si numai daca matricea Y satisface ecuatia matriceala Sylvester

AaY − Y Ab = −Aab. (5.8)

Pe de alta parte, se stie ca ecuatia (5.8) are o solutie unica Y daca si numaidaca matricele Aa si Ab nu au valori proprii comune, pe scurt

λ(Aa) ∩ λ(Ab) = ∅. (5.9)

Deoarece conditia (5.9) este evident satisfacuta ın situatia creata apli-cand algoritmul 5.2, ın care Aa si Ab colecteaza toate valorile proprii stabilesi, respectiv, nestabile ale lui A, concludem ca prin schimbarea

xdef= V z = UT x = UT V0z,

sistemul S = (A,B, C) poate fi ıntotdeauna adus la forma{

z = A0z + B0uy = C0z

(5.10)

unde

A0def= V −1AV =

[Aa 00 Ab

], B0

def= V −1B =[

Ba

Bb

],

C0def= CV =

[Ca Cb

],

(5.11)

ın care matricea Aa colecteaza toate valorile proprii ale matricei A cuReλ(A) < 0, deci, este stabila, iar matricea Ab colecteaza toate valorileproprii ale matricei A cu Reλ(A) ≥ 0, deci este total nestabila, pe scurt

λ(Aa) ⊂ C−, λ(Ab) ⊂ C+, (5.12)

unde C+ este semiplanul drept ınchis al planului complex C.

Page 131: MN Metode Numerice Carte(Matematici)

130 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Definitia 5.3 Forma bloc-diagonala (5.10), (5.11) se numeste descom-punerea spectrala a sistemului S = (A,B, C) si corespunde reprezentariilui S prin conexiunea paralel a doua sisteme, Sa = (Aa, Ba, Ca) si Sb =(Ab, Bb, Cb).

In acord cu (5.12), Sa este stabil de ordin na = n−, unde n− estenumarul valorilor proprii stabile ale lui A iar Sb este total nestabil de ordinnb = n+, unde n+ este numarul valorilor proprii nestabile (cu parte realastrict pozitiva sau nula) ale lui A. In consecinta, Sa se numeste parteastabila iar Sb se numeste partea total nestabila a sistemului S.

In particular, daca matricea A este dihotomica, adica nu are valori pro-prii pe axa imaginara (cu Reλ = 0), atunci matricea Ab din (5.11) esteantistabila, adica λ(−Ab) ⊂ C−, iar Sb se numeste partea antistabila a sis-temului dihotomic S.

Conform celor de mai sus, matricea V din (5.11) este

V = UT V0 =[

UTa UT

b

] [I Y0 I

],

deci avemV

def=[

Va Vb

]=

[UT

a UTb + UT

a Y]. (5.13)

Punand

z =[

za

zb

]

obtinemx = V z = Vaza + Vbzb,

unde coloanele matricei Va = UTa constituie o baza ortogonala a subspatiului

stabil X−(A) = Xa, corespunzator vectorilor z cu zb = 0 (vezi (5.3)).In mod analog, coloanele matricei Vb constituie o baza (ın general ne-

ortogonala, deoarece Y 6= 0) a subspatiului total nestabil X+(A) = Xb,corespunzator vectorilor z cu za = 0. (Spre deosebire de (5.2), ın (5.11)avem Aab = 0, astfel ıncat acum si Xb este A-invariant cu restrictia Ab).

Procedura de determinare a descompunerii spectrale (5.10), (5.11) poatefi rezumata astfel.

Algoritmul 5.3 (Se construieste descompunerea spectralaa sistemului S = (A, B,C) si se determina o baza ortogonala asubspatiului A-invariant stabil X−(A)).

1. Se aplica algoritmul 5.2.

Page 132: MN Metode Numerice Carte(Matematici)

5.2. DESCOMPUNEREA SPECTRALA 131

2. Se face

B ← UB =[

Ba

Bb

], C ← CUT =

[Ca Cb

].

3. Se rezolva ecuatia matriceala Sylvester (5.8), tinand seamaca matricele Aa, Ab sunt deja ın forma Schur reala (vezi(5.2)).

4. Se face

Ba ← Ba − Y Bb, Cb ← CaY + Cb.

Comentarii. Spre deosebire de algoritmul 5.2, algoritmul 5.3 utilizeazatransformari de asemanare neortogonala (vezi forma (5.13) a lui V0), care ıngeneral ridica probleme de conditionare. In practica, numarul de conditiecond(V0) se poate evalua eficient utilizand estimatorul de conditie pen-tru matrice triunghiulare propus ın LINPACK [ III ]. In ceea ce privesteınsasi conditionarea problemei rezolvarii ecuatiei matriceale Sylvester (5.8),aceasta poate fi apreciata (destul de nesigur) evaluand apropierea dintrespectrele matricelor Aa si Ab, e.g. prin

δdef= min Reλ(Ab)−maxReλ(Aa).

(Relativ la aceasta chestiune, vezi cap. 1). In cazul discret se obtin concluziisimilare pe baza aceleiasi ecuatii (5.8). Daca este necesar, aceasta poate fiscrisa sub forma specifica

AaY A−1b − Y = −AabA

−1b , (5.14)

careia i se pot aplica rezultatele corespunzatoare din capitolul 1. ¦Optional, algoritmul 5.3 poate fi completat pentru a furniza baza Vb =

UTb + UT

a Y a subspatiului X+(A) sau/si matricea de transformare (neor-togonala) T ∈ Rn×n a tripletului S = (A,B,C) la forma (5.11), (5.12).Prin definitie avem

z = Tx, (5.15)

unde, conform notatiilor de mai sus

T = V −1 = V −10 U =

[I −Y0 I

] [Ua

Ub

]=

[Ua − Y Ub Ub

]. (5.16)

Prin urmare, matricea T poate fi calculata pe loc ın tabloul U furnizat dealgoritmul 5.2, efectuand actualizarea

Ua ← Ua − Y Ub.

Page 133: MN Metode Numerice Carte(Matematici)

132 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Alternativ, pentru a evita distrugerea bazei ortogonale Ua a subspatiuluiX−(A), se poate recurge la calculul matricei V = T−1 din (5.13), cores-punzatoare schimbarii de coordonate x = V z.

5.3 Controlabilitatea si observabilitateasistemelor liniare

Controlabilitatea unui sistem liniar S = (A,B, C) este o proprietate cedepinde numai de perechea (A, B). Pe scurt, S este controlabil daca oricetranzitie de stare dorita poate fi realizata prin alegerea adecvata a functieide intrare.

Pentru precizare, consideram sistemul liniar discret

x(t + 1) = Ax(t) + Bu(t)y(t) = Cx(t) (5.17)

ın care, ca de obicei, A ∈ Rn×n, B ∈ Rn×m si C ∈ Rl×n sunt matriceconstante.

Presupunand x(0) = 0, din (5.17) rezulta succesiv

x(1) = Bu(0),x(2) = ABu(0) + Bu(1),

si ın general

x(k) = Ak−1Bu(0) + . . . + ABu(k − 2) + Bu(k − 1). (5.18)

Introducand notatiile

Rk =[

B AB . . . Ak−1B], uk =

u(k − 1)u(k − 2)

...u(0)

, (5.19)

ın care vectorul uk contine k blocuri, fiecare cu m componente, iar Rk esteo matrice bloc de forma n×mk, relatiile (5.18) se scriu pe scurt

Rkuk = x(k). (5.20)

Considerand ca ın (5.20) pasul k ≥ 1 este fixat iar x(k) ∈ Rn este un vec-tor arbitrar care reprezinta starea dorita la pasul k, vom spune ca perechea

Page 134: MN Metode Numerice Carte(Matematici)

5.3. CONTROLABILITATEA SI OBSERVABILITATEA 133

discreta (A,B) este controlabila ın k pasi daca sistemul de ecuatii liniare(5.20) are o solutie uk, adica exista un sir de intrari u(0), u(1), . . . , u(k− 1)care realizeaza tranzitia de stare 0 → x(k). Dupa cum se stie, sistemul(5.20) este compatibil oricare ar fi membrul drept daca si numai daca ma-tricea Rk este epica, adica

rangRk = n. (5.21)

Mai mult, ın acest caz solutia normala u∗k a sistemului (5.20) este unicdeterminata si are expresia

u∗k = RTk (RkRT

k )−1x(k), (5.22)

deci avem‖u∗k‖2 = min

Rku=x(k)‖uk‖2, (5.23)

unde norma (euclidiana) a unui vector uk de forma (5.19) este evident

‖uk‖2 =k−1∑t=0

‖u(t)‖2. (5.24)

Interpretand expresia (5.24) ca ”efort” de comanda necesar pentru re-alizarea tranzitiei 0 → x(k), solutia normala (5.22) se numeste sugestivcomanda de norma sau efort minim.

In rezumat, perechea (A,B) este controlabila ın k pasi daca si numaidaca este satisfacuta conditia de rang (5.21), si ın acest caz comanda denorma minima are expresia (5.22).

In general, considerand mai sus un numar de pasi k arbitrar, obtinemnotiunea de controlabilitate. Prin urmare, perechea discreta (A,B) estecontrolabila daca exista k ≥ 1 astfel ıncat oricare ar fi x(k) ∈ Rn exista osolutie uk a sistemului (5.20) sau, echivalent, este ındeplinita conditia derang (5.21).

Mai mult, ın acest caz avem ıntotdeauna k ≤ n, deoarece, ın virtuteateoremei Cayley-Hamilton, eventualele blocuri Ak−1B cu k > n din (5.19)sunt ın mod necesar liniar dependente de precedentele, deci nu contribuiela satisfacerea conditiei de rang (5.21). Pe scurt, un sistem liniar discretcontrolabil este ıntotdeauna controlabil ın cel mult n pasi.

Notand pentru simplitate Rn = R, deci

R =[

B AB . . . An−1B], (5.25)

precum si un = u, relatiile (5.20) pentru k = n se scriu

Ru = x(n) (5.26)

Page 135: MN Metode Numerice Carte(Matematici)

134 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

iar conditia de rang (5.21), echivalenta cu controlabilitatea perechii (A,B),devine

rangR = n. (5.27)

In cazul sistemelor cu timp continuu, consideratii similare conduc ınultima instanta tot la conditia (5.27). De aceea, ın continuare vom adoptaurmatoarea definitie unificatoare, pur algebrica.

Definitia 5.4 Perechea (A, B) este controlabila daca si numai daca estesatisfacuta conditia de rang (5.27).

Matricele R si Rk definite prin relatiile (5.25) si (5.19) se numesc ma-trice de controlabilitate si respectiv matrice de controlabilitate ın k pasi aleperechii (A, B).

In cazul ın care perechea (A,B) este controlabila, cel mai mic ıntregk ≥ 1 pentru care conditia de rang (5.21) este satisfacuta se numeste indicede controlabilitate al perechii (A,B) si se noteaza cu ν.

Observam ca, ın cazul discret, ν reprezinta cel mai mic numar k depasi (deci timpul minim) ın care este posibila tranzitia de stare 0 → x(k),oricare ar fi starea dorita x(k) ∈ Rn. 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 dualacontrolabilitatii si, ın consecinta, depinde numai de perechea (C, A). Pescurt, S este observabil daca starea initiala este unic determinata cunos-cand functiile de intrare si iesire, obtinute e.g. prin masuratori efectuate laterminalele lui S.

Pentru precizare, consideram din nou sistemul liniar discret descris prinecuatiile de stare (5.17). Presupunand ca u(t) = 0, t ≥ 0 , din (5.17) rezultax(t) = Atx(0), astfel ıncat sirul de iesiri corespunzator starii initiale x(0)este

y(t) = CAtx(0), t = 0 : k − 1. (5.28)

Introducand notatiile

Qk =

CCA...

CAk−1

, yk =

y(0)y(1)

...y(k − 1)

, (5.29)

Page 136: MN Metode Numerice Carte(Matematici)

5.3. CONTROLABILITATEA SI OBSERVABILITATEA 135

ın care vectorul yk contine k blocuri, fiecare cu l componente, iar Qk esteo matrice bloc de forma kl × n, relatiile (5.28) se scriu pe scurt

Qkx(0) = yk. (5.30)

Considerand ca ın (5.30) pasul k ≥ 1 este fixat, vom spune ca perecheadiscreta (C, A) este observabila ın k pasi daca sistemul de ecuatii liniare(5.30) are cel mult o solutie x(0), adica starea initiala x(0) este unic deter-minata de sirul de iesiri y(0), y(1), . . . , y(k−1). Dupa cum se stie, sistemul(5.30) este unic determinat daca si numai daca matricea Qk este monica,adica

rang Qk = n. (5.31)

Mai mult, ın acest caz pseudosolutia x∗(0) ın sensul CMMP a sistemului(5.30) este unic determinata si are expresia

x∗(0) = (QTk Qk)−1QT

k yk, (5.32)

deci avem‖yk −Qkx∗(0)‖2 = min

x(0)∈Rn‖yk −Qkx(0)‖2, (5.33)

unde evident

‖yk −Qkx(0)‖2 =k−1∑t=0

‖yk − Cx(k)‖2. (5.34)

Interpretand reziduurile r(k) = y(k)−Cx(k) ca erori sau ”zgomote” demasura care afecteaza iesirile masurate y(k), pseudosolutia x∗(0) se numestesugestiv estimare optimala (ın sensul CMMP) a starii initiale x(0).

In rezumat, perechea (C, A) este observabila ın k pasi daca si numai dacaeste ındeplinita conditia de rang (5.31) si ın acest caz estimarea optimalaa starii initiale x(0) are expresia (5.32).

In general, considerand mai sus un numar de pasi k arbitrar, obtinemnotiunea de observabilitate. Prin urmare, , perechea discreta (C, A) esteobservabila daca exista k ≥ 1 astfel ıncat este ındeplinita conditia de rang(5.31). Mai mult, ın acest caz, la fel ca ın cazul controlabilitatii, putemconsidera k ≤ n.

Notand pentru simplitate Qn = Q, deci

Q =

CCA...

CAn−1

, (5.35)

Page 137: MN Metode Numerice Carte(Matematici)

136 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

precum si yn = y, relatiile (5.30) pentru k = n se scriu

Qx(0) = y (5.36)

iar conditia de rang (5.31), echivalenta cu observabilitatea perechii (C, A),devine

rang Q = n. (5.37)

In cazul sistemelor cu timp continuu, consideratii similare conduc ınultima instanta tot la conditia (5.37). In consecinta, mai departe vomadopta urmatoarea definitie unificatoare.

Definitia 5.5 Perechea (C, A) este observabila daca si numai daca estesatisfacuta conditia de rang (5.37).

Matriceile Q si Qk definite prin relatiile (5.35) si (5.29) se numescmatrice de observabilitate si respectiv matrice de observabilitate ın k pasiale perechii (C, A).

In cazul ın care perechea (C, A) este observabila, cel mai mic ıntregk ≥ 1 pentru care conditia de rang (5.31) este satisfacuta se numete indicede observabilitate al perechii (C, A).

Examinand ın paralel relatiile (5.18)-(5.27) si (5.28)-(5.37), concludemca notiunile de controlabilitate si observabilitate sunt duale, ın sensul ca elese corespund prin corespondenta

A ← AT , C ← BT ,

ın particular avemQ(C,A) = RT (AT , CT ).

In consecinta, mai departe vom prezenta procedurile de calcul asociatecontrolabilitatii, ramanand ca dualele lor sa fie formulate ”prin dualitate”si discutate ın detaliu de catre cititorul interesat.

5.4 Teste elementare de controlabilitate

In general procedurile de testare a controlabilitatii unei perechii date (A,B)sunt de doua tipuri.

Primul tip de proceduri, numite ad-hoc elementare, testeaza controlabi-litatea perechii (A,B) utilizand direct definitia 5.3 sau proprietati echiva-lente cu aceasta. Aceste proceduri sunt ın general neeficiente si pot fiaplicate cu succes numai pentru perechi de dimensiuni mici.

Page 138: MN Metode Numerice Carte(Matematici)

5.4. TESTE ELEMENTARE DE CONTROLABILITATE 137

Al doilea tip de proceduri utilizeaza transformari de asemanare pen-tru a aduce perechea initiala (A,B) la o forma ”simpla”, pe care pro-prietatea de controlabilitate sa poata fi testata direct (”prin inspectie”).Aceste proceduri, numite ın continuare de transformare, sunt cele mai uti-lizate ın aplicatii, cu atat mai mult cu cat ele faciliteaza si rezolvarea altorprobleme de calcul conexe vizand, de exemplu, descompunrea controlabila,testarea stabilizabilitatii, alocarea polilor etc. Cea mai eficienta procedurade transformare, care consta ın aducerea perechii (A,B) la forma (superior)Hessenberg prin transformari de asemanare ortogonale, va fi prezentata ınparagraful urmator.

Observatia 5.2 Proprietatea de controlabilitate este o proprietate bi-nara, exprimata prin conditia de rang (5.27). De aceea, pe de o parte nupot exista proceduri numerice absolut sigure de testare a controlabilitatiiiar, pe de alta parte, pentru reducerea riscurilor implicate de deciziile derang, se recomanda utilizarea transformarilor ortogonale si, ın special, adescompunerii valorilor singulare (DVS). ¦

Din clasa procedurilor elementare face parte ın primul rand procedura”directa”, bazata pe constructia matricei de controlabilitate R si testareaconditiei de rang (5.27).

Constructia matricei R se face recurent, tinand seama ca prin definitieavem R = Rn, unde matricele sirului Rk, k ≥ 1 au expresia (5.19) iar R1 =B. Pentru a obtine relatia de recurenta care leaga doi termeni succesivi Rk

si Rk+1, observam ca avem

Rk+1def=

[B

... AB A2B · · · AkB

]=

[B

... ARk

], (5.38)

respectiv

Rk+1def=

[B AB · · · Ak−1B

... AkB

]=

[Rk

... Bk+1

],

(5.39)unde submatricea Bk+1 = AkB, formata din ultimele m coloane ale luiRk+1, rezulta ın functie de submatricea corespunzatoare Bk a lui Rk prinrelatia evidenta

Bk+1 = ABk, k ≥ 1 (5.40)

iar B1 = B.Se constata imediat ca procedura de constructie a matricei R bazata

pe relatia (5.38) este relativ neeconomica, ıntrucat necesita efectuarea pro-duselor ARk, unde matricea Rk are mk coloane, k ≥ 1, ın timp ce procedurabazata pe relatia (5.39) necesita efectuarea produselor ABk,unde la fiecare

Page 139: MN Metode Numerice Carte(Matematici)

138 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

pas k ≥ 1 matricea Bk are numai m coloane. De asemenea, este clar ca lafiecare pas matricea Bk este disponibila ın Rk, mai precis avem

Bk = Rk( : , (k − 1)m + 1 : km) (5.41)

astfel ıncat nu este necesara nici alocarea unui tablou suplimentar de lucrupentru memorarea matrice curente Bk, nici calculul pe loc ın B, conformschemei B ← AB, al termenilor sirului Bk, ceea ce ar implica distrugereamatricei initiale B.

In rezumat, procedura de testare a controlabilitatii perechii (A,B) ba-zata pe utilizarea relatiilor (5.39) – (5.41) poate fi formulata astfel.

Algoritmul 5.4 (Se testeaza controlabilitatea perechii(A,B) construind matricea de controlabilitate R).

1. R( : , 1 : m) ← B1 = B

2. Pentru k = 2 : n

1. R( : , (k − 1)m + 1 : km) ← Bk = ABk−1

3. Se calculeaza r = rangR utilizand algoritmul DVS.

4. Daca r = n atunci

1. Tipareste ”Perechea (A,B) este controlabila.”

In general, ın ciuda simplitatii sale, algoritmul 5.4 nu este recomandabilıntrucat matricea R este de mari dimensiuni iar calculul coloanelor sale lapasul 2.1 implica riscuri la efectuarea testului de rang de la pasul 3.

De exemplu, daca m = 1, deci matricea B = b se reduce la o sin-gura coloana, atunci, conform relatiei (5.40), coloanele b, Ab, . . . , Akb, . . .ale matricei (patrate) R coincid cu vectorii obtinuti aplicand metoda put-erii vectorului initial b1 = b. Prin urmare, daca n À 1 iar matricea A areo valoare proprie dominanta, deci

|λ1| > |λ2| ≥ . . . ≥ |λn|,

atunci ultimele coloane ale lui R sunt practic aliniate cu vectorul propriu x1

al lui A asociat cu λ1. Aceasta ınseamna ca, chiar daca perechea (A, b) estecontrolabila, matricea de controlabilitate R este numeric aproape singulara,adica

cond(R) =σ1

σnÀ 1,

unde cond(R) este numarul de conditionare la inversare al matricei R (ınraport cu norma spectrala ) iar σi, i = 1 : n sunt valorile singulare ale luiR, ordonate astfel ıncat σ1 ≥ σ2 ≥ . . . ≥ σn. Fenomenul poarta numele de

Page 140: MN Metode Numerice Carte(Matematici)

5.4. TESTE ELEMENTARE DE CONTROLABILITATE 139

necontrolabilitate numerica a perechii (A, b) si ın general nu poate fi 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 efectuareatestului 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 presupunem > 1.)

1. R( : , 1 : m) ← B1 = 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) ← Bk = ABk−1

Subliniem ınsa ca schema de mai sus este ın orice caz neeficienta dinpunctul de vedere al efortului de calcul datorita apelarii repetate a algorit-mului DVS ıntr-o forma bruta, care nu exploateaza rezultatele calculeloranterioare. Cel putin aceeasi siguranta a testului este asigurata de algo-ritmul 5.7 prezentat mai departe, cu un efort de calcul considerabil mairedus.

In afara de procedura ”directa”, bazata pe testarea conditiei de rang(5.27), din grupul metodelor elementare fac parte o serie de proceduriderivate pe baza unor criterii echivalente cu aceasta. Cele mai importantesunt rezumate mai jos pentru a simplifica referirile ulterioare.

Propozitia 5.1 Controlabilitatea perechii (A, B) este echivalenta cu ori-care dintre conditiile

1. Nu exista nici un vector h 6= 0 astfel ıncat AT h = λh, λ ∈ C siBT h = 0.

2. rang[

A− λI B]

= n, ∀λ ∈ λ(A).

3. Oricare ar fi vectorul g ∈ Rm cu proprietatea Bg 6= 0, exista omatrice F ∈ Rm×n astfel ıncat perechea cu o singura intrare (A −BF, Bg) este controlabila.

Page 141: MN Metode Numerice Carte(Matematici)

140 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

In general, testele de controlabilitate derivate prin aplicarea directa acriteriilor de mai sus nu sunt recomandabile din punct de vedere numeric.Criteriul 1 necesita calculul valorilor si vectorilor proprii xi ∈ Cn ai ma-tricei A (ceea ce implica aplicarea algoritmului QR cu acumularea trans-formarilor de asemanare) precum si testarea conditiilor BT xi 6= 0, i = 1 : n.Criteriul 2 necesita numai calculul valorilor proprii, ın schimb presupuneaplicarea repetata a algoritmului DVS pentru testarea conditiilor de rang.In sfarsit, criteriul 3 este interesant deoarece reduce cazul general m > 1la cazul aparent mai simplu m = 1. Deoarece controlabilitatea este o pro-prietate generica, matricea F precum si vectorul g se pot alege aleator.Aceasta idee poate fi deseori exploatata cu succes ın legatura cu algorit-mul 5.6, prezentat mai departe, dar ın legatura cu aceasta trebuie sa facemurmatoare observatie de principiu.

Observatia 5.3 De obicei ın aplicatii testele de controlabilitate nu seaplica per se, ci fac parte din anumite proceduri de sinteza mai generale,ın care constituie conditii de calcul sau/si de validare a rezultatelor. (Unexemplu ın acest sens ıl constituie procedurile de alocare a polilor, prezen-tate ın capitolul 6). De aceea este important ca secventele de calcul sa seınlantuie ın mod natural, transformarile datelor necesare la un moment datfiind utilizate ca atare ın fazele ulterioare ale procedurii considerate. ¦

Din perspectiva observatiei 5.3, criteriul 3 devine mai putin semnificativ,ıntrucat presupune distrugerea perechii date (A,B) si ınlocuirea ei cu opereche (A−BF,Bg) transformata aleator precum si renuntarea nemotivatala libertatile suplimentare de sinteza existente ın cazul m > 1 al perechilorcu mai multe intrari fata de cazul m = 1.

In concluzie, testele ”elementare” de controlabilitate sunt ın generalnesatisfacatoare din punctul de vedere al eficientei si sigurantei numerice.Aplicarea lor practica este limitata la sisteme de mici dimensiuni, pentrucare, eventual, pot constitui mijloace de calcul ”cu hartia si creionul”.

Teste elementare de observabilitate

In general, daca o procedura proc calculeaza un rezultat R = proc(A,B)privind controlabilitatea perechii (A,B) atunci rezultatul dual Q, privindobservabilitatea perechii (C,A), se obtine cu secventa

1. Rd = proc(AT , CT )2. Q = RT

d

De exemplu, daca proc(A,B) este algoritmul 5.4, care produce matriceade controlabilitate R a perechii (A,B), atunci secventa de mai sus produce

Page 142: MN Metode Numerice Carte(Matematici)

5.5. FORMA HESSENBERG CONTROLABILA 141

matricea de observabilitate Q a perechii (C,A).

5.5 Forma Hessenberg controlabila

Consideram sistemul liniar S = (A,B, C) si fie S = (A, B, C) un sistemasemenea cu S, avand matricele

A = TAT−1, B = TB, C = CT−1, (5.42)

unde T ∈ Rn×n este o matrice nesingulara arbitrara. Avem

AB = TAB, A2B = A(AB) = TA2B, . . .

astfel ıncat ıntre matricele de controlabilitate si observabilitate atasate sis-temelor S si S exista relatiile

R = TR, Q = QT−1. (5.43)

Deoarece multiplicarea cu o matrice nesingulara nu modifica rangul, dinrelatiile (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 observabilesau neobservabile. Pe scurt, proprietatile de controlabilitate si observabi-litate, precum si rangurile matricelor corespunzatoare de controlabilitatesi observabilitate, sunt invarianti ın raport cu transformarile de asemanare(5.42).

Daca ın (5.42) presupunem ca matricea T = U este ortogonala, decisistemele S si S sunt ortogonal asemenea

A = UAUT , B = UB, C = CUT , (5.44)

atunci relatiile (5.43) devin

R = UR, Q = QUT . (5.45)

Prin urmare, nu numai proprietatile (binare!) de controlabilitate si obser-vabilitate ci si valorile singulare σi(R) si σi(Q), i ∈ 1 : n ale matricelor decontrolabilitate si observabilitate sunt invarianti ai sistemului (A,B, C) ınraport cu transformarile de asemanare ortogonala (5.44).

Observatia 5.4 Invariantii ortogonali σi(R) si σi(Q), i ∈ 1 : n au odeosebita importanta ın analiza sistemelor liniare, ıntrucat reprezinta o

Page 143: MN Metode Numerice Carte(Matematici)

142 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

masura cantitativa a ”gradelor” de controlabilitate si observabilitate ale sis-temului S = (A,B,C). In special, cea mai mica valoare singulara σn(R) ≥ 0a lui R reprezinta distanta (masurata ın norma spectrala) dintre perecheadata (A,B) si multimea perechilor necontrolabile de aceeasi forma. ¦

In cele ce urmeaza vom descrie procedurile de aducere a perechii (A,B)la o forma simpla utilizand transformarile de asemanare ortogonala (5.44),cu scopul identificarii invariantilor (ortogonali ai) acestei perechi si, ın par-ticular, al testarii controlabilitatii acesteia.

In consecinta, vom considera o pereche (A,B) cu m intrari, nu neaparatcontrolabila, si pentru claritate vom discuta succesiv cazurile m = 1 sim > 1. Peste tot vom presupune B 6= 0 si vom nota

rdef= rangR, r

def= n− r, (5.46)

unde evident r satisface inegalitatea 1 ≤ r ≤ n.

Cazul m = 1

In cazul unei perechi (A, b) de ordin n cu o singura intrare, forma ”simpla”,rezultata prin aplicarea transformarii (5.44), se numeste forma superiorHessenberg si este definita prin

r︷︸︸︷ r︷︸︸︷A = UAUT =

[AR ARR

0 AR

]}r}r , b = Ub =

[bR

0

]}r}r

(5.47)

ın care perechea (AR, bR) de ordin r se afla ın forma superior Hessenbergireductibila

AR =

x x . . . x xh2 x . . . x x

. . . . . ....

.... . . x

...hr x

, bR =

h1

0...0

, (5.48)

undehi 6= 0, i = 1 : r (5.49)

iar x denota elemente a caror valoare numerica nu are importanta ın con-text.

Page 144: MN Metode Numerice Carte(Matematici)

5.5. FORMA HESSENBERG CONTROLABILA 143

Daca perechea initiala (A, b) este controlabila atunci ın (5.47) avem r =n, astfel ıncat blocurile AR si ARR dispar iar perechea (A, b) = (AR, bR)are structura ireductibila (5.48) cu r = n, adica

A = UAUT =

x x . . . x xh2 x . . . x x

. . . . . ....

.... . . x

...hn x

, b = Ub =

h1

0...0

, (5.50)

undehi 6= 0, i = 1 : n. (5.51)

De aceea, structura ireductibila din (5.50) se numeste forma superiorHessenberg controlabila a perechii (A, b).

Pe de alta parte, daca perechea (A, b) are forma (5.50), nu neaparatireductibila, iar k ≥ 2 este primul ıntreg pentru care hk = 0, atunci aceastapereche admite evident o descompunere (deflatie) de tip (5.47), ın carer = k − 1. In acest sens, mai departe vom spune ca structura (5.50),ın general reductibila, constituie forma superior Hessenberg (completa) aperechii (A, b).

Afirmatia urmatoare relativa la (5.50) se demonstreaza usor prin calculdirect.

Propozitia 5.2 Matricea de controlabilitate R a unei perechi (A, b) deforma (5.50) este superior triunghiulara, mai precis avem

Rdef=

[b Ab . . . An−1b

]=

r11 x . . . xr22 . . . x

. . ....

rnn

, (5.52)

ın care elementele diagonale ale lui R sunt

rkk =k∏

i=1

hi, k = 1 : n. (5.53)

Prin urmare, perechea initiala (A, b) este controlabila, deci matriceaR = UR este nesingulara, daca si numai daca sunt satisfacute conditiile(5.51).

Page 145: MN Metode Numerice Carte(Matematici)

144 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Pe o cale ınca mai simpla, aceeasi concluzie rezulta utilizand criteriul decontrolabilitate furnizat de punctul 2 al propozitiei 5.1. Intr-adevar, avem

[b A− λI

]=

h1 x . . . x xh2 . . . x x

. . ....

...hn x

, (5.54)

deci (5.51) implica evident rang[

b A− λI]

= n, ∀λ ∈ C. Demonstratiaimplicatiei inverse este propusa cititorului ca exercitiu (de atentie!).

La fel de simplu se demonstreaza afirmatia urmatoare relativa la (5.47).

Propozitia 5.3 Matricea de controlabilitate R a unei perechi (A, b) deforma (5.47) are structura superior trapezoidala

R =[

RR x0 0

], (5.55)

ın care RR ∈ Rr×r este matricea de controlabilitate a perechii (AR, bR).

Prin urmare, ordinul r al perechii (AR, bR) coincide cu rangul matriceide controlabilitate R = UR al perechii (A, b) daca si numai daca sunt satis-facute conditiile (5.49), deci perechea (AR, bR) din (5.47) este controlabila.

In rezumat, sunt posibile doua cazuri:

1. Perechea (A, b) este controlabila, deci rdef= rangR = n.

In acest caz perechea (A, b) este ortogonal asemenea cu o pereche (A, b) ınforma superior Hessenberg controlabila (5.50), (5.51).

2. Perechea (A, b) nu este controlabila, deci rdef= rangR < n.

In acest caz perechea (A, b) este ortogonal asemenea cu o pereche (A, b)ın forma bloc superior triunghiulara (5.47), ın care perechea (AR, bR) estecontrolabila de ordin r, deci are structura (5.48), (5.49). (In particular,(5.47) poate coincide cu forma superior Hessenberg completa (5.50), ıncare r este cel mai mic ıntreg ≥ 1 astfel ıncat hr+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 schemade calcul este urmatoarea.

1. Se determina un reflector U1 ∈ Rn×n astfel ıncat ultimele n− 1 com-ponente ale vectorului transformat b ← U1b sa fie nule.

2. Se aplica U1 lui A, deci se calculeaza A ← U1AU1.

Page 146: MN Metode Numerice Carte(Matematici)

5.5. FORMA HESSENBERG CONTROLABILA 145

3. Se aduce matricea A la forma superior Hessenberg A ← A = UAUT ,utilizand algoritmul HQ, [ VI,IX ].

Pasul 1 este elementar. Reflectorul U1 este definit prin

U1 = In − u1uT1

β1

ın care componentele ui1, i = 1 : n ale vectorului u1 ∈ Rn precum siscalarul β1 se determina cu formulele cunoscute

Procedura U = H0(b)

1. σ = sgn(b1)(∑n

i=1 b2i )

1/2

2. u11 = b1 + σ; ui1 = bi, i = 2 : n

3. β1 = σu11

4. b1 ← h1 = −σ; bi = 0, i = 2 : n

iar ultima instructiune efectueaza transformarea b ← U1b.Pasul 2 se desfasoara ın doua faze. In prima faza se calculeaza A ← U1A,

aplicand U1 matricei A partitionate pe coloane. Obtinem

Procedura A = H1(U,A)

1. Pentru j = 1 : n

1. τ = (∑n

i=1 ui1aij)/β1

2. aij ← aij − τui1, i = 1 : n.

In a doua faza se calculeaza A ← AU1 aplicand U1 matricei A partitio-nate pe linii, unde U1 e simetric deci AU1 = (U1A

T )T . Obtinem

Procedura A = H2(A,U)

1. Pentru i = 1 : n

1. τ = (∑n

i=1 ui1aji)/β1

2. aij ← aij − τuj1, j = 1 : n.

Pasul 3 consta din n − 2 etape. La fiecare etapa se efectueaza calculesimilare cu cele descrise la pasii 1 si 2 de mai sus, operand efectiv asupraunor perechi ”restante” (A, b) de ordin din ce ın ce mai mic. Pentru asimplifica referirile ulterioare si, ın special, redactarea algoritmului general,corespunzator cazului m > 1, mai jos vom trece ın revista principalelemomente ale calculului.

Page 147: MN Metode Numerice Carte(Matematici)

146 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Presupunem ca ınainte de etapa k, k = 2 : n−1, perechea (A, b) (partialtransformata ın etapele anterioare) are structura

A =

x . . . xh2 . . . x

. . ....

hk−1

xx...x

x . . . xx . . . x...

...x . . . x

0

ak,k−1

...an,k−1

akk . . . akn

......

ank . . . ann

=[

Ak Xk

0 bk Ak

],

(5.56)

b =

h1

0...0

0...0

=

bk

0

ın care perechea (Ak, bk) este deja ın forma superior Hessenberg completade ordin k − 1.

La etapa k se efectueaza urmatoarele calcule:

3.1. Se determina un reflector Uk ∈ Rn×n astfel ıncat ultimele n − kelemente din coloana k − 1 a matricei A transformate sa fie nule.

3.2. Se aplica Uk lui A, deci se calculeaza A ← UkAUk.

La pasul 3.1 reflectorul Uk este definit prin

Uk = In − ukuTk

βk,

ın care vectorul uk ∈ Rn are primele k − 1 componente nule. In virtuteaacestui fapt, Uk are structura bloc

Uk =[

Ik−1 00 Uk

], (5.57)

iar datorita acesteia premultiplicarea cu Uk nu modifica primele k − 1 liniiiar postmultiplicarea cu Uk nu modifica primele k−1 coloane ale tablourilor

Page 148: MN Metode Numerice Carte(Matematici)

5.5. FORMA HESSENBERG CONTROLABILA 147

transformate. Prin urmare, la pasul 3.2 obtinem

UkA =[

Ak Xk

0 Uk bk UkAk

]def=

[Ak

0 Uk bkYk

](5.58)

precum si

(UkA)Uk =

[Ak

0 Uk bkYkUk

]def=

[Ak+1 Xk+1

0 bk+1 Ak+1

](5.59)

Ukb = b =

bk+1

0

unde, datorita alegerii lui Uk de la pasul 3.1, perechea (Ak+1, bk+1) rezultaın forma superior Hessenberg completa de ordin k.

Astfel procedura a progresat, adica dimensiunea partii transformate(marcate cu tilda) a crescut, iar cea a partii restante (barate) a scazutcu o unitate.

Dupa a (n− 1)-a etapa vom obtine (A, b) ın forma dorita.Pentru organizarea procedurala a calculelor, este esential sa observam

ca, ın acord cu (5.57), reflectorul Uk este complet determinat de bloculsau Uk, care este el ınsusi un reflector de ordin n − k + 1. Tinand seamade aceasta observatie, precum si de modul de actiune al lui Uk ın (5.58),rezulta ca pasul 3.1 se reduce la aplicarea procedurii H0 vectorului

(H0) bk = A(k : n, k − 1)

(In acest fel se determina componentele nenule uik, i = k : n ale vectoruluiuk, scalarul βk precum si vectorul transformat bk ← Uk bk din (5.59)).

Similar, pasul 3.2 se reduce la efectuarea transformarilor Ak ← UkAk siYk ← YkUk din (5.58) si (5.59), ceea ce necesita aplicarea procedurilor H1si H2 submatricelor lui A definite prin

(H1) Ak = A(k : n, k : n)

si respectiv

(H2) Yk = A(1 : n, k : n).

In sfarsit, ultima relatie (5.59) arata ca reflectorul Uk lasa b invariant,deci fiecare etapa k, k = 2 : n−1 conserva automat asemanarea ortogonalaa perechilor transformate (A, b).

Page 149: MN Metode Numerice Carte(Matematici)

148 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

In rezumat, procedura de aducere a perechii (A, b) cu o singura intrarela forma superior Hessenberg completa poate fi formulata astfel.

1. U1 = H0(b).

2. A = H1(U1, A); A = H2(A,U1).

3. Pentru k = 2 : n− 1

1. Uk = H0(A(k : n, k − 1)).

2. A(k : n, k : n) = H1(Uk, A(k : n, k : n));A( : , k : n) = H2(A(:, k : n), Uk)

Constructia matricei ortogonale U = Un−1 · · ·U2U1 din (5.50), i.e. acu-mularea transformarilor, se face dupa schema

1. U = U1

2. Pentru k = 2 : n− 1

1. U(k : n, 1 : n) = H1(Uk, U(k : n, 1 : n)).

In practica, se prefera deseori obtinerea formei superior Hessenberg(5.47),(5.48),(5.49), ceea ce evident presupune testarea conditiei ‖bk‖ 6= 0ınainte de parcurgerea etapei k, k = 2 : n − 1. Se obtine urmatoareaprocedura 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 singuraintrare si acumuleaza transformarile. Se presupune b 6= 0).

1. k = 1

2. U1 = H0(b)

3. A = H1(U1, A), A = H2(A, U1)

4. U = U1

5. CONTINUA=’da’

6. Cat timp CONTINUA=’da’

1. r = k

2. Daca k = natunci

1. CONTINUA =’nu’,2. tipareste ”Perechea (A, b) este controlabila”

Page 150: MN Metode Numerice Carte(Matematici)

5.5. FORMA HESSENBERG CONTROLABILA 149

altfel

1. g = A(k + 1 : n, k)2. Daca ‖g‖ = 0

atunci

1. CONTINUA =’nu’altfel

1. k ← k + 1 % Etapa k, k ≥ 22. Uk = H0(g)3. A(k : n, k : n) = H1(Uk, A(k : n, k : n)),

A(:, k : n) = H2(A(:, k : n), Uk)4. U(k : n, 1 : n) = H1(Uk, U(k : n, 1 : n))

Comentarii. CONTINUA este o variabila logica ce determina avansareacontorului de etapa k. In final, variabila r furnizeaza rangul matricei decontrolabilitate R a perechii date (A, b). In cazul r = n, deci daca perechea(A, b) este controlabila (vezi pasul 6.2) numarul de operatii necesar este deordinul 5n3

3 . ¦

Cazul m > 1

In cazul unei perechi (A,B) de ordin n cu m intrari, m ≥ 1, procedura detransformare are la baza urmatorul rezultat general.

Propozitia 5.4 (Lema de deflatie controlabila). Oricare ar fi perechea(A,B) cu rangB = r1 > 0, exista o matrice ortogonala U1 ∈ Rn×n astfelıncat

A ← A = U1AUT1 =

[A1 XG F

], B ← B = U1B =

[H1

0

](5.60)

unde matricea H1 ∈ Rr1×m este epica, i.e. rangH1 = r1. Mai mult,perechea (A,B) este controlabila daca si numai daca perechea redusa (F,G),de ordin n− r1 < n, este controlabila.

Demonstratie. Matricea U1 se determina aplicand lui B procedura dedescompunere a valorilor singulare (DVS) sau procedura de triangularizareortogonala cu pivotarea coloanelor. In primul caz avem

U1BV =[

Σ1 00 0

], (5.61)

Page 151: MN Metode Numerice Carte(Matematici)

150 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

unde U1 si V ∈ Rm×m sunt ortogonale iar Σ1 este diagonala de ordin r1 > 0cu elementele diagonale pozitive. Partitionand V = [V1 V2], unde V1 are r1

coloane, obtinem

B = U1B =[

Σ1 00 0

] [V T

1

V T2

]=

[Σ1V

T1

0

],

unde H1 = Σ1VT1 este evident epica de rang r1. In al doilea caz obtinem

U1BP =[

R1 R2

0 0

], (5.62)

unde U1 este ortogonala iar P ∈ Rm×m este o matrice de permutare acoloanelor lui B, aleasa pe parcursul procedurii de triangularizare ortogo-nala cu reflectori astfel ıncat matricea superior triunghiulara R1 de ordinr1 sa rezulte nesingulara. In acest caz matricea B = U1B rezulta din nouın forma (5.60) cu H1 = [ R1 R2 ]PT 1.

Dupa determinarea lui U1 printr-una din procedurile (5.61) sau (5.62)se aplica U1 lui A, i.e. se calculeaza A = U1AUT

1 , si ın acord cu (5.60) seevidentiaza perechea redusa (F, G) de ordin n− r1 cu r1 intrari.

A doua afirmatie din lema se demonstreaza ca ın cazul m = 1, utilizandpunctul 2 al propozitiei 5.1. ¦

In ipoteza G 6= 0, perechii (F, G) cu rang G = r2 > 0 i se poate aplicadin nou o transformare de tip (5.60). Se obtine

F ← F = U2FUT2 =

[A2 X

Gnou Fnou

], G ← G = U2G =

[H2

0

]

sau echivalent

A ← A = U2AUT2 =

A1 X X

H2

0A2 X

Gnou Fnou

,

B ← B = U2B =

H1

00

,

(5.63)

1 In cazul m = 1, considerat anterior, avem r1 = 1, U1 este reflectorul care anuleazaultimele n − 1 elemente ale matricei B = b ∈ Rn iar P = 1. Aceasta constatareevidentiaza clar complicatiile de calcul ce apar ın cazul m > 1 fata de cazul simplum = 1.

Page 152: MN Metode Numerice Carte(Matematici)

5.5. FORMA HESSENBERG CONTROLABILA 151

unde matricele U2 precum si

U2 =[

Ir1 00 U2

](5.64)

sunt ortogonale iar matricea H2 este epica de rang r2.Forma finala a perechii (A,B), obtinuta prin aplicarea repetata a proce-

durii de deflatie descrisa ın propozitia 5.4, se numeste forma bloc-superiorHessenberg si este definita prin

A ← A = UAUT =[

AR ARR

0 AR

], B ← B = UB =

[BR

0

], (5.65)

ın care perechea (AR, BR), de ordin r, se gaseste ın forma bloc-superiorHessenberg controlabila

AR =

A1 X · · · X XH2 A2 · · · X X

. . . . . ....

.... . . . . .

...Hk Ak

, BR =

H1

0......0

, (5.66)

unde toate blocurile Hi ∈ Rri×ri−1 sunt epice, i.e.

rangHi = ri > 0, i = 1 : k, r0def= m. (5.67)

Evident avem

r =k∑

i=1

ri ≤ n (5.68)

si ın virtutea conditiilor (5.67) perechea (AR, BR) din (5.65) este contro-labila. Mai mult, perechea initiala (A, B) este controlabila daca si numaidaca r = n, i.e. (A, B) = (AR, BR), si ın acest caz numarul k de blocuridin (5.66) coincide cu indicele de controlabilitate ν al lui (A,B).

Matricea ortogonala U ∈ Rn×n din (5.65) rezulta prin acumulareatransformarilor partiale, i.e.

U = Uk · · ·U2U1, (5.69)

ın care U1 se determina ca ın demonstratia lemei 5.4, U2 are forma (5.64)etc. Subliniem ca ın virtutea structurii lui U2, premultiplicarea cu U2 numodifica primele r1 linii, iar postmultiplicarea cu UT

2 nu modifica primele

Page 153: MN Metode Numerice Carte(Matematici)

152 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

r1 coloane ale matricei asupra careia actioneaza transformarea corespunza-toare. De asemenea, proprietati asemanatoare au toate matricele Ui, i =2 : k din (5.69).

In rezumat, aducerea pe loc a perechii initiale (A,B) la forma bloc-superior Hessenberg (5.65), (5.66) se face printr-o succesiune de transfor-mari ortogonale de asemanare

A ← UiAUTi , B ← UiB, i = 1 : k. (5.70)

La etapa i = 1 se opereaza asupra perechii initiale (A, B) ca ın de-monstratia propozitiei 5.4, iar la etapele i ≥ 2 se opereaza analog asupraperechii reduse corespunzatoare (F, G), continute ın tabloul A. In particu-lar, transformarile Ui, i ≥ 2 nu modifica forma lui B obtinuta dupa primaetapa, deci pentru i ≥ 2 relatiile (5.70) se reduc la

A ← UiA, A ← AUTi . (5.71)

Pentru a descrie precis algoritmul astfel obtinut, notam cu

[ r1, U1,H1 ] = red(B) (5.72)

procedura de reducere a lui B decrisa ın demonstratia propozitiei 5.4, vezirelatiile (5.60) si (5.61) sau (5.62). (Amintim ca la etapele i ≥ 2 procedurared se aplica unui bloc G, localizat ın tabloul A). De asemenea, notamtransformarile (5.71) respectiv prin

A = mul1(Ui, A), A = mul2(A,Ui),

convenind sa indicam explicit de fiecare data elementele lui A care suntefectiv modificate.

Acumularea transformarilor din (5.69) se face conform schemei

U ← UiU, i = 2 : k (5.73)

cu initializarea U = U1.

Algoritmul 5.7 (Data perechea (A,B) de ordin n cu mintrari si B 6= 0 algoritmul construieste forma bloc-superiorHessenberg (5.65), (5.66), (5.67) si acumuleaza transformarile.Perechea rezultata suprascrie pe cea initiala).

1. k = 1

2. [r1, U1, H1] = red(B)

Page 154: MN Metode Numerice Carte(Matematici)

5.5. FORMA HESSENBERG CONTROLABILA 153

3. A = mul1(U1, A), A = mul2(A,U1)4. U = U1

5. rv = 0, r = r1

6. CONTINUA = ’da’7. Cat timp CONTINUA = ’da’

1. ν = k

2. Daca r = natunci

1. CONTINUA = ’nu’2. Tipareste ”Perechea (A,B) este controlabila”altfel

1. G = A(r + 1 : n, rv + 1 : r)2. Daca ‖G‖ = 0

atunci

1. CONTINUA = ’nu’altfel

1. k ← k + 1 % (etapa k, k ≥ 2)2. [rk, Uk,Hk] = red(G)3. A(r + 1 : n, r + 1 : n) =

mul1(Uk, A(r + 1 : n, r + 1 : n),A(1 : n, r+1 : n) = mul2(A(1 : n, r+1 : n), Uk)

4. U(r+1 : n, 1 : n) = mul1(Uk, U(r+1 : n, 1 : n))5. rv = r, r ← r + rk

Comentarii. Avand ın vedere ca numarul k al etapelor de reducerenu este apriori cunoscut, utilizam si aici variabila binara CONTINUA cusemnificatia cunoscuta. In final, variabila r furnizeaza rangul matricei decontrolabilitate R a perechii date (A,B). In cazul r = n, i.e. daca perechea(A,B) este controlabila, algoritmul se opreste la instructiunea 7.2. iar νeste indicele de controlabilitate. Din contra, daca algoritmul se oprestedatorita faptului ca blocul curent G este nul, atunci perechea (A,B) nueste controlabila, iar perechea transformata (A, B), furnizata de algoritmul5.7, are forma (5.65), ın care r < n. ¦

Forma Hessenberg observabila

Pentru analiza proprietatilor de observabilitate a unei perechi (C, A) deordin n cu l iesiri, l ≥ 1, se procedeaza prin dualitate. Presupunem C 6= 0

Page 155: MN Metode Numerice Carte(Matematici)

154 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

si fie q1 = rang C > 0. Lema de deflatie observabila (vezi propozitia 5.4)afirma existenta unei matrice ortogonale U1 ∈ Rn×n, astfel ıncat

A ← A = U1AUT1 =

[A1 HX F

],

C ← C = CUT1 =

[G1 0

],

(5.74)

unde matricea G1 ∈ Rl×q1 este monica, i.e. rangG1 = q1. In plus, perechea(C,A) este observabila daca si numai daca perechea redusa (H, F ) esteobservabila.

Prin aplicarea repetata a acestei proceduri de deflatie, sau echivalent,prin aplicarea schemei de dualizare relativ la algoritmul 5.7, se obtine formabloc-inferior Hessenberg a perechii (C,A), definita prin

A ← A = UAUT =[

AQ 0AQQ AQ

],

C ← C = CUT =[

CQ 0],

(5.75)

ın care perechea (CQ, AQ) de ordin q se afla ın forma bloc-inferiorHessenberg observabila

AQ =

A1 G2

X A2. . .

......

. . . . . .

X X · · · . . . Gk

X X · · · · · · Ak

, CQ =[

G1 0 · · · 0], (5.76)

unde toate blocurile Gi ∈ Rqi−1×qi sunt monice, i.e.

rangGi = qi > 0, i = 1 : k, q0def= l. (5.77)

Evident avem

q =k∑

i=1

qi ≤ n (5.78)

si ın virtutea conditiilor (5.77) perechea (CQ, AQ) din (5.75) este observa-bila. In plus, perechea initiala (C,A) este observabila daca si numai dacaq = n, i.e. (C, A) = (CQ, AQ), si ın acest caz numarul k de blocuri din(5.76) coincide cu indicele de observabilitate al lui (C,A).

Page 156: MN Metode Numerice Carte(Matematici)

5.6. DESCOMPUNEREA CONTROLABILA 155

In sfarsit, la fel ca ın cazul controlabilitatii, matricea ortogonala U ∈Rn×n din (5.75) rezulta din acumularea transformarilor partiale, i.e.

U = Uk · · ·U2U1,

ın care U1 se determina ca ın (5.74).

5.6 Descompunerea controlabila

Fie (A,B) o pereche, ın general necontrolabila, de ordin n cu m intrari,unde m ≥ 1. Perechea bloc-superior Hessenberg (A, B) = (UAUT , UB),obtinuta aplicand algoritmul 5.7 expus ın paragraful anterior, are forma(5.65) cu r ≤ n si constituie prin definitie, descompunerea controlabila aperechii date (A,B). (In cazul m = 1 se utilizeaza (5.47)). Perechea con-trolabila (AR, BR) de ordin r cu m intrari reprezinta partea controlabila,iar matricea AR de ordin r = n− r reprezinta partea total necontrolabila alui (A,B).

Semnificatia sistemica a descompunerii controlabile este evidentiata degraful de semnal asociat, vezi figura 5.1(a), din care se vede ca parteanecontrolabila nu este influentata de intrarea u nici direct, nici indirect(i.e. prin intermediul partii controlabile), iar matricea ARR caracteri-zeaza actiunea partii total necontrolabile asupra partii controlabile. (Deaceea, ın aplicatii, partea necontrolabila modeleaza perturbatiile exterioarece actioneaza asupra sistemului dat, considerat controlabil). Prin definitie,valorile proprii ale matricei AR constituie valorile proprii necontrolabile saupolii ficsi ai perechii (A,B).

Principalele elemente de analiza a proprietatilor de controlabilitate aso-ciate unei perechi oarecare (A,B) sunt furnizate direct de algoritmul 5.7 sipot fi rezumate astfel.

1. Testarea controlabilitatii se face pe baza egalitatii r = n. Altfelspus, perechea (A, B) este controlabila daca si numai daca partea sa totalnecontrolabila este vida.

2. Spatiul controlabil R ⊂ Rn al perechii (A,B) este definit prin R =ImR, unde R este matricea de controlabilitate corespunzatoare. (Amintimca prin ImR, unde matricea R are n linii, notam subspatiul liniar al lui Rn

generat de coloanele lui R, vezi (5.26)). Avem evident r = rangR = dimR,unde r este ordinul perechii (AR, BR) din (5.65). Mai mult, partitionandconform matricea de transformare U , i.e.

U =[

UR

UR

]}r}r = n− r

, (5.79)

Page 157: MN Metode Numerice Carte(Matematici)

156 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

e

e

e

¡¡¡µ 6

u

BR

AR

ARR

AR

¶ ³

± °¾

µ ´

² ¯¾

(a)

e

e

e

@@@R

?

y

AQ

AQQ

AQ

CQ

¶ ³

± °¾

µ ´

² ¯¾

(b)

Figura 5.1: Semnificatia sistemica a descompunerii controlabile (a) si adescompunerii observabile (b).

si, utilizand aceleasi rationamente ca ın § 2, constatam ca – ın coordonateleinitiale – coloanele matricei UT

R formeaza o baza ortogonala a subspatiuluicontrolabil R.

In coordonatele lui Rn corespunzatoare reprezentarii (5.65) subspatiulcontrolabil R este format din totalitatea vectorilor de forma

x =[

xR

0

]}r}r , (5.80)

iar structura perechii transformate (A, B) din (5.65) arata ca

(i) subspatiul R este A-invariant si

(ii) contine ImB.

Mai mult, ın virtutea faptului ca perechea (AR, BR) este controlabila(deci nu poate fi descompusa la randul ei ca ın (5.65)), subspatiul R estecel mai mic subspatiu al lui Rn cu proprietatile de mai sus.

In legatura cu aceasta, subliniem ca notiunea de subspatiu necontrolabilal perechii (A,B) nu are semnificatie geometrica invarianta deoarece oricesubspatiu R (vezi figura 5.2) cu proprietatea Rn = R⊕ R poate fi numitastfel. In aplicatii se considera de obicei complementul ortogonal R = R⊥,pentru care matricea UT

Rdefineste evident o baza ortogonala. (Simpli-

tatea acestor constructii se datoreaza faptului ca matricea de transformare(5.80) este ortogonala, i.e. coloanele lui UT constituie o baza ortogonala aıntregului spatiu al starilor Rn).

Page 158: MN Metode Numerice Carte(Matematici)

5.7. STABILIZABILITATEA SI DETECTABILITATEA 157

©©©©©©©©©©©©

©©©©©©©©©©©©

»»»»»»»»»»»»»»»

¢¢¢¢¢¢¢¢¢¢

¢¢¢¢¢

0

R

Im B

RR⊥

Figura 5.2: Reprezentarea geometrica a spatiului controlabil.

Descompunerea observabila

Fie (C, A) o pereche ın general neobservabila de ordin n cu l iesiri, undel ≥ 1. Perechea bloc-inferior Hessenberg (C, A) = (CUT , UAUT ), obtinutaaplicand schema de dualizare relativ la algoritmul 5.7, expus ın paragrafulanterior, are forma (5.75) cu q ≤ n, si constituie, prin definitie, descom-punerea observabila a perechii date (C,A).

Semnificatia sistemica a descompunerii observabile este evidentiata degraful de semnal asociat, vezi figura 5.1(b). Prin definitie, valorile propriiale matricei AQ constituie valorile proprii neobservabile sau polii ficsi aiperechii (C, A).

Principalele elemente de analiza a proprietatilor de observabilitate aso-ciate unei perechi oarecare (C,A) sunt propuse ca exercitii.

5.7 Stabilizabilitatea si detectabilitateasistemelor liniare

In problemele de sinteza vizand stabilizarea sistemelor liniare prin reactiedupa stare sau prin compensare dinamica, intereseaza o proprietate mai

Page 159: MN Metode Numerice Carte(Matematici)

158 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

slaba decat controlabilitatea, numita stabilizabilitate si definita cu referirela descompunerea controlabila (5.65).

Definitia 5.6 Perechea (A,B) este stabilizabila daca partea sa total ne-controlabila AR este stabila sau, echivalent, polii ficsi ai perechii (A,B)sunt stabili.

In consecinta, principalele elemente de analiza a proprietatilor de sta-bilizabilitate asociate unei perechi (A,B) rezulta combinand procedurilede analiza a proprietatilor fundamentale de stabilitate si controlabilitate,stabilite ın §§ 1, 2 si §§ 5, 6.

1.Testarea stabilizabilitatii se face pe baza definitiei 5.6, i.e. construinddescompunerea controlabila (5.65) a perechii (A, B) si apoi aplicand algorit-mul 5.1 matricei AR. Alternativ, se poate construi descompunerea spectralaa perechii (A,B) ca ın §2, dupa care se aplica algoritmul 5.7 perechii totalnestabile (Ab, Bb).

2.Spatiul stabilizabil S ⊂ Rn al perechii (A,B) este definit prin S =R+ X−(A), astfel ıncat evidentierea sa se face construind descompunereacontrolabila (5.65) a perechii (A,B) si, apoi, aplicand algoritmul 5.2 ma-tricei AR.

In urma acestor doua transformari se obtine, evident, descompunereastabilizabila a perechii date (A,B), care evidentiaza partea stabilizabila(controlabila sau necontrolabila dar stabila), respectiv partea total nesta-bilizabila (necontrolabila si nestabila) a perechii considerate. (In aplicatii,partea nestabilizabila modeleaza perturbatiile exterioare persistente ce ac-tioneaza asupra sistemului dat, considerat stabilizabil).

In problemele de proiectare a estimatoarelor de stare stabile intereseazao proprietate mai slaba decat observabilitatea, numita detectabilitate sidefinita prin dualitate fata de stabilizabilitate cu referire la descompunereaobservabila (5.75).

Definitia 5.7 Perechea (C, A) este detectabila daca partea total neobser-vabila AQ este stabila sau, echivalent, polii ficsi ai perechii (C, A) suntstabili.

Principalele elemente de analiza a proprietatilor de detectabilitate aso-ciate unei perechi (C, A) sunt propuse ca exercitii.

Page 160: MN Metode Numerice Carte(Matematici)

5.8. REALIZARI MINIMALE 159

5.8 Realizari minimale

Principalul rezultat al teoriei realizarii sistemelor liniare afirma ca orice sis-tem S = (A,B, C) este echivalent intrare-iesire, i.e. are aceeasi matrice detransfer, cu un sistem de ordin minim Sm = (Am, Bm, Cm) care este simul-tan controlabil si observabil. Mai mult, sistemul Sm este determinat panala o transformare de asemanare si, ın esenta, coincide cu partea simultancontrolabila si observabila a sistemului dat S.

Definitia 5.8 Un sistem Sm = (Am, Bm, Cm) controlabil si observabil,echivalent intrare-iesire cu S se numeste realizare minimala a lui S.

Mai general, orice sistem Sm = (Am, Bm, Cm) controlabil si observabilse numeste minimal.

In consecinta, o realizare minimala (i.e. de ordin minim) a unei matricede transfer date T (s) poate fi construita aplicand urmatoarea procedura.

Algoritmul 5.8 ( Construieste o realizare minimala a ma-tricei de transfer T (s)).

1. Se construieste o realizare observabila S = (A,B, C) alui T (s), utilizand formele standard observabile, expuse ıncapitolul 3.

2. Se construieste descompunerea controlabila

A = UAUT =[

AR ARR

0 AR

], B = UB =

[BR

0

],

utilizand algoritmul 5.7 si se aplica transformarea U ma-tricei C, i.e.

C = CUT = [ CR CR ] .

3. Se retine partea controlabila Sm = (AR, BR, CR) a triple-tului transformat, unde

AR = A(1 : r, 1 : r), BR = B(1 : r, :)

este partea controlabila a perechii (A,B) iar

CR = C( : , 1 : r).

Procedurile de identificare sistemica, bazate pe teoria realizarii sisteme-lor liniare, sunt prezentate ın ANEXA A.

Procedurile de reductie dimensionala aproximativa a unor sisteme con-trolabile si observabile (deci minimale) au la baza conceptul fundamentalde realizare echilibrata si vor fi expuse ın §10.

Page 161: MN Metode Numerice Carte(Matematici)

160 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

5.9 Gramieni de controlabilitate siobservabilitate

Pentru a introduce cat mai simplu notiunea de gramian ın contextul sis-temic al discutiei noastre, consideram din nou sistemul liniar discret S =(A,B,C) definit prin relatiile (5.17).

Utilizand matricea de controlabilitate ın k pasi Rk a perechii (A, B) sitinand seama de relatiile (5.19) si (5.22) definim gramianul de controlabili-tate ın k pasi prin

Ykdef= RkRT

k =k−1∑

i=0

AiBBT (AT )i. (5.81)

Evident, Yk este o matrice n × n simetrica pozitiv semidefinita, pe scurtYk = Y T

k ≥ 0, k ≥ 1. Tinand seama de relatia (5.38) putem scrie

Yk+1 = Rk+1RTk+1 =

[B ARk

] [BT

RTk AT

],

prin urmare sirul Yk satisface ecuatia matriceala recurenta Liapunov dis-creta (DEML)

Yk+1 = BBT + AYkAT , (5.82)

cu conditia initiala Y1 = BBT (sau Y0 = 0).Prin dualitate, utilizand matricea de observabilitate ın k pasi Qk a

perechii (C, A), definim gramianul de observabilitate ın k pasi prin

Xkdef= QT

k Qk =k−1∑

i=0

(AT )iCT CAi, (5.83)

unde Xk = XTk ≥ 0, k ≥ 1 satisface DEML

Xk+1 = CT C + AT XkA (5.84)

cu conditia initiala X1 = CT C (sau X0 = 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 limiteleY = Y T ≥ 0 si respectiv X = XT ≥ 0 care satisfac evident ecuatiilematriceale algebrice Liapunov discrete (DEMAL)

Y = BBT + AY AT (5.85)

Page 162: MN Metode Numerice Carte(Matematici)

5.9. GRAMIENI 161

si respectivX = CT C + AT XA. (5.86)

In cazul sistemelor cu timp continuu stabile, i.e. Reλ(A) < 0, conside-ratii similare conduc la ecuatiile matriceale algebrice Liapunov (EMAL)

0 = BBT + AY + Y AT , (5.87)

respectiv0 = CT C + AT X + XA. (5.88)

Avand ın vedere ca, ın conditiile de stabilitate formulate mai sus, ecua-tiile (5.85) – (5.88) au solutii unice, ın continuare vom adopta urmatoareadefinitie unificatoare.

Definitia 5.9 Matricele simetrice Y, X ∈ Rn×n, unic definite ca solutii aleEMAL (5.87), (5.88) (respectiv DEMAL (5.85), (5.86) ın cazul discret), senumesc gramian de controlabilitate al perechii (A,B), respectiv gramian deobservabilitate al perechii (C, A).

Rezultatul urmator se demonstreaza usor utilizand propozitia 5.1 si areo importanta deosebita pentru tot restul capitolului.

Propozitia 5.5 Sistemul liniar stabil S = (A,B, C) este controlabil, res-pectiv observabil, daca si numai daca gramianul corespunzator Y , respectivX, este o matrice pozitiv definita.

Observatia 5.5 Utilizand rezultatele obtinute ın capitolul 1 precum siın §2 al acestui capitol se poate vedea usor ca ecuatiile (5.85) – (5.88) ausolutii unice chiar daca, ın locul conditiei de stabilitate, este ındeplinita nu-mai conditia (mai slaba) de dihotomie, i.e Reλ(A) 6= 0 (respectiv |λ(A)| 6= 1ın cazul discret). Mai mult, ın acest caz S = (A,B, C) este controlabil, re-spectiv observabil, daca si numai daca gramianul corespunzator este o ma-trice simetrica inversabila a carei inertie este dictata de numerele valorilorproprii stabile si nestabile ale lui A. ¦

In cele ce urmeaza nu vom exploata implicatiile importante ale observa-tiei 5.5, ci vom presupune mereu ca sistemul considerat S = (A,B,C) estestabil.

Adoptand aceasta ipoteza, profitam de ocazie pentru a efectua o scurtatrecere ın revista a unor proceduri iterative de rezolvare a DEMAL. (Pro-cedurile ”de transformare”, bazate pe utilizarea formei Schur, au fost dis-cutate ın capitolul 1).

Page 163: MN Metode Numerice Carte(Matematici)

162 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Pentru precizare, ın continuare ne referim la ecuatia (5.86).Schema de iterare ”directa”, care utilizeaza ecuatia recurenta corespun-

zatoare (5.84), este neeficienta deoarece, de regula, convergenta Xk → Xeste lenta (cu atat mai lenta cu cat raza spectrala ρ(A) < 1 a matriceidiscrete A este mai apropiata de 1, vezi observatia 5.1). Pe de alta parte,matricele Xk sunt pozitiv semidefinite, ceea ce permite utilizarea avanta-joasa pe parcursul calculelor a unor factorizari de tip Cholesky. Avand ınvedere aceste observatii de principiu, ın practica se recomanda doua tipuride scheme iterative.

Algoritmii ”de dublare” urmaresc accelerarea convergentei. Ideea constaın a efectua iterarea cu pas mereu dublat, i.e. conform schemei

X1 → X2 → X4 → X8 → . . . ,

fara a mai calcula iteratiile intermediare. Notam

X(s) = Xk, k = 2s, s ≥ 0. (5.89)

Prin calcul direct, din (5.83) sau (5.84) rezulta

X(0) = X1 = CT C,X(1) = X2 = AT X(0)A + X(0),X(2) = X4 = (A2)T X(1)A2 + X(1)

si ın generalX(s+1) = (Ak)T X(s)Ak + X(s). (5.90)

Prin urmare, schema de iterare accelerata, bazata pe aplicarea formuleide dublare (5.90), poate fi rezumata astfel.

Algoritmul 5.9 (Rezolva DEMAL (5.86) ın cazul A stabilautilizand un algoritm de dublare).

1. CONTINUA = ’da’

2. X = CT C

3. Cat timp CONTINUA = ’da’

1. X(+1) = AXAT + X

2. Daca ‖X(+1)−X‖ < tol‖X‖atunci

1. CONTINUA = ’nu’altfel

Page 164: MN Metode Numerice Carte(Matematici)

5.9. GRAMIENI 163

1. X = X(+1)2. A ← A2.

La fiecare iteratie sunt necesare 2n3 ınmultiri (se exploateaza simetrialui X), deci schema se justifica daca ρ(A) nu este prea aproape de 1 i.e.convergenta este suficient de rapida.

Algoritmii ”de radacina patrata” urmaresc exploatarea caracterului po-zitiv (semi)definit al matricelor Xk din (5.83) prin determinarea factorilorCholesky

Xk = LTk Lk ≥ 0, (5.91)

unde, evident, se poate lua L1 = C. Daca pentru k ≥ 1 matricea Lk estecunoscuta atunci Lk+1 se determina din (5.84), observand ca trebuie saavem

Xk+1 = LTk+1Lk+1 = CT C + AT LT

k LkA =[

CT (LkA)T] [

CLkA

].

Este clar ca putem lua[

Lk+1

0

]= Uk

[C

LkA

], (5.92)

unde Uk este o matrice ortogonala (e.g. o secventa de reflectori) care aducematricea bloc din dreapta la forma superior triunghiulara. (In consecinta,toate matricele sirului Lk, k ≥ 2 rezulta superior triunghiulare).

Prin urmare, schema de iterare ”compacta”, bazata pe aplicarea relatiei(5.92) poate fi 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. CONTINUA = ’da’

2. L = C

3. Cat timp CONTINUA = ’da’

1.[

L(+1)0

]= U

[CAL

],

2. Daca ‖L(+1)− L‖ < tol‖L‖atunci

1. CONTINUA = ’nu’altfel

Page 165: MN Metode Numerice Carte(Matematici)

164 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

1. L = L(+1).

Datorita convergentei ın general lente, schema de radacina patrata, acarei 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 ecuatiimatriceale recurente de tip Riccati, la care pastrarea caracterului pozitiv(semi-)definit al solutiei prin iterare directa este problematica. In legaturacu aceasta mentiune, observam ca schemele de radacina patrata raman va-labile ca atare chiar daca sistemul discret S = (A,B, C) este variabil ıntimp, i.e. matricele A = Ak, B = Bk, C = Ck variaza de la pas la pas.

5.10 Echilibrarea sistemelor liniare

Consideram sistemul liniar stabil, controlabil si observabil S = (A,B, C) sifie Y = Y T > 0 si X = XT > 0 gramienii de controlabilitate si observabil-itate, definiti ca solutii unice ale EMAL (5.87) si respectiv (5.88).

Utilizand transformarea de asemanare

A = TAT−1, B = TB, C = CT−1, (5.93)

obtinem usor0 = BBT + AY + Y AT ,

0 = CT C + AT X + XA,

unde gramienii transformati au expresiile

Y = TY TT , X = T−T XT−1. (5.94)

In particular avemY X = T (Y X)T−1, (5.95)

deci valorile proprii λ(Y X) ale produsului Y X sunt invarianti ai sistemuluiS = (A, B,C) ın raport cu transformarea (5.93). (Se poate arata ca acestevalori proprii sunt pozitive si coincid cu patratul valorilor singulare Hankelale lui S, [ X ]). Mai mult, aceste valori proprii pot fi interpretate – ıntr-unsens ce va fi precizat mai departe – ca expresii cantitative ale ”gradelor”de transfer intrare-iesire atasate (celor n componente ale starii x ∈ Rn a)sistemului S = (A,B, C).

Pe de alta parte, utilizand transformarea de asemanare (5.93), ın carematricea T = U este ortogonala, relatiile (5.94) devin

Y = UY UT , X = UXUT . (5.96)

Page 166: MN Metode Numerice Carte(Matematici)

5.10. ECHILIBRAREA SISTEMELOR LINIARE 165

Prin urmare, ın acest caz se conserva separat valorile proprii (evident po-zitive) ale matricelor simetrice pozitiv definite Y si X. Interpretand acestevalori proprii ca expresii cantitative ale ”gradelor” de controlabilitate si re-spectiv observabilitate atasate lui S, putem spune sugestiv ca aceste gradesunt invarianti ortogonali ai sistemului S. De aceea, ın problemele deanaliza separata a controlabilitatii si observabilitatii, abordate ın §§3–8,am utilizat cu succes transformari ortogonale.

Din contra, ın acest paragraf, dedicat analizei proprietatilor de transferale sistemului S, rezultate (ıntr-un sens precizat) prin ”compunerea” pro-prietatilor de controlabilitate si observabilitate, vom utiliza transformari(5.93) de forma generala, ın particular, cu scopul ”echilibrarii” (egalarii)gradelor corespunzatoare de controlabilitate si observabilitate.

Enuntul 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 ∈ Rn×n inversabila astfelıncat gramienii transformati (5.94) sa fie diagonali si egali, i.e.

X = Y = Σ, (5.97)

unde Σ este o matrice diagonala cu elemente pozitive. (Conform relatiei(5.95) aceste elemente reprezinta valorile singulare Hankel ale lui S).

Definitia 5.10 Daca matricea inversabila T ∈ Rn×n este o solutie a pro-blemei echilibrarii formulate mai sus relativ la sistemul S, atunci sistemultransformat S = (A, B, C), definit prin relatiile (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.

Solutia problemei echilibrarii ın formularea de mai sus este simpla dinpunct de vedere principial si, ın esenta, se reduce la diagonalizarea simulta-na a doua matrice simetrice, ambele pozitiv definite, prin transformari decongruenta de forma (5.94).

Vom determina matricea cautata T sub forma

T = T3T2T1 , (5.98)

unde transformarile Tk, k = 1 : 3 se determina succesiv.In prima etapa consideram factorizarea Cholesky a matricei Y > 0, i.e.

Y = MMT , (5.99)

Page 167: MN Metode Numerice Carte(Matematici)

166 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

unde M este inferior triunghiulara inversabila si luam T1 = M−1. Aplicand(5.94) obtinem

Y1def= T1Y TT

1 = M−1(MMT )M−T = I,

X1def= MT XM.

(5.100)

In a doua etapa consideram descompunerea spectrala a matricei X1 > 0,obtinuta aplicand algoritmul QR simetric cu acumularea transformarilor,i.e.

X1 = UT Σ2U, (5.101)

unde coloanele matricei ortogonale UT sunt vectorii proprii ai matricei(simetrice) X1 iar notatia Σ2 def= diag(σ2

1 , . . . , σ2n) se justifica tinand seama

ca valorile proprii λidef= σi

2 ale matricei X1 sunt strict pozitive. Convenimsa alegem σi > 0, i = 1 : n si luam T2 = U . Aplicand ınca o data (5.94)obtinem

Y2def= T2Y1T

T2 = UUT = I,

X2def= U(UT Σ2U)UT = Σ2.

(5.102)

Acum ambele matrice X2 si Y2 sunt diagonale. Pentru a le face egale,luam T3 = Σ1/2 si aplicand ultima data (5.94) obtinem ıntr-adevar

Y = T3Y3TT3 = Σ1/2Σ1/2 = Σ,

X = Σ−1/2(Σ2)Σ−1/2 = Σ.

(5.103)

In definitiv transformarea cautata (5.98) este

T = Σ1/2UM−1, (5.104)

iar elementele pozitive ale matricei diagonale Σ coincid cu invariantiiλ1/2(Y X).

Este clar ca procedura de mai sus admite o versiune duala, care ıncepecu factorizarea Cholesky X = LT L a matricei X > 0, unde L este superiortriunghiulara inversabila, etc.

Pentru a evidentia ”simetria” de principiu a procedurii de echilibrare,consideram ambele factorizari Cholesky

Y = MMT , X = LT L (5.105)

Page 168: MN Metode Numerice Carte(Matematici)

5.10. ECHILIBRAREA SISTEMELOR LINIARE 167

si formam produsul LM 2. Aplicand algoritmul de descompunere a valorilorsingulare (DVS) obtinem

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 fiexprimata prin formulele echivalente

T = Σ1/2UM−1, respectiv T = Σ−1/2V L (5.108)

si conduce la realizarea egalitatii dorite (5.97), unde ın plus Σ satisfaceconditia de ordonare (5.107).

Prin urmare, procedura de echilibrare ”simetrica”, bazata pe relatiile(5.105) si (5.106), poate fi 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 ← U0AUT0 ,

utilizand algoritmul QR cu acumularea transformarilor.

2. Se face B ← U0B si C ← CUT0 .

3. Se rezolva EMAL (5.87) si (5.88), tinand seama ca ma-tricele A si AT sunt triunghiulare.

4. Se calculeaza factorii Cholesky L si M conform relatiei(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 singuradata. Utilizand o procedura speciala de tip radacina patrata, propusa deHammarling [ 17 ], este posibila contragerea pasilor 3 si 4, i.e. calculul di-rect al factorilor Cholesky L si M fara a determina explicit solutiile X si Y

2Avand ın vedere definitiile (5.81) si (5.83), matricele M si L din (5.105) constituieversiuni ”prescurtate” ale matricelor de controlabilitate si observabilitate, deci matriceaH = LM are o semnificatie similara ın raport cu matricea Hankel Hαβ = QαRβ .

Page 169: MN Metode Numerice Carte(Matematici)

168 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

ale EMAL. In general, procedura de echilibrare rezumata prin algoritmul5.11, care ın esenta reprezinta analogul sistemic al procedurii DVS, estesusceptibila de ameliorari vizand eliminarea a cat mai multe cantitati inter-mediare ın favoarea operarii directe asupra datelor primare S = (A,B, C)ale sistemului considerat. Caile prin care acest obiectiv de principiu poatefi cel mai bine realizat urmeaza ınca a fi descoperite. ¦

Dintre aplicatiile procedurii de echilibrare, expunem mai jos numaitehnicile de reductie dimensionala a unui sistem S = (A,B, C, D) ın scopuleliminarii starilor neesentiale din punctul de vedere al transferului intrare-iesire.

Aprecierea caracterului esential, respectiv neesential, al variabilelor destare xi ∈ R, i = 1 : n se face pe forma echilibrata S = (A, B, C, D)satisfacand conditia (5.97),ın care elementele matricei diagonale Σ sunt or-donate ın acord cu (5.107). Subliniem ca matricele A, B, C ale lui S rezultaaplicand algoritmul 5.11 tripletului (A,B, C) iar D = D.

Fie ε > 0 un numar dat suficient de mic, ınteles ca prag de semnificatie,si fie t cel mai mare numar ıntreg astfel ıncat

0 ≤ t ≤ n cu σi ≥ ε, i = 1 : t. (5.109)

Sistemul de ordin redus St va fi de ordin t si, ın esenta, se obtine eliminandstarile xj , j = t + 1 : n corespunzatoare valorilor singulare nesemnificativeσj < ε, j = t + 1 : n.

Pentru a descrie succint cele doua modalitati principale de calcul alematricelor sistemului redus St, consideram partitia matricelor sistemuluiechilibrat S definita prin

A =[

A1 A12

A21 A2

], B =

[B1

B2

],

C =[

C1 C2

], D = D ,

(5.110)

unde A1 si B1 au t linii iar A1 si C1 au t coloane.

I. Prima modalitate de reductie corespunde trunchierii directe a lui S,conform relatiei

St = (A1, B1, C1, D1), (5.111)

prin urmare, matricele sistemului St, dispuse sugestiv sub forma

St =[

A1 B1

C1 D1

], (5.112)

Page 170: MN Metode Numerice Carte(Matematici)

5.10. ECHILIBRAREA SISTEMELOR LINIARE 169

rezulta prin inspectie din (5.110).

II. A doua modalitate de reductie, preferential utilizata ın practica, co-respunde unei trunchieri compensate ın scopul conservarii transferului ınregim stationar constant al sistemelor S si S, i.e. al matricei de amplificare

Kdef= T (0) = D + (sI −A)−1

B∣∣∣s=0

. (5.113)

Utilizand idei specifice metodei perturbatiilor singulare, scriem ecuatiile luiS sub forma

x1 = A1x1 + A12x2 + B1ux2 = A21x2 + A2x2 + B2uy = C1 x1 + C2 x2 + D u

(5.114)

si presupunand x2 = const, i.e. x2 = 0, din a doua ecuatie gasim

x2 = −A−12 (A21x1 + B2u) .

Introducand aceasta expresie ın celelalte doua ecuatii, obtinem

x1 = (A1 −A12A2−1A21)x1 + (B1 −A12A2

−1B2)u

y = (C1 − C2A2−1A21x1 + ( D − C2A2

−1B2)u

deci trunchierea compensata St a lui S este

St = (A1 −A12A−12 A21, B1 −A12A

−12 B2, C1 − C2A

−12 A21, D − C2A

−12 B2).(5.115)

Prin urmare, matricele lui St se calculeaza acum utilizand (5.112) si efec-tuand actualizarea

St ← St −[

A12

C2

]A−1

2

[A21 B2

]. (5.116)

In cazul sistemelor discrete (presupuse de asemenea stabile, controlabilesi observabile) rationamentele si rezultatele de mai sus raman valabile ıncea mai mare parte. In particular, algoritmul 5.11 se pastreaza ca atare,ınlocuind peste tot EMAL cu DEMAL corespunzatoare. De asemenea,pentru a construi trunchierea compensata discreta, care conserva matriceade amplificare

Kdef= T (1) = D + (zI −A)−1

B∣∣∣z=1

, (5.117)

scriem ecuatiile lui S sub forma

x1(+1) = A1x1 + A12x2 + B1ux2(+1) = A21x1 + A2x2 + B2u

y = C1 x1 + C2 x2 + D u(5.118)

Page 171: MN Metode Numerice Carte(Matematici)

170 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

si presupunand x2 =const, i.e. x2(+1) = x2, din a doua ecuatie gasim

x2 = (I −A2)−1(A21x1 + B1u)

Prin urmare, trunchierea compensata a unui sistem discret este definita totde (5.115) sau (5.116), ın care matricea (sI −A2)|s=0 = −A2 se ınlocuiestecu (zI−A2)|z=1 = I−A2. Redactarea algoritmilor este propusa cititoruluisub forma de exercitii.

Programe MATLAB disponibile

Testarea stabilitatii se face conform algoritmului 5.1, i.e. calculand valo-rile proprii ale matricei A a sistemului cu functia eig. Pentru obtinereaformei Schur ordonate, necesara ın algoritmul 5.2, se utilizeaza functiaschord. Constructia matricei de controlabilitate R a perechii (A,B) seface cu functia ctrb, care implementeaza algoritmul 5.4, mai precis versi-unea acestuia bazata pe formula (5.38). Pentru constructia formei bloc-superior Hessenberg a unei perechi (A, B) este disponibila functia ctrbf,care implementeaza algoritmul 5.7 cu blocurile permutate ın ordine inversa.Constructia unei realizari minimale (vezi algoritmul 5.8) se poate face uti-lizand functia minreal. Pentru calculul gramienilor de controlabilitate siobservabilitate sunt disponibile functiile gram si dgram, care apeleaza,evident, lyap si dlyap. Echilibrarea unei realizari stabile si minimale seefectueaza cu balreal, care implementeaza o versiune neoptimizata a algo-ritmului 5.11. (In particular, valorile singulare nu rezulta ordonate ca ın(5.107)). Trunchierea compensata a realizarii echilibrate furnizate de bal-real se face interactiv, pe baza optiunii utilizatorului ce apeleaza functiacorespunzatoare modred.

Exercitii

E 5.1 Conform teoremei lui Liapunov, matricea A a unui sistem continuu(discret) este stabila daca si numai daca oricare ar fi matricea Q = QT > 0ecuatia matriceala algebrica Liapunov (discreta)

AT X + XA = −Q ( AT XA−X = −Q )

are o solutie X = XT > 0. Explicati de ce enuntul de mai sus (de marevaloare teoretica) nu conduce la un test de stabilitate numeric eficient ınraport cu algoritmul 5.1.

Page 172: MN Metode Numerice Carte(Matematici)

5.10. ECHILIBRAREA SISTEMELOR LINIARE 171

E 5.2 Un polinom p(s) = a0sn + a1s

n−1 + . . . + an este stabil (sau”hurwitzian”) daca toate radacinile sale au partea reala strict negativa.Scrieti algoritmul de testare a stabilitatii polinomului p(s) utilizand crite-riul Routh-Hurwitz.

Indicatie. Se utilizeaza algoritmul de eliminare gaussiana fara pivota-re relativ la matricea Hurwitz asociata lui p(s), ceea ce corespunde exactformularii propuse de Routh pentru criteriul ın discutie.

Observatie. Intrucat ın absenta unei strategii de pivotare adecvate,algoritmul de eliminare gaussiana este numeric nestabil (aparitia pivotilornuli corespunde asa-numitelor cazuri ”critice” ale algoritmului Routh), ınpractica testarea stabilitatii polinomului p(s) se face construind matriceacompanion si aplicand algoritmul 5.1.

E 5.3 Formulati si rezolvati versiunea discreta a exercitiului 5.2.

E 5.4 Matricea A a unui sistem continuu se numeste admisibila dacaReλ(A) < −η, unde η > 0 este un numar real dat. Formulati testul cores-punzator de admisibilitate. (Algoritmul 5.1 corespunde evident cazuluiη = 0).

E 5.5 Formulati si rezolvati versiunea discreta a exercitiului 5.4.

E 5.6 Utilizand algoritmul QZ ın locul algoritmului QR, scrieti algoritmulde testare a stabilitatii sistemului generalizat (de tip descriptor), descrisprin

Ex = Ax + Bu,y = Cx,

unde matricea E ∈ Rn×n este nesingulara dar poate fi rau conditionata lainversare. (Prin urmare, trebuie evitata formarea matricelor A0 = E−1Aetc).

Indicatie. Valorile proprii ale matricei A0 coincid cu valorile propriigeneralizate ale fascicolului λE −A.

E 5.7 Scrieti algoritmul de calcul a unei baze ortogonale a subspatiuluiA-invariant total nestabil X+(A).

E 5.8 Utilizand rezultatele furnizate de algoritmul 3 (vezi observatia 5.4),indicati o procedura de calcul a unei baze ortogonale a lui X+(A).

E 5.9 Scrieti versiunile discrete ale algoritmilor 5.2 si 5.3 (vezi observatia5.2).

Page 173: MN Metode Numerice Carte(Matematici)

172 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

E 5.10 Presupunand data o functie de transfer T (s) ıntr-una din formele

T (s) = δ

∏(s− µj)∏(s− λi)

, respectiv T (s) =∑ ri

s− λi,

scrieti o realizare de stare S = (A, b, cT ) ın forma (5.11) si indicati baze(ortogonale) pentru subspatiile X−(A) si X+(A). Cum trebuie procedatdaca T (s) = N(s)/p(s) este data ca raport a doua polinoame ?

E 5.11 Formulati si rezolvati versiunea discreta a exercitiului 5.10.

E 5.12 Presupunand ca matricea A este simpla, scrieti algoritmul dedescompunere spectrala bazat pe calculul valorilor si vectorilor proprii aimatricei A si comparati-l cu algoritmul 5.3. Care este preferabil si de ce ?

E 5.13 Utilizand algoritmul QZ ın locul algoritmului QR, analizati posibi-litatile de extindere a algoritmilor 5.2 si 5.3 la cazul sistemelor generalizate(de tip descriptor, vezi exercitiul 5.6).

E 5.14 Formulati si rezolvati exercitiul 5.12 ın cazul sistemelor generali-zate.

E 5.15 Discutati controlabilitatea si observabilitatea unui sistem S =(A, b, cT ) scris ın forma standard controlabila. Idem, pentru forma standardobservabila.

E 5.16 Se da o functie de transfer discreta T (z) = N(z)/p(z). Sa se scrie orealizare de stare S = (A, b, cT ) astfel ıncat problema (5.26) a determinariisirului de comenzi de efort minim sa fie cat mai simpla. Scrieti algoritmulde calcul corespunzator.

E 5.17 Se da o functie de tranfer discreta T (z) = N(z)/p(z). Sa se scrieo realizare de stare S = (A, b, cT ) astfel ıncat problema (5.36) a deter-minarii unei estimari optimale a starii initiale sa fie cat mai simpla. Scrietialgoritmul de calcul corespunzator.

E 5.18 Analizati posibilitatile de extindere a solutiilor exercitiilor 5.15 si5.16 ın cazul unei matrice de transfer T (z) ∈ Rl×m(z). Considerati separatcazurile m = 1, l = 1 si m, l > 1.

E 5.19 Scrieti o realizare de stare S = (A, b, cT ) a functiei de transferT (z) = N(z)/p(z) astfel ıncat R(A, b) = I. Idem, astfel ıncat Q(cT , A) = I.In ce conditii putem avea simultan R(A, b) = Q(cT , A) = I ?

Page 174: MN Metode Numerice Carte(Matematici)

5.10. ECHILIBRAREA SISTEMELOR LINIARE 173

E 5.20 Formulati analogul algoritmilor 5.4 si 5.5 ın cazul observabilitatii(fara a recurge la schema de dualizare din § 4).

E 5.21 Formulati si discutati realizarea numerica a testelor elementare deobservabilitate, bazate pe duala propozitiei 5.1.

E 5.22 Se dau perechea observabila (C, A) si un vector y ∈ Rnl. Scrietialgoritmul de calcul al pseudosolutiei x∗ = x∗(0) a sistemului de ecuatii(5.36), utilizand transformari ortogonale.

E 5.23 Se dau perechea controlabila (A, B) si un vector x = x(n) ∈ Rn.Scrieti algoritmul de calcul al solutiei normale u∗ a sistemului de ecuatii(5.26), utilizand transformari ortogonale.

E 5.24 Obtineti conditii suficiente simple de controlabilitate si observa-bilitate a conexiunilor serie, paralel si ın circuit ınchis. Ce puteti afirmadespre stabilitatea acestor conexiuni ?

E 5.25 Extindeti propozitia 5.1 precum si duala sa ın cazul sistemelorgeneralizate (vezi exercitiul 5.6). Discutati realizarea numerica a testelorcorespunzatoare.

E 5.26 Se da un triplet S = (A,B, C). Indicati (cel putin doua) proceduride calcul a unei baze ortogonale pentru subspatiul controlabil R def= ImR alperechii (A, B). Idem, pentru subspatiul neobservabil N def= KerQ.

E 5.27 Formulati problemele de calcul (5.26) si (5.36) ın cazul unui sistemS nu neaparat controlabil si observabil.

E 5.28 Scrieti programul MATLAB care implementeaza algoritmul 5.6 sitestati-l considerand perechi (A, b) adecvat alese.

Indicatie. Scrieti o functie MATLAB care genereaza o pereche (A, b)de ordin n dat, nu neaparat controlabila, utilizand forma (5.47), ın careperechea controlabila (AR, bR) de ordin r ≤ n este ın FSC, iar ARR si AR

sunt generate aleator. Perechea dorita (A, b) se obtine aplicand lui (A, b)o transformare de asemanare oarecare, i.e. (A, b) = (SAS−1, Sb), undematricea nesingulara S poate fi, de asemenea, aleasa aleator.

E 5.29 Utilizand programul MATLAB ce implementeaza algoritmul 5.4,bazat pe constructia matricei de controlabilitate, ilustrati fenomenul denecontrolabilitate numerica a perechilor (A, b) cu o singura intrare, ur-marind variatia numarului de conditionare cond(R) ın raport cu cresterea

Page 175: MN Metode Numerice Carte(Matematici)

174 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

ordinului perechii. Comentati comparativ rezultatele numerice obtinuteutilizand procedura din exercitiul 5.28.

E 5.30 Scrieti functiile MATLAB ce implementeaza procedura de deflatiecontrolabila descrisa ın propozitia 5.4 utilizand DVS, procedura de trian-gularizare ortogonala cu pivotarea coloanelor si, respectiv, procedura deeliminare gaussiana cu pivotare completa.

E 5.31 Scrieti programul MATLAB care implementeaza algoritmul 5.7 sitestati-l considerand perechi (A,B) adecvat alese.

Indicatie. Generarea perechilor controlabile (AR, BR) cu m ≥ 1 are labaza utilizarea FSC cu intrari decuplate descrise ın capitolul 3, § 3. Indicelede controlabilitate ν al perechii astfel obtinute coincide cu cel mai mareindice de controlabilitate al perechilor diagonale din FSC.

E 5.32 Considerati un sistem S = (A, B,C), nu neaparat controlabilsau observabil, avand perechea (A,B) de forma (5.65), unde (AR, BR) estecontrolabila si fie CR = C(: , 1 : r). Aratati ca S si SR

def= (AR, BR, CR) auaceeasi matrice de transfer, mai precis avem

T (s) def= C(sI −A)−1B = CR(sI −AR)−1BR. (5.119)

Egalitatea (5.119) arata ca polii ficsi λ(AR) corespunzatori partii necontro-labile a perechii (A,B) sunt poli simplificabili ai lui T (s). Prin dualitate,aceeasi proprietate apartine polilor ficsi λ(AQ) corespunzatori partii neob-servabile a perechii (C, A).

E 5.33 Aratati ca ın cazul SISO, sistemul S = (A, b, cT ) este o realizareminimala a functiei de transfer ireductibile T (s) = N(s)/p(s) daca si numaidaca ordinul matricei A coincide cu gradul numitorului p(s). Ce se ıntamplaı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 tuturorelementelor lui T (s) sunt stabili, i.e. au partea reala strict negativa, re-spectiv au modulul strict subunitar. Aratati ca T (s) este stabila daca sinumai daca orice realizare minimala Sm = (Am, Bm, Cm) a lui T (s) estestabila. Scrieti algoritmul de testare a stabilitatii unei matrice de transferT (s) date.

E 5.35 Enumerati cateva proprietati semnificative ale realizarilor stabili-zabile sau/si detectabile.

Page 176: MN Metode Numerice Carte(Matematici)

5.10. ECHILIBRAREA SISTEMELOR LINIARE 175

E 5.36 Indicati cateva metode de calcul a unei baze a subspatiului stabili-zabil S = R+X−(A). Idem, pentru subspatiul nedetectabil T = N∩X+(A).

Indicatie. In cazul ın care coloanele matricelor Sk ∈ Rn×nk constituiesisteme de generatori pentru subspatiile Xk ⊂ Rn, adica Xk = Im Sk, k =1 : 2, atunci coloanele matricei bloc

S = [ S1 S2 ]

constituie un sistem de generatori ai subspatiului X1 + X2. Prin dualitate,daca liniile matricelor Tk ∈ Rnk×n constituie un sistem de anulatori pentrusubspatiile Xk ⊂ Rn, adica Xk = KerTk, k = 1 : 2, atunci liniile matricei

T =[

T1

T2

]

constituie un sistem de anulatori ai subspatiului X = X1 ∩ X2. In ambelecazuri, pentru a obtine o baza a lui X , se utilizeaza DVS.

E 5.37 Analizati posibilitatea combinarii algoritmilor de dublare si deradacina patrata din § 9, utilizand schema ”candidat”

[L0

]← U

[L

LA

], A ← A2.

E 5.38 Formulati versiunile algoritmilor 5.9 si 5.10 corespunzatoare re-zolvarii DEMAL (5.85) fara a recurge la schema de dualizare expusa ınfinalul § 4.

E 5.39 Aratati ca daca X, Y sunt solutiile ecuatiilor (5.87), (5.88) (respec-tiv (5.85), (5.86) ın cazul discret) atunci avem tr(BT XB) = tr(CT Y C),unde tr(A) este urma matricei patrate A.

Numarul δ ≥ 0 introdus prin egalitatea de mai sus coincide cu normaH2 a functiei de transfer T (s), definita prin

‖T‖2 =12π

∫ ∞

−∞trTH(iω)T (iω)dω .

(In cazul discret integrala se efectueaza pe cercul unitate).

Page 177: MN Metode Numerice Carte(Matematici)

176 CAPITOLUL 5. PROCEDURI DE ANALIZA SISTEMICA

Bibliografie

[ 1 ] Ionescu V., Popeea C. Conducerea structurala a sisteme-lor liniare, ET Bucuresti, 1986.

[ 2 ] Ionescu V. Introducere ın teoria structurala a sistemelorliniare, EA Bucuresti, 1975.

[ 3 ] Aplevich J.D. Direct Computation of Canonical Forms for LinearSystems 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 LinearSystems, 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 ControllabilityForm, 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. Computationof 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. ComputingSVD 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-negativeDefinite Lyapunov Equations, IMA J. numer. Anal., Vol. 2, pp. 303– 323, 1982.


Recommended