Sei sulla pagina 1di 19

Bases de Matlab

Alejandro Hayes

Variacion de la corriente en funcion de la tension en lamparas de 25 40 y 100 W 200 150 I(V) 100 50 0

50

100 V

150

200

250

100 80 P(V) 60 40 20 0 0 50 100 V 150 200 250

Figura 21
Con estos dos ejemplos tratamos de ilustrar la gran aplicacin que tiene Matlab en Ingeniera y por supuesto dejar la puerta abierta a un mundo de otras aplicaciones a la ingeniera y a las ciencias.

5.Introduccin a la Programacin
Hasta ahora hemos visto que todos las instrucciones de Matlab que pueden escribirse y ejecutarse desde la lnea de comandos ingresndolos directamente desde el teclado. Esta forma de trabajar es muy simple pero en la practica presenta limitaciones cuando de desarrollos grandes se trata y es en estos casos donde el usuario necesita hacerse un programa propio y personalizarlo a sus necesidades. Matlab permite desarrollar programas con archivos M los que pueden hacerse mediante el editor de texto que viene con Matlab y luego para ser ejecutado se lo llama desde la ventana de comandos con el nombre del archivo. Por defecto Matlab guarda estos archivos en un directorio propio llamado work pero es posible guardarlos en cualquier directorio deseado y luego poder accederlo indicando en forma adecuada la ruta. Estudiaremos dos tipos de archivos-M que se detallan a continuacin.

5.1. Estructuras elementales


Es posible demostrar que cualquier problema puede resolverse combinando tres estructuras elementales a saber:

Sucesin de sentencias: Esta constituida por un conjunto de sentencias consecutiva, teniendo en


cuenta que cada sentencia puede ser una combinacin de otras.

Pgina 47 de 90

Bases de Matlab
Sentencia 1 Sentencia 2 ................ Sentencia n

Alejandro Hayes

Toma de Decisin: Permite tomar una decisin a partir de una o varias condiciones las que segn sean verdaderas o falsas permiten ejecutar una sentencia u otra. Esto se implementa en Matlab mediante la sentencias if y switch. La estructura del if en Matlab es la siguiente:
if condicion Sentenciasx else Sentenciasy end La estructura de switch en Matlab es la siguiente: switch expresin case exp1

Sentenciax case exp2 Sentenciay ............ ............ otherwise Sentencia n end

determinadas, se repitan las veces requeridas por el algoritmo. Estas sentencias son for y while cuya estructura en Matlab es la siguiente. for cont=n_min:paso:n_max end Sentencias

Sentencias de ciclo o iteracin: Se utilizan cuando se desea que un conjunto de sentencias

while condicion1 condicion2 condicionn end Sentencias

Pgina 48 de 90

Bases de Matlab

Alejandro Hayes

5.2.Archivos-M Script
Supongamos que elegimos nuestro editor de texto favorito por ejemplo notepad para crear un archivo llamado funcion.m conteniendo las lineas:
x=-15:0.01:15; f=sin(x)+4*sin(3*x)-cos(10*x); plot(x,f);

Luego lo guardamos en principio en el directorio work y lo ejecutamos desde la lnea obtenemos lo siguiente:
funcion

de comandos y

Obtenemos la siguiente salida.


6

-2

-4

-6 -15

-10

-5

10

15

Figura 22
Con esto no hemos hecho otra cosa que juntar un conjunto de instrucciones en un solo archivo y ejecutarlo con un solo llamado a la funcin correspondiente, sin embargo hay casos en los que deseamos interactuar con otros programas as como mecanizar procedimientos entre otras cosas, que hacen que necesitemos hacer un script mas elaborado y es de eso que se trata esta seccin. Cabe aclarar que en este primer curso se dan nociones bsicas de programacin pero es intencin de un curso futuro y mas avanzado profundizar sobre este tema y en tpicos tales como nocin de algoritmo, estructuras de datos, programacin estructurada y otros.

