0% encontró este documento útil (0 votos)
170 vistas33 páginas

Clase1 2

Este documento introduce conceptos básicos sobre el software MATLAB, incluyendo operadores matemáticos, variables, constantes, matrices y la resolución de sistemas de ecuaciones lineales.

Cargado por

sergioaquise
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
170 vistas33 páginas

Clase1 2

Este documento introduce conceptos básicos sobre el software MATLAB, incluyendo operadores matemáticos, variables, constantes, matrices y la resolución de sistemas de ecuaciones lineales.

Cargado por

sergioaquise
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 33

INTRODUCCIN AL MATLAB

SERGIO MOISES AQUISE ESCOBEDO

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

INTRODUCCIN

El Matlab es un software de computacin que permite realizar clculos tcnicos y desarrollar programas en forma sencilla, cuenta con una biblioteca matemtica amplia con abundantes herramientas grficas. El entorno del Matlab es interactivo similar al de una calculadora; preguntas y respuestas. Para ver algunas aplicaciones del Matlab basta introducir el comando demo que inicia el Matlab Expo, el cual es un entorno grfico que ilustra como realizar algunas operaciones. Debido a su entorno los siguientes comandos son tiles para un aprendizaje progresivo. El comando clc permite limpiar la ventana de comandos. El comando help proporciona el menu de ayuda. Para interrumpir un programa en el que por ejemplo se haya creado un ciclo infinito mantener presionada las teclas ctrl+c lo cual logra una interrupcin dentro del Matlab Para tener acceso a este sofware buscaremos el icono que tiene la siguiente presentacin

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

1 ENTORNO DEL MATLAB 1.1 OPERADORES Y FUNCIONES MATEMTICAS: OPERADORES ARITMTICOS + suma - resta * producto / divisin \ divisin izquierda ^ potenciacin

OPERADORES DE RELACIN Y OPERADORES LOGICOS < <= > >= menor menor o igual mayor mayor o igual == ~= & | igual diferente and or

ALGUNAS FUNCIONES MATEMTICAS abs(x) sqrt(x) exp(x) log(x) log10(x) imag(x) real(x) sin(x) , cos(x) , tan(x) , fix(x) floor(x) ceil(x) round(x) rem(x,y) valor absoluto raz cuadrada exponencial logaritmo natural logaritmo de base 10 parte imaginaria del numero complejo x parte real del numero complejo x asin(x) , sinh(x) acos(x) , cosh(x) atan(x) , tanh(x) redondea eliminando la parte fraccionaria redondea hacia el entero ms prximo a la izquierda redondea hacia el entero ms prximo a la derecha redondea hacia el entero ms prximo resto de la divisin

1.2 VARIABLES: Las variables deben comenzar con una letra pudiendo contener dgitos o guiones de subrayado ,la asignacin a una variable se realiza con el smbolo igual. El Matlab distingue las variables minsculas de las maysculas no es necesario declarar el tipo de variable. CONSTANTES: Algunas variables que tienen un valor especifico o significado son pi inf NaN iyj ans 3.1415.... infinito , division 1/0 magnitud no numrica , divisin 0/0 unidades imaginarias nombre por defecto de la variable usada para los resultados

VARIABLES NUMRICAS: El formato para la visualizacin de los resultados numricos puede ser cambiado seleccionando en el menu file la opcin preferencias pudiendo seleccionar por ejemplo format short , format long, format rat,...

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLOS: a) format short x=2 x = 2 y=2.34 y = 2.3400 b) format long x=2 x = 2 y=2.34 y = 2.34000000000000 c) format rat x=2 x = 2 y=2.34 y = 117/50 VARIABLES DE CADENA: Cualquier texto que se asigne a una variable deber encerrarse entre apstrofes EJEMPLO: m='iteracion' m = iteracin VARIABLES DE ARREGLO: Si deseamos asignar una matriz a una variable se debe colocar al inicio y final corchetes teniendo en cuenta que a) Los elementos se separan por espacios en blanco o por comas b) Las filas se separan por ; 2 5 EJEMPLO: Asignar a la variable x la matriz 6 8 x=[2,5;6,8] x = 2 6 5 8

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

