Documente Academic
Documente Profesional
Documente Cultură
Conversiile numerice
Considerăm următoarea mărime constantă:
t = 0.1
Funcţia sym are patru opţiuni pentru o reprezentare simbolică a valorii numerice
aflate în t. Acestea sunt următoarele:
- opţiunea ‘f’ : sym(t,'f') returnează o reprezentare simbolică în virgulă
1
mobilă:
'1.999999999999a'*2^(-4)
- opţiunea ‘r’ : sym(t,'r') returnează forma raţională a numărului 1/10
(aceasta este setarea implicită a funcţiei sym)
- opţiunea ’e’ sym(t,'e') returnează forma raţională a lui t plus diferenţa între
valoarea raţională teoretică a lui t şi valoarea reală în virgulă mobilă
sym(t,'e')
ans = 1/10+eps/40
- opţiunea ‘d’ returnează numărul t pe atâtea cifre zecimale câte specifică
instrucţiunea digits (valoarea implicită fiind de 32 de cifre).
sym(t,'d')
ans = .10000000000000000555111512312578
digits(7)
sym(t,'d')
ans = .1000000
O utilizare importantă a funcţiei sym este conversia unei matrici din formă
numerică în formă simbolică. Dacă avem următoarea matrice:
A = 1.0000 0.5000 0.3333
0.5000 0.3333 0.2500
0.3333 0.2500 0.2000
atunci instrucţiunea
A = sym(A)
conduce la următorul rezultat
A =
[ 1, 1/2, 1/3]
[ 1/2, 1/3, 1/4]
[ 1/3, 1/4, 1/5]
CALCUL SIMBOLIC
Calculul derivatei
Pentru a calcula derivata simbolică a funcţiei sinus, creăm expresia:
syms a x
f = sin(a*x)
2
după care folosind funcţia diff se calculează derivata acesteia în raport cu x.
diff(f)
ans = cos(a*x)*a
Se poate calcula derivata în raport cu variabila a cu comanda:
diff(f,a)
care afiseaza rezultatul df/da.
ans = cos(a*x)*x
Pentru a calcula derivata de ordinul 2 se utilizează următoarea comandă:
diff(f,x,2)
care afiseaza următorul rezultat:
ans = -sin(a*x)*a^2
Calculul integralei
Dacă f este o expresie simbolică, atunci comanda:
int(f,v)
determină integrala nedefinită a lui f în raport cu v. De asemenea este posibil calculul
integralei definite folosind comanda:
int(f,v,a,b),
unde f este expresia ce trebuie integrată, v, variabila după care se face integrarea, iar a şi b
sunt limitele de integrare.
Calculul limitelor
Dacă f este o expresie simbolică, atunci comanda:
limit(f,x,a) sau limit(f,a), calculează lim f ( x)
x a
Simplificări
Iată trei expresii diferite:
syms x
f = x^3-6*x^2+11*x-6
g = (x-1)*(x-2)*(x-3)
h = x*(x*(x-6)+11)-6
Folosind următorele comenzi ele pot fi puse sub forma obişnuită:
pretty(f), pretty(g), pretty(h)
x3 - 6 x2 + 11 x - 6
(x - 1) (x - 2) (x - 3)
x (x (x - 6) + 11) - 6
Aceste expresii sunt trei reprezentări diferite ale aceleiaşi funcţii matematice.
Fiecare din cele trei forme poate fi preferată într-o anumită situaţie. Prima formă este cea
mai des utilizată reprezentare a unui polinom. Cea de-a doua este forma factorizată, cea care
prezintă rădăcinile polinomului. Cea de-a treia formă este reprezentarea Horner.
Există câteva funcţii ce aplică o serie de identităţi algebrice şi trigonometrice pentru
a transforma o reprezentare a unei funcţii în alta posibil mai simplă sau mai utilă. Aceste
3
funcţii sunt: collect, expand, horner, factor, simplify, şi simple.
Funcţia collect grupează termenii polinomului în ordine descescătoare a puterilor
variabilei simbolice:
f=(x-1)*(x-2)*(x-3)
collect(f)
x^3-6*x^2+11*x-6
Funcţia expand asigură distributivitatea înmulţirii faţă de adunare. Iată câteva exemple:
f expand(f)
a*(x + y) a*x+a*y
(x-1)*(x-2)*(x-3) x^3-6*x^2+11*x-6
x*(x*(x-6)+11)-6 x^3-6*x^2+11*x-6
exp(a+b) exp(a)*exp(b)
cos(x+y) cos(x)*cos(y)-sin(x)*sin(y)
f=(1-x^2)/(1-x)
simplify(f)
x+1
Dacă se doreşte rezolvarea unei ecuaţii de forma f(x) = q(x), trebuie folosite şiruri
de caractere între apostroafe:
s = solve('cos(2*x)+sin(x)=1')
s =
[ 0] [ pi] [ 1/6*pi] [ 5/6*pi]
Ecuaţiile neliniare pot avea mai multe soluţii, chiar dacă se dau condiţiile iniţiale.
x = dsolve('(Dx)^2+x^2=1','x(0)=0')
x = [-sin(t)]
[ sin(t)]
y = dsolve('D2y=cos(2*x)-y','y(0)=1','Dy(0)=0','x')
simplify(y)
y = -2/3*cos(x)^2+1/3+4/3*cos(x)
TEMĂ:
1. Să se calculeze derivatele de ordinul I si II pentru următoarele funcţii:
x2 y4 5x 2 3
f ( x) , g ( x) tg
, h( x) ln sin x 2 4 x 5
2 2x 1
2. Să se calculeze următoarele integrale:
1 1
6
cos( x) sin( x) x2 1 ln x 1 x 2 ln(1 a 2 x 2 ) arctg (ax)
cos( x) sin( x)
dx , x x4 1
dx ,
1 x2
dx , 0 1 x 2 dx , x
0 1 x2
dx
6
3. Să se calculeze următoarele limite şi serii:
n n 1 1 1
, ln1 2 ,
lim sin
n
, lim ln
3 n 2n n 2 n n 1 nn 1 n n 1
4. Să se rezolve următoarele ecuaţii diferenţiale:
y 2 y 2 y sin(2t ) 2 cos(2t ) , y (0) 0, y (0) 0;
y’’-3y’+2y = 4t+e3t , y(0)=1, y’(0)=-1
y”’-6y’’+11y’-6y = 0, y’’(0) = 0, y’(0) =1, y(0) = 0