Functii Matlab

Descărcați ca doc, pdf sau txt
Descărcați ca doc, pdf sau txt
Sunteți pe pagina 1din 11

Funcii Matlab

Cuprins

1. Generarea unei reele (mesh)_______________2


2. Aproximarea cu fracii continue (rat)_______3
3. Funcia putere (pow2, ^)____________________4
4. Funcia radical (sqrt)_________________________5
5. Funcia logaritm (log, log2, log10)__________6
6. Funcia exponenial (exp(a))_______________7
7. Aproximarea cu numere ntregi (fix, floor,
ceil, round)______________________________________8
8. Aproximarea cu numere raionale (rats)___9
9. Cel mai mare divizor comun (gcd)_________10
10.Cel mai mic multiplu comun (lcm)_______10

1.

Generarea unei reele (mesh)

Funcia meshgrid transform domeniul specificat prin vectorii x i y n


tablourile X i Y care pot fi folosite att pentru evaluarea funciilor de doua
variabile ct i pentru reprezentri 3D de tipul mesh sau surface.
Se apeleaz cu unu dintre sintaxele :
[ X, Y] = meshgrid ( x, y)

[ X, Y] = meshgrid (x)

Si returneaz datele n tablourile X i Y, care sunt copii ale vectorului x i ale


vectorului y. Cu alte cuvinte, funcia meshgrid returneaz n tablourile X i Y
perechile de coordonate ale tuturor punctelor din domeniul definit de vectorii
x i y. Pentru exemplificare vezi figura (1).

Fig(1)

Mesh-ul rezultat prin divizarea domeniului xy.

Exemplul (1): S se genereze tablourile X i Y pentru domeniul:

-2 x 2, -2 y 3
Cu pasul 2 pe axa Ox i pasul 1 pe axa Oy.
Cu instrunctiunea:
[X, Y] = meshgrid (-2: 2:2, -2: 2)
Se obine rezultatul:

2.
Aproximarea cu fracii continue
(rat)
Funcia MATLAB rat aproximeaz un numr cu fracii continue; se
apeleaz cu una dintre sintaxele:
y=rat(x)
y=rat(x, tol)

[a, b]=rat(x)fgds
[a, b]=rat(x, tol)

unde:
x
tol

este numrul care trebuie aproximat cu fracii continue;


este tolerana care se accept ntre numrul x i numrul y (y-x<=tol);
implicit, tol=
;
y
exprimarea lui x ca fracie continu;
a i b numrtorul i numitorul fraciei care aproximeaz pe x cu un numr de
forma:

Exemplul (2.1): S se aproximeze cu fracii continue numerele :


0.25 , 1.25 , -2.25 i 1.343. Cu secvena MATLAB

rat( [ 0.25 1.25 -2.25 1.343 ])


se obine rezultatul:
0 + 1/(4)
1 + 1/(4)
-2 + 1/(4)
1 + 1/(3 + 1/(-12 +1/(6)))
Exemplul(2.2): S se aproximeze prin fracii raionale numerele:2.25, 3.5,

6.57, 10. Se nscriu aceste numere ntr-un vector i se aplic funcia rat, ca n
secvena de mai jos:
X=[2.25 3.5 6.57 10];
[A, B]=rat(X)
obinndu-se rezultatul:
X=[2.25 3.5 6.57 10]
A=[9
7
657 10]
3

B=[4

3.
pow2
^

100

1]

Funcia putere (pow2, ^)

MATLAB-ul dispune de dou funcii pentru ridicarea la putere:


- pentru a ridica 2 la puterea n (2n);
- pentru a ridica un numr la puterea n (x=an).

Se apeleaz cu sintaxele:
y=pow2(x) calculeaz numrul y=2x.Dac x este o matrice ,y va fi o matrice
de aceleai
dimensiuni cu elementele calculate dup aceast regul, funcia
acionnd
element cu element;
y=pow2(m,n) calculez numrul y=m*2n;
x=a^n
calculeaz puterea n a numrului a, x=an. Exponentul n
poate avea orice
valoare real sau complex. Pentru calculul radicalului de ordinul
n dintr-un
numr a, se utilizeaz funcia putere sub forma: x=a1/n.
Funcia nextpow2 avnd ca argument scalarul P, se apeleaz cu
sintaxa:
N=nextpow2(P)
i returneaz cel mai mic numr natural N astfel nct 2 N P .
Dac P este vector, funcia returneaz scalarul N,astfel nct 2N majorez
numrul
de elemente ale vectorului.
Exemplul(3.1): S se calculeze: A=[23 25 213,5].

Cu secvena:
A=[pow2(3) pow2(5) pow2(13.5)]
rezult:
adic:

A= 1.0e+004*
0.0008 0.0032 1.1585
A=[8 32 11585]

Exemplul(3.2) : S se efectueze aceleai calcule ca la punctul anterior ,

utiliznd operatorul de ridicare la putere ^.


Cu secvena:
A=[2^3 2^5 2^13.5]
4

se obin aceleai rezultate.


Exemplul(3.3) :

S se calculeze: x

Cu secvena:
x=125^(1/3)
se obine:
x=5.0000

