Sunteți pe pagina 1din 5

ALGEBRA LINEAL OPERADORES VECTORIALES Y MATRICIALES (A, B: matrices; b: vector; c: constante) A + B = B+A Suma + A - B = - (B-A) Resta A * B ~= B * A Multiplicacin * A\b

Divisin Izquierda \ A/b Divisin Derecha / A' Transpuesta ' A^c Potenciacin ^ A .* B Multiplicacin elemento-elemento .* A . / B = B . \ A ; A .\ B = B . / A Divisin elemento-elemento ./ ; .\ A .^c ; A .^ B ; c .^ A Potenciacin elemento-elemento .^ OPERADORES LOGICOS Y X = (A > c1) & (A < c2) & O Z = (A > c1) | (A < c2) | NO Y=~(A>=c) ~ OPERACIONES VECTORIALES 1) OPERADOR PUNTO (dot): Aplicacin elemento-elemento del operador que sigue al operador punto Punto Producto: a.*a ( = a.^2 ; ~ = a^2) Punto Cociente: a.\b' 2) PRODUCTO ESCALAR (dotprod): puede hacerse de las siguientes maneras c=dot(a,b) c=sum(a .*b) c=a*b' OPERACIONES MATRICIALES 1) Definicin de matrices. Operador (;) A = [a1 a2 a3 a4; b1 b2 b3 b4; c1 c2 c3 c4] Definicin de submatrices a partir de una matriz. Operador ( : ) B = A([1 2], [1 4]): filas (1,2), columnas(1,4) Intercambio de filas y columnas de una matriz: C = A([3 1 2 4], : ) D = A( : , [1 2 4 3]) Creacin de un vector a partir de una matriz: C = A( : ) Eliminacin de filas o columnas de una matriz. Operador vector vaco [] A( : , j) = [] : elimina la columna j de la matriz A Insertar filas o columnas en una matriz dada: B = [A( : ,1) [b1 b2 b3]' A( : ,2)] : inserta una columna entre la 1 y la 2 de A 2) Definicin de matrices mediante condiciones lgicas impuestas sobre otras matrices a)Dada la matriz A, determinar qu celdas son mayores que uno: A > 1 b)Para extraer las valores que son mayores que uno: A(A > 1 )

3) Concatenacin de matrices: B = [A A+k1 ; A - k2 A - C] 4) Combinacin lineal de varias matrices de la misma dimensin: es necesario que los coeficientes y las matrices estn almacenadas en matrices de celdas {} 5) Operaciones: a) D = diag(d), siendo d = (d1 d2 d3 d4). Crea una matriz diagonal b) d = diag(D): extrae en un vector d, lo elementos de la diagonal principal de D c) ad = sum(diag(fliplr(A))) . Suma de los elementos de la antidiagonal de A d) diag(diag(d)) 6) Matriz Inversa: AI = inv(A) = A * AI = I Si la matriz A es singular entonces la inversa no puede ser calculada. En este caso: 1. La forma reducida escalonada (A-echelon) de A no es la identidad: R = rref(A) 2. El determinante de la matriz es cero: det(A) = 0 3. Es posible que se tenga un resultado al tratar de calcular la inversa de la matriz. Pero se obtiene el siguiente mensaje Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 1.175530e017 Los errores de redondeo permiten la inversin al no detectarse la singularidad exacta. Pero el valor de rcond (condicin recproca) cercano a cero indica que la inversa no es vlida.
7) Operadores relacionales y proposiciones if con matrices

Para probar la igualdad entre dos variables (escalares): if A ==B Si A y B son matrices, A == B no prueba si las matrices son iguales, sino dnde son iguales. El resultado es una matriz lgica de 0 y 1.

if (A >= B) 'A>=B' elseif (A <= B) 'A<=B' elseif (A == B) 'A=B' else 'Error' end