5.3.Archivos-M de Funcin
Los archivos de funcin provienen como una extensin de Matlab permitiendo al usuario crear funciones para problemas especficos. Las funciones son como los Scripts, pero con el propsito de mejorar la velocidad del computador se compilan en un bajo nivel de codigo de bytes cuando se los llama por primera vez. Los ejemplos que desarrollaremos son todos de funciones-M para comenzar a familiarizarnos.

Pgina 49 de 90

Bases de Matlab
Ejemplo 5.3.1:

Alejandro Hayes

Supongamos que necesitamos determinar el volumen y la superficie de cilindros de distinto tamao para lo que necesitamos una funcin que ingresndole el radio y la altura del cilindro nos de los datos requeridos. Entramos en el editor de archivos M de Matlab y desarrollamos el siguiente programa.
%************************************************************************************************% %Programa para determinar el volumen y la superficie de un cilindro ingresando %el radio y la altura %***********************************************************************************************% function [volumen,superficie]=volumen_y_superficie_cilindro(radio,altura) volumen=pi*radio.^2*altura; superficie=2*pi*radio*altura+2*pi*radio.^2;

Luego salvamos el archivo con el nombre de cilindro_vol_sup.m en el directorio work de Matlab. Ahora vamos a la linea de comandos y ejecutamos:
> cilindro_vol_sup(1,1) ans = 3.14159265358979

>> cilindro_vol_sup(1,3) ans = 9.42477796076938 >> cilindro_vol_sup(5,8) ans = 6.283185307179587e+002 >>

Vemos como el programa calcula lo solicitado. Ejemplo 5.3.2: Supongamos que deseamos realizar un programa que nos cargue una matriz elemento a elemento. En el ejemplo realizado armamos la matriz A tal que a( h , k ) = de la matriz veamos el programa:
%**********************************************************************% %Programa que ingresando como argumentos el numero de filas y el numero %de columnas de la matriz requerida ubica en cada posicion de la misma %lo solicitado. %**********************************************************************%
hk h2 + k 2

donde le indicamos a la funcin la dimensin

Pgina 50 de 90

Bases de Matlab
function y=llenamatriz(num_fila,num_columna) for k=1:num_fila for h=1:num_columna y(k,h)=h.*k/(h.^2+k.^2); end end

Alejandro Hayes

Veamos que obtenemos si vamos a la lnea de comandos y le pedimos una matriz de


format rat >> A=llenamatriz(10,10) A= Columns 1 through 5 1/2 2/5 3/10 4/17 5/26 6/37 7/50 8/65 9/82 10/101 2/5 1/2 6/13 2/5 10/29 3/10 14/53 4/17 18/85 5/26 3/10 6/13 1/2 12/25 15/34 2/5 21/58 24/73 3/10 30/109 4/17 5/26 2/5 10/29 12/25 15/34 1/2 20/41 20/41 1/2 6/13 30/61 28/65 35/74 2/5 40/89 36/97 45/106 10/29 2/5

Columns 6 through 10 6/37 3/10 2/5 6/13 30/61 1/2 42/85 12/25 6/13 15/34 >> 7/50 14/53 21/58 28/65 35/74 42/85 1/2 56/113 63/130 70/149 8/65 9/82 10/101 4/17 18/85 5/26 24/73 3/10 30/109 2/5 36/97 10/29 40/89 45/106 2/5 12/25 6/13 15/34 56/113 63/130 70/149 1/2 72/145 20/41 72/145 1/2 90/181 20/41 90/181 1/2

Utilizamos el formato racional para obtener resultados exactos y vemos como se genero la matriz pedida. Ejemplo 5.3.3: Supongamos ahora que dada una matriz queremos recorrerla y modificar alguno de sus elementos en este caso el programa que se muestra a continuacin.
%*****************************************************************************************% %Programa que recorre la matriz ingresada y si e elemento hk es negativo %o cero lo reemplaza por un cero de lo contrario lo reemplaza por un uno %****************************************************************************************% function y=recorre_matriz(A) num_fila=length(A(1,:));

Pgina 51 de 90

Bases de Matlab
num_columna=length(A(:,1)); for k=1:num_fila for h=1:num_columna if A(k,h)<=0 A(k,h)=0; else A(k,h)=1; end end end y=A;