ALGUNAS CARACTERSTICAS El smbolo % indica que todo texto despus de este smbolo ser considerado como comentario. El punto y coma suprime la visualizacin de los resultados y la coma permite que la visualizacin se realice en forma simultanea La orden help seguida del nombre de un tema visualiza la ayuda del tema si existe.

Ventana de comandos

>> indicador de peticin de ordenes El cursor y este indicador indican que el Matlab esta esperando responder una pregunta matemtica

archivo

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLOS: 1)

7+5 ans = 12

11) b=[6,3,8,2] b = 6 3 8 2

2)

a=8 a = 8

12) b(3) ans = 8

3)

c=4; c c = 4

13) 4<2 ans = 0

4)

2^6 ans = 64

14) 8~=3 ans = 1

5)

1/2 ans = 0.5000

6)

1\5 ans = 5

7)

x=8-7i;imag(x) ans = -7

8) f='escuela' f = escuela 9) m=[3,4;8,5] m = 3 8 4 5

10) m(2,1) ans = 8


5

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

FUNCIONES MATEMTICAS
1) fix(8.8) ans = 8 2) fix(8.1) 11) ans = ans = 8 5 3) fix(-3.5) 12) ans = ans = -3 6 4) floor(8.8) 13) ans = ans = 8 -4 5) floor(8.1) 14) ans = ans = 8 2 6) floor(-3.8) 15) ans = ans = -4 1 7) ceil(2.8) 16) ans = ans = 3 0.5000 8) ceil(2.1) 17) ans = ans = 3 6.1230e-017 9) ceil(-2.1) 18) ans = -2 ans = 0 round(cos(pi/2)) cos(pi/2) sin(pi/6) sin(pi/2) rem(17,3) round(-4.3) round(5.7) round(5.2)

10)

ceil(-2.6) ans = -2

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

CONSTRUCCIN DE ARREGLOS 1) a=3:7 a = 3 4 5 6 7 2) b=10:2:16 b = 10 3) a,b a = 3 b = 10 4) c=[a b] c = 3 4 5 6 7 10 12 14 16 12 14 16 4 5 6 7 12 14 16

OPERACIONES MATRICIALES

Los operadores matriciales ms usuales se realizan mediante los operadores + * ^ inv(A) det(A) A size(A) zeros(n,m) ones(n,m) length(A) rref(A) max(x) min(x) eig(A) lu(A) Suma Resta Producto Potencia Inversa de A Determinante de A Transpuesta de A Orden de la matriz A Matriz de ceros de orden nxm Matriz de unos de orden nxm Mxima longitud del arreglo A Reduce una matriz mediante el mtodo de eliminacin de Gauss Mximo valor de un arreglo x Mnimo valor de un arreglo x Calcula los autovalores de la matriz A Calcula la descomposicin LU de la matriz A

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLOS: Dadas las matrices calcule lo indicado siempre que sea posible

1.

Sean las matrices A

3 2 0 4

5 1

0 6 3 4 7 4

11 8 1 4 0 3

9 0

1 8 5 2 3 12

2 0 Halle la operacin indicada usando operaciones matriciales (en caso de ser posible)
a) (BC)D 2. b) DC A2 +3A c) CA AD d) CD+B2

2 8 1 6

Halle el determinante de cada matriz y la matriz inversa de la matriz dada en cada caso
1 1 7 8

a) A =

3 3 b) A = 1 1 1 2

16 6 14

c) A =

1 2 4

2 1 2

3 0 5

3.

Para cada caso halle la matriz X AX BA = CX + (I 2B)X


1 5 2 6

a)

, donde

A=

B=

5 3
0 4

6 2
C=

C=

4 5 5 3

1 3

b) XC +2A = X + XBC

, donde

A=

1 0 1 6

B=

7 1

2 1

4.

Si se expresa un sistema de ecuaciones lineales en la forma AX = b , Si la matriz A tiene inversa resolver el sistema mediante X = A-1 b a) 4x + 7y = 25 5x + 9y = 32 b) 2x y + 3z = - 3 x+y+ z=2 3x + 2y - z = 8 c) p + 2q - 3r =1 q - 2p + r =3 2r + p - 2 = 0 d) 2u + 3v 4w =-10 w - 2u - 1 = 0 u + 2v = 1

