08.11.2014 Views

Aprenda Matlab 6.1 - Universidad Politécnica de Madrid

Aprenda Matlab 6.1 - Universidad Politécnica de Madrid

Aprenda Matlab 6.1 - Universidad Politécnica de Madrid

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Capítulo 5: Otros tipos <strong>de</strong> datos <strong>de</strong> MATLAB página 55<br />

elementos agrupados alre<strong>de</strong>dor <strong>de</strong> la diagonal principal (mínima anchura<br />

<strong>de</strong> banda). Se aplica a matrices simétricas y no simétricas.<br />

p=colperm(S) Obtiene una permutación <strong>de</strong> columnas que or<strong>de</strong>na las columnas en or<strong>de</strong>n<br />

<strong>de</strong> número <strong>de</strong> ceros no <strong>de</strong>creciente. A veces se utiliza para or<strong>de</strong>nar antes<br />

<strong>de</strong> aplicar la factorización LU. Si la matriz es simétrica la permutación se<br />

pue<strong>de</strong> aplicar a filas y a columnas.<br />

randperm(n) Calcula una permutación aleatoria <strong>de</strong> los n primeros números naturales<br />

5.5.3. OPERACIONES DE ÁLGEBRA LINEAL CON MATRICES DISPERSAS<br />

A continuación se <strong>de</strong>scriben muy brevemente las funciones <strong>de</strong> MATLAB que pue<strong>de</strong>n utilizarse para<br />

operar con matrices dispersas. Algunas <strong>de</strong> estas funciones se llaman igual que las correspondientes<br />

funciones para matrices llenas, y otras son específicas <strong>de</strong> matrices dispersas. Casi todas estas<br />

funciones tienen varias formas <strong>de</strong> utilizarse. Para más <strong>de</strong>talles se sugiere recurrir al Help.<br />

[L,U,P]=lu(S) Realiza la factorización LU<br />

L=chol(S) Realiza la factorización <strong>de</strong> Cholesky<br />

[Q,R]=qr(S) Realiza la factorización QR<br />

[L,U]=luinc(A,tol) Realiza una factorización LU incompleta<br />

L=cholinc(S) Calcula una factorización <strong>de</strong> Cholesky incompleta (Ver la Ayuda)<br />

[V,D,FLAG] = eigs(S) Calcula algunos valores propios <strong>de</strong> una matriz cuadrada. Esta<br />

función tiene muchas posibles formas: consultar la Ayuda<br />

svds(S) Calcula algunos valores singulares <strong>de</strong> una matriz rectangular. Esta<br />

función tiene muchas posibles formas: consultar la Ayuda<br />

normest(S,tol) Estimación <strong>de</strong> la norma sub-2 con una <strong>de</strong>terminada tolerancia (por<br />

<strong>de</strong>fecto 1e-06)<br />

con<strong>de</strong>st(S) Estimación <strong>de</strong> condición numérica sub-1<br />

sprank(S) Calcula el rango <strong>de</strong> una matriz dispersa<br />

symbfact(S) Symbolic factorization analysis. Devuelve información sobre los<br />

elementos que se harán distintos <strong>de</strong> cero en la factorización <strong>de</strong><br />

Cholesky, sin llegar a realizar dicha factorización<br />

Los sistemas <strong>de</strong> ecuaciones con matrices dispersas se pue<strong>de</strong>n resolver con métodos directos,<br />

que son variantes <strong>de</strong> la eliminación gaussiana. El camino habitual <strong>de</strong> acce<strong>de</strong>r a los métodos directos<br />

es a través <strong>de</strong> los operadores / y \, igual que para matrices llenas.<br />

También se pue<strong>de</strong>n utilizar métodos iterativos, que tienen la ventaja <strong>de</strong> no cambiar ningún<br />

elemento <strong>de</strong> la matriz. Se trata <strong>de</strong> obtener soluciones aproximadas <strong>de</strong>spués <strong>de</strong> un número finito <strong>de</strong><br />

pasos.<br />

Se llama factorizaciones “incompletas” a aquéllas que no calculan la factorización exacta sino<br />

una aproximada, <strong>de</strong>spreciando los elementos que se hacen distintos <strong>de</strong> cero pero tienen un valor<br />

pequeño. Aunque la factorización es incompleta y sólo aproximada, se pue<strong>de</strong> hacer en mucho<br />

menos tiempo y para ciertas finalida<strong>de</strong>s es suficiente. Estas factorizaciones incompletas se utilizan<br />

por ejemplo como pre-condicionadores <strong>de</strong> algunos métodos iterativos.<br />

Las siguientes funciones son muy especializadas y aquí sólo se van a citar sus nombres (en<br />

inglés, tal como los utiliza MATLAB). Para más información recurrir al Help y a la bibliografía<br />

especializada.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!