Alejandro Hayes

Veamos que obtenemos cuando lo llamamos al programa por lnea de comando:


>> A=[1 2 -4 7;9 -6 -8 5;2 -1 -3 7;9 -6 -5 -3]

A= 1 9 2 9 2 -6 -1 -6 -4 -8 -3 -5 5 7 -3 7

>> recorre_matriz(A)

ans = 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 0

Ejemplo 5.3.4: Supongamos que queremos construir una funcin que no se encuentra como predeterminada por Matlab por ejemplo la funcin f ( x ) =
x x +1
2

la hacemos de la siguiente forma:

%************************************************************************% %Programa que crea una funcion racional% %************************************************************************% function f=func_racional_1(x) f=x./(x.^2+1); Veamos que ocurre si vamos a la lnea de comandos y escribimos lo siguiente:

Pgina 52 de 90

Bases de Matlab
>> x=-10:0.1:10; >> f=func_racional(x); >> plot(x,f); >> grid on >> Obtenemos el siguiente grafico:
0.5 0.4 0.3 0.2 0.1 0 -0.1 -0.2 -0.3 -0.4 -0.5 -10

Alejandro Hayes

-8

-6

-4

-2

10

Ejemplo 5.3.5:

Figura 23

Como ultimo ejemplo vamos a realizar un algoritmo que permita calcular la raz aproximada de una ecuacin poli nmica mediante la aplicacin del mtodo de biseccin. Supongamos que deseamos calcular el valor aproximado de 2 con un error menor que 10 6 para ello consideremos la funcin f ( x ) = x 2 2 en el intervalo [1,2] realicemos el siguiente programa:

%******************************************************************************************************************************% %Programa que aplica el metodo de Biseccion a una funcion f que hay que ingresarla entre comas 'f'% %******************************************************************************************************************************% function biseccion(f,x_max,x_min,error) %El ciclo se ejecuta mientras x_max-x_min sea mayor que el error deseado% while abs(x_max-x_min)>error %Evaluamos la funcion en x_max% y_x_max=feval(f,x_max); %Evaluamos la funcion en x_min% y_x_min=feval(f,x_min); %Vemos si es cero x_max% if y_x_max==0; disp('Una Raiz es:'); disp(x_max); break; %Vemos si es cero x_min% elseif y_x_min==0; disp('Una Raiz es:');

Pgina 53 de 90

Bases de Matlab
disp(x_min); break; %Vemos si el intervalo no cumple Bolzano% elseif y_x_max*y_x_min>0; disp('Intervalo Incorrecto') break; else %Calculamos el punto medio% x_medio=(x_max+x_min)/2; %Evaluamos la funcion en el punto medio% y_x_medio=feval(f,x_medio); %Vuelvo a probar Bolzano% if y_x_min*y_x_medio<0 x_max=x_medio; else x_min=x_medio; end end end if flag==0 disp('El valor de la raiz es:') disp(x_medio) else end

Alejandro Hayes

Ahora vamos a la lnea de comandos y lo ejecutamos lo siguiente: biseccion('polinomio_1',1,2,0.000001) El valor de la raiz es: 1.41421413421631 Para poder llamar a la funcin polinomio_1 esta tuvo que ser definida previamente por el usuario y esto se logro haciendo el siguiente archivo. function y=polinomio_1(x) y=x.^2-2;

11. Nmeros

Complejos

Recordemos que un numero complejo no es otra cosa que un par ordenado de nmeros reales de la forma z = ( a , b ) y que admiten una notacin en forma binmica dada por z = a + ib . La importancia de los nmeros complejos en ingeniera reside en el hecho de que aparecen muy frecuentemente en sistemas oscilatorios, funciones de transferencia, anlisis fasorial, etc. Matlab cuenta con una serie de comandos para un buen manejo de estos nmeros. La Tabla 1 muestra las funciones bsicas que permiten operar con nmeros complejos. a+i*b a+j*b Forma de representar un numero complejo. Matlab reserva las letras i y j para la unidad imaginaria, sin embargo a diferencia de otros programas no nos prohbe usarlas como variables por lo que si vamos a operar con

