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 34<br />
>> A(:,3:-1:1)<br />
ans =<br />
6 1 8<br />
7 5 3<br />
2 9 4<br />
aunque hubiera sido más fácil utilizar la función fliplr(A), que es específica para ello.<br />
Finalmente, hay que <strong>de</strong>cir que A(:) representa un vector columna con las columnas <strong>de</strong> A una<br />
<strong>de</strong>trás <strong>de</strong> otra.<br />
3.5.5. MATRIZ VACÍA A[ ]. BORRADO DE FILAS O COLUMNAS<br />
Para MATLAB una matriz <strong>de</strong>finida sin ningún elemento entre los corchetes es una matriz que<br />
existe, pero que está vacía, o lo que es lo mismo que tiene dimensión cero. Considérense los<br />
siguientes ejemplos <strong>de</strong> aplicación <strong>de</strong> las matrices vacías:<br />
>> A=magic(3)<br />
A =<br />
8 1 6<br />
3 5 7<br />
4 9 2<br />
>> B=[]<br />
B =<br />
[]<br />
>> exist(B)<br />
ans =<br />
[]<br />
>> isempty(B)<br />
ans =<br />
1<br />
>> A(:,3)=[]<br />
A =<br />
8 1<br />
3 5<br />
4 9<br />
Las funciones exist() e isempty() permiten chequear si una variable existe y si está vacía. En<br />
el último ejemplo se ha eliminado la 3ª columna <strong>de</strong> A asignándole la matriz vacía.<br />
3.5.6. DEFINICIÓN DE VECTORES Y MATRICES A PARTIR DE UN FICHERO<br />
MATLAB acepta como entrada un fichero nombre.m (siempre con extensión .m) que contiene<br />
instrucciones y/o funciones. Dicho fichero se llama <strong>de</strong>s<strong>de</strong> la línea <strong>de</strong> comandos tecleando<br />
simplemente su nombre, sin la extensión. A su vez, un fichero *.m pue<strong>de</strong> llamar a otros ficheros<br />
*.m, e incluso pue<strong>de</strong> llamarse a sí mismo (funciones recursivas). Las variables <strong>de</strong>finidas <strong>de</strong>ntro <strong>de</strong><br />
un fichero <strong>de</strong> comandos *.m que se ejecuta <strong>de</strong>s<strong>de</strong> la línea <strong>de</strong> comandos son variables <strong>de</strong>l espacio <strong>de</strong><br />
trabajo base, esto es, pue<strong>de</strong>n ser accedidas <strong>de</strong>s<strong>de</strong> fuera <strong>de</strong> dicho fichero; no suce<strong>de</strong> lo mismo si el<br />
fichero *.m correspon<strong>de</strong> a una función. Si un fichero <strong>de</strong> comandos se llama <strong>de</strong>s<strong>de</strong> una función, las<br />
variables que se crean pertenecen al espacio <strong>de</strong> trabajo <strong>de</strong> dicha función.<br />
Como ejemplo se pue<strong>de</strong> crear un fichero llamado unidad.m que construya una matriz unidad<br />
<strong>de</strong> tamaño 3x3 llamada U33 en un directorio llamado g:\matlab. Este fichero <strong>de</strong>berá contener la<br />
línea siguiente:<br />
U33=eye(3)<br />
Des<strong>de</strong> MATLAB llámese al comando unidad y obsérvese el resultado. Entre otras razones, es<br />
muy importante utilizar ficheros <strong>de</strong> comandos para po<strong>de</strong>r utilizar el Debugger y para evitar teclear<br />
muchas veces los mismos datos, sentencias o expresiones.