5.

Use la regla de Cramer y resuelva a) 2x - 5y = 8 3y + 7x = -13 b) 4x + 2y - 6z = 7 3x y + 2z =12 6x + 3y - 9z=10 c) 2x + y + z = 0 x + 2y z = -6 x + 5y + 2z = 0 d) 2v + 5w = 3 e) 4u 3w = 5 3u - 4v + 2w = 12

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

RESOLUCIN DE SISTEMAS DE ECUACIONES Para la resolucin de sistemas de ecuaciones usaremos la instruccin rref la cual halla la forma escalonada de una matriz

EJEMPLO: Utilice la instruccin rref

para resolver el sistema -x-y+2z = -5 -3x-y+7z = -22 x-3y-z =10

1 3 1

1 1 3

2 7 1

5 22 10

A=[-1 -1 2 -5;-3 -1 7 -22;1 -3 -1 10] A = -1 -3 1 rref(A) ans = 1 0 0 0 1 0 0 0 1 x=1 y=-2 z=-3 1 -2 -3 -1 -1 -3 2 7 -1 -5 -22 10

de aqu tenemos que la solucin del sistema es

EJEMPLO: Utilice la instruccin rref

para resolver el sistema 2x+ 6y -2z = 10 2x+ 5y -6z = 8 4x+11y-8z = 18

2 6 2 5 4 11

2 6 8

10 8 18

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

A=[2 6 -2 10;2 5 -6 8;4 11 -8 18] A = 2 2 4 rref(A) ans = 1 0 0 0 1 0 -13 4 0 -1 2 0 6 5 11 -2 -6 -8 10 8 18

de aqu por las propiedades del rango el sistema tiene infinitas soluciones, construyendo el sistema equivalente tenemos x - 13z = -1 y + 4z = 2 por tanto para hallar soluciones damos valores a z x = -1-13z y = 2-4z EJEMPLO: Utilice la instruccin rref para resolver el sistema

-2x - 4y + 2z - 6w = 0 3x + 6y - 2z +13w = 6 2x + 4y +14w = 12 4x + 8y - 7z =-10

2 3 2 4

4 6 4 8

2 6 2 13 0 14 7 0

0 6 12 10

A=[-2 -4 2 -6 0;3 6 -2 13 6;2 4 0 14 12;4 8 -7 0 -10] A = -2 3 2 4 rref(A) ans = -4 6 4 8 2 -2 0 -7 -6 13 14 0 0 6 12 -10

10

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

1 0 0 0

2 0 0 0

0 1 0 0

7 4 0 0

0 0 1 0

de aqu por las propiedades del rango el sistema no tiene solucin

EJEMPLO: Contra los deseos de su corredor de bolsa, Alicia compra x ttulos de acciones A, y ttulos de acciones B y z ttulos de acciones C. A principios de enero, febrero y marzo, las acciones A valan $5.18, $3.14 y $3.01 (dlares) por ttulo, las acciones B valan $2.10, $6.03 y $2.18 por ttulo, y las acciones C, $2.90, $2.80 y $5.53 por ttulo respectivamente. Calcule x, y, z si las acciones valan en total $2945.30, $4113.85, y 3417.00 en enero febrero y marzo, respectivamente. Ordenando nuestros datos en una tabla tenemos

Enero Febrero Marzo

A 5.18 3.14 3.01

B 2.10 6.03 2.18

C 2.9 2.8 5.53

Valor total 2945.30 4113.85 3417.0

Luego construimos el sistema 5.18x + 2.1y + 2.9z=2945.3 3.14x + 6.03y + 2.8z=4113.85 3.01x + 2.18y + 5.53z=3417 Utilizamos el Matlab para resolver el sistema >> A=[5.18 2.1 2.9;3.14 6.03 2.8;3.01 2.18 5.53]; >> b=[2945.3;4113.85;3417]; >> E=[A b]; >> rref(E) ans = 1 0 0 210 0 1 0 415 0 0 1 340 de aqu tenemos que la solucin del sistema es x = 210 ttulos de acciones A y = 415 ttulos de acciones B z = 340 ttulos de acciones C