Pgina 54 de 90

Bases de Matlab

Alejandro Hayes
nmeros complejos es conveniente no usar estas letras como variables. Nos da el valor absoluto o modulo del numero complejo z Nos da el argumento del numero complejo z en radianes por defecto Construye un numero complejo a partir de las partes real e imaginaria a y b respectivamente Nos da el complejo conjugado de z Ordena nmeros complejos en pares complejos conjugados. Nos devuelve la parte imaginaria del complejo z Nos devuelve la parte real del numero complejo z. Nos devuelve un 1 si todos los elementos de A son nmeros reales y un cero si algn numero tiene parte imaginaria no nula. Corrige ngulos de fase si se pasan de 2 radianes

abs(z) angle(z) complex(a,b) conj(z) cplxpair(A) imag(z) real(z) isreal(A) unwrap(A)

Tabla 15
Ejemplo 6.1 Dados los siguientes nmeros complejos z 1 = 5 + 3i , z 2 = 8 2i se pide: a) Calcular sus mdulos y argumentos respectivamente. b) Sus partes real e imaginaria. c) Los nmeros complejos conjugados de cada uno de ellos. d) Graficar tanto a los nmeros dados como a sus complejos conjugados.
>> z1=-5+3*i z1 = -5.0000 + 3.0000i >> z2=8-3*i z2 = 8.0000 - 3.0000i >> M1=abs(z1) M1 = 5.8310 >> A1=angle(z1) A1 = 2.6012 >> M2=abs(z2) M2 = 8.5440 >> A2=angle(z2)

Pgina 55 de 90

Bases de Matlab
A2 = -0.3588 r1=real(z1) r1 = -5 >> r2=real(z2) r2 = 8 >> i1=imag(z1) i1 = 3 >> i2=imag(z2) i2 = -3 >> c1=conj(z1) c1 = -5.0000 - 3.0000i >> c2=conj(z2) c2 = 8.0000 + 3.0000i >> plot(-5,3,'o') >> hold on >> plot(-5,-3,'o') >> plot(8,-3,'o') >> plot(8,3,'o') >> grid on >> axis([-8 -10 -6 6]) >> xlabel('x') >> ylabel('y') >>

Alejandro Hayes

Hemos obtenido el siguiente grafico:

-2

-4

-6 -8

-6

-4

-2

0 x

10

Figura 24

Pgina 56 de 90

Bases de Matlab

Alejandro Hayes

Mediante la utilizacin del comando line(x,y) podemos trazar lneas desde el origen a cada uno de los puntos graficados visualizando de ese modo los vectores asociados a cada numero complejo z.
>> x=[0 8]; >> y=[0 -3]; >> line(x,y) >> x=[0 8]; >> y=[0 3]; >> line(x,y) >> x=[0 -5]; >> y=[0 3]; >> line(x,y) >> x=[0 -5]; >> y=[0 -3]; >> line(x,y)

Obtenemos la siguiente salida

-2

-4

-6 -8

-6

-4

-2

0 x

10

Figura 25

7.Funciones Matemticas Reales de varias variables reales o campos escalares.


La manipulacin de funciones de varias variables reales es similar a la de funciones de una variable por lo que procedemos a dar un ejemplo: Ejemplo 7.1:

Pgina 57 de 90

Bases de Matlab
Dadas las funciones
f : R 2 R / f ( x , y ) = sen( x + y )
g : R 2 R / g ( x , y ) = e ( x
2

Alejandro Hayes

+ y2 )

veamos como se evalan con Matlab.

syms x y real f=sin(x+y); g=exp(-x.^2-y.^2); x=2; y=3; subs(f) ans = -0.9589 subs(g) ans = 2.2603e-006

8. Graficas Tridimensionales (3-D)


