Sunteți pe pagina 1din 7

1.7.

Soluţionarea ecuaţiilor, inecuaţiilor şi sistemelor acestora


În cazul când coeficienţii unei ecuaţii sunt numere întregi sau reale, foarte mari, este
imposibil de calculat rădăcinile acesteia fără ajutorul calculatorului. Inițial se vor descrie moduride
de definire a unei funcţii.
1. Cu ajutorul operatorului de atribuire

2. Cu ajutorul operatorului funcţional

3. Cu ajutorul operatorului unapply

4. Cu ajutorul comenzii piecewise

 Soluționarea ecuațiilor. Funcția de bază solve

Pentru soluţionarea ecuaţiilor liniare şi neliniare în formă analitică, Maple pune la dispoziţie
comenzile: solve(eqn, var) sau solve({eqnl,eqn2,.. . eqn n},{varl,var2,... var n}), unde eqn –
ecuaţia, var – nume_variabilă. Сaracterul soluţiilor poate fi modificat cu variabilele globale:
 _MaxSols – afişează numărul maxim de soluţii;
 _EnvAll Solutions – pentru valoarea true returnează toate soluţiile ecuaţiei eqn.
La afişarea soluţiilor pot fi întâlnite următoarele notaţii:
 _NN – indică obţinerea soluţiilor nenegative;
 _В – indică obţinerea soluţiilor în formă binară;
 _Z – indică obţinerea soluţiilor în mulţimea numerelor întregi;
 %N – apare la afişarea soluţiei sub formă de text şi permite reprezentarea soluţiei într-o
formă mai compactă.
Funcţia solve poate fi utilizată şi în formatul solve[subtopic], unde subtopic poate fi:
floats functions identity ineq linear
radical scalar series system
La soluţionarea sistemelor de ecuaţii, parametrii respectivi, şi variabilele se declară ca mulţime,
adică în paranteze figurate. În acest caz şi rezultatul este obţinut ca mulţime. Pentru a transforma
rezultatul în formă obişnuită se utilizează funcţia assign.
Funcţia solve, returnează soluţia în formă analitică. Pentru ca aceasta să fie transformată numeric,
se apelează la funcţiile evalf şi convert.
Dacă rezultatul este returnat cu funcţia RootOf, atunci toate soluţiile pot fi obţinute cu parametrul
allvalues.
 Soluționarea ecuațiilor neliniare

Exemplul 1.34

Deseori este necesar de a opera cu soluţiile obţinute. Pentru aceasta ele se afişează ca obiecte
aparte.

Exemplul 1.35
ecuatie:=(3*x^2+2*x-3=0);
ecuatie := 3 x2 2 x 3 0

solutie:=[solve(ecuatie,x)];

solutie :=    10,   10 


1 1 1 1
 3 3 3 3 
x1:=solutie[1];x2:=solutie[2];
1 1
x1 :=   10
3 3
1 1
x2 :=   10
3 3
Pentru a verifica corectitudinea soluţiilor obţinute, acestea pot fi substituite în ecuaţie cu ajutorul
funcţiei subs.
subs(x=solutie[1],ecuatie);
2
3    10    10 0
1 1 11 2
 3 3  3 3

subs(x=solutie[2],ecuatie);
2
3    10    10 0
1 1 11 2
 3 3  3 3

f1 x   f 2 x 
Ecuaţiile definite sub forma , deasemenea pot fi soluţionate cu funcţia solve:

Exemplul 1.36
solve(x^4=x+1);
RootOf( _Z4 _Z 1, index 1 ), RootOf( _Z4 _Z 1, index 2 ),
RootOf( _Z4 _Z 1, index 3 ), RootOf( _Z4 _Z 1, index 4 )

evalf(%);
1.220744085 1.033982061I, -.7244919590
, -.2481260628 1.033982061I
, -.2481260628

solve({exp(x)=sin(x)},x);
{ xRootOf( _Zln( sin( _Z ) ) ) }

evalf(%);
{ x.3627020561
1.133745919I }

 Soluționarea ecuațiilor trigonometrice

