INTRODUCERE ………………………….. ………………………….. ………………………….. …………………………….. [616039]
1
CUPRINS
INTRODUCERE ………………………….. ………………………….. ………………………….. ………………………….. ……… 3
CAPITOLUL 1. BREVIAR TEORETIC ………………………….. ………………………….. ………………………….. ……….. 5
1.1. Ecuații algebrice ………………………….. ………………………….. ………………………….. ……………………… 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. Generalităț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 rezo lvare a sistemelor de ecuații exponențiale sau logaritmice ……………………….. 21
2.9. Metode de rezolvare a sistemelor de ecuații cu permutări, aran jamente 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. Rezolvarea sistemelor de ecuații folosind metode numerice ………………………….. ……………….. 54
5.2.1. Noțiuni teoretice ………………………….. ………………………….. ………………………….. …………….. 54
5.2.2. Metoda iterativa Jacobi pentru rezolvarea 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.
Capitolul 4 conține ecuaț ii diverse rezolvate cu matlab
În capitolul 5 abordez rezolvarea sistemelor de ecuații liniare și neliniare, utilizâ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ă lucr are.
Î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ă
egalitatea (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 cons tă în calculul 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 t rei situaț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 se 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 N ewton) ș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 ax a 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
încadr a rădăcina, 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 continuă
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 ansamblu 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ă în locuind 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 determ inat 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 nedeter minat 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ă a tașată sistemului 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 transpu sa matricei 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 secundară, 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 ordinul 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 ordinu l 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 , ia r 𝐴̅ 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 mat ricei sistemului 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 analiza 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 s istem liniar ș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 sistemu lui fiind 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 toate 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 confundate.
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 int ersectează, 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ând
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 exist a trei cazuri î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 punct. 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 infinitat e de soluț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. Forma 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 scrie 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 presupun 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 necunoscu te 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 substitu irii continuă 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 particu lar, 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 necunoscute le sistemului. 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 restul 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 necuno scută sau
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ă necunoscute.
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 siste melor liniare
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 rangA=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 compatibi l( are soluț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 caz ul în care 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 sistem ului este 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 necunoscu te
principale 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, necunoscutel e secundare, 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 det erminantului 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 caracte ristic ≠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 ter menilor 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ă, e a 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 necu noscutelor, 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 matrice, 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 mat ricei 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 ad junctă 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, prin
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 d in TA vom 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. Formula 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 r ezultă 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
termeni lor de sub 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 incompatibi l. 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 co loana 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 cu 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 parcu rge 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 scr ie ca prima 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 co ntinuă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
manua lele 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 d e 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 a flăm. Ecuaț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 s oluțiilor 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 clasa 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 existe nță, astfel:
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.Metoda 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ât eva noțiuni 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 mo toarele 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 diverse sisteme de operare: Windows, GNU/Linux, UNIX si Mac OS
1
http://aparate.elth.ucv.ro/IVANOV/Discipline%20predate/Aplicatii%20in%20Mathcad%20si%20Matlab/Labora
tor/Lu crarea%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 grafice 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 programare de nivel înalt folosit la proiectarea asistată de
calculator în matematică, inginerie, biolo gie, simularea sistemelor, modelarea sistemelor,
grafică, etc. MATLAB este un system interactiv care lucrează cu matrice, ca elemente de bază
ale limbajului.
MATLAB (MAT RIX LAB ORATORY) reprezintă un limbaj de progra mare foarte
performant, dar și o aplicație software pentru dezvoltarea de programe care integrează
progamarea, calculul mathematic, grafica, pentru rezolvarea de problem complexe.
Pentru a putea realiza calcule complexe î n diverse domenii, Matlab foloseșt e
Toolbox -uri, care e permit utilizarea aplicațiilor matlab în domenii diverse.
Sistemul Matla b constă în 5 părți fundamentale :
1. Limbajul MATLAB
2. Mediul de lucru MATLAB
3. Handle Graphics®
4. Biblioteca de funcții matematice ale MATLAB -ului
5. Interfața de aplicații program ale MATLAB -ului (API)
Domenii de utilizare: ale aplicației MATLAB
Matematică și calcul numeric
Dezvoltare de algoritmi
Modelare, simulare și testarea sistemelor reale
Analiza calculul și vizualizarea datelor
Grafică inginerească și problem al e științelor aplicate
Dezvoltarea de aplicații complexe , inclusiv a interfețelor grafice
25
Limbajul MATLAB: Reprezintă un limbaj de n ivel înalt de tip matriceal (se bazează
pe calculul cu matrice). Are instrucțiuni de control al salturilor, funcții, struct uri de date,
funcții de intrări/ieșiri și programare orientată pe obiecte.
Facilitățile de programare sunt organizate pe 6 directoare:
Operatori Operatori și caractere speciale
Lang Programming language constructs.
Strfun Șiruri de caractere
Iofun Fișiere input/output.
Timefun Data și timp
Datatypes Structuri de date
Mediul de lucru MATLAB: Este format dintr -un set de comenzi și alte facilități de tip
GUI care permit utilizarea variabilelor, calcul cu variabile și calcul numeric, import/export de
date, editare, dezvoltzre, manipulare, depanare de fișiere Matlab (fișiere.m)
Aceste facilități sunt organizate în directorul:
GENERAL Comenzi generale ale limbajului
Sistemul graphic (Handle Graphics ) al Matlabului . Cuprinde comenzi pentru
viazualizarea datelor bidimensionale, tridimensional, procesarea de imagini, animație,
reprezentări grafice, etc. Acest system utilizează comenzi pentru crearea de interfețe grafice
GUI.
Funcțiile grafice sunt organizate în 5 directoare:
graph2d Grafică bidimensională
Graph3d Grafică tridimensională
Specgraph Grafică specializată
Graphics Handle Graphics.
Uitools Unelte de intrrfață grafică
Biblioteca de f uncții matematice a MATLAB -ului.
26
Este formată dintr -o colecție algoritmi de calcul, începând cu funcțiile elementare
(sinus, cosinus , logx, funcția exponențială, polinoame 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 Matrice elementare și ma trice speciale
Elfun Funcții matematice .
Specfun Funcții matematice specializate .
Matfun Funcții de matrice – algebra numerică .
Datafun Analiza datelor și transformări Fourier
Polyfun Polinoame și interpolare
Funfun Funcții și ecuații și sisteme de e cuații diferențiale
Sparfun Sparse matrices.
Interfața de aplicații program a MATLAB -ului (API) este o bibliotecă de programe
care permite scrierea de programe în C /c++ sau Fortran și care interacționează cu MATLAB –
ul. API Include facilități diverse ca re pot fi apelate din Matlab. .
Pachetul SIMULINK
SIMULINK® este un pachet software atașat MATLAB -ului și reprezintă un
sistem interactiv pentru simularea dinamicii sistemelor liniare și neliniare. Este
conceput sub formă de interfață grafică și permite cr earea de modele prin scheme bloc
și apoi simularea funcționării sistemului.
SIMULINK poate lucra cu sisteme liniare, neliniare, continue, discrete,
multivariabile etc.
SIMULINK are în componență de Blockset -uri, care conțin aplicații specializate
din domeni i cum ar fi: comunicații, procesarea semnalelor etc. Ele sunt, de fapt,
biblioteci specializate.
Real-time Workshop® este un program foarte important care permite generarea
unui cod C /c++ pentru scheme bloc create cu SIMULINK și permite rularea de
aplicați i în timp real.
27
Toolbox -urile MATLAB
Toolbox -urile sunt o familie de aplicații care permit aplicarea metodelor matlab în
diverse domenii. Ele reprezintă colecții de funcții MATLAB (*.m) prin care mediul Matlab se
extinde pentru rezolvarea unor clase de problem particulare.
Expresiile matematice folosite de MATLAB sunt similare cu ale celorlalt e limbaje de
programare, cu deosebirea că, în cazul Matlab calculul se bazează pe teoria matricelor și pe
calculul simbolic.
Expresiile în Matlab sunt formate din urm ătoarele tipuri i:
Variabile
Numere
Operatori
Funcții
3.2. Comenzi și funcții principale în MATLAB
MATLAB operează cu două tipuri de ferestre:
1. fereastra de comenzi;
2. fereastra pentru reprezentări grafice.
La deschiderea programului MATLAB va apărea pe ec ranul 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).
Exemple de utilizare a comenzii help:
» help sin
28
SIN Sine.
SIN(X) is the sine of the elements of 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 – parametrul 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 rezultat ul unui calcul, atunci când
expresia nu a avut asignat un nume.
2. pi – valoarea π.
3. Inf – reprezentarea lui +∞.
4. NaN – reprezentarea lui 0/0 sau ∞/∞.
5. i sau j – folosite reprezentarea numerelor complexe.
Observație
– dacă după o linie de comandă urm ează semnul “ ; ” atunci rezultatul nu va mai fi
afișat (excepție fac comenzile grafice);
– dacă în fața unei linii de comandă se pune semnul “ % ” atunci se face abstracție de
linia respectivă (este interpretă ca o linie de comentariu);
– dacă se doreșt e 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 drept e [ ]
– elementele unei linii se separă prin pauză (blanc) sau virgulă
– liniile matricei se separă prin ; sau enter.
Pentru a lucra cu limbajul MATLAB trebuie , cunoscut foarte bine lucrul cu matrice
În MATLAB, o matrice este un tablou dreptunghiular de nu mere. Scalarii sunt matrici
1 x 1, iar matricile cu o singură linie sau coloană sunt de fapt vectori.
Un exemplu de matrice celebru apare în gravura renascentistă Melancholia realizată
de marele artist și matematician amator Albrecht Dürer. Gravura are un simbolism aparte și
proprietăți matematice spectaculoase.
Gravura este încărcată de simbolism matematic și la o atentă observare a acesteia se
poate distinge în colțul din dreapta sus o matrice3.
Matricile în Matlab, se pot introduce în mai multe feluri .
prin liste explicite cu elementele matricei.
din fișere externe de date.
Prin g enerarea de matrici utilizând funcții corespunzătoare de încărcare
Creare de matrice în fișierele de tip M-files.
Trebuie respectate câteva convenții:
Elementele de pe o l inie 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 drepte: [ ]
3 Wikipedia
31
3.4. Calcul simbolic în matlab
În calculele practice din matematică și in ginerie 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 o perarea 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ă simb olică;
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
varia bilă devine variabilă simbolică
Exemplu
≫𝑠𝑦𝑚𝑠 𝑎 𝑏 𝑐 % 𝑎,𝑏,𝑐,𝑠𝑢𝑛𝑡 𝑣𝑎𝑟𝑖𝑎𝑏𝑖𝑙𝑒 𝑠𝑖𝑚𝑏𝑜𝑙𝑖𝑐𝑒
≫𝑎=𝑏+𝑐
𝑎=
𝑏+𝑐
≫𝑑=𝑏+𝑐 % 𝑏,𝑐=𝑣𝑎𝑟𝑖𝑎𝑏𝑖𝑙𝑒 𝑠𝑖𝑚𝑏𝑜𝑙𝑖𝑐𝑒
32
𝑑=
𝑏+𝑐
Prin această definire, 𝑑 devine varibilă si mbolică, pentru că a primit ca valoare o
expresie simbolică.
Expresiile simbolice primesc ca termeni variabile și funcții simbolice. Operatorii
folosiți sunt operstorii aritmrtici: +,−,∗,/, \ ,^.
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 pot 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 simb olică, 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ăderea, î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 denumite 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ățile 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 putern ic ș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, v ariabilele 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 lui 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 matricii.
[m,n]=size(x);
if m==1
m=n
end
y=sum(x)/m;
Existența acestui fișier defineșt e 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 v or 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 poat e 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_functie(z) sau function x=nume_functie(z,y,m) . Se poate observa că
numărul de argumente d e 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
Exemple.
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 su nt 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:
– ecuațiile expon ențiale
40
– 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 ecuația
1+𝑥=𝑎𝑟𝑐𝑡𝑔𝑥,
𝑢𝑛𝑑𝑒 𝑥∈[−3,3]
Rezolvare.
Aduc em ecuația la forma c anonică:
41
ℎ(𝑥)=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 c anonică:
ℎ(𝑥)=𝑥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,𝑥∈ℝ
Rezolv are
>> 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 liniare
5.1.1. Noțiuni teoretice
Un sistem de n ecuații cu n necunoscute se poate expri ma sub forma:
{𝑎11𝑥1+𝑎12𝑥2+⋯+𝑎1𝑛𝑥𝑛=𝑏1
𝑎21𝑥1+𝑎22𝑥2+⋯+𝑎2𝑛𝑥𝑛=𝑏2
⋮
𝑎𝑛1𝑥1+𝑎𝑛2𝑥2+⋯+𝑎𝑛𝑛𝑥𝑛=𝑏𝑛
Sistemul po ate fi scris matriceal sub forma:
𝐴𝑋=𝐵
Unde:
𝐴=(𝑎11𝑎12⋯𝑎1𝑛
𝑎21𝑎22⋯𝑎2𝑛
⋯⋯⋯⋯
𝑎𝑛1𝑎𝑛2⋯𝑎𝑛𝑛)
Este matricea sistemului
𝑋=(𝑥1
𝑥2
⋮
𝑥𝑛)
Este matricea coloană a necunoscutelor
iar
𝐵=(𝑏1
𝑏2
⋮
𝑏𝑛)
este matricea coloană a termenilor liberi.
44
Sistemele liniare sunt de trei tipuri:
– sisteme liniare unic determinate (cu soluție unică);
– sisteme compatibile 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ă 𝑟𝑎𝑛𝑘(𝐴)= 𝑟𝑎𝑛𝑘(𝐴𝑒𝑥𝑡)<𝑛, sistemul 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 structura 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]; % este matricea coeficientilor
% urmează rezolvarea sistemului
if det(A)~=0 % daca sistemul este compatibil det erminat
b=[0; 5; -7]; % acesta este 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
% urmează rezolvarea sistemului
if det(A)~=0
b=[7 -5 1]'; % este 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ă se 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 nedeterm inat
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 independente, 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 sistem ului 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 folosind 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 𝐴∙𝑥=𝑏
– Matricea 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 iterati va 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 eps
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 recu rent 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 s istemul 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 nel iniar:
≫𝑠=𝑓𝑠𝑜𝑙𝑣𝑒(𝑓,[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 rezolvar e 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 sistemului
{2𝑥1−𝑥2=𝑒−𝑥1
−𝑥1+2𝑥2=𝑒−𝑥2
cu soluția iniți ală 𝑥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))]’); % Jacobianul
>>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 aproxi mare. 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 compl exe, 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 sistem e 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
Bucuresti, p.153.
63
[2] Marin Vlada, Maple and MapleNet – integrated solutions for Web Based L earning 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 Ma thcad,
Conferinta Nationala de Invatamant Virtual, editia a II -a ,2004, Facultatea de Matematica si
Informatica Bucuresti, p.309.
[4] Constantin I. Popovici, Algoritmi numerici 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.
Webografie
http://fmi.unibuc.ro/ro/cniv_2005/volum/documente/pd f/sectiuneaA/17_62_Popovi ci.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 este 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]=LSS GPP HESS(H,b)
2: %—————————————————————————— –
3: % Fiind data o matrice superior H assenberg 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 partiala.
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 superior 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: fo r 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 ………………………….. ………………………….. ………………………….. …………………………….. [616039] (ID: 616039)
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.