La potencialidad de la graficacin 3D que posee Matlab permite una excelente visualizacin de superficies y manipulacin de graficas. Algunas de los comandos para la graficacin 3D se dan en la siguiente tabla: plot3( x,y,z) Dibuja un conjunto de puntos (x,y,z), donde x,y y z son vectores fila. Pueden ser matrices de la misma dimensin , en ese caso se hace una grafica por cada tripleta de filas y sobre los mismos ejes. Para valores complejos se ignora a la parte imaginaria. dem anterior pero con las opciones definidas en S. Combina sobre los mismos ejes, los grficos definidos para las tripletas (xi,yi,zi,Si). Transforma el campo de definicin dado de las variables x e y de la funcin a representar z=f(x,y) en argumentos matriciales utilizables por el comando Representa el grafico de superficie de la funcin z=f(x,y) con los colores

plot3( x,y,z,S) plot3(x1,y1,z1,S1,x2,y2,z2,S2....) [x,y] = meshgrid(x,y)

surf(x,y,z,C)

Pgina 58 de 90

Bases de Matlab
120

Alejandro Hayes

100

80

60 X 40 20 0 -20 0

20

40

60

80

100 R

120

140

160

180

200

Figura 35

10. Diferenciacin e integracin con Matlab 10.1.Derivacin e integracin de funciones escalares y campos escalares.
Matlab cuenta con varios comandos que permiten hallar la derivada e integral tanto en forma simblica como en forma numrica. La tabla 3 detalla algunas de esas funciones.

diff(f)

diff(f,x) diff(f,x,n) gradient(f) gradient(f,h)

int(f) Int(f,x) Int(f,a,b)

Determina la derivada de f respecto de la variable independiente en funciones de una sola variable siempre y cuando las variables de f estn definidas en forma simblica. En el caso de que f sea un vector de datos la funcin devuelve un nuevo vector donde cada componente es f(n)-f(n-1) Determina la derivada de f respecto de x. Determina la derivada de orden n en x de f. Devuelve una matriz cuyas componentes son las componentes del vector gradiente de f calculadas en forma numrica. Devuelve una matriz cuyas componentes son las componentes del vector gradiente de f calculadas en forma numrica con un espaciamiento dado por h. Calcula la integral indefinida de f respecto de su variable definida en forma simblica. Calcula la integral indefinida de f respecto de su variable x definida en forma simblica. Calcula la integral definida de f entre a y b

Pgina 67 de 90

Bases de Matlab
int(f,x,a,b)

Alejandro Hayes
Calcula la integral definida de f respecto de x entre a y b

Tabla 18
Ejemplo 10.1.1 Dada la funcin f ( x , y ) = ( x + y ) sen( x 2 + y 2 ) se desea hallar las derivadas parciales respecto de x y de y.
>> syms x y real >> f=(x+y).*sin(x.^2+y.^2); >> fx=diff(f,x) fx = sin(x^2+y^2)+2*(x+y)*cos(x^2+y^2)*x >> fy=diff(f,y) fy = sin(x^2+y^2)+2*(x+y)*cos(x^2+y^2)*y >>

Ejemplo 10.1.2 Dada la funcin f ( x ) = e x sen x 2 derivarla numricamente y graficarla en forma aproximada y a su derivada.
2

>> x=-10:0.01:10; >> f=exp(-x.^2).*sin(10*x.^2); >> df=diff(f); >> fd=df/eps; >> t=0:10/(length(fd)-1):10; >> subplot(2,1,1) >> plot(x,f) >> grid on >> xlabel(x) >> ylabel(f) >> subplot(2,1,2) >> plot(t,fd,r) >> grid on >> xlabel(x) >> ylabel(f) >>

Se obtiene la siguiente salida

Pgina 68 de 90

Bases de Matlab
1 0.5 0 -0.5 -1 -10 4 2 0 -2 -4 f x 10
14

Alejandro Hayes

-8

-6

-4

-2

0 x

10

5 x

10

Figura 36

Ejemplo 10.1.3 Dada la siguiente funcin f ( x , y ) = x 3 y 2 + 4 x 2 y 3 + 7 se desea hallar la integral doble de la misma en el recinto [0 ,1]x[0 ,1] .
>> syms x y real >> f=x^3*y^2+4*x^2*y^3+7; >> I=int(int(f,x,0,1),y,0,1)

I=
89/12 >>