EJEMPLO: Una compaa siderrgica produce x toneladas de acero de grado A, y toneladas de acero de grado B y z toneladas de acero de grado C a la semana. La primera semana vender 38% de su acero de grado A, 21% del acero de grado B y 11% del acero de grado C, para un total de 12229 toneladas, a un fabricante de automviles. La segunda semana vender 10% de acero de grado A, 53% de grado B y 24% de grado C, para un total de 9121 toneladas; y la tercera semana vender 21% de acero de grado A, 46% de grado B y 70% de grado C, para un total de13369 toneladas, al mismo fabricante. Encuentre x, y, z.

11

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

Organizando nuestros datos en una tabla tenemos x grado acero 1 semana 2 semana 3 semana A 38% 10% 21% y B 21% 53% 46% z C 11% 24% 7% Total toneladas 12229 9121 13369

Luego construimos el sistema 0.38x + 0.21y + 0.11z = 12229 0.10x + 0.53y + 0.24z = 9121 0.21x + 0.46y + 0.7z = 13369 Utilizamos el Matlab para resolver el sistema A=[0.38 0.21 0.11;0.1 0.53 0.24;0.21 0.46 0.7]; >> b=[12229;9121;13369]; >> E=[A b]; >> rref(E) ans = 1 0 0 0 1 0 0 0 1 25100 10300 4800

de aqu tenemos que la solucin del sistema es x = 25100 toneladas de acero de grado A y = 10300 toneladas de acero de grado B z = 4800 toneladas de acero de grado C

OPERACIONES PUNTUALES

Las operaciones puntuales en arreglos se realizan elemento a elemento en sus respectivas coordenadas

.* producto puntual ./ divisin puntual .^ potenciacin puntual

Estos operadores son diferentes a los operadores matriciales.

12

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLOS: a=[3 5 9];b=[4 2 1]; 1) c=a.*b c = 12 notemos que 2) c=a./b c = 0.7500 2.5000 9.0000 c=[3/4 5/2 9/1] 10 c=[34 9 52 91]

notemos que el resultado de la operacin puntual es 3) c=a.^3 c = 27 125 729

notemos que el resultado de la operacin puntual es

c=[3^3

5^3

9^3]

4) Si

a= 5
2

3 9

y b= 4 6
7 1

hallar a .* b

a=[5,3;2,9];b=[4,6;7,1]; a.*b ans = 20 14 18 9

notemos que a.*b = (5)( 4)


( 2)( 7)

(3)( 6) (9)(1)

y que el producto de matrices se representa como a*b

a*b ans = 41 71 33 21

13

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLOS: 1) Si x = 3.5 hallar y = x


7x 3 cos x x 2 ex

x=3.5;y=(x+7*x^3+cos(x))/(x^2-exp(x)) y = -14.5067 2) Si x = [ pi/2 pi/6 pi/3] hallar y = sen(x)

x=[pi/2 pi/6 pi/3];sin(x) ans = 1.0000 0.5000 0.8660

3) Si x = -4:2:10 hallar y =x2+x+1 x=-4:2:10 x = -4 -2 0 2 4 6 8 10

y=x.^2+x+1 y = 13 3 1 7 21 43 73 111

14

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

2 ARCHIVOS

El uso de la ventana de comandos solo es apropiado si se desea explorar ideas, en caso contrario es ms prudente escribir nuestros programas en un archivo el cual puede guardarse y corregirse las veces que sea necesario. Si desea elaborar uno haga clic en new del menu file. Los archivos se agrupan en dos categoras archivos script y archivos de funcin 2.1 ARCHIVOS SCRIPT: Una vez que se desarrollo un programa en este archivo deber guardarse con un nombre , este archivo se ejecutara desde la ventana de comandos digitando solamente su nombre. a) Guardar como: b) Ejecucion: nombre nombre

