matlab -funciones con matrices

Upload: rene-calle-huamani

Post on 07-Jul-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 Matlab -Funciones Con Matrices

    1/7

    TIPOS DE MATRICES PREDEFINIDOS

    Existen en MATLAB varias funciones orientadas a definir con gran facilidad matrices de

    tipos

     particulares. Algunas de estas funciones son las siguientes:

    eye(4) forma la matriz unidad de tamaño (4x4zeros(3,5) forma una matriz de ceros de tamaño (!x"zeros(4) #dem de tamaño (4x4

    ones(3) forma una matriz de unos de tamaño (!x!

    ones(2,4) idem de tamaño ($x4linsp!e("#,"2,n)genera un vector con n valores igualmente espaciados entre "# % "2lo$sp!e(%#,%2,n) genera un vector con n valores espaciados logar#tmicamente entre&'d& % &'d$. )i %2 es pi&* los puntos se generan entre &'d& % pirand(!

     forma una matriz de n+meros aleatorios entre ' % &* con distri,uci-nuniforme* de tamaño (!x!

    rn%(2,5) idem de tamaño ($x"rn%n(4) forma una matriz de n+meros aleatorios de tamaño (4x4* con

    distri,uci-n normal* de valor medio ' % varianza &.

    '$i!(4) crea una matriz (4x4 con los n+meros &* $* ... 44* con la propiedad de

    /ue todas las filas % columnas suman lo mismo

    il(5)crea una matriz de 0il,ert de tamaño ("x". La matriz de 0il,ert es una

    matriz cu%os elementos (i*1 responden a la expresi-n (&2(i31&. Esta es

    una matriz especialmente dif#cil de mane1ar por los grandes erroresnum5ricos a los /ue conduce

    in*il(5) crea directamente la inversa de la matriz de 0il,ert+ron(",y)  produce una matriz con todos los productos de los elementos del vector 

    " por los elementos del vector y. E/uivalente a "6y* donde " e y sonvectores fila!o'pn(pol) constru%e una matriz cu%o polinomio caracter#stico tiene como

    coeficientes los elementos del vector pol (ordenados de ma%or grado amenor

  • 8/18/2019 Matlab -Funciones Con Matrices

    2/7

  • 8/18/2019 Matlab -Funciones Con Matrices

    3/7

    min(x m#nimo elemento de un vector. >evuelve el valor m#nimo % la posici-n

    /ue ocupas'(") suma de los elementos de un vector cumsum(x devuelve el vector suma acumulativa de los elementos de un vector 

    (cada elemento del resultado es una suma de elementos del original

    mean(x valor medio de los elementos de un vector std(x desviaci-n t#pica

     prod(x producto de los elementos de un vector 

    cumprod(x devuelve el vector producto acumulativo de los elementos de un vector ?%*i@;sort(x ordenaci-n de menor a ma%or de los elementos de un vector ".>evuelve el vector ordenado y* % un vector i con las posiciones inicialesen " de los elementos en el vector ordenado y.

    /',n01size(A) devuelve el n+mero de filas % de columnas de la matriz A. )i la matriz escuadrada ,asta recoger el primer valor de retornon1len$(") calcula el n+mero de elementos de un vector "zeros(size(A)) forma una matriz de ceros del mismo tamaño /ue una matriz A previamente creadaones(size(A)) #dem con unosA1%i$(") forma una matriz diagonal A cu%os elementos diagonales son loselementos de un vector %a existente ""1%i$(A) forma un vector " a partir de los elementos de la diagonal de una matriz %aexistente A%i$(%i$(A)) crea una matriz diagonal a partir de la diagonal de la matriz Al+%i$(A,-) crea una matriz diagonal de su,matrices a partir de las matrices /ue se le pasan como argumentos

    ri(A) forma una matriz triangular superior a partir de una matriz A (no tiene por /u5 ser cuadrada. on un segundo argumento puede controlarse /ue se

    mantengan o eliminen m8s diagonales por encima o de,a1o de la diagonal principal.

    tril(A #dem con una matriz triangular inferior 

    ro(A,+) ira CD' grados la matriz rectangular A en sentido anti7orario. C es unentero /ue puede ser negativo. )i se omite* se supone C;&

    6lip%(A) 7alla la matriz sim5trica de A respecto de un e1e 7orizontal6liplr(A) 7alla la matriz sim5trica de A respecto de un e1e verticalrespe(A,',n) am,ia el tamaño de la matriz A devolviendo una matriz de tamaño m×ncu%as columnas se o,tienen a partir de un vector formado por las columnas

    de A puestas una a continuaci-n de otra. )i la matriz A tiene menos dem×n elementos se produce un error.

    CONSTRUCCIÓN DE ALGUNAS MATRICES Al igual /ue pasa con los vectores* existen unas sentencias /ue nos a%udan a crear m8s

    r8pidamentealgunas matrices /ue Matla, %a tiene predefinidas (' % n de,en tomar valores naturales:zeros (n) crea una matriz cuadrada n x n de ceros.zeros (',n) crea una matriz m x n de ceros.ones (n) crea una matriz cuadrada n x n de unos.

  • 8/18/2019 Matlab -Funciones Con Matrices

    4/7

    ones (',n) crea una matriz m x n de unos.rn% (n) crea una matriz cuadrada n x n de n+meros aleatorios con distri,uci-n uniforme('*&.

    rn% (',n) crea una matriz m x n de n+meros aleatorios con distri,uci-n uniforme ('*&.rn%n (n) crea una matriz cuadrada n x n de n+meros aleatorios con distri,uci-n normal

    ('*&.rn%n (',n) crea una matriz m x n de n+meros aleatorios con distri,uci-n normal ('*&.eye (n) crea una matriz cuadrada n x n de unos en la diagonal % ceros el resto.eye (',n) crea una matriz m x n de unos en la diagonal % ceros el resto.'$i! (n) crea una matriz cuadrada n x n de enteros de modo /ue sumen lo mismo las filas% las

    columnas.il (n) crea una matriz cuadrada n x n de 0il,ert* es decir* los elementos (i*1 responden ala

    expresi-n (&2(i31&.in*il (n) crea una matriz cuadrada n x n /ue es la inversa de la matriz de 0il,ert.

    estad#sticas:

    unci-n FGu5 7aceH!orr!oe6 (7) coeficientes de correlaci-n!o* (7) matriz de covarianzas!'pro% (7) producto acumulativo de columnas!'s' (7) suma acumulativa de columnas%i66 (7) diferencias entre elementos ad%acentes de Iis (7) 7istograma o diagrama de ,arrasi8r (7) rango intercuart#lico de la muestra'" (7) m8ximo de cada columna'en (7) media de los valores de vectores % columnas'e%in (7) mediana de los valores de vectores % columnas'in (7) m#nimo de cada columnapro% (7) producto de elementos en columnasrn% (n) n+meros aleatorios distri,uidos uniformementern%n (n) n+meros aleatorios distri,uidos normalmentern$e (7) rango de cada columnasor (7) ordena columnas en orden ascendentes% (7) desviaci-n est8ndar de la muestras' (7) suma de elementos en cada columnale (*) ta,la de frecuencias del vector *r (7) varianza de la muestra

    4959#9 F NCIONES MATRICIA:ES E:EMENTA:ES ;

    B ; A6 calcula la traspuesta (con1ugada de la matriz AB ; A.6 calcula la traspuesta (sin con1ugar de la matriz Av ; pol%(A devuelve un vector * con los coeficientes del polinomio caracter#sticode la matriz cuadrada At ; trace(A devuelve la traza (suma de los elementos de la diagonal de una matriz

  • 8/18/2019 Matlab -Funciones Con Matrices

    5/7

    cuadrada A?m*n@ ; size(A devuelve el n+mero de filas ' % de columnas n de una matrizrectangular An ; size(A devuelve el tamaño de una matriz cuadrada Anf ; size(A*& devuelve el n+mero de filas de A

    nc ; size(A*$ devuelve el n+mero de columnas de Aexpm(A si A;I>I6* expm(A ; Idiag(exp(diag(>I6

    s/rtm(A devuelve una matriz /ue multiplicada por s# misma da la matriz Alogm( es la funci-n rec#proca de expm(A

    Aun/ue no pertenece a esta familia de funciones* se puede considerar /ue el operador  potencia ( est8 emparentado con ellas. As#* es posi,le decir /ue:An est8 definida si A es cuadrada % n un n+mero real. )i n es entero* elresultado se calcula por multiplicaciones sucesivas. )i n es real* elresultado se calcula como: An;I>.nI6 siendo ?I*>@;eig(A

    FNCIONES DE FACTORI?O DESCOMPOSICI=N MATRICIA:

    /:,0 1 l(A)descomposici-n de rout (A ; : de una matriz. La matriz : es una

     permutaci-n de una matriz triangular inferior (dic7a permutaci-n esconsecuencia del pivotamiento por columnas utilizado en la

    factorizaci-n

    - 1 in*(A)calcula la inversa de A. E/uivale a -;inv(inv(:% 1 %e(A)devuelve el determinante % de la matriz cuadrada A. E/uivale a%1%e(:)@%e()E ; rref(A reducci-n a forma de escal-n (mediante la eliminaci-n de auss con

     pivotamiento por columnas de una matriz rectangular A?E*xc@ ; rref(A

     reducci-n a forma de escal-n con un vector "! /ue da informaci-nso,re una posi,le ,ase del espacio de columnas de A 1 !ol(A)descomposici-n de 7olesC% de matriz sim5trica % positivodefinida.

    )-lo se utiliza la diagonal % la parte triangular superior de A. Elresultado es una matriz triangular superior tal /ue A ; ! 1 r!on%(A) devuelve una estimaci-n del rec#proco de la condici-n num5rica de la

    matriz A ,asada en la norma su,&. )i el resultado es pr-ximo a & lamatriz A est8 ,ien condicionada9 si es pr-ximo a ' no lo est8. J unciones ,asadas en el c8lculo de valores % vectores propios:

    /7,D0 1 ei$(A) valores propios (diagonal de D % vectores propios (columnas de 7 deuna matriz cuadrada A. on frecuencia el resultado es comple1o (si A

  • 8/18/2019 Matlab -Funciones Con Matrices

    6/7

    no es sim5trica

    /7,D0 1 ei$(A,-)valores propios (diagonal de D % vectores propios (columnas de 7 dedos matrices cuadradas A % - (A" ; λ-". Los vectores propios est8nnormalizados de modo /ue 7@-@71I. uando A es sim5trica % - es

    sim5trica % definidapositiva se puede utilizar ?7*D@ ; eig(A*-*6c7ol6. J unciones ,asadas en la descomposici-n GK:/B,R0 1 8r() descomposici-n GK de una matriz rectangular. )e utiliza para sistemascon m8s ecuaciones /ue inc-gnitas.- 1 nll(A) devuelve una ,ase ortonormal del su,espacio nulo (Cernel* o con1untode vectores " tales /ue A" ; ' de la matriz rectangular AB 1 or(A) las columnas de B son una ,ase ortonormal del espacio de columnas deA. El n+mero de columnas de B es el rango de A  FNCIONES -ASADAS EN :A DESCOMPOSICI=N DE .A:OR SIN:AR 

    /,D,.0 1 s*%(A)

     descomposici-n de valor singular de una matriz rectangular (A;D.6. % . son matrices ortonormales. D es diagonal %contiene los valores singulares- 1 pin*(A) calcula la pseudoinversa de una matriz rectangular Ar 1 rn+(A) calcula el rango r de una matriz rectangular Anor 1 nor'(A) calcula la norma su,$ de una matriz (el ma%or valor singularnor 1 nor'(A,2) lo mismo /ue la anterior ! 1 !on%(A) condici-n num5rica su,$ de la matriz A. Es el cociente entre elm8ximo % el m#nimo valor singular. La condici-n num5rica da una idea

    de los errores /ue se o,tienen al resolver un sistema de ecuacioneslineales con dic7a matriz: su logaritmo indica el n+mero de cifras

    significativas /ue se pierden.

    exist(var comprue,a si la varia,le *r existeisnan( c7e/uea si 7a% valores NaN * devolviendo una matriz de unos % cerosisinf( c7e/uea si 7a% valores Inf * devolviendo una matriz de unos % cerosisfinite( c7e/uea si los valores son finitos

    isempt%( c7e/uea si un vector o matriz est8 vac#o

    isc7ar( c7e/uea si una varia,le es una cadena de caracteres ( string isglo,al( c7e/uea si una varia,le es glo,al

    issparse( c7e/uea si una matriz es dispersa ( sparse* es decir* con un gran n+mero de

    elementos ceroan%(x funci-n vectorial9 c7e/uea si alguno de los elementos del vector " cumpleuna determinada condici-n (en este caso ser distinto de cero. >evuelve un

    uno - un cero

    an%(A se aplica por separado a cada columna de la matriz A. El resultado es unvector de unos % ceros

    all(x funci-n vectorial9 c7e/uea si todos los elementos del vector " cumplen unacondici-n. >evuelve un uno - un cero

  • 8/18/2019 Matlab -Funciones Con Matrices

    7/7

    all(A se aplica por separado a cada columna de la matriz A. El resultado es unvector de unos % cerosfind(x ,usca #ndices correspondientes a elementos de vectores /ue cumplen una

    determinada condici-n. El resultado es un vector con los #ndices de los

    elementos /ue cumplen la condici-n

    find(A cuando esta funci-n se aplica a una matriz la considera como un vector conuna columna detr8s de otra* de la & a la +ltima.

    6or i1#;n  6or 1i;n  (i,)1i,  en%en%/n n01size()

    6or 12;n  (#,)1A(#,)?:(#,#)en%  6or i12;n#  ((i,i))11(#?(:(i,i)))@(A(i,i):(i,#;i#)@(#;i#,i)) 

    i6 :(i,i)@(i,i)11  prin6(6!oriz!ion i'posile)

    en%  6or 1iG#;n  (i,)1(#?:(#,#))@(A(i,):(i,;)@(;,iG#))  en% en% :(n,n)@((n,n))11A(n,n):(n,#;n#)@(#;n#,n)  i6 :(n,n)@(n,n)11  prin6(6!oriz!ion i'posile)

    en%    en%