Ejemplo 10.1.5 Para la funcin del ejemplo 5.1.3 hallar el vector gradiente asociado a la misma y graficar el modulo del mismo.
>> xa=-5:0.1:5; >> ya=-5:0.1:5; >> [x y]=meshgrid(xa,ya); >> f=x.^3.*y.^2+4*x.^2.*y.^3+7; >> [fx,fy]=gradient(f); >> M=sqrt(fx.^2+fy.^2); >> surf(x,y,M) >> xlabel('x') >> ylabel('y') >> zlabel('|grad(f)|') >> axis([-6 6 -6 6 -100 1200])

Obtuvimos la siguiente figura

Pgina 69 de 90

Bases de Matlab
>> stem(x,f) >> help stem Obtuvimos la siguiente salida

Alejandro Hayes

Figura 42

11. Ecuaciones diferenciales 11.1. Ecuaciones diferenciales ordinarias


Las ecuaciones diferenciales son un tema fundamental en la ingeniera que no puede faltar en ningn curso del estilo del presente. Actualmente la mayor parte de las ecuaciones diferenciales que aparecen en los modelos de ciencias e ingeniera no se resuelven por mtodos analticos sino por algoritmos iterativos que resultan ser muy eficientes a la hora de implementarlos y llevan a soluciones aproximadas muy confiables. Matlab cuenta con comandos para resolver ecuaciones diferenciales en forma simblica as tambin como con otros que nos dan una solucin aproximada, estos ltimos son los mas utilizados aunque no es el objetivo de este curso ensear los algoritmos de calculo numrico en base a los cuales funcionan estos comandos por lo cual solo explicaremos los comandos para la resolucin simblica de ecuaciones diferenciales y sistemas de ecuaciones diferenciales. La Tabla 6 lista algunos de los comandos para la resolucin de ecuaciones diferenciales ordinarias. dsolve(eqn) dsolve(eqn1, eqn2..) Devuelve la solucin de la ecuacin diferencial eqn dada en forma simblica. Devuelve la solucin del sistema de ecuaciones diferenciales.

Tabla 21
Ejemplo 11.1 Se desea resolver las siguientes ecuaciones diferenciales

Pgina 75 de 90

Bases de Matlab
d 2 x( t ) dx( t ) + + x( t ) = e t b) dt 2 dt x( 0 ) = 0 , x' ( 0 ) = 0

Alejandro Hayes

dx( t ) + x( t ) = 2 a) dt x( 0 ) = 0

x=dsolve('Dx=-x+2','x(0)=0') x= 2-2*exp(-t) x=dsolve('D2x+Dx=-x+exp(t)','x(0)=0,Dx(0)=0','t') x= 1/3*exp(t)-1/3*exp(-1/2*t)*cos(1/2*3^(1/2)*t)-1/3*exp(-1/2*t)*sin(1/2*3^(1/2)*t)*3^(1/2)

11.2. Ecuaciones diferenciales en derivadas parciales


Respecto a las ecuaciones diferenciales en derivadas parciales y dejando de lado los algoritmos de calculo numrico Matlab cuenta con un Toolbox llamado Partial Differential Equation Toolbox. Se invoca por lnea de comando escribiendo pdetool. Dejamos al lector que lo investigue por su cuenta pero es por dems amigable y muy fcil de utilizar y por otro lada tiene carcter de caja negra es decir se ingresan los datos de las ecuaciones y nos devuelve las graficas de la solucin aproximada y otra graficas o datos solicitados solicitadas aun desconociendo los mtodos empleados en su resolucin. La figura 41 muestra la interfaz del usuario de este toolbox.

Figura 41

Pgina 76 de 90

Bases de Matlab

Alejandro Hayes

