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
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Aprenda</strong> <strong>Matlab</strong> <strong>6.1</strong> como si estuviera en Primero página 56<br />
pcg()<br />
bicg()<br />
bicgstab()<br />
cgs()<br />
gmres()<br />
qmr()<br />
spparms()<br />
spaugment()<br />
Resuelve un sistema <strong>de</strong> ecuaciones lineales por el método <strong>de</strong>l Gradiente<br />
Conjugado Pre-condicionado (Preconditioned Conjugate Gradients<br />
Method). La matriz <strong>de</strong>be ser simétrica y positivo-<strong>de</strong>finida<br />
BiConjugate Gradients Method. Similar al anterior para matrices<br />
cuadradas que no son simétricas y positivo-<strong>de</strong>finidas<br />
BiConjugate Gradients Stabilized Method.<br />
Conjugate Gradients Squared Method<br />
Generalized Minimum Residual Method<br />
Quasi-Minimal Residual Method<br />
Establece los parámetros para las funciones que trabajan con matrices<br />
sparse (set parameters for sparse matrix routines)<br />
Form least squares augmented system<br />
5.5.4. OPERACIONES CON MATRICES DISPERSAS<br />
El criterio general para trabajar con matrices dispersas en MATLAB es que casi todas las<br />
operaciones matriciales estándar funcionan <strong>de</strong> la misma forma sobre matrices dispersas que sobre<br />
matrices llenas. De todas formas, existen algunos criterios particulares que conviene conocer y que<br />
se enuncian a continuación:<br />
1. Las funciones que aceptan una matriz como argumento y <strong>de</strong>vuelven un escalar o un vector<br />
siempre <strong>de</strong>vuelven un vector lleno, aunque el argumento sea disperso<br />
2. Las funciones que aceptan como argumentos escalares o vectores y <strong>de</strong>vuelven matrices<br />
<strong>de</strong>vuelven matrices llenas<br />
3. Las funciones <strong>de</strong> un solo argumento que reciben una matriz y <strong>de</strong>vuelven una matriz o vector<br />
conservan el carácter <strong>de</strong>l argumento (disperso o lleno). Ej: chol(), diag(), max(), sum()<br />
4. Las funciones binarias <strong>de</strong>vuelven resultados dispersos si ambos argumentos son dispersos. Si un<br />
operando es lleno <strong>de</strong>vuelven lleno, excepto si la operación conserva los elementos cero y<br />
distintos <strong>de</strong> cero (por ejemplo: .* y ./)<br />
5. La concatenación <strong>de</strong> matrices con cat o corchetes [ ] produce resultados dispersos para<br />
operaciones mixtas<br />
6. Sub-in<strong>de</strong>xado <strong>de</strong> matrices; S(i,j) a la <strong>de</strong>recha <strong>de</strong> una asignación produce resultados dispersos,<br />
mientras que a la izquierda <strong>de</strong> una asignación (=) mantiene el tipo <strong>de</strong> almacenamiento <strong>de</strong> S.<br />
5.5.5. PERMUTACIONES DE FILAS Y/O COLUMNAS EN MATRICES SPARSE<br />
Para permutar las filas <strong>de</strong> una matriz se <strong>de</strong>be pre-multiplicar por una matriz <strong>de</strong> permutación P, que<br />
es una matriz que <strong>de</strong>riva <strong>de</strong> la matriz i<strong>de</strong>ntidad I por permutación <strong>de</strong> filas y/o columnas. Así, el<br />
producto P*S permuta filas <strong>de</strong> la matriz S, mientras que S*P' permuta columnas.<br />
Un vector <strong>de</strong> permutación p (que contiene una permutación <strong>de</strong> los números naturales 1:n)<br />
actúa sobre las filas S(p,:) o columnas S(:,p). El vector <strong>de</strong> permutación p es más compacto y<br />
eficiente que la matriz <strong>de</strong> permutación P. Por eso casi siempre los resultados <strong>de</strong> permutaciones<br />
realizadas o a realizar se dan como vector p (excepto en la factorización LU). Las sentencias<br />
siguientes ilustran la relación entre la matriz P y el vector p.<br />
>> I = speye(5);<br />
>> p=[2,1,5,4,3]<br />
p =<br />
2 1 5 4 3