EJEMPLO: Crear un archivo script que calcule el resto de la divisin de 17 entre 3 x =rem(17,3) a) Guardar como: prueba b) Ejecucin: prueba x = 2 2.2 ARCHIVO M DE FUNCIN: Los archivos de funcin nos permiten crear nuestras propias Funciones. As podrn ser ejecutadas como comandos de funcin a diferencia de los archivos script se iniciaran con el formato function var.salida = nombre(var.ingreso) a) Guardar como: b) Ejecucin: nombre nombre(valor)

EJEMPLO: Crear un archivo de funcin que permita evaluar la funcin y=x2+6x - 2 function y = fun(x) y=x.^2 + 6*x 2; a) Guardar como: b) Ejecucin: fun fun(2) ans = 14

15

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLO: Crear un archivo de funcin que calcule el rea de una circunferencia function a = area( r ) a= pi*r^2;

a) Guardar como: b) Ejecucin:

area a=area(3) a = 28.2743

El formato general de encabezamiento de un archivo de funcin function [y1,y2,...ym]=nombre(x1,x2...xn) yi xi nombre

variables de salida variables de ingreso nombre de la funcin creada

EJEMPLO: Crear un archivo m de funcin que permita evaluar una la funcin f(x,y) = ( xy , y+senx , x2+y2 ) function [y1,y2,y3]=fun(x,y)

y1=x*y; y2=y+sin(x); y3=x^2+y^2;

a) Guardar como: fun b) Ejecucin: [y1,y2,y3]=fun(2,3) y1 = 6 y2 = 3.9093 y3 = 13 EJERCICIOS: 1. Cree un archivo de funcin que calcule el rea superficial y el volumen de un cilindro 2. Cree un archivo de funcin que calcule la evaluacin de la derivada de una funcin

16

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

3 GRFICAS

3.1 GRAFICACIN SIMPLE: Funciones reales de variable real

(xi,yi) yi y1 f(x) y = f(x) yi = f(xi)

x1

...

xi

...

xn

La graficacin se realizar a travs de un conjunto finito de puntos (xi,yi) considerando como dominio el arreglo x=[x1, x2,...,xn] y como el rango al arreglo y=[y1,y2...,yn] as la orden plot(x,y) graficar el conjunto de puntos (xi,yi) EJEMPLO: Graficar la funcin f(x)= x x=0:0.01:5;y=sqrt(x);plot(x,y);

TTULOS Y LEYENDAS: Es posible colocar al grfico ttulo y leyendas sobre los ejes usando las instrucciones title('texto') xlabel('texto') ylabel('texto')

17

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLO: Para adicionar al grfico anterior l ttulo funcin raiz y colocar las leyendas sobre los ejes eje x y eje y escribiremos. x=0:0.01:5;y=sqrt(x);plot(x,y); title('funcion raiz'),xlabel('eje x'),ylabel('eje y')

Es recomendable utilizar un archivo m script.

EJEMPLO: Graficar la funcin f(t) =t sen(15t) Utilizando un archivo script tenemos : t=0:0.01:4; y=t.*sin(15*t); plot(t,y) title('resonancia'),xlabel('tiempo'),ylabel('oscilacion')

18

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

GRAFICACIN CON MARCAS, TIPOS DE LNEA Y COLORES Tipo de marca Punto Mas Estrella Circulo Marca x smbolo + * x Tipo de lnea Continua Guiones Punteada Guiones y Puntos smbolo -: -. Color de lnea Rojo Amarillo Verde Azul Turquesa smbolo r y g b c

plot(x,y)

lnea continua

plot(x,y,'-.')

lnea guin y punto

plot(x,y,'--r')

lnea guin color rojo

EJEMPLO: Graficar la funcin f(x)=ex de color rojo con tipo de lnea guin Utilizando un archivo script tenemos x=-1:0.01:4;y=exp(x); plot(x,y,'--r') title('exponencial'),xlabel('eje x'),ylabel('eje y') Para graficar ms de una curva simultneamente, para un mismo dominio se utiliza diferentes reglas de correspondencia, a su vez colores y/o tipos de lnea diferentes para distinguirlas. EJEMPLO: Graficar las funciones f(x)=ex y g(x)=5sen(8x) la primera de color rojo y la segunda de color azul con tipo de lnea punteada x=-1:0.01:4; y=exp(x);z=5*sin(8*x); plot(x,y,'r',x,z,':b') title('multiples curvas'),xlabel('eje x'),ylabel('eje y')