12. Manejo de listas y arreglos de datos. 12.1. Algunos comandos para manejo de datos
Frecuentemente nos encontramos con listas de datos que pueden provenir ya sea de una medicin como del registro de algn instrumento tales como seales meteorolgicas, biomdicas, elctricas entre otras y es comn querer procesar esa informacin ya sea ordenar los datos de mayor a menor, buscar mximos, mnimos, interpolarlos o ajustarlos etc. Matlab cuenta con una gran cantidad de comandos por dems tiles para el procesamiento de vectores y matrices entendiendo listas de datos como estos ltimos. La tabla 7 lista algunos de estos comandos. cumprod(x) Devuelve un vector con los productos de acumulacin de x. Si x es una matriz devuelve un vector que tiene en cada posicin el producto de acumulacin de la columna correspondiente.

cumsum(x)

max(x)

min(x)

mean(x)

median(x)

prod(x)

sum(x)

sort(x) sortrows(x) std(x)

Devuelve un vector con las sumas de acumulacin de x. Si x es una matriz devuelve un vector que tiene en cada posicin la suma de acumulacin de la columna correspondiente. Devuelve el mximo valor de una lista de elementos. Si x es una matriz devuelve un vector que tiene en cada posicin el mximo valor de la columna correspondiente. Devuelve el mnimo valor de una lista de elementos. Si x es una matriz devuelve un vector que tiene en cada posicin el valor mnimo de la columna correspondiente. Devuelve el promedio de una lista de nmeros. Si x es una matriz devuelve un vector que tiene en cada posicin el valor promedio de la columna correspondiente. Devuelve la mediana de un conjunto de valores. Si x es una matriz devuelve un vector que tiene en cada posicin el valor de la mediana de la columna correspondiente. Devuelve el producto de los elementos de un array. Si x es una matriz devuelve un vector que tiene en cada posicin el producto de los elementos de la columna correspondiente. Devuelve la suma de los elementos de un array. Si x es una matriz devuelve un vector que tiene en cada posicin el producto de los elementos de la columna correspondiente. Ordena en forma creciente los elementos de un array. Si x es una matriz ordena en forma creciente los elementos de cada columna . Ordena una matriz en orden ascendente por la primera columna o la columna indicada . Calcula la desviacin estndar de un array. Si

Pgina 77 de 90

Bases de Matlab

Alejandro Hayes
x es una matriz devuelve un vector que tiene en cada posicin la desviacin estndar de la columna correspondiente. Calcula la varianza de un array. Si x es una matriz devuelve un vector que tiene en cada posicin la varianza de la columna correspondiente. Devuelve la matriz de covarianza de la matriz x. Devuelve los coeficientes de correlacin de x Devuelve un 1 lgico si la matriz esta vaca. Devuelve un 1 lgico si los vectores x e y son iguales. Devuelve un 1 si es un array lgico. Devuelve un 1 si es un array numrico. Devuelve el numero de elementos del vector x Devuelve el tamao de la matriz x. Devuelve el numero de elementos de la matriz x Devuelve el numero de dimensiones de una matriz o vector. Devuelve un 1 si la matriz x es dispersa. Reordena en una matriz grande en cuya diagonal estn las matrices x , y, z etc. Concatena las matrices x e y en la dimensin indicada en dim. Devuelve la diagonal de la matriz x o arma una matriz diagonal con los elementos de x Indica el final de la lista Devuelve los ndices de donde se encuentran los elementos que cumplen la condicin Rota la matriz x de izquierda a derecha Rota la matriz x de arriba hacia abajo Rota la matriz segn la dimensin indicada Concatena matrices en forma horizontal Repite la matriz x en un arreglo de nxm Redimensiona una matrix x a nxm Rota la matrix x 90 grados k veces Devuelve la parte triangular inferior de x Devuelve la parte triangular superior de x
Concatena matrices verticalmente

var(x)

cov(x) corrcoef(x) isempty(x) isequal(x,y) islogical isnumeric(x) length(x) size(x) numel(x) ndims(x) issparse(x) blkdiag(x,y,z ...) cat(dim,x,y) diag(x) end find(condicion) fliplr(x) flipud(x) flipdim(x,dim) horzcat(x,y) repmat(x,n,m) reshape(x,n,m) rot90(x,k) tril(x) triu(x)
vertcat(x)

Tabla 22
Ejemplo 12.1: Se dispone de la siguiente lista de datos proveniente de un registro:

Pgina 78 de 90

Potrebbero piacerti anche