+ All Categories
Home > Documents > Functii Mate Mat Ice in Matlab

Functii Mate Mat Ice in Matlab

Date post: 07-Apr-2018
Category:
Upload: mirela-mimi
View: 248 times
Download: 0 times
Share this document with a friend

of 39

Transcript
  • 8/6/2019 Functii Mate Mat Ice in Matlab

    1/39

    8. FUNCII MATEMATICE N MATLAB

    Funciile matematice uzuale i speciale se apeleaz cu sintaxa general:y=nume_funcie(argument)

    unde: nume_funcie, este numele uneia dintre funciile matematice; argument, este valoarea pentru care se evalueaz funcia; y este variabila n care se returneaz rezultatul.

    Dac argumentul este o matrice, funciile matematice opereaz asuprafiecrui element.

    8.1. Funcii trigonometrice

    Principalelefuncii trigonometrice directe, apelabile n Matlab sunt: sin(x) , care calculeaz sinusul argumentului x, dat n radiani; cos(x) , care calculeaz cosinusul argumentului x, dat n radiani; tan(x) , care calculeaz tangenta argumentului x, dat n radiani; cot(x) , care calculeaz cotangenta argumentului x, dat n radiani; sec(x) , care calculeaz secanta argumentului x, dat n radiani; csc(x) , care calculeaz cosecanta argumentului x, dat n radiani.

    Dac, de exemplu, argumentul x este vectorul:

    x = [ pi/6 pi/4 pi/3 pi/2pi/2+pi/6 pi/2+pi/4 pi/2+pi/3 pipi+pi/6 pi+pi/4 pi+pi/3 pi+pi/23*pi/2+pi/6 3*pi/2+pi/4 3*pi/2+pi/3 2*pi ],

    care n radiani este,

    x =[ 0.5236 0.7854 1.0472 1.57082.0944 2.3562 2.6180 3.14163.6652 3.9270 4.1888 4.71245.2360 5.4978 5.7596 6.2832],

    atunci pentru: sin(x) se obine,

    ans =0.5000 0.7071 0.8660 1.00000.8660 0.7071 0.5000 0.0000-0.5000 -0.7071 -0.8660 -1.0000-0.8660 -0.7071 -0.5000 -0.0000

    cos(x) se obine,ans =

    0.8660 0.7071 0.5000 0.0000

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    2/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE170

    -0.5000 -0.7071 -0.8660 -1.0000-0.8660 -0.7071 -0.5000 -0.00000.5000 0.7071 0.8660 1.0000.

    Pentru y = [pi/3 pi/4 pi/6], dac se calculeaz: tan(y) se obine,

    ans =1.7321 1.0000 0.5774, cot(y) se obine,

    ans =0.5774 1.0000 1.7321, sec(y) se ob

    ine,

    ans =2.0000 1.4142 1.1547, csc(y) se obine,

    ans =1.1547 1.4142 2.0000.

    Principalelefuncii trigonometrice inverse, apelabile n Matlab sunt: asin(x), care calculeaz arcsinusul argumentului x; acos(x), care calculeaz arccosinusul argumentului x; atan(x), care calculeaz arctangenta argumentului x; atan2(y,x), care calculeaz arctangenta prii reale a elementelor xi y,

    cu condiia ca . -pi

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    3/39

    Funcii matematice n Matlab 171

    8.2. Funcii hiperbolice

    Principalelefuncii hiperbolice directe, apelabile n Matlab sunt: sinh(x), care calculeaz sinusul hiperbolic al argumentului x; cosh(x), care calculeaz cosinusul hiperbolic al argumentului x; tanh(x), care calculeaz tangenta hiperbolic a argumentului x; coth(x), care calculeaz cotangenta hiperbolic a argumentului x; sech(x), care calculeaz secanta hiperbolic a argumentului x; csch(x), care calculeaz cosecanta hiperbolic a argumentului x;

    Considernd x=[0 pi/6 pi/2 pi/3 pi] i calculnd: sinh(x) se obine,

    ans =0 0.5479 2.3013 1.2494 11.5487,

    cosh(x) se obine,ans =

    1.0000 1.1402 2.5092 1.6003 11.5920, tanh(x) se obine,

    ans =0 0.4805 0.9172 0.7807 0.9963,

    coth(x) se obine,ans =

    Inf 2.0813 1.0903 1.2809 1.0037,

    sech(x) se obine,ans =1.0000 0.8770 0.3985 0.6249 0.0863, csch(x) se obine,

    ans =Inf 1.8253 0.4345 0.8004 0.0866.

    Principalelefuncii hiperbolice inverse, apelabile n Matlab, sunt: asinh(x), care calculeaz arcsinusul hiperbolic al argumentului x; acosh(x), care calculeaz arccosinusul hiperbolic al argumentului x; atanh(x), care calculeaz arctangenta hiperbolic a argumentului x; acoth(x), care calculeaz arccotangenta hiperbolic a argumentului x;

    asech(x), care calculeaz arcsecanta hiperbolic a argumentului x; acsch(x), care calculeaz arccosecanta hiperbolic a argumentului x;

    Dac x = [0 1/2 1], calculnd: asinh(x) se obine,

    ans =0 0.4812 0.8814,

    acosh(x) se obine,

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    4/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE172

    ans =0 + 1.5708i -0.0000 + 1.0472i 0,

    atanh(x) se obine,ans =

    0 0.5493 Inf.

    Pentru argumente numere complexe de forma z=x+iy, relaiile de calculsunt:

    sin(z) = sin(x)*cosh(y) + i*cos(x)*sinh(y);cos(z) = cos(x)*cosh(y) - i*sin(x)*sinh(y);

    tan(z) = sin(z)/cos(z);

    cot(z) = cos(z)/sin(z).

    8.3. Funcii de tip exponenial

    Dup cum am artat anterior, ridicarea unui numr a la puterea n se faceprin instruciunea a^n. Exponentul n poate avea orice valoare, real sau complex.Pentru a calcula radicalul de ordinul n dintr-un numr a, se utilizeaz funciaputere sub forma a^(1/n). De exemplu, dac a = 9 i n=2, atunci a^n este 9^2,respectiv 81, iar a^(1/n) este 9^(1/2), respectiv 3.

    Ridicarea la puterea x a numrului 2 (2x), se poate face prin funciapow2(x). Dac x este o matrice, atunci rezultatul va fi o matrice de aceleaidimensiuni, funcia acionnd element cu element. Pentru x=3.1, pow2(x) este

    8.5742. Calculul unui numr de forma y=m*2n, se realizeaz printr-o instruciunede forma y=pow2(m,n). Pentru m=20.1 i n=3.5, cu comanda y=pow2(m,n) seobine 161.2.

    Pentru calculul exponenialei ex (unde e=2.71828182845), se utilizeazfuncia exp(x), unde x este argumentul. Dac x=[1 2 2 1], atunci exp(x) conducela:

    ans =2.7183 7.3891 0.1353 0.3679.

    Dac argumentul este un numr complex de forma z=x+i*y, atunci rezultatul

    se calculeaz cu relaia: ( ) ( )( )ysiniycosee xz += . Pentru z=2+3*i se obine:ans =

    -7.3151 + 1.0427i.Pentru calculul logaritmului natural, al logaritmului n baza 2 sau al

    logaritmului zecimal (n baza 10) al numrului a (real, sau complex), suntdisponibile funciile log, log2i respectiv log10, apelabile cu sintaxele:

    x=log(a); x=log2(a); x=log10(a).Dac a = [2 ^2 3^2 2^5 10^3 10^(-2) 2^(-3)], atunci:log(a) este [1.3863 2.1972 3.4657 6.9078 -4.6052 -2.0794],

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    5/39

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    6/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE174

    iyxz += , respectiv unghiului, n radiani, fcut n planul complex (x i y), serealizeaz prin funcia angle(z), care este echivalent cu atan(y/x). n general,argumentul este determinat, n afara unui multiplu de 2 , prin

    ( ) ( )r

    ysin,

    r

    xcos == . Cu cele de mai sus, forma trigonometric a numrului

    complex este: ( ) ( )( ) sincosrz i+= . Pentru z=2+3*i, prin angle(z) se obine0.9828, acelai rezultat ca i prin atan(3/2).

    Partea real x, a unui numr complex iyxz += , se extrage prin funcia

    real(z), iar partea imaginar prin funcia imag(z). Pentru z=2+3*i, prin real(z) seobine valoarea 2, iar prin imag(z) se obine 3. Calculul prii reale i imaginare anumerelor complexe, exprimate n form polar, se poate face i cu funciaunwrap.

    Pentru un numr complex iyxz += , conjugatul su este iyxz = ipoate fi obinut prin funcia conj(z). Dac z=2+3*i, atunci conj(z) este 2-3*i.

    Determinarea situaiei, dac un vector sau matrice X are toate elementelenumere reale (respectiv dac partea imaginar a fiecrui element este 0) serealizeaz prin funcia isreal(X), care rspunde prin 1, dac toate elementele suntreale i prin 0, altfel. Pentru X=[2 i 5+2*i 7] prin isreal(X) se obine 0, iar pentruXX=[2 -1 7], cu isreal(XX) se obine 1.

    Sortarea unor numere complexe conjugate perechi (sau reale parteaconjugat 0), n ordinea cresctoare a prii reale, se realizeaz prin funciacplxpair. Dac X=[8 1+2*i 4 1-2*i 2 3-2*i 3+2*i], atunci funciacplxpair(X), returneaz [1+2i 1-2i 3+2i 3-2i 2 4 8].

    8.5 Funcii pentru aproximarea numerelor

    Funciile Matlab pentru aproximarea cu numere ntregi sunt: fix care rotunjete la cel mai apropiat ntreg spre zero ; floor ce rotunjete la cel mai apropiat ntreg spre minus infinit (- ) ; ceil - care rotunjete la cel mai apropiat ntreg spre plus infinit (+) ;

    round - care rotunjete la cel mai apropiat ntreg.Funciile de mai sus opereaz asupra fiecrui element al unei matrice sau

    vector i se apeleaz cu sintaxanume_funcie(argument), unde nume_funcie estenumele uneia dintre funciile de mai sus (fix, floor, ceil, round), iar argumentpoate fi un scalar, un vector sau o matrice, ale crui elemente se doresc a firotunjite. Atunci cnd elementele din argument sunt numere complexe, func iile demai sus opereaz independent asupra fiecrei pri (real sau imaginar). Dacconsiderm vectorul, V = [-0.25 -7.2 2.4-2.6i 0.499 0.501 2.71+3.49i

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    7/39

    Funcii matematice n Matlab 175

    11.5i], atunci:fix(V) este [ 0 -7 -2-2i 0 0 2+3i 11i ];floor(V) este [ -1 -8 -3-3i 0 0 2+3i 11i ];ceil(V) este [ 0 -7 -2-2i 1 1 3+4i 12i ];round(V) este [ 0 -7 -2-3i 0 1 3+3i 12i ].

    Pentru aproximarea numerelor reale cu fracii continue se utilizeazfuncia rat, apelat cu una dintre sintaxele,

    [N,D] = rat(x), [N,D] = rat(x,tol),unde: x este numrul care trebuie aproximat cu fracii continue ; tol este toleranacare se accept ntre numrul x dat i numrul y (aproximat), astfel nct

    tolxy , avnd valoarea implicit, tol=10-6; N, D sunt numrtorul, respectivnumitorul fraciei, care aproximeaz pe x cu tolerantol,astfel nct abs(N./D - X)

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    8/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE176

    ans =1/4 27/20 -691/200 841/625.

    Funcia mod(x,y) calculeaz modulus (restul cu semn dup mpirea dintrex i y), astfel c mod(x,y) = x - y.*floor(x./y) dac y ~= 0, iar prin convenie,mod(x,0) este x. Intrrile x i y trebuie s fie matrice reale de aceeai dimensiune,sau una trebuie s fie scalar.

    Funcia rem(x,y) calculeaz restul mpririi lui x la y, element cu element,astfel c mod(x,y) = x - y.*fix(x./y) dac y ~= 0, iar prin convenie, rem(x,0) esteNaN. Intrrile x i y trebuie s fie matrice reale de aceeai dimensiune sau una

    trebuie s fie scalar.Dac se calculeaz restul mpririi vectorului x=[1 3 -6], la y=[2 3 4], cuz=rem(z,y), se ob=[2 3 4], cu z=rem(z,y), se obine

    z=[ 1 0 -2]

    Funcia mod(x,y) are acelai semn cu y, atunci cnd rem(x,y) are semnul luix. Cele dou funcii mod(x,y) i rem(x,y) sunt egale dac x i y au acelai semn,dar difer dac y sau x au semne diferite. Dac X=[1.5 9 -4.5] i Y=[-0.5 -3 4],atunci mod(X,Y) este [ 0 0 3.5], iar rem(X,Y) este [0 0 -0.5], dar mod(Y,X)este [1 6 -0.5], iar rem(Y,X) este [-0.5 -3 4]. Considernd X1=[2.5 6 7] iY1=3, atunci rem(X1,Y1) este [2.5 0 -1], iar rem(Y1,X1) este [0.5 3 3], pecnd mod(X1,Y1) este [2.5 0 2], iar mod(Y1,X1) este [0.5 3 -4].

    Funcia sign(x) asociaz fiecrui element al vectorului x elementele 1, 0, 1,

    dup urmtoarea regul: ( )

    =

    0x1-

    0x0

    0x1,

    xsign , . Dac x este complex, atunci

    sign(x)=x./abs(x).

    8.6. Funcii pentru aflarea unor numere importante

    Factorii primi ai unui numr natural pozitiv N, alii dect 1, sunt calculaicu funia factor(N). Dac N=33, atunci factor(N), gsete ca factori primi 3 i 11.

    Generarea unei liste cu toate numerele primemai mici sau egalecu unnumr natural pozitiv N (altele dect 1), se face prin utilizarea funciei primes(N).Dac N=33, atunci primes(33), produce lista,

    ans =2 3 5 7 11 13 17 19 23 29 31,

    care conine toate numerele prime mai

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    9/39

    Funcii matematice n Matlab 177

    obine rspunsul 1 atunci cnd este prim i 0, altfel. De exemplu, pentruisprime(31) se obine 1, iar pentru isprime(33) se obine 0.

    Calculul celui mai mare divizor comun G, a dou numere ntregiai b,se obine prin utilizarea funciei G=gcd(a,b). Pentru a=2310 i b=273, funciagcd(a,b) gsete 21, care este cel mai mare divizor comun.

    Calculul celui mai mic multiplu comun M, a dou numere ntregiai b,se realizeaz prin utilizarea funciei M=lcm(a,b). Pentru a=2310 i b=273, funcialcm(a,b) se gsete 30030, care este cel mai mic multiplu comun.

    Numrul tuturor combinaiilor a N elemente, luate cte K (K

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    10/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE178

    prin limita irului( )

    ( ) ( ) ( )xn nn

    nxxxx

    x

    +++=

    !

    21lim

    1 K.

    Principalele proprieti ale funciei Gamma sunt: dac argumentulx este un ntreg, atunci funcia Gamma este identic cu

    funcia factorial, respectiv ( )1! += nn ;

    pentru oricez finit, este satisfcut relaia de recuren ( ) ( )xxx =+ 1 ;

    cunoscnd valoarea pentrux > 1, valorile pentrux < 1 se determin din

    ecuaia complementelor ( )

    ( ) ( ) ( ) ( )xx

    x

    xx

    x

    +

    =

    =

    sin1sin

    1 ;

    pentru2

    1=x funcia =

    2

    1.

    n Matlab, funcia Gamma se apeleaz cu sintaxa y=gamma(x), unde x esteargumentul iar y este valoarea calculat. Pentru x=2.5 se obine 1.3293, iar pentrux=0.5 se obine -3.5449.

    Pentru x>0 se poate calcula logaritmul natural al funciei Gamma cuinstruciunea gammaln(x), care corespunde lui log(gamma(x)), ns calculul seface printr-o metod direct, fr a calcula gamma(x).

    Funcia Gamma incomplet, gammainc(x,a), este definit de relaia,

    >= +

    xat xaadtte

    aaxP

    0

    1 ,0,)(

    1),( ,

    i are limitele: ( ) 1),(,0,0 == aPaP .Pentru x=1.25 i a=0.5, cu gammainc(1.25,0.5) se obine 0.8862.

    Pentru x=[0:0.1:15] i diverse valori ale lui a, funcia Gamma incomplet seobine prin instruciunile:

    g_05=gammainc(x,0.5); g_1=gammainc(x,1);g_3=gammainc(x,3); g_10=gammainc(x,10),

    iar valorile sunt prezentate nfigura 8.1.Complementul funciei P(x,a), notat cu Q(x,a), este de multe ori confundat

    cu funcia gamma incomplet,

    >=

    == +

    x

    x

    atxaadtte

    aa

    axaxPaxQ ,0,

    )(

    1

    )(

    ),(),(1),( 1

    i are limitele,

    ( ) 0),(,1,0 == aPaQ .

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    11/39

    Funcii matematice n Matlab 179

    Fig. 8.1. Funcia Gamma incomplet pentru diverse valori ale lui aix

    8.7.2. Funciile Beta i Beta incomplet

    Funcia Beta, ( )qpB , , sau funcia lui Euler de prima spe, de variabilecomplexepi q, poate fi definit prin integrala,

    ( ) ( ) =

    1

    0

    11 1, dtttqpB qp ,

    convergent pentru ( ) 0> p , ( ) 0> q .

    Principalele proprieti ale funciei Beta sunt:

    funcia Beta, ( )qpB , , este simetric n raport cupi q, ( ) ( )pqBqpB ,, = ,

    obinut prin schimbarea de variabil = t1 , astfel c

    ( ) ( ) ( ) ===0

    1

    1

    0

    ),(11, pqBddqpB pqpp ;

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    12/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE180

    ntre funciile lui Euler ( )qpB , i ( )z exist relaia

    ( )( ) ( )( )qp

    qpqpB

    +

    =, ;

    pentru funcia lui Euler de prima spe avem egalitatea,

    ( )( ) ( )

    ( )

    ( ) ( )

    ( )( )qpqB

    qp

    qpq

    qp

    qppqppB ,1

    1

    1

    1

    11, +=

    ++

    +=

    ++

    +=+ .

    n Matlab, funcia Beta se apeleaz cu sintaxa b=beta(p,q), unde pi q sunt

    argumentele, iar b este valoarea calculat. Pentru p=0.5 i q=1.5 se obine 1.5708.Pentru x>0 se poate calcula logaritmul natural al funciei beta, cu

    instruciunea betaln(p,q), care corespunde lui log(beta(p,q)), ns calculul se faceprintr-o metod direct, fr a calcula beta(p,q). Pentru p=0.5 i q=1.5 se obine0.4516.

    Funcia Beta incomplet, betainc(x,p,q), este definit de relaia,

    ( )( )

    ( )

    ( )

    ( )

    ++

    +++

    ==

    =

    +

    x

    n

    n

    qpqpinc x

    nqpB

    npB

    qppB

    xxdttt

    qpBqpxB

    0 0

    111 1,

    1,11

    ,

    11

    ),(

    1),,(

    cu,

    ]1,0[,0, > + xp,qqp i limitele:

    ( ) 0,,0 =qpB inc , 1),,( = qpBinc

    .

    Pentru x=[0:0.01:1] i diverse valori ale lui pi q, funcia Beta incomplet seobine prin:

    b1=betainc(x,0.5,5), b2=betainc(x,1,3),b3=betainc(x,8,10), b4=betainc(x,0.5,0.5),

    iar graficul este prezentat nfigura 8.2.

    Pentru calculul funciei Beta incomplet se utilizeaz algoritmul din funciabetacore, apelat n betainc(x,a,c) prin instruciunea betacore(x,a,b).

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    13/39

    Funcii matematice n Matlab 181

    Fig. 8.2. Funcia Beta incomplet pentru diverse valori ale luip, qix

    8.7.3. Funciile lui BesselPrintre funciile speciale, deosebit de importante sunt funciile lui Bessel,deoarece se ntlnesc n diverse probleme din mai toate domeniile fizicii i aletehnicii.

    Ecuaia diferenial

    ( )

    ( ) 0)()()(0)()()(

    222

    22

    222

    =++

    =++

    xyxdx

    xdyx

    dx

    xydx

    xyxxyxxyx

    unde este un parametru real sau complex, se numete ecuaia lui Bessel, iarsoluiile acestei ecuaii se numesc funcii Bessel.

    Funciile Bessel se mai numesc i funcii cilindrice datorit faptului c apar

    la rezolvarea ecuaiei lui Laplace n coordonate cilindrice, n problemele la limitdin teoria potenialului (electric, termic, chimic).

    Soluia general a ecuaiei lui Bessel pentru n ntreg este)()( 21 xJCxJCy +=

    unde C1i C2 sunt constante arbitrare, iarJiJ- sunt funciile Bessel de spea ntii ordinul , respectiv .

    Funcia Bessel de spea nti i ordinul , pentru o valoarex, din domeniul de

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    14/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE182

    olomorfie (x)-T, unde Teste o semidreapt cu originea nx=0, este dat de relaia

    ( )( )

    =

    +

    ++

    =0

    2

    1!2

    1)(p

    p

    p

    pp

    x

    xJ

    .

    ntre funciile Bessel cu indici de semne contrare, J i J-, exist relaia

    ( ) )(1)( xJxJ n = .n Matlab, funcia Bessel de spea nti i ordinul niu () real, pozitiv i

    argumentul x se calculeaz cu instruciunea J=besselj(niu,x). Dacx i niu suntvectori de dimensiunile mi respectiv n, atunci J va fi o matricecu dimensiuneamxn, n care elementul din poziia (j,k) este dat de J(j,k)=besselj(niu(j),x(k)), cuj=1,,m

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    15/39

    Funcii matematice n Matlab 183

    punctelor unde se evaluaz funcia Neumann.

    Fig. 8.3. Funciile Bessel de spea nti i ordin ntreg

    Funciile Bessel de prima spe (numite de multe ori de primul sau ntiulordin) i spea a doua (numite i de ordinul doi) sunt asemntoare cu funciiletrigonometrice i, de fapt, funcia J(x) corespunde lui cos(x) i funcia Y(x)corespunde lui sin(x). Aceasta sugereaz deci s se defineasc pentru funciilecilindrice, funcii care sunt legate de J i Y n acelai mod cum funciileexponeniale sunt legate de cele trigonometrice, adic

    ( ) ( ) ( ) ( ),)()(,)()( 21 xiYxJxHxiYxJxH =+= unde i este unitatea imaginar.

    Funciile ( ) ( ) )(),( 21 xHxH se numesc funciile lui Bessel de spea a treia(sau de ordinul trei) sau funciile lui Hankel. Acestea sunt cunoscute ca funciile

    Hankel de spea nti ,( )

    )(1

    xH , respectiv de spea a doua,( )

    )(2

    xH .Dac n ntreg, atunci

    ( ) ( ) ( )

    sin)(1

    xJexJixH

    i

    = , ( )

    ( ) ( )

    sin)(2

    xJexJixH

    i

    = .

    Schimbnd pe n , rezult evident,( ) ( ) )()( 11 xHexH i

    = ,

    ( ) ( ) )()( 22 xHexH i

    = .

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    16/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE184

    n Matlab, funciile Bessel de ordinul trei sau funciile lui Hankel suntcalculate cu instruciunea H=besselh(niu,k,z), unde niu este ordinul, k este ordinulsau spea (k=1 pentru spea nti i k=2 pentru spea a doua), iar x ordonatelepunctelor unde se evaluaz funcia Hankel.

    Valorile funciilor Bessel pentru valori foarte mici ale argumentului (|x|

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    17/39

    Funcii matematice n Matlab 185

    ( ) ( )( )

    ( ) ( )xYx

    xYx

    nnxYxY

    dx

    dnnnn 122

    2 11

    1++

    == .

    Dac ordinul funciei Bessel este un multiplu impar al lui 1/2, atunci funciaBessel de prima spe (ordinul nti) poate fi exprimat, sub form compact, cuajutorul funciilor trigonometrice elementare i al puterilor negative, ntregi ifracionale, ale luix,

    ( ) ( ) ,cos2

    ,sin2

    2

    1

    2

    1 x

    x

    xJx

    x

    xJ

    ==

    ( ) ( ) ,cos2

    1sin

    2,cossin

    12

    2

    3

    2

    3

    +=

    =

    xx

    xxJxx

    xxxJ

    ( ) ntreg,,cos1

    sin12

    2

    1 nxx

    Bxx

    Ax

    xJ nnn

    +

    =

    + iar

    xB

    xA nn

    1,

    1sunt

    polinoame nx

    1de grad cel mult n.

    Liouville a artat c acestea sunt singurele funcii Bessel care pot fiexprimate prin funcii elementare, iar toate celelalte sunt funcii transcendente noi.

    Funciile Bessel de prima spei de ordin ntreg pot fi reprezentai printr-ointegral definit. Astfel,

    ( ) ( ) ===

    0

    2

    0

    sin2

    0

    cos sincos1

    2

    1

    2

    1dnxdeedee

    ixJ inixinix

    nn,

    ( ) ( ) ( )

    ===1

    02

    2

    00

    01

    cos2sincos

    2sincos

    1du

    u

    uxdxdxxJ

    .

    De asemenea, funciile Bessel de prima spe i de ordin ntreg, ( )xJn ,

    admit reprezentarea ( ) +

    =C

    n

    x

    n de

    ixJ

    1

    12

    2

    1, unde Ceste un cerc cu centrul n

    punctul 0= sau o curb simpl nchis care nconjur acest punct.

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    18/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE186

    8.7.4. Dezvoltarea n serie de funcii Bessel a unei funciioarecare. Ortogonalitatea funiilor Bessel de prima spei zerourile lor.

    Se poate demonstra c o funcie oarecare poate fi exprimat sub forma

    ( ) ( )

    =

    =1

    xJaxf n , cu 10 x , adic poate fi exprimat cu ajutorul unui

    numr mare de funcii Bessel de ordinul n. n aceast expresie ,......,, 21 sunt

    rdcinile funciei ( )nJ ordonate dup mrime (n>-1), n fiind numr real.

    Dacn este real n>-1, toate zerourile funciei ( )xJn sunt reale, ntruct seriacorespunztoare are toi coeficienii reali. Funcia ( ) 0=xJn , cu n real, are oinfinitate de rdcini reale.

    Valorile coeficienilor le obinem n modul obinuit, nmulind ambiimembrii ai egalitii cu o asemenea funcie, nct n membrul drept al egalitii,integrnd n domeniul 10 x , valoarea numai a unei singure integrale s rezultediferit de zero. n acest fel, poate fi determinat coeficientul corespunnztortermenului respectiv.

    Funciile ( ) ( ) ( ) 10,...,...,, 21 xxJxxJxxJx nnn , formeaz

    o mulime de funcii ortogonale n domeniul 10 x , adic,

    ( ) ( ) ( ) ( ) kidxxJxJxdxxJxJx kninknin == ,0x1

    0

    1

    0

    .

    Coeficienii dezvoltrii n serie( ) ( ) ( ) ( ) ......2211 ++++= xJaxJaxJaxf nnnnn

    i putem obine prin nmulirea ambilor membrii cu funcia ( )xxJn , integrnd dela 0 la 1 i innd seama de relaia de ortogonalitate,

    ( ) ( ) kidxxJxJx knin = ,01

    0

    , astfel c termenii din membrul drept vor fi nuli,

    cu excepia unuia singur.Prin urmare, coeficientul al -lea al dezvoltrii n serie este:

    ( )( )dxxJxxf

    Ja n

    n

    =

    1

    02 )(2

    .

    8.7.5. Funciile Bessel modificate

    n practic, nu obinem direct formele canonice ale ecuaiilor Laplace ncoordonate cilindrice,

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    19/39

    Funcii matematice n Matlab 187

    ( ) ( ) 0)(0)()()(

    0)(1)(1)(

    22222

    22

    2

    2

    2

    2

    =+

    =++

    =

    ++

    xynxdx

    dx

    dx

    dxxynx

    dx

    xdyx

    dx

    xydx

    xyx

    n

    dx

    xdy

    xdx

    xyd

    ci, n general, trebuie s rezolvm ecuaii difereniale de forma:

    0)()(1)(

    2

    2

    2

    2

    =

    ++ xy

    x

    nk

    dx

    xdy

    xdx

    xyd,

    care, cu schimbarea de variabil kxz = ,se reduce la forma canonic.Soluia general a ecuaiei anterioare se poate scrie sub forma

    )()( 21 kxJCkxJCy nn += sau )()( 21 kxYCkxJCy nn += , care, pentru nix ,iauvalori complexe.

    Pentru cazul paricular 12 =k , ecuaia anterioar devine

    0)(1)(1)(

    2

    2

    2

    2

    =

    ++ xy

    x

    n

    dx

    xdy

    xdx

    xyd,

    avnd soluia general de forma,

    )()( 21 xKCxICy nn += ,

    unde )(xIn este funcia Bessel modificat de spea nti, iar )(xKn este funciaBessel modificat de spea a doua.Aceste funcii modificate sunt echivalentele funciilor Bessel )(xJn i

    )(xYn , care difer printr-un factor constant i sunt date de expresiile,

    ( ) ( ) ( ),)( ixJiixJixI nn

    n

    n

    n =

    ( ) ( )[ ] ( ) ( )[ ]xIxIn

    ixiYixJixKnnnn

    n

    n =+= +

    sin22)( 1 ,

    fiind denumite, din aceast cauzi funciile Bessel de argument pur imaginar.n Matlab, aceste funcii sunt calculate cu formula bi=besseli(n,x) i

    bk=besselk(n,x), unde n este ordinul, iar x este argumentul pur imaginar.

    Pentrux pur imaginar, avnd valorile modulului x=[0:0.1:4], se reprezint n figura 8.4, funciile Bessel modificate de spea nti (I) i a doua (K), de ordinuln=0,1,2, calculate cu secvenele Matlab:

    x =[0:0.001:3.5]; I_0=besseli(0,x); I_1=besseli(1,x); I_2=besseli(2,x);x1=[0.01:0.001:3.5]; K_0=besselk(0,x1);x2=[0.125:0.001:3.5]; K_1=besselk(1,x2);x3=[0.5:0.001:3.5]; K_2=besselk(2,x3);plot(x,I_0,x,I_1,'-.',x,I_2,'--',x1,K_0,x2,K_1,'-.',x3,K_2,'--').

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    20/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE188

    Fig. 8.4. Funciile Bessel modificate

    Dac comportarea funciilor Bessel de spea nti i a doua seamn cu aceeaa funciilor care descriu micarea oscilatorie amortizat, (ceea ce a reieit i dinfaptul c pentru valori foarte mari ale argumentului ele pot fi nlocuite cu funciisinus, respectiv cosinus de amplitudine descresctoare), comportarea funciilorBessel modificate se aseamn cu aceea a funciilor exponeniale.

    Valorile funciilor Bessel modificate, pentru valori foarte mici aleargumentului (|x|

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    21/39

    Funcii matematice n Matlab 189

    ( ) xxI

    xI

    2

    11

    )(

    0

    1 ,( ) xxK

    xK

    2

    11

    )(

    0

    1 + , |x|1.

    Pentru funciile Bessel modificate, sunt valabile urmtoarele formule derecuren:

    ( ) ( ) ( ) ( ) ( ) ( )xKxKx

    nxKxJxI

    x

    nxI nnnnnn 1111

    2,

    2++ +=+= , ( ) ( )xKxK 10 = ,

    ( ) ( ) ( )xIxIxIdx

    d100 == , ( ) ( )dxxxI

    xxI = 01

    1, ( ) ( )dxxxK

    xxK = 01

    1.

    Verificarea argumentelor funciilor Bessel se face cu besschk, apelat subforma [MSG,n,x,SIZ] = besschk(n,x), n care n MSG se ntoarce un mesajreferitor la ni x, specificnd dac sunt numere i dac sunt reale, iar n SIZ sespecific dac au aceeai dimensiune, concomitent cu un mesaj dac nu au.

    8.7.6. Funciile lui Thomson

    Pe lng funciile lui Bessel, de argument pur real sau pur imaginar, ntlnim

    i funcii de ordinul zero i de argument xi 21

    (respectiv 4

    i

    xe ) sau xi 23

    (respectiv

    4

    i

    ixe ), a cror valoare este n general complex.Pentru aceste funcii, cu aplicaii practice deosebite n electrotehnic, se

    folosesc notaiile introduse de W. Thomson (lord Kelvin):

    =

    =+ 40

    40)(bei)(ber

    ii

    xeIixeJxix ,

    =

    =+ 40

    4

    3

    0)(ei)(ker

    ii

    xeKixeKxikx .

    innd seama de ( ),)( ixJixI nn

    n

    = avem( )

    =

    =

    0

    2

    24

    0 2!

    1

    p

    p

    pi x

    pixeI

    ,

    astfel c:

    ( ) ( )...

    2!41

    2!211ReRe)(ber

    8

    2

    4

    22

    1

    02

    3

    0

    +

    =

    = xxxiJxiJx ,

    ( ) ( ) ( )...

    2!5

    1

    2!3

    1

    2!1

    1ImIm)(bei

    10

    2

    6

    2

    2

    22

    1

    02

    3

    0

    +

    =

    =

    xxxxiJxiJx

    Curbele funciilor ber(x) i bei(x) sunt prezentate n figura 8.5 i sunt

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    22/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE190

    calculate n Matlab cu instruciunile:x=[0:0.1:10]; ber=real(besselj(0,i^0.5*x)); bei=imag(besselj(0,i^1.5*x));plot(x,ber,'-.',x,bei); xlabel('x'); ylabel('Functiile lui Thomson').

    Prin definiie, ber(x) i bei(x) se numesc funciile lui Thomson.Acestea se generalizeaz pentru oarecare prin egalitile:

    =

    4

    3

    )(bei)(ber

    i

    xeJxix ,

    =

    4

    3

    )(kei)(ker

    i

    ixeKxix ,

    =+

    4

    3)1()(hei)(her

    i

    xeHxix .

    Fig. 8.5. Funciile lui Thomson ber(x) i bei(x)

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    23/39

    Funcii matematice n Matlab 191

    8.7.7. Funcia Airy

    Pe lng funciile lui Bessel, de argument pur real sau pur imaginar, ntlnimi funciile Airy, definite astfel:

    W = airy(Z) - funcia Airy, Ai(z), a elementelor Z; W = airy(0,Z) identic cu airy(Z); W = airy(1,Z) derivate funciei Airy, Ai'(z); W = airy(2,Z) funcia Airy de spea a doua, Bi(z); W = airy(3,Z) derivate funciei Airy de spea a doua, Bi'(z).

    Dac argumentul Z este o matrice, rezultatul este de acelai tip.Sub forma [W,IERR] = airy(K,Z), returneaz n IERR i informaiireferitoare la rezultatul calculelor. Astfel:

    ierr = 1 argument illegal (Illegal arguments); ierr = 2 depire spre infinit (Overflow. Return Inf.); ierr = 3 acuratee inadecvat (Some loss of accuracy in argument

    reduction) ierr = 4 rezultatele sunt inadecvate (Complete loss of accuracy, z too

    large); ierr = 5 nu este convergent (No convergence. Return NaN).

    Relaiile dintre funciile Airy i Bessel modificate sunt:

    ( )

    3/131Ai(z) = K

    z

    ( ) ( )( ) 3/13/13Bi(z) II

    z+=

    unde: 23

    3

    2z= .

    n Matlab, relaiile sunt:Ai(z) = 1/pi*sqrt(z/3)*K_1/3(zeta)Bi(z) = sqrt(z/3)*(I_-1/3(zeta)+I_1/3(zeta))

    unde zeta = 2/3*z^(3/2).8.7.8. Funcia eroare

    Funcia eroare, erf(x), i complementara funciei eroare, erfc(x), sunt cazurispeciale ale funciei Gamma incomplete, definite prin relaiile:

    )5.0,(2

    erf(x) 2

    0

    2

    xPdte

    x

    t ==

    ,

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    24/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE192

    )erf(x12

    erfc(x)0

    2

    ==

    x

    tdte

    n care )5.0,( 2xP este funcia Gamma incomplet, iar argumentul x trebuie s fie

    real i 0x .Funcia eroare i complementara acesteia au limitele,

    0erf(0) = , 1)erf( = , 1erfc(0) = , 0)erfc( = ,i respect relaiile de simetrie :

    erf(-x)erf(-x) = , erfc(x)2erfc(-x) = .

    Calculul valorii funciei eroare genaralizate, pentru x i y scalar, vector saumatrice se face cu relaia:

    )erf(xerf(y)2

    erf(x)2

    ==

    y

    x

    t dte

    .

    Inversa funciei eroare, erfinv(y), returneaz valoarea x pentru valoricunoscute ale argumentului y i se apeleaz cu sintaxa x=erfinv(y). Valorile lui ytrebuie s fie n intervalul [-1 1], iar x rezult n intervalul ( )+ ,- .

    Funcia eroare, acoperitoare pentru fiecare argument x este:

    erf(x)erfcx(x)2

    = xe ,

    care, pentru x foarte mare, este aproximat cux11

    .

    8.7.9. Funcia integral exponenial

    Funcia integral exponenial, expint, pentru fiecare element x>0, estedefinit prin:

    =x

    t

    dtt

    eexpint(x) .

    O alt definiie a funciei integraleexponenial este valoarea principal aintegralei Chauchy, notat Ei i definit prin:

    =x t

    dtt

    eEi(x) .

    Relaia dintre cele dou definiii este:expint(-x+i*0) = -Ei(x) - i*pi, pentru x > 0Ei(x) = real(-expint(-x)), pentru x > 0.

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    25/39

    Funcii matematice n Matlab 193

    8.7.10. Polinoamele i funciile Legendre asociate

    n coordonate carteziene x, y, z, ecuaia lui Laplace 0graddiv == uu ,se scrie,

    0 2

    2

    2

    2

    2

    2

    =

    +

    +

    z

    u

    y

    u

    x

    u,

    iar n coordonate sferice, r, , , aceast ecuaie are forma,

    0sin

    1

    sin

    sin

    1 22

    2

    2=

    +

    +

    r

    Ur

    r

    UU

    ,

    unde:( ) ( ) cos,sinsin,cossin,, = rrrurU

    este funcia obinut din ( )zyxu ,, prin schimbarea coordonatelor carteziene nsferice,

    cosz,sinsiny,cossin === rrrx .

    Funciile ( )zyxu ,, , omogene n x, y, z, care satisfac ecuaia lui Laplace se

    numesc funcii sferice. Gradul de omogenitate al funciei ( )zyxu ,, se numete iordinul funciei sferice.

    Dac ( )zyxu ,, este o funcie sferic de ordinul n, datorit omogenitii,

    avem( ) ( ) ( ) ,cos,sinsin,cossin,, n

    nnFrrrrurrU == ,

    care, introdus n ecuaia lui Laplace, scris n coordonate sferice i simplificnd cunr , conduce la:

    ( ) 01sin

    1

    sin

    sin

    12

    2

    2=++

    +

    n

    nn FnnFF

    .

    Funciile ( ),nF , care verific ecuaia Laplace de mai sus, se numescfuncii sferice superficiale de ordinul n, deoarece pe sfera cu centrul n origine i deraz 1=r avem:

    ( ) ( ) ,,,1 nFU = .Fiecrei funcii sferice ( ) ( ),,,, rUzyxu = de ordinul n i corespunde o

    funcie sferic superficial ( ),nF i, reciproc, fiecrei funcii sferice

    superficiale ( ),nF i corespunde o funcie sferic

    ( ) ( ) ( ) ,,,,, nn FrrUzyxu ==

    de acelai ordin n.

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    26/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE194

    De menionat c schimbarea lui n n 1= np , las ecuaia anterioar

    neschimbati prin urmare, dac ( ) ( ) ,,, nn FrrU = este o funcie sferic,

    atunci i funcia ( ) ( ) ,,, 11

    1 = n

    n FrrU este o funcie sferic.

    Polinoamele lui Legendre sau funciile lui Legendre de prima spe suntfuncii sferice superficiale, care satisfac ecuaia lui Laplace. Acestea suntpolinoame de gradul n n cos=x , coninnd numai puteri pare sau impare, dupcum n este par sau impar, iar semnele termenilor si alterneaz:

    ( ) ( ) ( ) ( )( )

    kn

    k

    nE

    k

    kkn

    knn x

    knknCxPP 2

    2

    0 !21225311cos

    =

    == L

    ,

    n care

    2

    nE este partea ntreag a numrului

    2

    n.

    De remarcat c, pentru real, [ ]1,1x .Principalele proprieti ale polinoamelor lui Legendre sunt:

    pot fi exprimate prin formula Olinde-Rodrigues,

    ( ) ( )nnn

    xxn

    xP 1d

    d

    !2

    1 2n

    n

    = ,

    sau formula lui Schlafli, ca o integral pe o curb oarecare, C, nchis cu x,

    un punct interior domeniului mrginit de C,

    ( )( )( ) +

    =

    C n

    n

    nnxi

    xP

    d

    1

    2

    1

    2

    11

    2

    ,

    satisfac relaia de recuren, care permite determinarea tuturorpolinoamelor, cnd se cunosc dou dintre ele, cu indici diferind printr-ounitate,( ) ( ) L3,2,1,0121 11 ==+++ + nnPxPnPn nnn ,

    pentru [ ]1,1x iau valori reale n intervalul [ ]1,1 ,

    au toate rdcinile reale i distincte, cuprinse n intervalul deschis ( )11 ,

    polinomul lui Legendre ( )xPn

    este o soluie a ecuaiei difereniale a lui

    Legendre,

    ( )[ ] ( ) ( ) ( ) 01'2"101'1d

    d 22=+= ynnxyyxynnyx

    x,

    polinoamele lui Legendre formeaz un sistem de funcii ortogonale peintervalul [ ]1,1 ,

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    27/39

    Funcii matematice n Matlab 195

    ( ) ( )

    =+

    =

    nk

    n

    nk

    xxPxP nk pentru12

    2pentru0

    d1

    1

    ,

    ceea ce permite s considerm seria Fourier a unei funcii f(x), integrabili cu ptratul integrabil pe [ ]1,1 , fa de sistemul de funcii format de

    polinoamele Legendre, ( )

    =

    0n

    nn xPacu coeficienii Fourier generalizai

    ( ) ( ) xxPxfn

    a nn d2

    12 1

    1

    +

    =

    De menionat c, polinomul lui Legendre ( )xPn , este o soluie particular a

    ecuaiei lui Legendre, ( ) ( ) 01'2"12 =+ ynnxyyx .

    Soluia general a ecuaiei lui Legendre este

    ( ) ( ) ( ) ( )xPCxKx

    xxPCzxPy nnnn +

    +

    +== 111

    1ln ,

    n care polinoamele ( )xKn 1 se determin dezvoltnd funcia 1

    1ln

    +

    x

    xn serie

    de puteri.

    Funciile ( ) ( ) ( )xKx

    xxPxQ nnn 11

    1ln +

    += se numesc funciile lui

    Legendre de spea a doua. Aceste funcii verific, evident, ecuaia lui Legendre isatisfac aceleai relaii de recuren ca polinoamele lui Legendre.

    Funciile lui Legendre asociate se construiesc folosind funciile luiLegendre de prima spei de spea a doua i sunt :

    ( ) ( ) ( )m

    n

    mm

    mnx

    xPxxP

    d

    d1 22, = ,

    ( ) ( )( )

    mn

    mm

    mnx

    xQxxQ d

    d1 22, = ,

    unde m i n iau valorile 0, 1, 2, 3, , iar nm .Funciile lui Legendre asociate sunt soluii ale ecuaiei difereniale:

    ( ) ( ) 01

    1'2"1 2

    22 =

    ++ y

    x

    mnnyxyx

    i pot fi exprimate sintetic sub forma:

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    28/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE196

    ( ) ( ) ( )m

    n

    mmm

    mnx

    xPxxP

    d

    d11)( 22, = ,

    n caren este gradul, iarm este ordinul.

    Calculul acestor funcii se face n Matlab prin instruciuneaP=legendre(n,x), care permite calculul funciilor Legendre de gradul ni ordinulm=0, 1, , n, evaluate pentru fiecare element x. De menionat cn trebuie s fieun scalar ntreg n < 256, iar [ ]1,1x , adic-1

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    29/39

    Funcii matematice n Matlab 197

    0 -0.2985 -0.5879 -0.8585 -1.0998 -1.29903.0000 2.9700 2.8800 2.7300 2.5200 2.2500

    iar instruciunea,P=legendre(2,0:0.1:0.5,'sch')

    are ca rezultat,P =

    -0.5000 -0.4850 -0.4400 -0.3650 -0.2600 -0.12500 0.1723 0.3394 0.4957 0.6350 0.75000.8660 0.8574 0.8314 0.7881 0.7275 0.6495

    de unde se observ diferena.

    Pentru m=1 i n=1, ecuaia diferenial de gradul doi devine:

    ( ) 01

    12'2"1

    22 =

    + y

    xyxyx ,

    iar soluiile, pentru x=0:0.01:1 sunt calculate cu relaia P1=legendre(2,x), pentrufunciile Legendre asociate i relaia P2=legendre(2,x,'sch'), pentru funciileSchmidt seminormalizate, asociate funciilor Legendre.

    Reprezentarea grafic este redat nfigura 8.6.

    0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-1.5

    -1

    -0.5

    0

    0.5

    1

    x

    y

    P1

    P2

    Fig.8.6. Soluiile ecuaiiei de gradul 2 cu funcii Legendre

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    30/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE198

    8.7.11. Funcii eliptice Jacobi

    Polinoamele lui Jacobi sunt de forma:

    ( )( ) ( )

    ( )( ) ( )( ) ( )[ ]nn

    n

    n

    nnxbax

    xn

    xbax

    baxJ

    ++

    +++

    =

    d

    d

    21

    1)(

    L

    ,

    unde , sunt dou numere reale mai mari dect 1.

    Polinomul lui Jacobi )(xJn este o soluie a ecuaiei difereniale:

    ( )( ) ( )( ) ( )( )[ ] ( ) 01'11" =+++++++ ynnyaxbxybxax Totodat, polinoamele lui Jacobi, cuprind drept cazuri particulare, alte

    polinoame speciale, astfel: pentru 1,1,0,0 ==== ba se obin polinoamele lui Legendre sub

    forma Olinde-Rodrigues; dac b,0 == , se obine polinomul lui Laguere, pn la o constant ;

    pentru2

    ,2b

    ba === , se obin polinoamele lui Hermite ;

    pentru2

    1,1,1 ==== ba , se obin polinoamele lui Cebev.

    n Matlab, funcia [Sn,Cn,Dn] = ellipj(U,M, TOL), returneaz valorilefunciilor eliptice SN, CN i DN, evaluate pentru fiecare element al argumentului U

    i parametrului M, cu tolerana TOL. Vectorii U i M trebuie s aib aceeaidimensiune sau unul s fie scalar, iar M are limitele 0

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    31/39

    Funcii matematice n Matlab 199

    z=-10:0.1:10; f=1./sqrt(2*pi)*exp(-z.^2/2);plot(z,f); grid on; xlabel('z'); ylabel('f(z)').

    Calculul funciei de repartiie Laplace,

    ( ) ( )

    == dttedzzfzf2

    2

    1

    folosete secvena,F=trapz(z,1./(sqrt(2*pi))*exp(-z.^2/2))

    care, pentru valorile anterioare, rezult F=1. Limita de integrare, , se poate luaun numr ntre -5 i -10, fr ca, prin aceasta, s se induc erori semnificative.

    Fig. 8.7. Densitatea de probabilitate cu repartiie normal normat

    8.8. Transformri de coordonate

    Dac n unele probleme de teoria cmpurilor (termice, electrice, magnetice,barice) se utilizeaz un sistem de coordonate, nu ntotdeauna sistemul cartezianeste cel mai potrivit. De aceea, este necesar s studiem problema reprezentriifunciilor scalare i a funciilor vectoriale, precum i a unor mrimi derivate, ncoordonate oarecare. Mai mult, este necesar s putem transforma un sistem decoordonate n alt sistem de coordonate.

    Fiex, y, zcoordonatele carteziene ortogonale ale unui punct arbitrar P (vezifigura 8.8).

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    32/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE200

    Poziia unui punct ( )0000 ,, zyxP poate fi obinut ca intersecia planelor

    0xx = , 0yy = , 0zz = . Aceste plane se intersecteaz, dou cte dou, dup

    dreptele

    00 , zzyy == ;

    00 , xxzz == ;

    00 , yyxx == ,

    paralele cu axele de coordonate. Fiecrui punct 0P din spaiu, i este ataat un

    triedru kjirrr

    ,, , care este acelai pentru toate punctele din spaiu.

    Fig. 8.8.

    n coordonate cilindrice, poziia unui punct P este caracterizat prinz,, , unde este distana de la origine la proiecia 'P a punctului P, pe planul

    xOy , este unghiul format de 'OP cu axa Ox , iar z cota lui P fa de planulxOy .

    Punctul ( )0000 ,, zP este intersecia urmtoarelor suprafee: cilindru

    0= , semiplanul 0= i planul 0zz = (vezifigura 8.9).

    Interseciile acestor suprafee, luate cte dou, sunt: semidreapta

    C , pe care

    variaz numai , cercul C , pe care variaz numai i dreapta zC , pe care

    variaz numaiz.Notm cu zuuu

    rrr

    ,, vectorii unitari tangeni la aceste curbe, n 0P i dirijai

    n sensul cresctor al variabilelor respective. Aceti vectori sunt determinai ntoate punctele din spaiu, cu excepia axei Oz , n care uu

    rr

    , au direcii

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    33/39

    Funcii matematice n Matlab 201

    nedeterminate.Fiind ortogonali, doi cte doi, zuuu

    rrr

    ,, formeaz un triedru nedegenerat,

    de referin pentru orice punct, variabil cu punctul n care este considerat.

    Fig. 8.9.ntre coordonatele cilindrice i coordonatele carteziene avem relaiile:

    =

    =

    =

    zz

    y

    x

    sin

    cos

    cu 20,0

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    34/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE202

    =

    =

    +=

    zzx

    y

    yx

    arctan

    22

    cu

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    35/39

    Funcii matematice n Matlab 203

    n coordonate carteziene este sph2cart, apelat cu,[X,Y,Z] = sph2cart(TH,PHI,R),

    n care TH este unghiul , respectiv azimutul, PSI este unghiul , respectivelevaia, R este raza r, iar X, Y, Z sunt coordonatele carteziene. Matricele TH,PHI i R trebuie s aib aceeai dimensiune (sau oricare s fie scalar), iar TH i PSIsunt dai n radiani.

    Fig. 8.10.

    De exemplu, dac TH=pi/6, PHI= pi/4, R=2, atunci prin [X,Y,Z] =sph2cart(TH,PHI,R), se obine X= 1.2247, Y = 0.7071, Z = 1.4142.

    Transformarea invers, din coordonate carteziene n coordonate sferice, serealizeaz cu relaiile:

    +=

    =

    ++=

    22

    222

    arctan

    arctan

    yx

    z

    x

    y

    zyxr

    cu 20,0,0

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    36/39

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    37/39

    Funcii matematice n Matlab 205

    coordonate carteziene, avnd ca baz vectorii i , j , k, unitari i ortogonali, adic:

    0,1 ====== ikkjjikkjjii .

    Fig. 8.11.

    innd seama de cele de mai sus, vectorii a i b vor avea expresiile:

    , 321321 kbjbibbkajaiaa ++=++= .nmulind scalar aceste sume i innd seama de cele anterioare, se obine:

    332211 babababa ++= .

    Pentru ab = , avem :2

    32

    22

    12

    32

    22

    12 aaaaaaaaaa ++=++== .

    Expresia care d unghiul a doi vectori este:

    23

    22

    21

    23

    22

    21

    332211cosbbbaaa

    bababa

    ++++

    ++=

    Calculul produsului scalar a doi vectori A i B, care trebuie s aib aceeailungime, se face cu instruciunea C = dot(A,B,DIM) sau C = dot(A,B), n carelipsete dimensiunea DIM. Dac DIM=size(A), n vectorul C se ntoarce produsulelement cu element dintre A i B; dac DIM =1, n vectorul C se ntoarce sumaprodusului element cu element de pe fiecare coloan, iar dac DIM =2, se ntorcesuma produsului element cu element de pe fiecare linie.

    Dac A i B sunt vectori coloan, atunci dot(A,B) este acelai lucru ca isum(A.*B).

    De exemplu, dac:A = [ 1 2 3 B = [ 7 8 9

    4 5 6] 10 11 12 ]atunci, C=dot(A,B,3), este:

    =

    =

    12*611*510*4

    9*38*27*1C

    725540

    27167C

    C=dot(A,B,1) este,[ ] [ ]72275516407C997147C +++== ,

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    38/39

    SISTEME DE PROGRAMARE PENTRU MODELARE I SIMULARE206

    iar C=dot(A,B,2) este:

    ++

    ++=

    =

    725540

    27167C

    167

    50C .

    Dac A este de dimensiunea 1 x N, iar B de dimensiunea N x 1, atunciprodusul scalar poate fi calculat i prin relaia sum(A.*B) sau sum(A.*B).

    Considernd vectorii,

    221,043 kjibkjia +=+= ,atunci produsul scalar este

    ab=dot(a,b)=sum(a.*b)=-5,

    iar unghiul dintre aceti vectori este,alfa=acos(ab/(norm(a)*norm(b)))*180/pi = 109.4712 gradei n care,

    norm(a)= sqrt(sum(a.^2)); norm(b)= sqrt(sum(b.^2)).

    Considernd vectorii a i b ntr-un sistem cartezian, avnd expresiile

    anterioare, produsul vectorial al acestora este un vector c , perpendicular pe planulformat de cei doi vectori, avnd expresia:

    ( ) ( ) ( ) kbabajbabaibaba

    bbb

    aaa

    kji

    bac ++=== 123131132332

    321

    321 .

    Se observ c acest determinant se dezvolt ntotdeauna dup prima linie inu are proprietile determinanilor obinuii.

    n Matlab, produsul vectorial este dat de funcia cross(a,b).

    Sensul vectorului c este determinat de sensul trigonometric de aducere a

    vectorului a spre vectorul b , sau, n general, de parcurgere a curbei nchisegenerat de cei doi vectori.

    Modulul produsului vectorial este egal cu aria paralelogramului determinatde cei doi vectori, (vezi ifigura 8.12), sau n general cu aria suprafeei delimitate:

    sin== babac Utilitatea produsului vectorial rezid n aceea c determin debitul de fluid

    ce trece printr-o suprafa, delimitat de vectorii a i b , n unitatea de timp.Produsul vectorial are urmtoarele proprieti:

    abba = - este anticomutativ;

    ( ) ( )baba = , n care este un scalar oarecare; ( ) cbcacba +=+ - este distributiv fa de adunare; produsul vectorial a doi vectori colineari este nul, deoarece 0sin = ;

  • 8/6/2019 Functii Mate Mat Ice in Matlab

    39/39

    Funcii matematice n Matlab 207

    baba - modulul unui produs scalar este mai mic sau egal cu

    produsul modulelor.

    Fig. 8.12.

    Produsul ncruciat, dintre vectorii A i B, se calculeaz cu instruciuneaC=cross(A,B), dar vectorii A i B trebuie s aib cel puin 3 elemente, n direciaprodusului ncruciat.

    Dac A=[1 2 3; 4 5 6; 7 8 9], B=[10 11 12; 13 14 15; 16 17 18], atunciC=cross(A,B) conduce la C= [-27 -27 -27; 54 54 54; -27 -27 -27].

    Considernd vectorii,

    211,135 kjibkjia == ,atunci produsul vectorial este

    c=cross(a,b)=[ 5 11 -8],iar unghiul dintre aceti vectori este

    alfa=asin(c/(norm(a)*norm(b)))*180/pi = [20.1838 49.3825 -33.5079] grade.


Recommended