8) Subndices Lgicos: Los vectores lgicos creados a partir de operaciones lgicas y relacionales pueden usarse para referenciar arreglos. Si X es una matriz ordinaria y L es una matriz de la misma dimensin resultado de alguna operacin lgica, entonces X(L) especifica los elementos de X para los elementos no nulos de L. Ejemplo: X = 2.1 1.7 1.6 1.5 NaN 1.9 1.8 1.5 5.1 1.8 1.4 2.2 1.6 1.8 (NaN: valor faltante) a)Eliminar el valor faltante usando ndices. La funcin k = finite(x) resulta cierta (1) para todos los valores numricos finitos y falsa (0) para valores faltantes NaN. La expresin x = x(finite(x)) elimina los valores faltantes del arreglo x (equivale a: xn = x(k==1) ) b)Si se definen outliers los elementos que se desvan de la media en ms de tres desviaciones respecto de la media, pueden eliminarse haciendo: x = x(abs(xmean(x)) <= 3*std(x)) 9) La funcin find determina los ndices del arreglo que cumplen cierta condicin lgica. Ejemplo: k = find(isprime(A))' : selecciona la ubicacin de los nmeros primos en una matriz A, usando un ndice unidimensional. Puede usarse con doble subndice [i,j]=find(isprime(A))'

SISTEMAS DE ECUACIONES (Sistema con m ecuaciones y n variables)


1. Caso m = n Dada la matriz A y el vector b, entonces el sistema A*x = b tiene solucin nica, dada por el vector x = A\b Para verificar que la solucin es correcta se calcula el vector residuo, cuyos valores deben ser cero: r = b - A*x
% CASO m = n (SISTEMA DETERMINADO, SOLUCION UNICA) A=[1 2 3; 4 5 6; 7 8 10] b=ones(3,1) ra = rank(A) %Forma 1 x1=inv(A)*b r1=b-A*x1 %Forma 2 x2=A\b r2=b-A*x2

2. Caso m > n El sistema Ax = b est sobredeterminado y en muchos casos es inconsistente. En este caso se usa la solucin de mnimo error al cuadrado en A*x - b = 0
%CASO m>n (SISTEMA SOBREDETERMINADO E INCONSISTENTE) B=[2 -1; 1 10; 1 2] rb = rank(B) y = B\b ry = b-B*y

3. Caso m < n Sistema Indeterminado con infinito nmero de soluciones. En este caso se calcula una solucin particular.
%CASO m < n ( SISTEMA INDETERMINADO: INFINITAS SOLUCIONES) C = [1 2 3; 4 5 6] rc = rank(C) c = ones(2,1) z = C\c

MATRIZ EN FORMA ESCALONADA (funcin [B, piv]= rref (A) ) Esta funcion permite calcular la solucin de un sistema de ecuaciones lineales y determina el rango de una matriz. La solucin del sistema de ecuaciones A*x = b se hace por reduccin de la matriz a su forma escalonada por filas (row echelon form)
%Sistema de Ecuaciones(REDUCCION FORMA ESCALONADA: funcion rref) % CASO m = n (SISTEMA DETERMINADO, SOLUCION UNICA) A=[1 2 3; 4 5 6; 7 8 10] b=ones(3,1) [x, piv1] = rref([A b]) x=x(:,4) r=b-A*x rx=length(piv1) %CASO m>n (SISTEMA SOBREDETERMINADO E INCONSISTENTE) B=[2 -1; 1 10; 1 2] [y, piv2] = rref([B b]) y =y(:,3) ry = length(piv2)

%CASO m < n ( SISTEMA INDETERMINADO: INFINITAS SOLUCIONES) C = [1 2 3; 4 5 6] c = ones(2,1) [z, piv3] = rref([C c]) z=z(:,4) rz = length(piv3) La solucin al sistema lineal Ax = b se obtiene de la siguiente manera: primero la matriz aumentada del sistema se transforma a la forma reducida escalonada, y luego se extrae su ltima columna, que es el vector solucin: [x, pivot] = rref([A b]). El vector residuo de la solucin obtenida es: b - A*x. La informacin almacenada en el parmetro piv permite calcular el rango de la matriz del sistema: rango = length(piv)

