INTRODUCERE ………………………….. ………………………….. ………………………….. …………………………….. [616038]
1
CUPRINS
INTRODUCERE ………………………….. ………………………….. ………………………….. ………………………….. ……… 3
CAPITOLUL 1. BREVIAR TEORETIC ………………………….. ………………………….. ………………………….. ……….. 5
1.1. Ecuații a lgebrice ………………………….. ………………………….. ………………………….. ……………………… 5
1.1.1. Rezolvarea ecuațiilor de gradul I (întâi) ………………………….. ………………………….. ……………. 5
1.1.2. Rezolvarea ecuațiilor de gradul al II -lea ………………………….. ………………………….. ………. 5
1.1.2.1. Interpretarea din punct de vedere geometric al graficului funcției de gradul al II -lea,
f(x)=ax2+bx+c referitor la cele trei situații în care se poate afla Δ ………………………….. ………….. 6
1.1.3. Rezolvarea ecuațiilor algebrice de grad superior ………………………….. ………………………….. .. 6
1.2. Sisteme de ecuații liniare ………………………….. ………………………….. ………………………….. …………. 7
1.2.1. Ge neralități ………………………….. ………………………….. ………………………….. ………………………. 7
1.2.2. Rangul unei matrice ………………………….. ………………………….. ………………………….. …………… 9
1.2.3. Compatibilitatea sistemelor liniare ………………………….. ………………………….. ………………….. 9
1.2.4. Interpretarea geometrică a sistemelor liniare cu două necunoscute ………………………….. . 11
1.2.4.1. Poziția relativă a două drepte ………………………….. ………………………….. …………………. 11
1.2.5. Interpretarea geometrică a sistemelor liniare cu trei necunoscute ………………………….. … 12
1.2.6. Forma matriceală a unui sistem de ecuații liniare ………………………….. ………………………… 13
CAPITOLUL 2. ALGORITMI DE REZOLVARE A SISTEMELOR DE ECUAȚII ALGEBRICE ………………………… 14
2.1. Metoda substituției (înlocuirii) ………………………….. ………………………….. ………………………….. … 14
2.2. Metoda reducerii ………………………….. ………………………….. ………………………….. …………………… 15
2.3. Metoda Cramer de rezolvare a sistemelor liniare ………………………….. ………………………….. …… 16
2.4. Metoda de rezolvare a unui sistem liniar oarecare ………………………….. ………………………….. …. 17
2.5. Metoda de rezolvare a unui sistem omogen de ecuații liniare ………………………….. ……………… 17
2.6. Metoda de rezolvare matriceală a sistemelor liniare ………………………….. ………………………….. 18
2.7. Metoda lui Gauss de eliminare ………………………….. ………………………….. ………………………….. … 19
2.8. Metode de rezolvare a sistemelor de ecuații exponențiale sau logaritmice ……………………….. 21
2.9. Meto de de rezolvare a sistemelor de ecuații cu permutări, aranjamente sau combinări ……… 21
2.10.Metoda computațională de rezolvare a sistemelor de ecuații algebrice ………………………….. .. 22
CAPITOLUL 3. MATLAB. NOȚIUNI FUNDAMENTALE ………………………….. ………………………….. ………….. 24
3.1. Prezentare MATLAB® ………………………….. ………………………….. ………………………….. ……………… 24
2
3.2. Comenzi și funcții principale în MATLAB ………………………….. ………………………….. ……………….. 27
3.2.1. Funcții Matlab generale ………………………….. ………………………….. ………………………….. ……. 27
3.2.2. Variabile și constante speciale. ………………………….. ………………………….. ……………………… 29
3.3. Matricile, elemente de bază în Matlab ………………………….. ………………………….. …………………. 30
3.4. Calcul simbolic în matlab ………………………….. ………………………….. ………………………….. ………… 31
3.4.1. Vari abilele simbolice. ………………………….. ………………………….. ………………………….. ………. 31
3.4.2. Matrice simbolice ………………………….. ………………………….. ………………………….. ……………. 33
3.5. Fișiere ………………………….. ………………………….. ………………………….. ………………………….. ……… 34
3.5.1.Fișiere ………………………….. ………………………….. ………………………….. ………………………….. … 34
3.5.2. Fișiere script (script files) ………………………….. ………………………….. ………………………….. ….. 35
3.5.3. Fișiere funcții (function files) ………………………….. ………………………….. …………………………. 35
CAPITOLUL 4. REZOLVAREA ECUAȚIILOR ALGEBRICE CU MATLAB ………………………….. ………………….. 37
4.1. Rezolvarea ecuațiilor algebrice liniare ………………………….. ………………………….. ………………….. 37
4.1.1. Noțiuni teoretice supra ecuațiilor algebrice ………………………….. ………………………….. …….. 37
4.1.2. Rezolvarea în Matlab a ecuațiilor algebrice liniare ………………………….. ……………………….. 38
4.2. Ecuații neliniare ………………………….. ………………………….. ………………………….. …………………….. 39
4.2.1. Noțiuni teoretice ………………………….. ………………………….. ………………………….. …………….. 39
4.2.2. Rezolvarea ecuațiilor transcendente cu Matlab ………………………….. ………………………….. . 40
CAPITOLUL 5. REZOLVAREA SISTEMELOR DE ECUAȚII CU MATLAB ………………………….. …………………. 43
5.1. Rezolvarea sistemelor de ecuații liniare ………………………….. ………………………….. ………………… 43
5.1.1. Noțiuni teoretice ………………………….. ………………………….. ………………………….. …………….. 43
5.1.2. Sisteme de ecuații liniare rezolvate cu Matlab ………………………….. ………………………….. … 45
5.2. Rezolva rea sistemelor de ecuații folosind metode numerice ………………………….. ……………….. 54
5.2.1. Noțiuni teoretice ………………………….. ………………………….. ………………………….. …………….. 54
5.2.2. Metoda iterativa Jacobi pentru rezolvar ea sistemelor de ecuații liniare ………………………. 54
5.3. Rezolvarea sistemelor de ecuații neliniare ………………………….. ………………………….. …………….. 56
5.3.1. Noțiuni teoretice ………………………….. ………………………….. ………………………….. …………….. 56
5.3.2. Rezolvarea sistemelor neliniare cu Matlab ………………………….. ………………………….. ……… 58
CONCLUZII ………………………….. ………………………….. ………………………….. ………………………….. …………. 61
BIBLIOGRAFIE ………………………….. ………………………….. ………………………….. ………………………….. …….. 62
ANEXA ………………………….. ………………………….. ………………………….. ………………………….. ……………….. 63
3
INTRODUCERE
În matematica predată în liceu un rol important îl au capitolele care tratează ecuațiile și
sistemele de ecuații, în special, sistemele de ecuații algebrice.
Aruncând o privire de ansamblu asupra tematicii „Sisteme de ecuații algebrice” se
poate observa c ă există conținuturi referitoare la această temă în programa școlară a
disciplinei Matematică pentru clasele a IX -a, a X -a și a XI -a.
Lucrarea are ca scop prezentarea metodelor de rezolvare atât ale ecuațiilor algebrice cât și
ale sistemelor de ecuații al gebrice utilizând metodele clasice(tradiționale) precum și metode
moderne între care și softuri informatice: Maple, Matlab, sau Mathcad. În această lucrare
ocupându -ne de rezolvări cu ajutorul produsului Matlab.
Lucrarea constituie, de asemenea, un potenți al ghid pentru profesori, util în predarea la
clasă a sistemelor de ecuații algebrice prin utilizarea metodelor clasice(tradiționale), dar și a
metodelor moderne.
Importanța temei alese “Sisteme de ecua ții algebrice. Rezolv[ri cu Matlab ” derivă și
din mul titudinea și diversitatea domeniilor sau disciplinelor în care apelăm la ecuații sau
sisteme de ecuații. Se poate spune că există o mare diversitate de aplicabilitate a acestora.
Ecuațiile pot fi clasificate în:
– Ecuații algebrice
– Ecuații trigonometrice
– Ecuații matriceale
– Ecuații diferențiale
– Ecuații trans cedentale
și lista poate continua nestingherită.
La rândul lor, sistemele de ecuații pot fi:
– Sisteme liniare sau neliniare de ecuații
– Sisteme omogene de ecuații
– Sisteme de ecuații omogene
– Sisteme de ecuații simetrice
Capitolul 1 este dedicat unui breviar teoretic, necesar în rezolvarea sistemelor de
ecuații algebrice. Am făcut o incursiune și în metodele de rezolvare ale ecuațiilor algebrice
deoarece acestea intervin în sistemele de ecuații și este indispen sabil cunoașterea rezolvării
4
ecuațiilor(în special al ecuațiilor de gradul I și de gradul al II -lea). În acest capitol am dat
definițiile și teoremele necesare înțelegerii și rezolvării sistemelor de ecuații algebrice. De
asemenea, este importantă interpre tarea algebrică și geometrică a soluției unui sistem de
ecuații. Pentru realizarea acestui capitol am studiat o bibliografie de specialitate, dar am și
profitat de experiența la catedră pentru a -mi aduce o contribuție proprie.
Capitolul 2 tratează algoritm i de rezolvare a sistemelor de ecuații algebrice. M-am
referit, în principal , la sistemele de ecuații din programa de liceu .
Capitolul 3 cuprinde noțiunile fundamentale de matlab . Fac op prezentare, pe scurt a
aplicației Matlab.
Capit olul 4 conține ecuații diverse rezolvate cu matlab
În capitolul 5 abordez re zolvarea sistemelor de ecuații liniare și neliniare, util izând
algoritmi numerici și metode Matlab .
În concluzii, scot în evidență importanța matlab în matematică, inginerie și știință, în
general. De asemenea relev faptul că am realizat o sinteză cuprinzătoare asupra rezolvării
sistemelor de ecuații utilizând diverși algoritmi și aplicația Matlab și am rezolvat câteva
probleme originale . Această sinteză reprezintă contribuția proprie la această lucrare.
În Anexa, am prezentat câteva programe scrise cu matlab pentru rezolvarea sistemelor
de ecuații prin metode numerice clasice.
5
CAPITOLUL 1. BREVIAR TEORETIC
1.1. Ecuații algebrice
Ecuația algebrică este o expresie de forma:
anXn + an-1Xn-1 + …+ a 1X+a 0=0, (1)
unde :
– X este necunoscuta ecuației;
– ai, i=
n,1 sunt coeficienții necunoscutei;
– n este gradul ecuației.
Definiție. Spunem că o ecuație are soluție, dacă găsim o valoare a lui X care să îndeplinească
egalitate a (1). Valorile lui X care satisfac relația (1) se numesc rădăcini ale ecuației (1) sau
soluții ale ecuației.
1.1.1. Rezolvarea ecuațiilor de gradul I (întâi)
Ecuația de gradul I are forma generală ax +b=0, cu a≠0. Soluția ecuației obținându -se
prin împărț irea termenului liber la coeficientul necunoscutei. Așadar, 𝑥=−𝑏
𝑎 este rădăcina,
sau soluția ecuației.
1.1.2. Rezolvarea ecuațiilor de gradul al II -lea
Ecuația de gradul al II -lea are forma generală ax2+bx+c=0.
Algoritmul de rezolvare constă în ca lculul discriminantului sistemului Δ=b2-4ac. În
funcție de valoarea pe care o ia Δ, se discută existența rădăcinilor ecuației de gradul al II -lea,
astfel:
– Dacă Δ >0, ecua ția are două rădăcini reale distincte, date de formula: x1,2=
ab
2
6
– Dacă Δ=0, ecuația are două rădăcini reale egale, se mai spune că ecuația are rădăcină reală
dublă, care este dată de formula: x 1,2=
ab
2
– Dacă Δ <0, ecua ția de gradul al II -lea nu are rădăcini reale. Mulțimea soluțiilor în
fiind
mulțimea vidă. Ecuația are totuși rădăcini, dar, în mulțimea numerelor complexe numite și
imaginare.
1.1.2.1. Interpretarea din punct de vedere geometric al graficului funcției de gradul al
II-lea, f(x)=ax2+bx+c referitor la cele trei situ ații în care se poate afla Δ
– Dacă Δ>0, graficul funcției f(x)=ax2+bx+c , se reprezintă printr -o parabolă care intersectează
axa Ox în două puncte, acestea având abscisa egală cu cele două rădăcini ale ecuației f(x)=0
x1,2=
ab
2
Figura 1 Graficul funcției de gradul al doilea, când există două puncte de intersecție
– Dacă Δ=0, graficul funcției f(x)=ax2+bx+c este tot o parabolă, intersectează axa Ox într -un
singur punct, care este tocmai abscisa vârfului parabolei, 𝑥1=𝑥2=−𝑏
2𝑎.
– Dacă Δ<0, graficul funcției f(x)=ax2+bx+c nu intersectează axa Ox.
1.1.3. Rezolvarea ecuațiilor algebrice de grad superior
Rezolvarea ecuațiilor de grad superior, de grad mai mare decât gradul al II -lea necesită
vaste cunoștințe de matematică și nici măcar atunci, nu este sigur că putem afla toate
rădăcinile ecuației date. Astfel, ajungem să profităm de beneficiile și facilitățile unui soft,
precum Matlab -ul sau oricare altul.
Fără un astfel de soft putem știi doar cu aproximație intervalele în care s e găsesc
rădăcinile ecuației. Ne folosim și de faptul că între două rădăcini ale funcției există cel puțin o
rădăcină a derivatei. Există diverse metode de a rezolva o ecuație algebrică de grad superior.
Amintim aici metoda tangentei (metoda lui Newton) ș i metoda coardei(secantei).
a) Metoda tangentei
7
Metoda tangentei este utilizată atunci când dorim să rezolvăm o ecuație de forma
f(x)=0. Presupunem că funcția f este derivabilă și derivata nu se anulează. Rădăcina ecuației
este determinată ca limită a unui ș ir. Plecăm de la un punct x 0 dat. Construim termenul x n-1, iar
termenul x n se determină ca fiind abscisa intersecției dintre axa Ox și tangenta la graficul
funcției în x n-1.
Ecuația tangentei este:
y-f(xn-1)=f’(xn-1)(x- xn-1),
iar intersecția cu axa Ox se află rezolvând sistemul de ecuații:
) )( ( ) (0
1 1'
1 n n n xx xf xfyy
Se poate trage concluzia că
) () (
1'1
1
nn
n nxfxfx x
b) Metoda coardei (secantei)
Presupunem că se cunosc două aproximații inițiale ale rădăcinii, x0 și x1. Ele pot
încadra rădăci na, sau pot fi de aceeași parte a rădăcinii.
Metoda constă în următoarele:
Graficul lui f se înlocuiește cu o linie dreaptă și anume secanta prin punctele ( x0, f(x0)) și
(x1, f(x1)). Intersecția secantei cu axa O x va fi punctul x2. La pasul următor se cont inuă
procesul, luând ca aproximații x1 și x2.
1.2. Sisteme de ecuații liniare
1.2.1. Generalități
Definiție. Fie K un corp comutativ , unde 𝐾={ℝ,ℂ}.
1. Prin sistem de m ecuații liniare cu n necunoscute x 1, x2,…,x n și coeficienți în K se
înțelege un a nsamblu de egalități de forma:
(S)
mn n mn m mnnnn
b xa xaxab xa xaxab xa xaxa
……….. ………. ………. ………. …………….
2 2 112 2 2 22 1 211 1 2 12 1 11 , aij, bi
K
8
Dacă b 1=b2=…=b m=0, atunci spunem că (S) este un sistem omogen .
2. Un vector
X = (x 1,×2,…,x m)
Kn
este soluție pentru ( S) dacă înlocuind necunoscutele sistemului cu componentele vectorului
X := xi
toate egalitățile ce se obțin sunt adevărate.
3. Sistemul ( S) este compatibil dacă are cel puțin o soluție și este incompatibil dacă nu
are soluții.
4. Sistemul ( S) este compatibil determinat dacă are exact o soluție, iar dacă are cel
puțin două soluții, spunem că sistemul este compatibil nedeterminat (cu variantele: simplu
nedeterminat când are o necunoscută secundară, dublu nedeterminat când are două
necunoscute secundare, triplu nedeterminat când are trei necunoscute secundare, și așa mai
departe).
Definiție. Fiind dat un sistem ( S), matricea A = (aij) se numește matricea sitemului (S).
A=
mn nm m mn nn n
a a a aa a a aa a a a
1, 2 12 1,2 22 211 1,1 12 11
……….. …… …… …… …………….. , iar matricea 𝐴̅=
m mn m mnn
b a a ab a a ab a a a
………… …….. ……. ….. ……………..
2 12 2 22 211 1 12 11
se numește matricea extinsă atașată s istemului de ecuații (S).
Observație. (Forma matriceală ) Dacă A = [aij] este matricea sistemului ( S), atunci sistemul de
ecuații poate fi scris sub forma matriceală:
(S) AX t = bt,
unde:
X = (x 1,×2,…,x m) ,
b=(b 1,b2,…,b m)
Xt este transpusa matri cei X;
bt este transpusa matricei b.
9
Definiție. Determinanții caracteristici sunt determinanții care se obțin din determinantul
principal prin bordarea cu o linie și o coloană.
Pe linie se trec coeficienții necunoscutelor principale dintr -o ecuație secun dară, iar pe
coloană termenii liberi din ecuațiile principale și din ecuația secundară cu care se face
bordarea.
1.2.2. Rangul unei matrice
Noțiunea de rang al unei matrice joacă un rol esențial în studiul compatibilității unui
sistem.
Fie
A=
mn nm m mn nn n
a a a aa a a aa a a a
1, 2 12 1,2 22 211 1,1 12 11
……….. …… …… …… ……………..
o matrice oarecare și considerăm un număr r, r
min{m,n} de linii și coloane din ea. Atunci
elementele situate la intersecțiile acestora formează o matrice pătratică de ordinul r, căreia i se
poate atașa determinantul său. În mod evident, dacă r
min{m,n} se pot obține mai mulți
determinanți de acest fel pe care îi numim minori de ordinul r .
Dacă presupunem că unul din minorii de ordinul r, r
min{m,n} ai matricei A este
nenul, iar to ți minorii de ordin mai mare: r+1, r+2, …, r+k
min{m,n} sunt nuli, atunci rangul
matricei A este r.
Definiție. Fie A
M m,n(₵) o matrice nenulă. Spunem că matricea A are rangul r dacă există
un minor nenul de ordi nul r, cu 1
r
min{m,n} și toți minorii lui A de ordin mai mare decât r
(dacă există ) sunt nuli. Vom nota rang(A) = r.
Observații:
1. Dacă matricea A este nulă se face convenția rang(A) =0
2. Rang(A) este ordinul maxim al minorilor nenuli.
1.2.3. Compatibilitatea sistemelor liniare
Fie un sistem liniar oarecare
10
mn n mn m mnnnn
b xa xaxab xa xaxab xa xaxa
……….. ………. ………. ………. …………….
2 2 112 2 2 22 1 211 1 2 12 1 11
matricea sa A = (aij) , 1
i
m, 1
j
n și , iar 𝐴̅ matricea extinsă (a sistemului).
Compatibilitatea sistemului de ecuații este dată de una dintre următoarele teoreme:
Teorema lui Kronecker -Capelli .
Un sistem de m ecuații cu n necunoscute notat cu (S) este compatibil dacă și numai
dacă rangul matricei si stemului este egal cu rangul matricei extinse, adică
rang(A)=rang( 𝐴̅).
Teorema lui Rouché.
Un sistem de m ecuații cu n necunoscute notat cu (S) este compatibil dacă și numai
dacă toți determinanții caracteristici sunt nuli.
Pașii algoritmului privind a naliza compatibilității și aflarea soluțiilor sunt:
1) Dacă r = rang(A) = m = n, atunci sistemul este compatibil determinat (are solutie
unică, aceasta calculându -se, eventual, cu regula lui Cramer);
2) Dacă r = rang(A) = rang(
A ) (teorema Kronecker -Capelli), sau toți minorii
caracteristici sunt nuli (teorema lui Rouché), atunci sistemul este compatibil (determinat sau
nedeterminat, rezolvarea sa făcându -se, de exemplu, cu ajutorul formulelor lui Cramer).
Observații:
Orice sistem li niar și omogen este compatibil, deoarece admite cel puțin soluția
nulă (numită și banală sau trivială): (0,0,0,…,0);
Un sistem liniar și omogen, format din m ecuații cu n necunoscute, admite și
soluții nenule (nebanale), dacă și numai dacă rang(A) < n.
11
1.2.4. Interpretarea geometrică a sistemelor liniare cu două necunoscute
Orice sistem de forma:
n n n cybxacybxacybxa
… ………. ……….2 2 21 1 1
,
i i icba ,, , i=1,2,…,n,
2n
reprezintă o familie de drepte, fiecare ecuație a sistemului fiin d ecuația unei drepte. Se pune
problema dacă toate aceste drepte au puncte comune. Problema revine în studierea
compatibilității sistemului format cu ecuațiile acestor drepte.
Discuție după rang A:
a. Dacă rang A≠rang(
A ) , în cazul nostru rang A≤2 și rang(
A )=3 sistemul de ecuații este
incompatibil, deci dreptele nu vor avea un punct comun tuturor, în acest caz dreptele
sunt paralele.
b. Dacă rang A=rang(
A )=2, sistemul de ecuații este compatibil, deci t oate dreptele au un
punct comun; vom spune că dreptele sunt concurente în acel punct comun.
c. Dacă rang A=rang(
A )=1, sistemul are o infinitate de soluții, deci și dreptele au o
infinitate de puncte comune; spunem că dreptele sunt confund ate.
Toate aceste spuse se mai pot evidenția și astfel:
Considerăm cazul particular când avem două drepte, de ecuații:
1 1 1 1:)( cybxa d
și
2 2 2 2:)( cybxa d
1.2.4.1. Poziția relativă a două drepte
a. Dreptele sunt paralele, deci nu se intersectea ză, aceasta înseamnă că sistemul este
incompatibil și se întâmplă
21
21
21
cc
bb
aa
b. Dreptele sunt secante(concurente), adică se intersectează într -un punct
21
21
bb
aa ,
ceea ce este echivalent cu determinantul sistemului să fie ≠0, adică
012 21baba ,
adică sistemul format cu cele două ecuații să fie compatibil, cu soluție unică, ce
reprezintă exact punctul de intersecție a dreptelor.
12
c. Dreptele sunt confundate, adică sistemul are o infinitate de soluții și această situație
este cân d
21
21
21
cc
bb
aa .
1.2.5. Interpretarea geometrică a sistemelor liniare cu trei necunoscute
Ecuația generală a planului este:
dcba d cz by ax ,,,,0 :)( .
Aceasta înseamnă că având un sistem de ecuații liniare cu 3 necunoscute, aceste ecuații
reprezint ă ecuațiile unor plane. A studia compatibilitatea sistemului înseamnă a studia dacă
planele au puncte comune sau nu.
Știm că dacă două plane au un punct comun, ele vor avea o dreaptă comună, deci, așa
ca la poziția relativă a două drepte vor exista trei c azuri în care se pot afla planele ale căror
ecuații formează sistemul considerat.
n n n n dzcybxadzcybxadzcybxa
.. ………. ………. ……….2 2 2 21 1 1 1
,
i i i i dcba ,,, , i=1,2,…,n,
2n
Ecuațiile sistemului reprezintă o familie de plane (
)( ),…,(),2 1 n . Dacă există o
soluție a sistemului notată cu
),,(0 0 0 zyx , se poate trage concluzia că punctul M
),,(0 0 0 zyx
este comun tuturor planelor (
)( ),…,(),2 1 n .
Discuție după rang A:
a. Dacă rang(
A )=4, deoarece rang A≤3, rezultă, conform teoremei lui Kronecker –
Capelli că sistemul este incompatibil, deci nu există un punct comun tuturor planelor.
b. Dacă rang(
A )=rang A=3 atunci sistemul are soluție unică, iar planele au un punct
comun, fiind concurente în acel pun ct. Condițiile ca 4 plane să fie concurente într -un
punct este ca determinantul
4 4 4 43 3 3 32 2 2 21 1 1 1
d c b ad c b ad c b ad c b a =0 și cel puțin un minor de ordinul 3 să
fie nenul.
c. Dacă rang(
A )=rang A=2 atunci sistemul este compatibil și are o infinitate de sol uții.
Deoarece în matricea A există un minor nenul rezultă că rezolvarea sistemului de 3
necunoscute se reduce la rezolvarea unui sistem de două ecuații cu două necunoscute,
13
compatibil. Din punct de vedere geometric, intersecția a două dintre plane este o
dreaptă.
d. Dacă rang(
A )=rang A=1 atunci sistemul este compatibil și are o infinitate de soluții.
În acest caz toți minorii caracteristici sunt nuli. Rezultă
21
21
21
21
dd
cc
bb
aa , deci
planele în acest caz sunt confundate.
1.2.6. Form a matriceală a unui sistem de ecuații liniare
În Programa școlară pentru clasa a XI -a este prevăzut să se studieze doar cazul în care
sistemele au un număr de două sau trei necunos cute (n=2,3).
Orice sistem de n ecuații cu n necunoscute se poate scrie și sub formă matriceală și se
poate rezolva matriceal doar dacă determinantul matricei sistemului este diferit de 0. Se va
ajunge, de fapt, la rezolvarea unei ecuații matriceale de forma AX=B, unde A este matricea
pătratică a sistemului de ecuații, formată din coeficienții necunoscutelor, matricea X este
matrice coloană formată din necunoscutele sistemului, iar matricea B este matricea coloană a
termenilor liberi. Se ajunge astfel, ca sistemul de ecuații liniare(pentru n=3),
3 33 32 312 23 22 211 13 12 11
bzayaxabzayaxabzayaxa
să se scri e sub forma:
33 32 3123 22 2113 12 11
a a aa a aa a a
∙
321
bbb
zyx .
14
CAPITOLUL 2. ALGORITMI DE REZOLVARE A SISTEMELOR DE
ECUAȚII ALGEBRICE
Metodele de rezolvare ale sistemelor de ecuații liniare, le putem împărți în două
categorii: metode directe care pr esupun un număr finit de operații și metode indirecte care
implică un număr infinit de operații.
2.1. Metoda substituției (înlocuirii)
Metoda substituției cunoscută din clasele gimnaziale este o metodă care se pretează a
fi folosită în special când unul din coeficienții necunoscutei este egal cu 1 sau cu -1. De
asemenea există situații când rezolvarea se poate face doar făcând o substituție și atunci
metoda mai sus amintită este inevitabilă.
Metoda substituției constă în exprimarea unei necunoscute dintr -o ecuație în funcție de
celelalte necunoscute și înlocuirea necunoscutei substituite în toate ecuațiile sistemului,
urmând a se obține un sistem cu un număr de ecuații și de necunoscute mai puțin cu unu față
de sistemul inițial. Procedeul substituirii con tinuă până la obținerea unei valori a unei
necunoscute, urmând a se înlocui acea valoare în ecuațiile obținute și astfel să se afle toate
valorile necunoscutelor sistemului.
Metoda substituției este evidențiată în cele ce urmează. Ca și caz particular, am ales
n=2, adică un sistem de două ecuații cu două necunoscute.
2 2 22 1 211 2 12 1 11
b xaxab xaxa
Vom separa necunoscuta
1x de
2x în prima ecuație și vom obține sistemul:
2 2 22 1 212 12 1 1 11
b xaxaxab xa
,
iar apoi vom exprima
1x în funcție de
2x și rezultă
112 12 1
1axabx
15
valoarea lui
1x va fi substituită în cea de a doua ecuație a sistemului obținând astfel:
2 2 22
112 12 1
21112 12 1
1
b xaaxabaaxabx
.
Vom afla singura necunoscută
2x din a doua ecuație a sistemului, iar apoi valoarea ei o vom
înlocui în prima ecuație a ultimului sistem obținut
2.2. Metoda reducerii
Familiară încă din clasele gimnaziale, este metoda prin care dorim să eliminăm una
dintre necunoscutele siste mului. Algoritmul parcurge următorii pași:
– alegem două ecuații în care vom elimina o necunoscută
– înmulțim fiecare dintre ecuații cu un număr, astfel încât prin adunarea ecuațiilor să se
reducă una dintre necunoscute;
– eliminăm aceeași necunoscută și din res tul ecuațiilor;
– eliminarea se oprește atunci când obținem un sistem de două ecuații cu două
necunoscute pe care îl rezolvăm tot prin reducere (eliminând una din necunoscute);
– algoritmul poate continua prin aceeași metodă, eliminând și a doua necunoscută sa u
folosind metoda substituției, care constă în înlocuirea în sistem a uneia dintre
necunoscute cu valoarea aflată anterior.
Metoda reducerii este evidențiată în cele ce urmează. Ca și caz particular, am ales n=2,
adică un sistem de două ecuații cu două nec unoscute.
2 2 22 1 211 2 12 1 11
b xaxab xaxa
Aplicând metoda reducerii, obținem sistemul
1 21 2 11 2)21 12 22 112 12 1 22 1 21 12 22 11
() (
ba ba xaa aababa xaa aa
și dacă
021 12 22 11 aa aa , atunci sistemul este compatibil cu soluția (x 1,×2) dată de:
21 12 22 112 12 1 22
1aa aababax
;
21 12 22 111 21 2 11
2aa aaba bax .
16
Observăm că în exprimarea soluției apar determinanții:
22 2112 11
21 12 22 11a aa aaa aa
numit determinantul matricei sistemului,
22 212 1
2 12 1 22 1a ba bbaba x (obținut din Δ prin
înlocuirea coeficienților necunoscutei x 1 cu coloana termenilor liberi b 1 și b 2) și
2 211 11
1 21 2 11 2b ab aba ba x
(obținut din Δ prin înlocuirea coeficienților necunoscutei x 2 cu
coloana termenilor liberi b 1 și b 2).
În concluzie, dacă Δ≠0, soluția sistemului va fi perechea
1
1xx ;
2
2xx .
2.3. Metoda Cramer de rezolvare a sistemelor li niare
Metoda Cramer este aplicabilă sistemelor de n ecuații cu n necunoscute, dacă
determinantul Δ al matricei sistemului este nenul (Δ≠0), cerință care este o condiție suficientă
de compatibilitate conform teoremei lui Kronecker -Capelli, deoarece rang A=rang
A .
Considerând cazul particular n=3, vom avea sistemul de 3 ecuații cu 3 necunoscute:
3 3 33 2 32 1 312 3 23 2 22 1 211 3 13 2 12 1 11
b xa xaxab xa xaxab xa xaxa
și conform metodei Cramer, dacă determinantul Δ=
33 32 3123 22 2113 12 11
a a aa a aa a a ≠0 atunci sistemul de
ecuații este compatibil( are s oluție) bine determinat și soluția este dată de formulele lui
Cramer. Soluția sistemului este tripletul:
1
1xx ;
2
2xx ;
3
3xx , unde:
1x
33 32 323 22 213 12 1
a a ba a ba a b
,
2x
33 3 3123 2 2113 1 11
a b aa b aa b a ,
3x
3 32 312 22 211 12 11
b a ab a ab a a .
17
2.4. Metoda de rezolvare a unui sistem liniar oarecare
În astfel de sisteme, există m ecuații cu n necunoscute. Se pune problema
compatibilității sau incompatibilității. În cazul în ca re sistemul este compatibil, va trebui să -i
determinăm soluția sau soluțiile, dacă sistemul este nedeterminat.
Aplicând Teorema lui Kronecker -Capelli (Un sistem de m ecuații cu n necunoscute
este compatibil dacă și numai dacă rangul matricei sistemului est e egal cu rangul matricei
extinse, adică r= rang(A)=rang(
A )).
Dacă rangul r<n, atunci sistemul va avea n-r necunoscute secundare, pe care, de
obicei, le notăm cu litere grecești și în funcție de ele vom exprima cele r necunoscute
princ ipale prin rezolvarea sistemului format cu cele r ecuații principale și r necunoscute
principale. Aplicăm metoda lui Cramer unui sistem de r ecuații cu r necunoscute, în care
determinantul sistemului este nenul (≠0). În acest algoritm, necunoscutele secund are, cele
notate cu litere grecești la vom separa de necunoscutele principale prin trecerea lor în
membrul drept al egalității.
Determinantul de ordin r este numit determinantul principal al sistemului. Toți
determinanții obținuți prin bordarea determinant ului principal se numesc determinanți
caracteristici, și conform Teoremei lui Rouché (Un sistem de m ecuații cu n necunoscute este
compatibil dacă și numai dacă toți determinanții caracteristici sunt nuli).
Dacă există un singur determinant caracteristic ≠ 0 va rezulta că sistemul este
incompatibil, adică nu are soluție.
Dacă rangul r=n, atunci sistemul are soluție unică.
2.5. Metoda de rezolvare a unui sistem omogen de ecuații liniare
Un sistem liniar omogen este acel sistem care are matricea termenilor liberi nulă. În
acest caz rangul matricei sistemului este egal cu rangul matricei extinse și conform teoremei
lui Kronecker –Capelli, sistemul este compatibil întotdeauna și soluția sistemului omogen este
numită soluția nulă, banală sau trivială, ea fiind egală cu (0,0,..,0).
Pentru ca un sistem omogen să aibă și altă soluție diferită de cea banală, trebuie ca
determinantul sistemului să fie nul, deci r=rang A<n. În acest caz vom găsi un sistem cu r
18
ecuații principale și r necunoscute principale care se vor exprima în funcție de cele n -r
necunoscute secundare. Vom aplica metoda lui Cramer sau metoda lui Gauss.
2.6. Metoda de rezolvare matriceală a sistemelor liniare
Sistemele liniare de n ecuații cu n necunoscute ale căror matrice pătratice sunt
nesingulare (adică determinantul matricei sistemului ≠0) se pot rezolva matriceal. Vom
prezenta în continuare metoda matriceală de rezolvare a sistemelor liniare.
Facem următoarele notații: A este matricea sistemului de ecuații, X este matricea
coloană a necunoscutel or, iar B este matricea termenilor liberi.
Ne propunem să rezolvăm ecuația matriceală AX=B, condiția este ca det A≠0. În
rezolvarea ecuației matriceale intervine noțiunea de inversă a unei matrice. Este nevoie să
cunoaștem cum se calculează inversa unei ma trice, notată cu A-1.
Există un algoritm de a calcula A-1. Pornind de la matricea A=
33 32 3123 22 2113 12 11
a a aa a aa a a vom
scrie matricea transpusă TA=
33 23 1332 22 1231 21 11
a a aa a aa a a care se obține din matricea A inversând liniile
cu coloanele(astfel, linia întâi a matricei A devine coloana întâi a matricei TA, a doua linie a
matricei A va deveni a doua coloană din TA, și așa se continuă până la finalizarea tuturor
liniilor lui A, care au devenit coloane în TA. În pasul următor, pornind de la TA vom calcula
matricea adjunctă A*, astfel A*=
33 32 3123 22 2113 12 11
A A AA A AA A A , unde
ijji
ij d A )1( se numesc
complemenți algebrici și se obțin din matricea TA prin suprimarea liniei i și a coloanei j .
Dacă matricea inițială este de ordinul 2 și matricea TA va avea același ordin, deci, pr in
suprimarea unei linii și a unei coloane vom obține patru numere numite minori algebrici, pe
care i -am notat mai sus prin
ijd . În cazul în care matricea inițială este de ordinul 3, prin
suprimarea unei linii și a unei coloane din TA vo m obține 9 determinanți (minori algebrici) pe
care înmulțindu -i cu
ji)1( vor rezulta cei 9 complemenți algebrici care vor constitui
19
elementele matricei A*. În final vom obține inversa matricei A prin împărțirea matricei
adjuncte cu detA. Fo rmula care se aplică este
* 1
det1AAA
.
Revenim la rezolvarea ecuației matriceale AX=B. Deoarece înmulțirea matricelor nu
este comutativă, vom înmulți în ambii membri ecuația AX=B la stânga cu inversa matricei A
notată cu A-1 și vom obține X= A-1B. De foarte multe ori A-1 are elemente fracții ceea ce
îngreunează înmulțirea matricelor. Vom simplifica rezolvarea prin exprimarea lui A-1 cu
ajutorul matricei adjuncte A*. Ținând cont că A-1=
*
det1AA va rezulta X=
BAA*
det1 . Vom
înmulți mai întâi
BA* și apoi vom împărți matricea rezultată cu detA.
Rezultatul obținut este de forma:
X=
nxxx
21
naaa
21 𝑋=(𝑥1
𝑥2
⋮
𝑥𝑛)=(𝑎1
𝑎2
⋮
𝑎𝑛)
din care rezultă c ă
k ka x , k=1,2,…,n și deci (
) ,…,,2 1 na aa este soluția sistemului, obținută
prin metoda matriceală.
2.7. Metoda lui Gauss de eliminare
Această metodă constă în realizarea unui sistem triunghiular prin eliminarea
termenilor de s ub diagonala principală, sistemul (S). Pentru aceasta se analizează toți termenii
ak1 , k=1,…, n și ecuația care are coeficientul lui a 11 egal cu 1 este adusă pe primul loc. Dacă
toți coeficienții ak1 =0 pentru k=1,…, n sistemul este incompatibil. Prima ecuație a sistemului
după reordonare se înmulțește pe rând cu factorul :
mk1=
111
aak , k=2, … , n
și se scade din ecuația de pe poziția k, obținând pe coloana 1 toți termenii zero în afară de a11.
Procedeul continuă cu linia și coloana a doua, prima linie și prima coloană rămânând
neschimbate. Ultimul index de linie pentru care se aplică acest procedeu este n-1.
Luăm cazul particular n=4 pentru a ușura înțelegerea algoritmului.
20
Această metodă presupune rezolvarea unui sistem de n ecuații c u n necunoscute, în cazul
particular n=4.
La realizarea programelor pentru calculator este cea mai indicată metodă, deoarece se
pretează cel mai bine.
Considerăm sistemul
4 4 44 3 43 2 42 1 413 4 34 3 33 2 32 1 312 4 24 3 23 2 22 1 211 4 14 3 13 2 12 1 11
b xa xa xaxab xa xa xaxab xa xa xaxab xa xa xaxa
și aplicăm algoritmul metodei lui Gauss de eliminare. Vom pa rcurge următorii pași:
Pasul 1.
Dacă
011a , îl vom numi pivot (în cazul în care
011a , vom folosi o altă ecuație în
care coeficientul lui x 1 este nenul).
Împărțim întreaga ecuație a pivotului cu
11a , iar apoi eliminăm necunoscuta x 1 între
această ecuație și celelalte ecuații din sistem. Astfel, sistemul va căpăta forma:
)1(
4 4)1(
44 3)1(
43 2)1(
42)1(
3 4)1(
34 3)1(
33 2)1(
32)1(
2 4)1(
24 3)1(
23 2)1(
22)1(
1 4)1(
14 3)1(
13 2)1(
12 1
b xa xa xab xa xa xab xa xa xab xa xa xax
Dacă într -una dintre ecuații necunoscuta x 1 are coeficientul egal cu unu, atunci acea
ecuație se va scrie ca pr ima din sistem și aplicăm pasul 1.
Pasul 2.
Căutăm în a doua ecuație un pivot, și în continuare procedăm ca la pasul 1, doar că
între ecuația a doua și a treia, respectiv a patra vom elimina x 2. Astfel, sistemul devine:
)2(
4 4)2(
44 3)2(
43)2(
3 4)2(
34 3)2(
33)2(
2 4)2(
24 3)2(
23 2)1(
1 4)1(
14 3)1(
13 2)1(
12 1
b xa xab xa xab xa xa xb xa xa xax
Pasul 3.
Procedăm analog cu pașii anteriori și astfel sistemul devine:
21
)3(
4 4)3(
44)3(
3 4)3(
34 3)2(
2 4)2(
24 3)2(
23 2)1(
1 4)1(
14 3)1(
13 2)1(
12 1
b xab xa xb xa xa xb xa xa xax
Pasul 4.
Vom afla valorile lui x k în ordine inversă, pornind de la ultima ecuație a sistemului
obținut. Valoarea aflată o vom înlocui în penultima ecuație și continuăm să aflăm pe rând
valorile necunoscutelor pe măsură ce ne apropiem de prima ecuație.
2.8. Metode de rezolvare a sistemelor de ecuații exponențiale sau
logaritmice
Sisteme de ecuații exponențiale și logaritmice găsim din ce în ce mai puține în
manualele de liceu sau în noile culegeri de matematică. Astfel de sisteme le putem găsi în
manualele de clasa a X -a. În general, sistemele de ecuații exponențiale sau logaritmice se
rezolvă prin metoda substituției și apoi se ajunge la rezolvarea unei ecuații de gradul I sau
gradul al II -lea într -o altă variabilă. În cele din urmă, întorcându -ne la substituția făcută vom
rezolva o ecuație de forma
t ax (1) sau de forma
txa log (2), unde t este noua variabilă
pe care trebuie să o aflăm. Ec uația (1) se rezolvă logaritmând -o în baza necunoscutei (în baza
a) și vom obține
t xalog , condițiile ce se impun sunt: a>0, a≠1 și t>0. Dacă din calculul lui
t obținem t<0, spunem că ecuația (1) nu are soluții reale, deci mulțimea soluțiilo r este
mulțimea vidă.
Ecuația (2) are ca soluție x=at, în această ecuație condițiile ce se impun sunt: a>0, a≠1
și x>0.
2.9. Metode de rezolvare a sistemelor de ecuații cu permutări, aranjamente
sau combinări
În conținuturile disciplinei Matematică de cla sa a X -a se găsesc sisteme de ecuații la
unitatea de învățare Elemente de Combinatorică sau Metode de numărare. De obicei se
ajunge la rezolvarea unui sistem de două ecuații liniare cu două necunoscute. Trebuie și aici
să punem condițiile de existență, ast fel:
22
– pentru permutări P n=n! vom pune condiția n ≥ 0;
– pentru aranjamente
k
nA vom pune condi țiile n
*N și k
N , 0≤ k ≤ n;
– pentru combinări
k
nC vom pune condi țiile n
*N și k
N , 0≤ k ≤ n.
Rezolvarea sistemului de ecuații nu implică dificultăți, trebuie doar cunoscute formulele prin
care se exprimă
k
nA și
k
nC în funcție de n!,
)! (!
knnAk
n sau
k
nA = n(n -1)…(n -k+1), iar
)! (!!
knknCk
n
sau
!kACk
n k
n .
În Capitolul 3 se vor găsi cîteva exerciții propuse care cuprind rezolvarea sistemelor de
ecuații exponențiale, logaritmice și cu elemente de combinatorică.
2.10.Meto da computațională de rezolvare a sistemelor de ecuații algebrice12
Dezvoltarea informaticii a dus la apariția softurilor care rezolvă probleme de
diversități multiple. Așa este și apariția produselor soft: Maple, MATLAB , MathCAD. Sunt
necesare câteva noți uni elementare de folosire a softului cu care vom lucra, acesta fiin d
MATLAB .
MATLAB (Matrix Laboratory ) este un mediu de dezvoltare pentru calcul numeric si
analiza statistica care con ține limbajul de programare cu acela și nume, creat de MathWorks .
MATLAB permite manipularea matric elor, vizualizarea func țiilor, implementarea
algoritmilor, crearea de interfe țe și poate interac ționa cu alte aplica ții.
Chiar dac ă este specializat in calcul numeric, exista pachete care îi permit s ă
interac ționeze cu motoarele de calcul simbolic gen Maple . Un pachet adiț ional, Simulink ,
oferă posibilitatea de a realiza simul ări a sistemelor dinamice și utilizâ nd modele matematice.
MATLAB e utilizat pe larg in industrie, î n universit ăți și este disponibil Cross-
Platform, sub div erse sisteme de operare: Windows, GNU/Linux, UNIX si Mac OS
1
http://aparate.elth.uc v.ro/IVANOV/Discipline%20predate/Aplicatii%20in%20Mathcad%20si%20Matlab/Labora
tor/Lucrarea%201.pdf
2 Cira, Octavian, Aplicații, probleme și exerciții rezolvate cu Mathcad -ul, Ed. Matrix Rom, București 2010
23
Resursele sale de calcul și reprezentare grafică sunt bogate, permițând operații
matematice fundamentale, analiza datelor, programare, reprezentări grafice 2D și 3D,
realizarea de interfețe grafic e etc. Din punct de vedere al construcției sale, MATLAB este
alcătuit dintr -un nucleu de bază în jurul căruia sunt grupate TOOLBOX -urile.
24
CAPITOLUL 3. MATLAB. NOȚIUNI FUNDAMENTALE
3.1. Prezentare MATLAB®
MATLAB este un limbaj de îna ltă performanță pentru proiectarea asistată de
calculator. MATLAB este în același timp un limbaj de programare și un sistem de dezvoltare
care integrează calculul, vizualizarea și programarea într -un mediu ușor de utilizat (easy -to-
use), problemele și solu țiile acestor probleme fiind exprimate într -un limbaj matematic
accesibil.
Domenii de utilizare :
Matematică și calcul numeric
Dezvoltarea algoritmilor
Modelare, simulare și testarea prototipurilor
Analiza și vizualizarea datelor
Grafica inginerească și din științele aplicate
Dezvoltarea de aplicații, inclusiv GUI
MATLAB este un sistem interactiv care are ca element de bază matricea, ceea ce
permite rezolvarea problemelor de calcul numeric, în special cele care necesită prelucrar ea de
vectori sau matrici.
Numele MATLAB provine de la Matrix laboratory. Firma producătoare este The
MathWorks, Inc., SUA
MATLABs -a dezvoltat în mediul universitar, unde este pachetul standard pentru
cursurile introductive și avansate de matematică, ingi nerie și științe, precum și în industrie,
unde este utilizat pentru cercetarea de înalt randament, dezvoltare și producție.
MATLAB permite dezvoltarea unei familii de aplicații sub forma toolbox -urilor.
Aceste toolbox -uri permit învățarea și aplicarea tehn ologiilor specializate din diverse domenii.
Sunt disponibile toolbox -uri pentru domenii cum ar fi: procesarea numerică a semnalelor,
sisteme de conducere automată, rețele neurale, logică fuzzy, wavelet, simulare ( SIMULINK ),
identificare etc.
Sistemul MATLA B constă în cinci părți principale:
Limbajul MATLAB
25
Mediul de lucru MATLAB
Handle Graphics®
Biblioteca de funcții matematice ale MATLAB -ului
Interfața de aplicații program ale MATLAB -ului (API)
Limbajul MATLAB: Reprezintă un limbaj de nivel înalt de tip matrice/tablou cu
instrucțiuni de control al salturilor, funcții, structuri de date, intrări/ieșiri și cu proprietăți de
programare orientată pe obiecte. Facilitățile de programare sunt organizate pe 6 directoare:
ops Operators and special charac ters.
Lang Programming language constructs.
Strfun Character strings.
Iofun File input/output.
Timefun Time and dates.
Datatypes Data types and structures.
Mediul de lucru MATLAB: Reprezintă un set de facilități care permit manevrarea
variabilelor î n spațiul de lucru, importul și exportul de date, dezvoltarea, manipularea,
editarea și depanarea fișierelor MATLAB (.m) și a aplicațiilor MATLAB. Aceste facilități
sunt organizate în directorul:
general General purpose commands.
Handle Graphic s®: Reprezintă sistemul grafic al MATLAB -ului. Cuprinde comenzi
de înalt nivel pentru vizualizarea datelor bi și tri -dimensionale, procesarea imaginilor,
animație, prezentări de grafice. Permite de asemenea utilizarea unor comenzi de nivel scăzut
pentru cr earea unor interfețe grafice GUI. Funcțiile grafice sunt organizate în 5 directoare:
graph2d Two-dimensional graphs.
Graph3d Three -dimensional graphs.
Specgraph Specialized graphs.
Graphics Handle Graphics.
Uitools Graphical user interface too ls.
26
Biblioteca de funcții matematice a MATLAB -ului: Reprezintă o colecție complexă de
algoritmi de calcul pornind de la funcții elementare (sinus, cosinus etc.) până la funcții
sofisticate (inversarea de matrice, valori proprii, funcții Bessel, FFT etc.). Funcțiile
matematice sunt organizate în 8 directoare:
elmat Elementary matrices and matrix manipulation.
Elfun Elementary math functions.
Specfun Specialized math functions.
Matfun Matrix functions – numerical linear algebra.
Datafun Data an alysis and Fourier transforms.
Polyfun Interpolation and polynomials.
Funfun Function functions and ODE solvers.
Sparfun Sparse matrices.
Interfața de aplicații program a MATLAB -ului (API) este o bibliotecă care permite
scrierea de programe în C sau F ortran care interacționează cu MATLAB -ul. Include facilități
pentru apelarea rutinelor din MATLAB, apelarea MATLAB -ului ca mașină de calcul, scrierea
și citirea fișierelor de tip .MAT .
Pachetul SIMULINK
SIMULINK® este un pachet software atașat MATLAB -ului și reprezintă un
sistem interactiv pentru simularea dinamicii sistemelor neliniare (bineînțeles și a celor
liniare). Este conceput sub forma unei interfețe grafice care permite crearea unui
model prin “trasarea” schemei bloc a sistemului și apoi simulare a dinamicii sistemului.
SIMULINK poate lucra cu sisteme liniare, neliniare, continue, discrete,
multivariabile etc.
SIMULINK bebeficiază de așa -numitele Blockset -uri care sunt de fapt
biblioteci suplimentare care conțin aplicații specializate din domenii c um ar fi:
comunicații, procesarea semnalelor etc.
Real-time Workshop® este un program foarte important care permite generarea
unui cod C pentru schemele bloc create în SIMULINK și prin urmare permite rularea
de aplicații în timp real de o mare diversitate .
27
Toolbox -urile MATLAB
Toolbox -urile reprezintă o familie de aplicații care permit învățarea și aplicarea
tehnologiilor specializate din diverse domenii. Aceste toolbox -uri sunt colecții de funcții
MATLAB (functions) (M -files) care extind mediul MATLAB p entru rezolvarea unor clase
particulare de probleme. Câteva din cele mai utilizate aplicații sunt prezentate în figura
următoare.
MATLAB lucrează cu expresii matematice ca și celelalte limbaje de programare, dar spre
deosebire de majoritatea acestor limbaj e, aceste expresii implică la scară largă lucrul cu
matrici.
Expresiile sunt alcătuite cu ajutorul următoarelor tipuri:
Variabile
Numere
Operatori
Funcții
3.2. Comenzi și funcții principale în MATLAB
MATLAB operează cu două tipuri de ferestre:
1. fer eastra de comenzi;
2. fereastra pentru reprezentări grafice.
La deschiderea programului MATLAB va apărea pe ecranul calculatorului fereastra de
comenzi, având în partea de sus bara de meniuri aferentă. Simbolul “>>” reprezintă
prompterul MATLAB și se afl ă la începutul fiecărei linii de comandă din fereastra de
comenzi. Ferestrele pentru reprezentări grafice vor apărea atunci când se va cere prin comenzi
specifice afișarea unor grafice.
3.2.1. Funcții Matlab generale
1. Funcția HELP
Furnizează informații despre MATLAB și funcțiile acestuia. Sintaxă: help nume –
furnizează informații despre nume (poate fi un nume de funcție sau un nume de director).
28
Exemple sugestive de utilizare a comenzii help:
» help sin
SIN Sine.
SIN(X) is the sine of the elements o f X.
Overloaded methods
help sym/sin.m
» help exp
EXP Exponential.
EXP(X) is the exponential of the elements of X, e
to the X.
For complex Z=X+i*Y, EXP(Z) =
EXP(X)*(COS(Y)+i*SIN(Y)).
2. Funcția WHO.
Listează numele variabilelor din spaț iul de lucru.
3. Funcția WHOS.
Furnizează informații suplimentare referitoare la variabilele din spațiul de lucru
(nume, dimensiune etc.).
4. Funcția Format.
Stabilește formatul extern de afișare al numerelor pe ecran.
Sintaxa:
format opțiune – parametru l opțiune poate fi:
– short – 5 cifre // formatul implicit
– long – 15 cifre
– short e – 5 cifre + exp (puteri ale lui 10)
– long e – 15 cifre + exp (puteri ale lui 10)
etc.
29
5. Funcția CLEAR.
Șterge din memorie una sau mai multe variabile.
6. Funcția DIR
Afișează numele tuturor fișierelor din directorul curent sau din orice alt director
precizat ca argument
7. Funcția CD
Returnează numele directorului curent sau schimbă directorul de lucru.
3.2.2. Variabile și constante speciale.
Voi prezenta succint cele mai importante variabile și constante speciale
1. ans. Este o variabilă creată automat în care este returnat rezultatul unui calcul, atunci când
expresia nu a avut asignat un nume.
2. pi – valoarea π.
3. Inf – reprezentarea lui +∞.
4. NaN – reprezenta rea lui 0/0 sau ∞/∞.
5. i sau j – folosite reprezentarea numerelor complexe.
Observație
– dacă după o linie de comandă urmează semnul “ ; ” atunci rezultatul nu va mai fi
afișat (excepție fac comenzile grafice);
– dacă în fața unei linii de comandă se pun e semnul “ % ” atunci se face abstracție de
linia respectivă (este interpretă ca o linie de comentariu);
– dacă se dorește continuarea unei instrucțiuni pe linia următoare se folosesc “…”
urmate de enter;
30
3.3. Matricile, elemente de bază în Matlab
MATLAB lucrează numai cu un singur tip de obiecte și anume matrice numerice,
având elemente reale sau complexe. Astfel scalarii sunt privi ți ca matrice de dimensiune 1 x 1,
iar vectorii ca matrice de dimensiune 1 x n (dacă
este vector linie) sau n x 1 (dacă este vector coloană).
Reguli privind modul de definire a matricelor:
– elementele matricei sunt cuprinse între paranteze drepte [ ]
– elementele unei linii se separă prin pauză (blanc) sau virgulă
– liniile matricei se separă prin ; sau enter.
Pentru a lucra u șor și bine cu limbajul MATLAB trebuie , în primul rând , să se învețe
manipularea matricilor.
În MATLAB, o matrice este un tablou dreptunghiular de numere. Scalarii de exemplu
sunt matrici 1 x 1, iar matricile cu o singură linie sau coloană sunt de fapt ve ctori.
Un exemplu celebru de matrice apare în gravura renascentistă Melancholia realizată
de marele artist și matematician amator Albrecht Dürer. Gravura este încărcată de simbolism
matematic și la o atentă observare a acesteia se poate distinge în colțul din dreapta sus o
matrice.
Matricile se pot introduce în mai multe moduri.
Introducerea unei liste explicite cu elementele matricei.
Încărcarea unor date din fișere externe de date.
Generarea de matrici utilizând funcții built -in.
Crearea de matrici î n fișierele M -files.
Trebuie respectate câteva convenții simple:
Elementele unei linii sunt separate prin virgule sau spații.
Sfârșitul unei linii se marchează cu punct și virgulă.
Lista de elemente care formează matricea se delimitează cu paranteze dre pte:[ ]
31
3.4. Calcul simbolic în matlab
În calculele practice din matematică și inginerie se utilizează obișnuit expresii
simbolice, mai ales în calculele numerice cu matrice și în calculele de analiză numerică
Pentru aceasta, Matlab utilizează Symbolic Math Toolbox , care reprezintă un grup de
instrumente matematice pentru crearea și operarea cu expresii matematice simbolice.
Obiectele simbolice folosite în caqlculul simbolic sunt: variabile, matrice și expresii
simbolice.
3.4.1. Variabilele simbolice.
Pot fi definite:
– cu instrucțiunea 𝑠𝑦𝑚 , dacă definim o singură variabilă simbolică;
Sintaxa este: 𝒔𝒚𝒎 𝑣𝑎𝑟
– cu instrucțiunea 𝑠𝑦𝑚𝑠 , dacă definim mai multr variabile simbolice;
Sintaxa este: 𝒔𝒚𝒎𝒔 𝑣𝑎𝑟1 𝑣𝑎𝑟2 …
– dând oricărei variabile o valoare simbolică, prin folosirea opersatorului =, acea
variabilă devine variabilă simbolică
Exemplu
≫𝑠𝑦𝑚𝑠 𝑎 𝑏 𝑐 % 𝑎,𝑏,𝑐,𝑠𝑢𝑛𝑡 𝑣𝑎𝑟𝑖𝑎𝑏𝑖𝑙𝑒 𝑠𝑖𝑚𝑏𝑜𝑙𝑖𝑐𝑒
≫𝑎=𝑏+𝑐
𝑎=
𝑏+𝑐
≫𝑑=𝑏+𝑐 % 𝑏,𝑐=𝑣𝑎𝑟𝑖𝑎𝑏𝑖𝑙𝑒 𝑠𝑖𝑚𝑏𝑜𝑙𝑖𝑐𝑒
32
𝑑=
𝑏+𝑐
Prin această definire, 𝑑 devine varibilă simbolică, pentru că a primit ca valoare o
expresie simbolică.
Expresiile simbolice primesc ca termeni variabile și funcții simbolice. Operatorii
folosiți sunt operstorii ar itmrtici: +,−,∗,/, \ ,^.
Priorităț íle sunt cele cunoscute din matematică.
Funcțiile matematice uzuale utilizate în expresiile simbolice sunt:
sin 𝑐𝑜𝑠 tan asin acos atan 𝑠𝑞𝑟𝑡 𝑎𝑏𝑠 exp log 𝑙𝑜𝑔10
Se po t crea oricâte funcții simbolice dorim, prin utilizarea funcției 𝑠𝑦𝑚
𝑣𝑎𝑟𝑠𝑖𝑚𝑏𝑜𝑙𝑖𝑐𝑎=𝒔𝒚𝒎(′𝑒𝑥𝑝𝑟𝑒𝑠𝑖𝑒 _𝑠𝑖𝑚𝑏𝑜𝑙𝑖𝑐𝑎 ′
De exemplu, pentru a defini funcía simbolică
𝑓(𝑥)=𝑎𝑥2+𝑏𝑥+𝑐
Pasul 1
Definim variabilele simbolice a, b, c, x, f, cu instrucțiunea 𝑠𝑦𝑚𝑠
Pasul 2
Facem atribuirea lui f ca valoare simbolică, folosind simbolul =
≫𝑠𝑦𝑚𝑠 𝑎 𝑏 𝑐 𝑥 𝑓
≫𝑓=𝑎∗𝑥2+𝑏∗𝑥+𝑐
𝑓=
𝑎∗𝑥2+𝑏∗𝑥+𝑐
A doua metodă este mai directă:
33
– definim variabilele simbolice
– facem atribuirea lui f utilizând funcția 𝑠𝑦𝑚
≫𝑠𝑦𝑚𝑠 𝑎 𝑏 𝑐 𝑥 𝑓
≫𝑓=𝑠𝑦𝑚 (′ 𝑎∗𝑥2+𝑏∗𝑥+𝑐 ′ )
3.4.2. Matrice simbolice
Au ca elemente obiecte simbolice, constante, variabile sau expresii simbolice.
Operatorii obi;nuií sunt: adunarea, scăd erea, înmulțirea. Alți operatori utilizați în calcule cu
matrice sunt prezentați în tabelul 1
Operatorul Exemplu Semnificație
/ a / b a * inv(b)
\ a \b inv(a) * b
^ a^b 𝒂𝒃
.* c=a .* b 𝒄𝒊𝒋= 𝒂𝒊𝒋∗ 𝒃𝒊𝒋
./ c = a ./ b 𝒄𝒊𝒋= 𝒂𝒊𝒋/ 𝒃𝒊𝒋
.\ c = a . \ b 𝒄𝒊𝒋= 𝒃𝒊𝒋∗ 𝒂𝒊𝒋
.^ c = a .^ b 𝒄𝒊𝒋= 𝒂𝒊𝒋^ 𝒃𝒊𝒋
Exemplu. Să se calculeze de terminant ul și inversa matricei 𝐴=[𝑎𝑏
𝑐𝑑],𝑎𝑑−𝑏𝑐≠0
Rezolvare.
≫𝑠𝑦𝑚𝑠 𝑎 𝑏 𝑐 𝑑
≫𝐴= [𝑎 𝑏;𝑐 𝑑]
𝐴=
34
[𝑎 𝑏]
[𝑐 𝑑]
≫det(𝐴)
𝑎𝑛𝑠=
𝑎∗𝑑−𝑏∗𝑐
≫𝑖𝑛𝑣(𝐴)
𝑎𝑛𝑠=
[𝑑/(𝑎∗𝑑−𝑏∗𝑐),−𝑏/(𝑎∗𝑑−𝑏∗𝑐) ]
[−𝑐/(𝑎∗𝑑−𝑏∗𝑐),𝑎/(𝑎∗𝑑−𝑏∗𝑐)]
3.5. Fișiere
3.5.1. Fișiere
MATLAB este utilizat, cel mai adesea, în modul comandă. Atunci când la prompterul
mediului este introdusă o linie de comandă, aceasta este procesată și sunt afișate rezultatele.
Dar, acest mediu este capabil de a executa secvențe de comenzi ce au fost scrise anterior în
fișiere.
Fișierele ce conțin comenzi MATLAB sunt de numite fișiere de tip m, deoarece ele au
această extensie. Un fișier de tip m constă într -o secvență de instrucțiuni normale, fiind
posibilă apariția unor apeluri ale altor fișiere de tip m. Un astfel de fișier se poate apela el
însuși.
Una din utilitățil e fișierelor m este înglobarea unor secvențe lungi de comenzi. Astfel
de fișiere se numesc fișiere script (text) . O altă categorie de fișiere sunt fișierele funcții . Ele
35
permit adăugarea unor noi funcții la cele existente. Capacitatea de a se crea noi func ții, utile
pentru rezolvarea unor probleme specifice, fac din MATLAB un mediu puternic și flexibil.
Amândouă tipurile de fișiere prezentate sunt, în esență, fișiere ASCII și pot fi create
utilizând un editor de texte.
3.5.2. Fișiere script (script files)
Când este apelat un astfel de fișier, MATLAB execută comenzile pe care le găsește în
acesta, fără a aștepta introducerea lor de la tastatură. Aceste fișiere sunt utile în rezolvarea
unor probleme ce implică un număr mare de instrucțiuni. Aceste instrucț iuni operează asupra
variabilelor din spațiul de lucru. După terminarea execuției, variabilele utilizate rămân în
spațiul de lucru.
De exemplu, secvența de instrucțiuni următoare poate fi scrisă într -un fișier f.m
%Fisier m pentru calcularea numerelor lu i Fibonacci
f=[1 1];i=1;
while f(i)+f(i+1)<1000
f(i+2)=f(i)+f(i+1);
i=i+1;
end
plot (f)
Dacă la prompterul mediului se tastează f , atunci se va executa secvența anterioară ce
calculează o secvență a numerelor Fibonacci.
3.5.3. Fișiere funcții (function files)
Dacă prima linie a unui fișier conține cuvântul function , atunci fișierul este de tip
funcție. O funcție diferă de un fișier text prin aceea că argumentele pot fi transmise,
variabilele definite și manipulate în interiorul fișierului fiind locale . De exemplu, o funcție
pentru calcularea valorii medii este următoarea:
function y=medie(x)
36
%Calculeaza media.
%Pentru vectori returneaza media elementelor.
%Pentru matrici returneaza un vector linie ce contine
%media elementelor fiecarei coloane a matri cii.
[m,n]=size(x);
if m==1
m=n
end
y=sum(x)/m;
Existența acestui fișier definește o nouă funcție MATLAB. Presupunând că numele
fișierului este medie.m , atunci această funcție poate fi utilizată ca oricare alta.
Elementele ce apar la un fișier funcție sunt:
prima linie conține numele funcției, argumentele ei precum și argumentele ce vor fi
returnate;
simbolul % indică faptul că restul liniei este un comentariu;
liniile de comentariu de la începutul fișierului vor afișate ca informații ajutătoare, la
tastarea comenzii help medie
variabilele m,y și n sunt variabile locale;
o funcție poate returna și un număr mai mare de argumente sau poate primi un număr mai
mare de argumente, prima linie punând în evidență acest lucru. De exemplu,
function[x,y]=nume_funct ie(z) sau function x=nume_functie(z,y,m) . Se poate observa că
numărul de argumente de intrare și ieșire sunt elemente importante în construcția
funcțiilor. MATLAB este prevăzut cu două funcții pentru aflarea acestor numere, și
anume nargin și nargo
Exempl e.
37
CAPITOLUL 4. REZOLVAREA ECUAȚIILOR ALGEBRICE CU
MATLAB
4.1. Rezolvarea ecuațiilor algebrice liniare
4.1.1. Noțiuni teoretice supra ecuațiilor algebrice
Forma canonică a unei ecuații algebrice cu o singură necunoscută este:
𝑃(𝑋)=0
Unde
𝑃(𝑋)= 𝑎𝑛𝑋𝑛+𝑎𝑛−1𝑋𝑛−1+⋯+𝑎1𝑋+𝑎0
n este gradul polinmului P(X), deci și al ecuației algebrice P(x)=0
𝑎𝑘 sunt coeficienții polinomului P(X), unde 𝑎𝑘∈ℂ
Un număr real sau complex 𝛼, este soluție sau rădăcină a ecuației P(x)=0, dacă și
numai dacă 𝑃(𝛼)=0
Rezolvarea simbolică a ecuațiilor algebrice
Dacă e este o variabilă simbolică care are ca valoare o expresie algebrică simbolică,
atunci ecuația
𝑒=0
Se rezolvă cu funcția MATLAB solve prin comanda:
𝑠𝑜𝑙𝑣𝑒(𝑒,𝑥)
Unde 𝑥 exte variabila din ecuație
Funcția solve poate avea ca argument o expresie simbolică, sub forma:
𝑠𝑜𝑙𝑣𝑒(′𝑒𝑥𝑝𝑟𝑒𝑠𝑖𝑒 𝑠𝑖𝑚𝑏𝑜𝑙𝑖𝑐 ă′,𝑥)
38
Rezultatul funcției solve poate fi:
– un vector de soluții cu numărul de componente egal cu numărul de variabile
– o structură în care numele câmpurilor îl reprezintă numele variabilelor ecuațiilor, când
rezultatul funcției solve este o variabilă
4.1.2. Rezolvarea în Matlab a ecuațiilor algebrice liniare
1. Determinați rădăcinile polinomului
𝑃(𝑋)=𝑋4+𝑋3−10𝑋2−34𝑋−26
Rezolvare.
≫𝑝=[1 1−10−34−26]
≫𝑥=𝑟𝑜𝑜𝑡𝑠(𝑝)
𝑥=
4.0105
−1.9342+1.3911𝑖
−1.9342−1.3911𝑖
−1.1422
2. Calculați rădăcinile polinomului
𝑃(𝑋)=𝑋5+5𝑋+1
Rezolvare.
≫𝑝=[1 0 0 5 1]
≫𝑥=𝑟𝑜𝑜𝑡𝑠(𝑝)
39
𝑥=
1.1045+1.0598𝑖
1.1045−1.0598𝑖
−1.0045+1.0609𝑖
−1.0045−1.0609𝑖
−0.1999
3. Să se rezolve ecuația de gradul doi, 𝑎𝑥2+𝑏𝑥+𝑐=0
Rezolvare:
>> syms a b c x
>> f = a*x^2+b*x+c;
>> solve(f)
ans =
-(b + (b^2 – 4*a*c)^(1/2))/(2*a)
-(b – (b^2 – 4*a*c)^(1/2) )/(2*a)
4.2. Ecuații neliniare
4.2.1. Noțiuni teoretice
Ecuațiile neliniare nu sunt ecuații algebrice. Ele se mai numesc ecuații transcendente și
nu pot fi reduce la o ecuație algebrică folosind operațiile elementare: adunare, scădere,
înmulțire, împărț ire, ridicare la putere. Printre ecuațiile transcendente, amintim:
40
– ecuațiile exponențiale
– ecuațiile logaritmice
– ecuațiile trigonometrice
– combinații între aceste ecuații și polinoame
O ecuație transcendentă are forma:
𝑓(𝑥)=𝑔(𝑥) (1)
Scrisă sub forma canonică, ecuația transcendentă devine:
𝑓(𝑥)−𝑔(𝑥)=0 (2)
Dacă notăm
ℎ(𝑥)=𝑓(𝑥)−𝑔(𝑥) (3)
ecuația canonică devine
ℎ(𝑥)=0 (4)
Ecuațiile transcendente nu pot fi rezolvate folosind metode generale de rezolvare, ca și
la ecuațiile algebrice. De aceea, metodele folosite sunt:
– metode grafice;
– metode de aproximare
Știm că, dacă într -un interval [𝑎,𝑏] există o rădăcină a unei ecuații 𝑓(𝑥)=0, atunci
𝑓(𝑎)∙𝑓(𝑏)<0.
4.2.2. Rezolvarea ecuațiilor transcendente cu Matlab
1. Să se rezolve ec uația
1+𝑥=𝑎𝑟𝑐𝑡𝑔𝑥,
𝑢𝑛𝑑𝑒 𝑥∈[−3,3]
Rezolvare.
41
Aduc em ecuația la forma canonică:
ℎ(𝑥)=1+𝑥−𝑎𝑟𝑐𝑡𝑔𝑥
Transpunem în Matlab
≫𝑓=@(𝑥) 1+𝑥−atan (𝑥)
≫𝑥=𝑓𝑧𝑒𝑟𝑜(𝑓,[−3 3])
𝑥=
−2.1323
≫𝑓(𝑥)
𝑎𝑛𝑠=
2.2204𝑒−016
2. Să se rezolve ecuația
𝑥2=𝑐𝑜𝑠𝜋𝑥,
𝑢𝑛𝑑𝑒 𝑥∈[−1
2,1
2]
Rezolvare.
Aduc ecuația la forma canonică:
ℎ(𝑥)=𝑥2−𝑐𝑜𝑠𝜋𝑥
Transpun în Matlab
≫𝑓=@(𝑥) 𝑥2−𝑐𝑜𝑠 (𝑝𝑖∗𝑥)
≫𝑠=𝑓𝑠𝑜𝑙𝑣𝑒(𝑓,[−0.5 0.5])
𝑠=
−0.4384 0.4384
42
≫𝑓(𝑠)
𝑎𝑛𝑠=
1.0𝑒−011∗
0.0962 0.1001
3. Să se rezolve în Matlab ecuația trasncendentă:
𝑒𝑥=𝑥+1,𝑥∈ℝ
Rezolvare
>> sym(x,'real')
>> solve('exp(x) = x + 1')
ans =
0
43
CAPITOLUL 5 . REZOLVAREA SISTEMELOR DE ECUAȚII CU
MATLAB
5.1. Rezolvarea sistemelor de ecuații linia re
5.1.1. Noțiuni teoretice
Un sistem de n ecuații cu n necunoscute se poate exprima sub forma:
{𝑎11𝑥1+𝑎12𝑥2+⋯+𝑎1𝑛𝑥𝑛=𝑏1
𝑎21𝑥1+𝑎22𝑥2+⋯+𝑎2𝑛𝑥𝑛=𝑏2
⋮
𝑎𝑛1𝑥1+𝑎𝑛2𝑥2+⋯+𝑎𝑛𝑛𝑥𝑛=𝑏𝑛
Sistemul poate fi scris matriceal sub forma:
𝐴𝑋=𝐵
Unde:
𝐴=(𝑎11𝑎12⋯𝑎1𝑛
𝑎21𝑎22⋯𝑎2𝑛
⋯⋯⋯⋯
𝑎𝑛1𝑎𝑛2⋯𝑎𝑛𝑛)
Este matricea sistemul ui
𝑋=(𝑥1
𝑥2
⋮
𝑥𝑛)
Este matricea coloană a necunoscutelor
iar
𝐵=(𝑏1
𝑏2
⋮
𝑏𝑛)
44
este matricea coloană a termenilor liberi.
Sistemele liniare sunt de trei tipuri:
– sisteme liniare unic determinate (cu soluție unică);
– sisteme c ompatibile nedeterminate (cu soluție unică)
– sisteme incompatibile (care nu au soluție reală sau complexă)
În Matlab, pentru calculul rangului unei matrice A, folosim funcția rank(A), care
returnează rangul matricei A.
Matricea extinsă a lui A se obține prin concatenarea pe orizontală a matricei A cu
vectorul b, adică 𝐴𝑒𝑥𝑡=[𝐴 𝑏]
Dacă 𝑟𝑎𝑛𝑘(𝐴)= 𝑟𝑎𝑛𝑘(𝐴𝑒𝑥𝑡)=𝑛, atunci sistemul liniar este unic determinat și îl
rezolvăm cu formula:
𝑥=𝐴\𝑏
Dacă 𝑟𝑎𝑛𝑘(𝐴)= 𝑟𝑎𝑛𝑘(𝐴𝑒𝑥𝑡)<𝑛, sistem ul este compatibil nedeterminat, adică are
o infinitate (sau mai multe) de soluții . Soluțiile se determină prin calcul simbolic.
Dacă 𝑟𝑎𝑛𝑘(𝐴)≠ 𝑟𝑎𝑛𝑘(𝐴𝑒𝑥𝑡) sistemul este incompatibil, deci nu are soluție.
Soluțiile calculate sunt aproximative și precizia lor depinde de punctul inițial folosit în
calcul
Formula pentru calculul preciziei este:
𝑝<𝐶∗𝑐𝑜𝑛𝑑(𝐴)∗𝑝(𝑐𝑜𝑚𝑝)
Unde:
– p este precizia de calcul dorită;
– C , constantă, cuprinsă între 1 și 10. Este de recomandat să se considere 𝐶=10)
– 𝑐𝑜𝑛𝑑(𝐴) este numărul de precizie al matricei.
– 𝑝(𝑐𝑜𝑚𝑝) este precizia calculatorului folosit. Pentru PC -uri, 𝑝(𝑐𝑜𝑚𝑝)=2.2∗10−16
45
5.1.2. Sisteme de ecuații liniare rezolvate cu Matlab
1. Să se rezolve sistemul de ecuații:
{3𝑥+𝑦=50
𝑥+2𝑦=40
Rezolvare în matlab:
≫𝐴=[3 1;1 2];
≫𝐵= [50 40]
≫𝑠=𝑙𝑖𝑛𝑠𝑜𝑙𝑣𝑒(𝐴,𝑏)
≫𝑠=
12
14
2. Să se resolve sistemul de ecuații:
{𝑥2+𝑎𝑥+(𝑎+1)𝑦+𝑎=0
𝑦2+𝑎𝑦+(𝑎+1)𝑥+𝑎=0. 𝑎∈ℝ
Rezolvare
>> syms x y a
>> f = x^2 + a*x + (a+1)*y + a
f =
x^2 + a*x + a + y*(a + 1)
>> g = y^2 + a*y + (a+1)*x + a
46
g =
y^2 + a*y + a + x*(a + 1)
>> s = solve(f,g)
s =
x: [4×1 sym]
y: [4×1 sym]
Vom obține o structură cu câmpurile x și y.
>> s.x
ans =
(- 8*a – 3)^(1/2)/2 + 1/2
1/2 – (- 8*a – 3)^(1/2)/2
(4*a^2 + 1)^(1/2)/2 – a – ½
– a – (4*a^2 + 1)^(1/2)/2 – 1/2
>> s.y
ans =
1/2 – (- 8*a – 3)^(1/2)/2
(- 8*a – 3)^(1/2)/2 + 1/2
(4*a^2 + 1)^(1/2)/2 – a – 1/2
– a – (4*a^2 + 1)^(1/2)/2 – 1/2
47
>> S = [s.x, s.y];
>> pretty(S)
Rezultatul este s tructura din figura
3. Să se resolve sistemul de ecuații
{ 𝑥=𝑙𝑜𝑓(𝑦
𝑧)+1
𝑦=−2𝑥2+𝑧2+2/5
𝑧=𝑥𝑦
20+2
Soluție
>> syms x y z
>> f = x – log(y/z) -1
f =
x – log(y/z) – 1
48
>>g = y – 0.4 – z^2 + 2*x^2
g =
2*x^2 – z^2 + y – 2/5
>> h = z -2-x*y/20
h =
z – (x*y)/20 – 2
>> s = solve(f,g,h)
s =
x: [1×1 sym]
y: [1×1 sym]
z: [1×1 sym]
Soluția S este o structură cu componentele x, y, z:
>> digits(4)
>> s.x
ans =
3.509
>> s.y
ans =
49
-21.25
>> s.z
ans =
-1.728
4. Să se rezolve sistemul de ecuații :
{5𝑥1+4𝑥2+𝑥3=0
6𝑥1+3𝑥2+2𝑥3=5
𝑥1+𝑥2+𝑥3=−7
Rezolvare.
Se execută următoarea secvență de program Matlab pe care o salvăm în fișierul sist3.m :
A=[5 4 1; 6 3 2; 1 1 1]; % matricea coe ficientilor
% rezolvarea sistemului
if det(A)~=0 % daca sistemul este compatibil determinat
b=[0; 5; -7]; % vectorul -coloana al termenilor liberi
X=inv(A)*b
else
disp('Sistemul nu este compatibil determinat.')
end
În urma execuției programului se obține :
X=
6.2500
-6.0000
-7.2500
50
4. Să se rezolve în matlab sistemul de ecuații:
{2𝑥1−3𝑥2=7
−6𝑥1+8𝑥2−𝑥3=−5
3𝑥2+4𝑥3=1
Rezolvare.
Programul se va salva în fișierul matlab sist4.m
A=[2 -3 0; -6 8 -1; 0 3 4]; % matricea coeficientilor
% rezolvarea sistemului
if det(A)~=0
b=[7 -5 1]'; % vectorul coloană al termenilor liberi
X=A \b
else
disp( .') 'Sistemul nu este compatibil determinat
end
Soluția obținută este
X=
-94.0000
-65.0000
49.0000
5. Să s e resolve sistemul de ecuații
{3𝑥−𝑦+𝑧−2𝑡=6
−4𝑥+4𝑦+2𝑧+𝑡=0
Rezolvare.
51
A=[3 -1 1 -2; -4 4 2 1]; % matricea coeficientilor
b=[6; 0]; % vectorul -coloana al termenilor liberi
% rezolvarea sistemului
if rank(A)==rank([A b])
disp('metoda pseudo -inversarii')
X=pinv(A)*b
disp('metoda impartirii la stanga')
X=A \b
else
disp('Sistemul nu este compatibil.')
end
X=
1.2000
0
2.4000
0
6. Să se resolve în matlab sistemul:
{𝟑𝒙−𝒚+𝒛−𝟐𝒕=𝟔
−𝟒𝒙+𝟒𝒚+𝟐𝒛+𝒕=𝟎
Rezolvare. Sistemul are 2 necunoscute principale deci va fi dublu nedeterminat
Programul matlab este următorul:
52
clc
% pas 1: se determina rangul matricei sistemului
A=[3 -1 1 -2;-4 4 2 1];
r=rank(A) % se obtine 2
% prin urmare, 2 variabile sunt i ndependente, si 2 variabile
% sunt dependente de primele
% pas 2: se cauta un minor de ordinul 2 nenul, pentru a
% stabili variabilele dependente; de exemplu:
rminor=rank(A(:,[1 2])) % se obtine 2
% x,y devin variabilele dependente, in raport cu care se
% rezolva sistemul;
% acesta se rescrie sub forma:
% 3x -y=6-z+2t; -4x+4y= -2z-t;
disp('sistemul este compatibil nedeterminat')
disp(blanks(1)')
% pas 3: se rezolva sistemul de mai sus:
% se creeaza obiectele simbolice
syms z t;
% matricea sistemului
Aredus=A( :,[1 2]);
% vectorul termenilor liberi
bredus=[6 -z+2*t; -2*z-t];
% rezolvarea sistemului cu metoda inversarii
53
s=inv(Aredus)*bredus
% rezolvarea sistemului cu operatorul de impartire la stanga
ss=Aredus \bredus
disp(blanks(1)')
pause
disp('Solutia sistemului dat este:')
x=s(1)
y=s(2)
disp('z,t numere reale oarecare')
Se obțin rezultatele:
r =
2
rminor =
2
sistemul este compatibil nedeterminat
s =
3-3/4*z+7/8*t
3-5/4*z+5/8*t
ss =
3-3/4*z+7/8*t
3-5/4*z+5/8*t
54
5.2. Rezolvarea sistemelor de ecuații folosin d metode numerice
5.2.1. Noțiuni teoretice
Fie 𝑉 un spațiu vectorial peste corpul K și 𝑇∈𝑒𝑛𝑑(𝑉). Scalarul 𝜆∈𝐾 este valoare
proprie pentru 𝑇 dacă există 𝑥̅∈𝑉\{0̅} astfel încât
𝑇(𝑥̅)=𝜆𝑥̅
Vectorul 𝑥̅∈𝑉\{0̅} pentru care există 𝜆∈𝐾 în așa fel încât 𝑇(𝑥̅)=𝜆𝑥̅ se numește
vectorul propriu al lui 𝑇, corespunzător valorii proprii 𝜆.
Pentru rezolvarea sistemelor de ecuații liniare, se apelează funcția lsolve(A,b) , prin
care se determină soluția 𝑋 rezolvând sistemul 𝐴∙𝑥=𝑏
– Matric ea A trebuie să fie cu elemente reale sau complexe, nesingulară
– Vectorul B este cu elemente reale sau complexe, cu același număr de linii ca și matricea A
La apelul funcției lsolve(A,b) =, se obține vectoul coloană al soluțiilor sistemului
𝑠𝑜𝑙=𝑙𝑠𝑜𝑙𝑣𝑒(𝐴,𝑏)
Se afișează:
𝑠𝑜𝑙=(𝑥1
𝑥2
⋮
𝑥𝑛)
5.2.2. Metoda iterativa Jacobi pentru rezolvarea sistemelor de ecuații liniare
Una dintre cele mai utilizate metode iterative pentru rezolvarea sistemelor de ecații
liniare este Metoda Jacobi
Fie 𝐴∙𝑥=𝑏 ecuația matriceală a sistemului de ecuații, cu proprietatea că 𝑎𝑖𝑖≠0,𝑖=1,𝑛̅̅̅̅̅
Notăm
𝐷=𝑑𝑖𝑎𝑔(𝑎11,𝑎22,⋯,𝑎𝑛𝑛)
55
𝐸=𝐷−𝐴
Și obținem sistemul echivalent
(𝐷−𝐸)𝑥=𝑏
⇒
𝑥=𝐷−1𝐸𝑥+𝐷−1𝑏
Dar
𝐷−1=𝑑𝑖𝑎𝑔(1
𝑎11,⋯,1
𝑎𝑛𝑛)
Explicitând, obținem
𝑥𝑖=1
𝑎𝑖𝑖∙
( 𝑏𝑖−∑𝑎𝑖𝑗𝑥𝑗𝑛
𝑗=1
𝑗≠𝑖) ,𝑖=1,𝑛̅̅̅̅̅
Exercițiu în Matlab
Fie sistemul de ecuații
{5𝑥1−𝑥2−𝑥3−𝑥4=−4
−𝑥1+10𝑥2−𝑥3−𝑥4=12
−𝑥1−𝑥2+5𝑥3−𝑥4=8
−𝑥1−𝑥2−𝑥3+10𝑥4=34
Cu condiția inițială
𝑥1(0)=𝑥2(0)=𝑥3(0)=𝑥4(0)=1
Folosind secvența Matlab:
𝑐𝑙𝑐
𝑥=[0;0;0;0];
𝑏=[−4;12;8;34];
𝐷=[5 0 0 0;0 1 0 0;0 0 5 0;0 0 0 10];
56
𝐸=[0 1 1 1;1 0 1 1;1 1 0 1;1 1 1 0];
𝑓𝑜𝑟 𝑖=1:5
𝑥=𝐷−1∗𝐸∗𝑥+𝐷−1∗𝑏
end
după cinci iterații, se obține
𝑥1(5)=0.968; 𝑥2(5)=1.98127; 𝑥3(5)=2.96864; 𝑥4(5)=3.98129
5.3. Rezolvarea sistemelor de ecuații neliniare
5.3.1. Noțiuni teoretice
Un sistem de ecuații de forma
{𝑓1(𝑥1,𝑥2,⋯,𝑥𝑛)=0
⋮
𝑓𝑛(𝑥1,𝑥2,⋯,𝑥𝑛)=0
în care, cel puțin una dintre funcțiile 𝑓𝑖,𝑖=1,𝑛̅̅̅̅̅ este funcție neliniară, se numește sistem de
ecuații neliniare.
Nu exist ă o metodă generală pentru rezolvarea sistemelor nealiniare. Pentru rezolvarea
unor astfel de sisteme Matlab folosește funcția 𝑓𝑠𝑜𝑙𝑣𝑒 , dar care cu funcționează întotdeauna
corect.
Pentru apelul funcției 𝑓𝑠𝑜𝑙𝑣𝑒 se utilizează două exprimări:
𝑥=𝑓𝑠𝑜𝑙𝑣𝑒(𝑓𝑢𝑛𝑐𝑡𝑖𝑒,𝑥0)
Sau
[𝑥,𝑓𝑣𝑎𝑙]=𝑓𝑠𝑜𝑙𝑣𝑒(𝑓𝑢𝑛𝑐𝑡𝑖𝑒,𝑥0,𝑜𝑝𝑡𝑖𝑜𝑛𝑠)
Unde
57
x – soluția;
x0 – valoarea inițială de la care pornește calculul soluției
functie – funcție vectorială de mai multe variabile, a cărui soluție o căutăm
fval – valoarea funcției în soluția x
options – opțiunile de rezolvare impuse de utilizator:
Display : off, iter, final;
MaxIter : numărul maxim de iterații (implicit 1000);
TolFun : precizia de calcul a valorilor funcției; valoare reală. Implicit ep s
TolX : valoarea reală implicit eps precizia soluției
Sistemele de ecuații neliniare se rezolvă utilizând metode numerice:
– Metoda Newton
– Metoda gradientului
– Metode de factorizare
Pentru sistemele cu un număr relativ mic de necunoscute ( maxim 5 -6 necunoscute) și
pentru care funcția de rezolvat este de două ori derivabilă (funcție netedă), cea mai utilizată
metodă este metoda Newton.
Fie șirul recurent definit prin:
𝑥(𝑛+1)=𝑥(𝑛)+𝑊−1𝑓(𝑥(𝑛))
unde
W este matricea Jacobiană a lui 𝑓 în 𝑥(𝑛):
𝑊(𝑖,𝑗)= 𝜕𝑓𝑖
𝜕𝑥𝑗(𝑥(𝑛))
Metoda se bazează pe faptul că șirul recurent este convergent, în snumite condiții, către
soluția ecuației 𝑓(𝑥)=0
58
𝑓(𝑥)={𝑓1(𝑥1,𝑥2,⋯,𝑥𝑛)
⋮
𝑓𝑛(𝑥1,𝑥2,⋯,𝑥𝑛)
5.3.2. Rezolvarea sistemelor neliniare cu Matlab
1. Rezolvați în matlab sistemul de ecuații
{𝑥3+𝑦3−6𝑥+3=0
𝑥3−𝑦3−6𝑦+2=0
Pornind de la punctul inițial (0.5 0.5)
Rezolvare
Pasul 1
Se definește funcția vectorială
≫𝑓=@(𝑥)[𝑥(1)3+𝑥(2)3−6𝑥(1)+3;𝑥(1)3−𝑥(2)3−6𝑥(2)+2]
Pasul 2. Rezolvăm sistemul neliniar:
≫𝑠=𝑓𝑠𝑜𝑙𝑣𝑒(𝑓,[0.5 0.5]
𝑠=
0.53232270372266762 0.35125744755245
Pasul 3. Verificarea soluției
≫𝑓(𝑠)
𝑎𝑛𝑠=
1.0𝑒−009∗
0.29623858921468
0.19358559200100
59
2. Rezolvați în matlab sistemul de ecuații
{𝑥2+𝑦2+𝑧2=9
𝑥𝑦𝑧=1
𝑥+𝑦−𝑧2=0
Pornind de la punctul inițial (2.5,0.2,1.6)
Rezolvare
Pasul 1
Se definește funcția vectorială
≫𝑓=@(𝑥)[𝑥(1)2+𝑥(2)2+𝑥(3)2−9;𝑥(1)∗𝑥(2)∗𝑥(3)−1;𝑥(1)+𝑥(2)−𝑥(3)^2]
Pasul 2. Rezolvăm sistemul neliniar:
≫𝑠=𝑓𝑠𝑜𝑙𝑣𝑒(𝑓,[2.5 0.2 1.6]
𝑠=
2.49137569683072 0.24274587875742 1.65351793930053
Pasul 3. Verificarea soluției
≫𝑓(𝑠)
𝑎𝑛𝑠=
1.0𝑒−011∗
0.11226575225010
0.13493650641294
−0.05244693568329
3. Să se determine soluția sistemului de ecuații neliniare
{2𝑥1−𝑥2=𝑒−𝑥1
−𝑥1+2𝑥2=𝑒−𝑥2
60
Pentru soluția inițială 𝑥0=[−5; −5]
Rezolvare
Definim funcția
𝑓𝑢𝑛𝑐𝑡𝑖𝑜𝑛 𝑦=𝑠𝑛𝑙𝑓𝑢𝑛(𝑥)
𝑦=[𝑧∗𝑥(1)−𝑥(2)−exp (−𝑥(1); −𝑥(1)+2∗𝑥(2)−exp (−𝑥(2))]
Comenzile de rezolvare ale sistemului sunt:
≫𝑥0=[−5; −5] % 𝑠𝑜𝑙𝑢ț𝑖𝑎 𝑖𝑛𝑖ț𝑖𝑎𝑙ă
≫𝑜𝑝𝑡𝑖𝑜𝑛𝑠=𝑜𝑝𝑡𝑖𝑚𝑠𝑒𝑡 (′𝐷𝑖𝑠𝑝𝑙𝑎𝑦 ′,′ 𝑖𝑡𝑒𝑟 ′)
[𝑥,𝑓𝑣𝑎𝑙]=𝑓𝑠𝑜𝑙𝑣𝑒(@𝑠𝑛𝑙𝑓𝑢𝑛,𝑥0,𝑜𝑝𝑡𝑖𝑜𝑛𝑠)
După 10 iterații, se obține soluția:
𝑥=
0.5671
0.5671
𝑓𝑣𝑎𝑙=
1.0𝑒−006∗
−0.4059
−0.4059
S-ar putea ca sistemul rezolvat să aibă și alte soluții. Aceste soluții se pot obține prin
schimbarea soluției inițiale.
Rezolvarea siste mului
{2𝑥1−𝑥2=𝑒−𝑥1
−𝑥1+2𝑥2=𝑒−𝑥2
cu soluția inițială 𝑥0=[−5; −5]
este următoarea:
61
>>f=inline(’[2*x(1) -x(2)-exp(-x(1)); -x(1)+2*x(2) -exp(-x(2))]’); % Funcția
>>df=inline(’[2+exp( -x(1)) -1;-1 2+exp( -x(2))]’); % Jacobia nul
>>x=[ -5;-5];
>>for i=1:100
dx=-df(x) \f(x)
𝑥=𝑥+𝑑𝑥
𝑖𝑓 𝑑𝑥<100∗𝑒𝑝𝑠
𝑏𝑟𝑒𝑎𝑘
𝑒𝑛𝑑
𝑒𝑛𝑑
≫[𝑥 𝑓(𝑥)]
𝑎𝑛𝑠=
0.5671 0.0000
0.5671 0.0000
CONCLUZII
MATLAB oferă o soluție completă și unitar ă pentru o rezolvar e numerica a sistemelor
de ecuații liniare si neliniare, a ecuațiilor diferenț iale, a problemelor de aproximare. Este
folosit atât de că tre matematicieni, informaticieni , cat si de fizicieni si ingineri. Acest mediu
de programare este flexibil si uș or de utilizat.
62
Rezolvarea ecuațiilor și sistemelor de ecuații apare frecvent în practică, în probleme
mai complexe, iar rezolvarea eficientă și precisă dontribuie la stabilitatea soluțiilor obținute.
La rezolvarea sistemelor de ecuații algebrice, se recomandă să nu se folosească
metoda Cramer sau formula 𝑥=𝐴−1𝑏, deoarece se obțin erori mari. Există metode mai
eficiente. Un dintre acestea este metoda reducerii și substituției, prin care sistemul este redus
la un sistem triunghiular, care se rezolvă prin substituție numerică.
Cea mai populară metodă de rezolvare a sistemelor de ecuații algebrice este metoda
care utilizează algoritmul Gauss cu pivotare parțială, .Cea mai precisă metodă este metoda
Gauss cu pivotare completă, unde se folosește metoda factorizării LU..
Metoda Gauss -Jordan reduce sistemul la unul diagonal, însă nu este foarte eficientă.
Pentru sisteme simetrice pozitiv definite, cea mai bună metodă este factorizarea
Cholesky.
Trebuie evitat calculul matricelor de forma 𝐴−1 pentru că expresii de forma
𝑥=𝑎𝑇𝐴−1𝑏
Pot fi calculate fără a calcula 𝐴−1
BIBLIOGRAFIE
[1] Ariadna Lucia Pletea, Rezolvarea ecuatiilor diferentiale cu Mathematica, Conferinta
Nationala de Invatamant Virtual, editia a II -a ,2004, Facultatea de Matematica si Informatica
Bucurest i, p.153.
63
[2] Marin Vlada, Maple and MapleNet – integrated solutions for Web Based Learning in
Mathematics, Science and Engineering, Conferinta Nationala de Invatamant Virtual, editia a
II-a, 2004, Facultatea de Matematica si Informatica Bucuresti,p.121.
[3] Nicolae Danet, Metode de constructie a curbelor plane. O introducere folosind Mathcad,
Conferinta Nationala de Invatamant Virtual, editia a II -a ,2004, Facultatea de Matematica si
Informatica Bucuresti, p.309.
[4] Constantin I. Popovici, Algoritmi num erici cu MATLAB, Conferinta Nationala de
Invatamant Virtual , editia a II -a , 2004, Facultatea de Matematica si Informatica Bucuresti,
p.396.
[5] Gavril Paltineanu, Pavel Matei, Romica Trandafir, Analiza numerica , Editura Conspress,
Bucuresti, 1998.
Webo grafie
http://fmi.unibuc.ro/ro/cniv_2005/volum/documente/pd f/sectiuneaA/17_62_Popovici.pdf
*** – MATLAB User’s Guide, The Mathworks Inc., SUA, 2000.
http://www.schur.pub.ro/download/cn/MN_SEM2 .pdf
ANEXA
În anexă am pus programe de rezolvare în matlab a sistemelor de ecuații utilizând
algoritmii clasici
1. Program care rezolvă sistemul liniar 𝑨𝒙=𝒅 , unde 𝑨=𝑩∗𝑪
64
% B(nxn) respectiv C(nxn) care inmultite dau matricea A(nxn). Pasi de
6: % rezolvare: se calculeaza matricea A superior tridiagonală cu formula
7: % A=B*C apoi se rezolva sistemul liniar Ax=d.
8: % folosim numele de UBSM pentru upper bidiagonal matrix solver
9: % Apelul: x=UBSM1(B,C,d)
10: %
11: % Both Maria .
12: % —————————— ————————————————
14: [ n,m]=size(B);
15:
16: %analizam daca matricea e patratica
17: if n∼=m
18: error(’Matricea nu e patratica’);
19: end
20:
21: %analizam daca matricele B si C sunt superior bidiagonale
22: for i=1:n
23: for j=i+2:n
24: if B(i,j)∼=0
25: error(’Matricea B nu e superior bidiagonala’);
26: end
27: if C(i,j) ∼=0
28: error(’Matricea C nu e superior bidiagonala’);
65
29: end
30: end
31: for j=1:i -1
32: if B(i,j)∼=0
33: error(’Matricea B nu e superior bidiagonala’);
34: end
35: if C(i,j) ∼=0
36: error(’Matricea C nu e superior bidiagonala’);
37: end
38: end
39: end
40:
41: for i=1:n
42: for j=1:m
43: A(i,j)=0;
44: end
45: A(i,i)=B(i,i)*C(i,i);
46: if i<n
47: A(i,i+1)=B(i,i)*C(i,i+1)+B(i,i+1)*C(i+1,i+1);
48: end
49: if i<n -1
50: A(i,i+2)= B(i,i+1)*C(i+1,i+2);
51: end
66
52: end
53: x(n)=d(n)/A(n,m);
54: x(n -1)=(d(n -1)-A(n-1,m)*x(n)) / A(n -1,m-1);
55: for i=n -2:-1:1
56: x(i)=(d(i) – A(i,i+1)*x(i+1) – A(i,i+2)*x(i+2))/ A(i,i);
57: end
67
2. Fiind dată o matrice superior triunghiular ă pătratică 𝑨𝒏𝒙𝒏 și un vector b, să se rezolve
sistemul liniar 𝑨𝒙=𝒃.
1: function [ x]=UTRIS(U,b)
2: %———————————————————————— –
3: % Fiind data o matrice superior triunghiulara patratica A (nxn) si un
4: % vector b, algoritmul calculeaza sistemul liniar Ax=b.
5: % UTRIS=upper triunghiular solver.
6: % Apelul: x=UTRIS(U,b)
7: %
8: % Both Maria .
9: %—————————————————————————— –
10:
11: [m,n] = size(U);
12:
13: if m∼=n
14: % in caz ca nu este o matrice patratica
15: x = [ ];%x devine o matrice nula
16: return;
17: end
18:
19: if m∼=length(b)
20: error(’Nu exista solutie pentru’);
21: end
68
22:
23: for i=n: -1:1
24: s = b(i);
25: if i<n
26: for k=i+1:n
27: s = s – U(i,k)*x(k);
28: end
29: end
30: x(i) = s/U(i,i);
31: if U(i,i)==0
32: error(’Matricea nu est e nesingulara’)
33: end
34: end
69
3. Se dă o matrice superior Hassenberg , nesingulră, patratică, 𝑯, de ordin n și vectorul
b. Să se rezolve în matlab ecuația 𝑯𝒙=𝒃, folosind eliminarea gaussiană cu pivotare
parțială
Rezolvare
1: function [ x]=LS S GPP HESS(H,b)
2: %—————————————————————————— –
3: % Fiind data o matrice superior Hassenberg nesingulara H patratica (de
4: % ordin n) si un vector b, algoritmul calculeaza solutia x a sistemului
5: % Hx=b folosind eliminarea gaussiana cu pivotare partial a.
6: % Apelul: x=LSS GPP HESS(H,b)
7: %
8: % Both Maria
9: %—————————————————————————— –
10:
11: [ n,m]=size(H);
12:
13: %analizam daca matricea e patratica
14: if n∼=m
15: error(’Matricea nu e patratica’);
16: end
17:
18: %analizam daca matricea este supe rior Hessenberg
19: for i=3:n
70
20: for j=1:i -2
21: if H(i,j) ∼=0
22: error(’Matricea H nu e superior Hessenberg’)
23: end
24: end
25: end
26:
27: %conditionam ca numarul liniilor vectorului b sa fie egal cu numarul coloanelor
28: %matricei H
29: if m∼=length (b)
30: error(’Nu exista solutie pentru’);
31: end
32:
33: [H,p]=GPP HESS(H);
34: for k=1:n -1
35: if p(k)==k+1
36: temp=b(k);
37: b(k)=b(k+1);
38: b(k+1)=temp;
39: end
40: b(k+1)=b(k+1) -H(k+1,k)*b(k);
41: end
42: x=UTRIS(triu(H),b)
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: INTRODUCERE ………………………….. ………………………….. ………………………….. …………………………….. [616038] (ID: 616038)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