19

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

Se puede graficar una retcula mediante la instruccin grid que permite ubicar aproximadamente con el grfico valores caractersticos de una funcin. EJEMPLO: Grafique las funciones f(x)=3- 2x 1 , g(x)=2sen(x) y usando la instruccin grid determine aproximadamente sus puntos de interseccin. x=1:0.01:8; y=3-sqrt(2*x-1);z=2*sin(x); plot(x,y,'r',x,z,':b'),grid title('puntos de interseccion'),xlabel('eje x'),ylabel('eje y')

Los puntos de interseccin son aproximadamente (1.3,1.8) ; (2.7,0.9) ;(6.1,-0.4). OBSERVACIN: A travs de la grfica anterior tambin se puede determinar las races de las funciones por ejemplo la raz aproximada de f(x) es x=5. Otra forma de graficar mltiples curvas es utilizar la instruccin hold on que permite retener un grfico. EJEMPLO: Graficar las funciones f(x)= x y g(x)=3x-1 Utilizando un archivo script tenemos x=0:0.1:4;y=sqrt(x); plot(x,y),hold on y=3*x-1; plot(x,y,'r'),hold off

20

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

TEXTO EN LA GRFICA: Es posible colocar un texto en la grfica utilizando la instruccin gtext la cual marca con el mouse la posicin donde se publicara el texto. EJEMPLO: Graficar la funcin f(x)=xsen(x) y colocar en un lugar adecuado el texto maximo x=-1:0.1:4;y=x.*sin(x); plot(x,y) gtext('maximo')

GRFICAS EN COORDENADAS POLARES La instruccin polar es similar a la instruccin plot dado que permite graficar puntos teniendo en cuenta que para polar(t,r) el parmetro t indica el ngulo y r el radio EJEMPLO: Graficar r = 1 - sent t=0:0.05:2*pi;r=1-sin(t);polar(t,r) gtext('cardioide')

21

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJERCICIOS: Dadas las siguientes ecuaciones graficar y colocar el nombre adecuado a) r = 2+4cost b) r = 3t c) r = 8+3cost d) r = 2-5cost e) r = 2

3.2 GRFICO DE SUPERFICIES Para graficar una funcin f:R2 R tenemos en cuenta que Df R2

Eje y

Eje x donde el eje x estar dado por un arreglo xa=[x1,x2,...,xn] el eje y estar dado por un arreglo ya=[y1,y2,...,yn] Asi Df = xa x ya 1) meshgrid: Crea un arreglo bidimensional 2) a) mesh: Grfica una malla que simula una superficie b) meshc: Realiza lo mismo que mesh adicionando sus curvas de nivel 3) a) surf: Colorea cada clula de la malla b) surfc: Realiza lo mismo que surf adicionando las curvas de nivel c) surfl: Crea un objeto de superficie con iluminacin Nota: Es recomendable usar surfl con la instruccin shading shading faceted: Sombreado de cada una de las clulas. shading flat: Elimina las lneas de separacin de las clulas. shading interp:Alisa la superficie.

Tambin podemos colorear la superficie de un solo color con la instruccin colormap colormap(color) Donde el color puede ser cool , hot , gray , pink

OBSERVACIN: Los ttulos y leyendas se colocan en forma anloga a funciones reales de variable real Veamos a continuacin algunos ejemplos en los cuales veremos progresivamente el grfico de una superficie de acuerdo a las instrucciones dadas

22

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

xa=-2:0.1:2;ya=-2:0.1:2; [x,y]=meshgrid(xa,ya); z=x.^2-y.^2; mesh(x,y,z)

xa=-2:0.1:2;ya=-2:0.1:2; [x,y]=meshgrid(xa,ya); z=x.^2-y.^2; surf(x,y,z)

xa=-2:0.1:2;ya=-2:0.1:2; [x,y]=meshgrid(xa,ya); z=x.^2-y.^2; surfl(x,y,z) shading interp colormap(cool)