Clculo de matriz inversa usando la funcin rref: sea la matriz A de dimensin p; se crea la matriz aumentada B, con la matriz A seguida de la matriz identidad de la misma dimensin Ip. La inversa viene dada por las ltimas p columnas de la matriz transformada luego de aplicar la funcin rref.
% CALCULO DE MATRIZ INVERSA MEDIANTE FORMA REDUCIDA ESCALONADA (rref) A = [1 2 3; 4 5 6; 7 8 10] p = size(A); I = eye(p); B = rref([A I]); X = B(:, p+1:2*p) I1 = A*X, I2 = X*A

TABLA DE MATRICES ESPECIALES Y FUNCIONES Determinante det Diagonal de matrices diag Matriz identidad eye Matriz inversa inv Cierto(1) si matriz est vaca isempty Longitud de un vector length Arreglo de unos ones Rango de matriz rank Forma reducida escalonada rref Cambia tamao de matriz reshape Tamao de una matriz size Triangular inferior de matriz A tril Triangular superior de matriz A triu Matriz de Vandermonde vander Arreglo de ceros zeros Suma elementos diagonal matriz cuadrada trace Diagonal en bloque blkdiag max, min Mximo, mnimo sum Suma elementos vector cumsum Suma acumulada prod Producto elementos cumprod Producto acumulado mean Media elementos vector std Desviacin Estndar median Mediana elementos vector sort Orden ascendente elementos de vectores cov Matriz de Covarianzas corrcoef Matriz de Correlacion chol Descomposicin Cholesky de matriz A

d = det(A) dg = diag(A); D = diag(dg) u1= eye(n); u2 = eye(n,1) X = inv(A) e = isempty(A) s1 = length(b) u = ones(n) r = rank(A) [E, p] = rref(A) B = rashape(A, n, p) [n,p] = size(A) ; n = size(A, 1) ti = tril(A) tu = triu(A) V = vander(v) Z = zeros(p) T = trace (A) B = blkdiag(X, Y, Z) ma = max(b) ; mi = min(b) sm = sum (A) sc = cumsum(A) pr = prod(A) pc = cumprod(A) me = mean (A) st = std (A) md = median(X) va = sort(A) C = cov(X) Cor = corrcoef(X) C = chol(A); A = C'*C

EJEMPLO DE MULTIPLICACION MATRICIAL


%MULTIPLICACION MATRICIAL %DADAS DOS MATRICES A,B, CALCULAR EL PRODUCTO C = A*B input('Matriz A = ') A=ans; input('Matriz B = ') B=ans; af=size(A,1); bc=size(B,2); for i=1:af for j=1:bc C(i,j)=A(i,:)*B(:,j); end end C

GENERACION DE MATRICES DE VECTORES ALEATORIOS Nr(M,S)


%GENERACION DE VECTORES ALEATORIOS NORMALES MULTIDIMENSIONALES %MEDIANTE FACTORIZACION CHOLESKY DE LA MATRIZ DE COV S input('Tamao muestral n = ') n=ans; S =[11.3 9.4 7.2 3.4; 9.4 13.5 7.4 2.6; 7.2 7.4 11.6 2.6; 3.3 2.5 2.6 5.8] m =[30.8 25.6 45.9 15.5] R = chol(S) r=size(S,1) for k= 1:n for i=1:r Z(k,i)=randn; end end M = ones(n,1)*m; Y=(Z*R + M) hist(Y(:,1)) C = corrcoef(Y) % Factorizacin Cholesky

%Generacin valores aleatorios N(0,1)

%Generacin matriz de vectores aleatorios Nr(M,S) %Histograma de la primera columna de Y %Matriz de correlacin simple

MATRICES MARKOVIANAS
%Matrices de Markov input('Matriz de Transicion: P ') input('Vector Inicial: V0 ') input('Numero de Pasos k = ') k =ans n=5 % Probabilidad de ir del Estado i al Estado j en k pasos Pk=P^k % Distribucion final dado el Vector inicial Q=P' Vn=(Q^n)*V0 % Fraccion de tiempo en cada estado luego de n pasos sV0=sum(V0) v=Vn/sV0

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