În acest caz, comandă solve returnează soluţii de pe intervalul 0..2  . Pentru a obţine toate
soluţiile se utilizează parametrul _EnvAllSolutions:=true. În mod implicit acest parametru are
valoarea false. _Z – reprezintă o constantă de tip întreg.
În acest caz, când apare parametrul Rootof se utilizează opţiunea :

Exemplul 1.37

 Soluționarea sistemelor de ecuațiilor liniare

Exemplul 1.38
Pentru a obţine soluţia în formă explicită este necesar ca anterior de introdus parametrul:
_EnvExplicit:=true. Deasemenea se recomandă de înclus în paranteze figurate atât ecuaţiile
sistemului, cât şi variabilele ce exprimă necunoscutele.

Exemplul 1.39
restart:sistem:={7*3^x-3*2^(z+y-x+2)=15,2*3^(x+1)+3*2^(z+y-x)=66,ln(x+y+z)-3*ln(x)-
ln(y*z)=-ln(4)};
( zyx 2 ) ( x 1 ) ( zyx )
sistem := { 7 3 x 3 2 15, 2 3 3 2 66,
ln( xyz )3 ln( x )ln( y z )ln( 4 ) }
_EnvExplicit:=true:
s:=solve(sistem,{x,y,z}):
simplify(s[1]);simplify(s[2]);
{ x2, y3, z1 }
{ x2, z3, y1 }
O altă posibilitate de obţinere a soluţiilor în formă explicită este utilizarea parametrului allvalues:

Exemplul 1.40
solve({x*y=5,x+y=3},{x,y});
{ yRootOf( _Z23 _Z 5, label _L6 ), x RootOf( _Z2 3 _Z 5, label _L6 )3
}
allvalues(%);
3 1 3 1 3 1 3 1
{ y  I 11, x  I 11 }, { y  I 11, x  I 11 }
2 2 2 2 2 2 2 2

 Soluționarea ecuațiilor ce posedă soluții întregi după careva modul întreg dat (Z
mod m)

msolve(eqns,vars,m) sau msolve(eqns,m), unde eqns reprezintă mulţimea de ecuaţii sau o singură
ecuaţie, var indică variabilele equaţiilor din eqns, m este un număr întreg.
Exemplul 1.41

 Soluționarea numerică a ecuațiilor

Pentru soluționarea numerică a ecuațiilor se utilizează comanda fsolve (eq,var,options) cu


următoarele opțiuni:
complex – soluţionarea ecuaţiei în formă complexă
interval – intervalul se redă sub forma a..b sau x = a..b sau {x = a..b, y = c..d} şi caută soluţiile
doar pe intervalul indicat; maxsols=n – afişează doar n soluţii.

Exemplul 1.42

 Soluționarea ecuațiilor definite recurent

Pentru soluționarea ecuațiilor definite recurent se utilizează comanda rsolve(eqn,f), unde


eqn – ecuaţia sau sistemul de ecuaţii, f – funcţia.

Exemplul 1.43

 Soluționarea ecuațiilor definite funcțional

Exemplul 1.44
 Soluționarea ecuațiilor în muțimea numerelor întregi

Pentru soluționarea ecuațiilor în mulțimea numerelor întregi se utilizează comanda isolve(eqn).

Exemplul 1.45

În cazul în care ecuaţia nu conţine rădăcini întregi este returnată valoarea NULL.

 Soluționarea inecuațiilor

Exemplul 1.46

 Soluționarea sitemelor de inecuații

Exemplul 1.47
solve({x+y>=12,x-2*y<=1,x-y>=0,x-2*y>=1},{x,y});
11
{ y, x2 y1 }
3
 Soluționarea ecuațiilor diferențiale

Pentru a soluţiona în mod analitic ecuaţiile diferenţiale Maple utilizează comanda:


dsolve(eqn,var,optiuni), unde eqn – ecuaţia diferenţială, var – variabilele necunoscute ale eqn,
opțiuni – parametri neobligatorii. Parametrul indică metoda soluţionării ecuaţiei. În mod implicit
type=exact.

S-ar putea să vă placă și