xa=-2:0.1:2;ya=-2:0.1:2; [x,y]=meshgrid(xa,ya); z=x.^2-y.^2; surfl(x,y,z) shading interp colormap(cool) axis off

23

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJEMPLOS: xa=-2:0.2:2;ya=-2:0.2:2; [x,y]=meshgrid(xa,ya); z=x.*exp(-x.^2-y.^2); surf(x,y,z)

xa=-2:0.2:2;ya=-2:0.2:2; [x,y]=meshgrid(xa,ya); z=x./y; surf(x,y,z)

xa=-1.8:0.2:1.8;ya=-1.8:0.2:1.8; [x,y]=meshgrid(xa,ya); z=exp(-x.^2-y.^2);surf(x,y,z) title('funcion z=exp(-x.^2-y.^2)') xlabel('eje x'),ylabel('eje y') zlabel('eje z')

xa=-1.8:0.2:1.8;ya=-1.8:0.2:1.8; [x,y]=meshgrid(xa,ya); z=abs(x)-y; surfc(x,y,z)

24

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

CURVAS DE NIVEL Para graficar las curvas de nivel usaremos la instruccin contour EJEMPLO: Graficar las curvas de nivel para z = x2- y2 xa=-2:0.2:2;ya=-2:0.2:2; [x,y]=meshgrid(xa,ya); z=x.^2-y.^2; contour(x,y,z)

EJERCICIOS: Grafique las curvas de nivel para las funciones a) z = x2+y2 b) z = x -y c) z = xexp(-x2-y2) d) z=(x2+y2)3-8x2+y2 Grfico de funciones implcitas EJEMPLO: Graficar la curva descrita por la ecuacin (x2+y2)2 = x2-y2 Podemos definir z = (x2+y2)2 - x2-y2 as la curva de nivel en z = 0 coincide con la curva de nivel a graficar

xa=-1.1:0.1:1.1;ya=-1.1:0.1:1.1; [x,y]=meshgrid(xa,ya); z=(x.^2+y.^2).^2-x.^2+y.^2;


contour(x,y,z,[0 0])

25

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJERCICIOS: Graficar las siguientes curvas a) x2+y2=4 x 2 y2 b) 9 4 d) (x2+y2)3 = 8x2y2 y2 x 2 1 e) 16 25

CAMPOS DE DIRECCIONES: El campo de direcciones esta dado por el campo de vectores gradiente gradient: Determina el campo gradiente quiver: Grfica el campo gradiente EJEMPLO: Graficar el campo de direcciones de los vectores gradiente de z =x2+y2
xa=-2:0.3:2;ya=-2:0.3:2; [x,y]=meshgrid(xa,ya); z=x.^2+y.^2; [px,py]=gradient(z); quiver(x,y,px,py)

EJERCICIOS: Graficar el campo gradiente para las siguientes funciones a) z =x2 - y2 b) z = xexp(-x2-y2) d) e) z = x -y z=x+y

Adicionalmente podemos usar la instruccin contour


xa=-2:0.3:2;ya=-2:0.3:2; [x,y]=meshgrid(xa,ya); z=x.^2+y.^2; [px,py]=gradient(z); quiver(x,y,px,py),hold on contour(x,y,z),hold off

26

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

CURVAS PARAMETRIZADAS EJEMPLO: Graficar x2+y2=9 Parametrizando tenemos x =3cost y=3sent


0 x 2

t=0:0.05:2*pi; x=cos(t);y=sin(t);plot(x,y)

Notar que el grafico aparentemente no es una circunferencia debido a que por defecto el matlab grfica en ejes rectangulares, podemos corregir el archivo anterior de la siguiente forma
t=0:0.05:2*pi; x=cos(t);y=sin(t);plot(x,y) axis square

EJERCICIOS: Graficar las siguientes curvas utilizando una parametrizacin a) b)


x2 9 y2 16 y2 4 x2 25 1 1

CURVAS EN EL ESPACIO EJEMPLO: Graficar el camino f : [0,7 ] R2 definido por f(t) = (cost,sent) Gf ={ (t,cost,sent) / t [0,7 ] } x = t ; y=cost ;z=sent

