Documente Academic
Documente Profesional
Documente Cultură
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)];
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);
{ xRootOf( _Zln( sin( _Z ) ) ) }
evalf(%);
{ x.3627020561
1.133745919I }
Î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
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)};
( zyx 2 ) ( x 1 ) ( zyx )
sistem := { 7 3 x 3 2 15, 2 3 3 2 66,
ln( xyz )3 ln( x )ln( y z )ln( 4 ) }
_EnvExplicit:=true:
s:=solve(sistem,{x,y,z}):
simplify(s[1]);simplify(s[2]);
{ x2, y3, z1 }
{ x2, z3, y1 }
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});
{ yRootOf( _Z23 _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
Exemplul 1.42
Exemplul 1.43
Exemplul 1.44
Soluționarea ecuațiilor în muțimea numerelor întregi
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
Exemplul 1.47
solve({x+y>=12,x-2*y<=1,x-y>=0,x-2*y>=1},{x,y});
11
{ y, x2 y1 }
3
Soluționarea ecuațiilor diferențiale