4.

Funcia radical (sqrt)

Calculul radicalului de ordinul 2 dintr-un numr, x= a , poate utiliza


funcia putere,sau funcia sqrt, apelat cu sintaxa: x=sqrt(a).
Argumentul a poate fi orice numr real sau complex. Dac numrul a este
negativ sau complex, rezultatul calculului este un numr complex.

Exemplul(4.1):
1
4

S se calculeze radicalul fiecrui element al matricei:

2
;
9

Cu secvena de instruciuni:
X=[1

2; 4

C=sqrt(X)
se obine rezultatul:
1.0000
C
2.0000

1.4142
0 3.0000i

-9];
fsad

5.

Funcia logaritm (log, log2, log10)

Calculul logaritmului natural al logaritmului n baza 2 sau al


logaritmului n baza 10 al unui numr a utilizeaz funciile log , log2 ,
respectiv log10,apelate cu sintaxele:
X=log(a)

x=log2(a)

x=log10(a)

Exemplul(5.1): S se calculeze logaritmul natural i zecimal din numerele


e2 i 100.
Cu secvena:
X1=[log(exp(2)) log(100)] ggfdhhtryed
X2=[log10(exp(2))
sau:

log10(100)]

A=[exp(2) 100];
X1=log(A)
X2=log10(A)

se obine rezultatul:
X1=[2.0000

4.6052]

X2=[0.8686

2.0000]

Exemplul(5.2): S se calculeze logaritmul n baza 2 al elementelor matricei:


A=[4 23 82 10].

Cu secvena:
A=[4 2^3 8^2 10]
X=log2(A) fdgdsdfsfsf

se obine rezultatul:
2.0000
X
6.0000

6.

3.0000

3.3219

Funcia exponenial (exp(a))

Calculul exponenialei: x=ea(unde


funcia exp, apelat cu sintaxa:

e=2.71828182845),

folosete

x=exp (a)
Dac argumentul este un numr complex z=x+iy ,rezultatul este
calculat cu relaia:
e z = e x ( cos( y ) + i sin ( y ) )

Exemplul(6.1):

e , e2 i e-3.

S se calculeze:

Cu secvena:
x=[exp(1) exp(2) exp(-3)]
A=[1

-3]; jfhfjffhtrtyd

sau:
X=exp (A)
se obine rezultatul:
X=[2.7183

7.3891

0.0498] .

7.

Aproximarea cu numere ntregi


(fix, floor, ceil, round)

Funciile MATLAB folosite pentru aproximarea cu numere ntregi sunt: fix,


floor, ceil, round. Aceste funcii opereaz asupra fiecrui element al unei matrice
sau al unui vector i se apeleaz cu sintaxa:

nume_funcie(argument)
unde:
nume_funcie este numele uneia dintre funciile de mai sus;
argument poate fi un scalar, un vector sau o matrice, ale cror
elemente se doresc a fi rotunjite.
Exemplul(7.1): S se rotunjeasc elementele vectorului:
-

V= 0

la
la
la
la

cel
cel
cel
cel

mai
mai
mai
mai

apropiat
apropiat
apropiat
apropiat

2 .3

4 .7

5 .2

ntreg;
ntreg spre 0;
ntreg spre ;
ntreg spre .

S se determine semnul elementelor vectorului V.


Cu secvena de instruciuni:
V=[0 2 2.3 4.7 -5.2 -7.8];
A=round(V)
B=fix(V)
C=ceil(V)
D=floor(V)
E=sing(V)

se obin rezultatele:
A=[0 2 2 5 -5 -8]
B=[0 2 2 4 -5 -7]
9

7.8

C=[0 2 3 5 -5 -7]
D=[0 2 2 4 -6 -8]
E=[0 1 1 1 -1 -1]

8.
Aproximarea cu numere raionale
(rats)
Funcia MATLAB rats realizeaz aproximarea cu numere raionale; se
apeleaz cu una dintre sintaxele:
y= rats (x)

y=rats(x, s)

Argumentele de intrare s determin afiarea rezultatului simbolic ntr-o


matrice ir.

Exemplul(8.3): S se aproximeze cu numerele raionale, numerele:


0.25, i 1.2596.
Cu secvena:
X= [1.25 0.25

pi 1.2596];

Y=rats(X)
se obin rezultatele:
Y=[5/4 1/4

355/113 820/651]

10

1.25,

9.

Cel mai mare divizor comun (gcd)

Funcia MATLAB gcd calculeaz cel mai mare divizor comun a dou
numere ntregi; se apeleaz cu sintaxa:
a= gcd(x, y)
Exemplul(9.1):

S se determine cel mai mare divizor comun al numerelor:

30 i 21.
Cu secvena:
a=gcd(30, 21)
rezult:
a=3

10. Cel mai mic multiplu comun (lcm)


Funcia MATLAB lcm returneaz cel mai mic multiplu comun a dou
numere ntregi. Se apeleaz cu sintaxa:
a=lcm(x, y)

Exemplul(10.2): S se determine cel mai mic multiplu comun al numerelor:

9 i 30. Cu secvena:
a=lcm(9, 30)
rezult:
a=90

11

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