De aqu (x,y,z) = (t,cost,sent) implica que


t=0:0.05:7*pi; x=t;y=cos(t);z=sin(t); plot3(x,y,z)

27

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

EJERCICIOS: a) Graficar la traza de la camino f : [0,3 ] R3 definido como f(t)=(e-tcos5t,e-tsen5t,17t) b) Graficar el segmento de recta que pasa por los puntos (2,5) y (3,8) c) En la ventana de comandos ejecutar
>> plot([2,3],[5,8])

SUPERFICIES PREDEFINIDAS ESFERA: EJEMPLOS: >> sphere


>> sphere(6) sphere sphere(n)

sphere,shading interp colormap(gray),axis square

28

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

CILINDRO:

cylinder cylinder(r,n)

EJEMPLOS: probar los siguientes comandos


>> >> >> >> >> >> >> >> cylinder cylinder([1 1],3) cylinder([1 1],5) cylinder([1 1],25) cylinder([2 2],25) cylinder([2 3],25) cylinder([3 2],25) cylinder([-3 2],25) cylinder([2 3],25) cylinder([3 2],25)

cylinder([-3 2],25)

cylinder([-1.8 2],50) shading interp,colormap(jet)

t=0.5:0.2:3.2; y=t.*sin(t);cylinder([y,0.8],50) shading faceted colormap(cool) axis square

29

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

GRAFICAS EN MULTIPLES EJES


La instruccin subplot permite realizar varios grficos en una sola ventana de acuerdo al orden de una matriz subplot(m,n,k) m,n en conjunto indica el orden de la matriz de grficos a generar y k la grfica correspondiente de la secuencia de la matriz de grficos en un archivo script escribimos subplot(2,3,1) x=-4:0.1:4;y=exp(-x.^2);plot(x,y) subplot(2,3,2) x=-1:0.1:3;y=-x.^2;plot(x,y) subplot(2,3,3) x=-4:0.1:4;y=sin(x);plot(x,y) subplot(2,3,4) x=-4:0.1:4;y=abs(x);plot(x,y) subplot(2,3,5) x=-4:0.2:4;y=floor(x);plot(x,y) subplot(2,3,6) x=-1:0.2:2;y=-2*x+5;plot(x,y)

30

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

CONTROL DE VENTANAS GRAFICAS: La instruccin figure crea una ventana grafica >> figure La instruccin set cambia las propiedades de un objeto por ejemplo de una venta grafica

>> h=figure; set(h,'Position',[0,0,1020,700],'Color',[1 1 0],'Name','ventana grafica creada','NumberTitle','off')

Los colores pueden ser cambiados por un vector [0 0 0] negro [1 1 0] amarillo [1 1 1] blanco

GRAFICAS ESPECIALES: Es posible graficar directamente una usando las instrucciones fplot y ezplot

fplot( f ,[a,b]) ezplot( f ,[a,b])

Grafica una funcin f en el intervalo [a,b] Grafica una funcin f en el intervalo [a,b] , adicionndole como ttulo el nombre de la funcin o la regla de correspondencia descrita

EJEMPLO:

>> fplot('exp(x)',[-1,5])

EJEMPLO: Puede crear un archivo de funcin denominado con un nombre e invocarlo, por ejemplo si crea el archivo de funcin llamado fun tenemos >> fplot('fun(x)',[-1,5]) EJEMPLO: >> ezplot('exp(x)',[-1,5])

EJEMPLO: EJEMPLO:

>> ezplot('fun(x)',[-1,5]) >> ezplot('x-2*fun(x)',[-1,5])

31

INTRODUCCIN AL MATLAB

SERGIO MOISS AQUISE ESCOBEDO

FUNCIONES DE VARIABLES COMPLEJAS La instruccin cplxmap traza la grfica de funcin de variable compleja cplxmap(z,f(z),cota opcional)

EJEMPLO: >> cplxmap(z,z) >> cplxmap(z,5*z)

>> cplxmap(z,5*z,3)

>>cplxmap(z,z.^3)

>> cplxmap(z,z.^7)

>> cplxmap(z,1./z)

32

También podría gustarte