clase no.37 y 38.pdf

15
Elaborado por: Lic. Flavia Romero Pérez, M.Sc. UNIVERSIDAD NACIONAL DE INGENIERIA PLAN DIARIO DE CLASE: Sesión No. 37 y 38 I. DATOS GENERALES: 1.1 Facultad : Electrotecnia y Computación 1.2 Carrera: Ingeniería Electrónica 1.3 Departamento: Electrónica 1.4 Asignatura: Programación II 1.5 Profesor: Flavia Romero 1.6 Unidad Temática: Gráficos Tridimensionales en MatLab 1.7 Tipo de FOE: Clase práctica en laboratorio 1.8 Tiempo de duración: 2 horas académicas (100 minutos reloj) 1.10 Grupos: 2M1_Eo 2M3_Eo 1.11 Horario: Miércoles 7:00 a.m. a 10:25 a.m. Jueves 7:00 a.m. a 8:40 a.m. Miércoles 10:30 a.m. a 12:10 p.m. Jueves 8:45 a.m. a 10:25 p.m. 1.12 Fecha: 9 y 10 de julio de 2014 9 y 10 de julio de 2014 II. COMPONENTES DIDACTICOS: 2.1. OBJETIVOS: Conceptual Señalar las funciones elementales para gráficos tridimensionales en MatLab. Identificar la sintaxis de cada de las funciones elementales para gráficos tridimensionales en MatLab. Recordar la sintaxis de cada de las funciones elementales para gráficos tridimensionales en MatLab. Procedimental Crear y etiquetar gráficos tridimensionales. Ajustar la apariencia de los gráficos tridimensionales. Actitudinal Valorar la herramienta por sus múltiples aplicaciones en la confección de gráficos tridimensionales en MatLab. 2.2. CONTENIDOS A DESARROLLAR: TIPOS DE FUNCIONES GRÁFICAS TRIDIMENSIONALES DIBUJO DE MALLADOS: FUNCIONES MESHGRID, MESH Y SURF DIBUJO DE LÍNEAS DE CONTORNO: FUNCIONES CONTOUR Y CONTOUR3 MAPAS DE COLORES IMÁGENES Y GRÁFICOS EN PSEUDOCOLOR DIBUJO DE SUPERFICIES FACETEADAS OTRAS FORMAS DE LAS FUNCIONES MESH Y SURF OTRAS FUNCIONES GRÁFICAS 3D 2.3. ACTIVIDADES DE APRENDIZAJE: 2.3.1. Actividades Iníciales: Efectuar transición atenuada entre el ambiente del que provienen los estudiantes y el de la clase. Reafirmar conceptos de la sesión anterior pertinentes para el desarrollo de la clase. Explicitar los objetivos de la clase. 2.3.2. Actividades de Desarrollo: Asignar a cada estudiante un computador. Leer detenidamente el siguiente material sin efectuar intentos en la aplicación. Leer una segunda vez interactuado con la aplicación. El profesor procede al desarrollo de los contenidos propuestos para la sesión de clases. Los estudiantes toman notas de los aspectos relevantes de la clase y efectúan preguntas motivados por las preguntas de comprobación de los aprendizajes efectuadas por el docente. Cada estudiante interioriza los conceptos y su interpretación. 2.3.3. Actividades Finales: A modo de conclusión y como producto final de la práctica el docente ofrece una sistematización del proceso el cual explicitará. Conviene dedicar unos minutos a mencionar los puntos importantes, relacionarlos con la próxima clase, preguntar a los estudiantes si sienten que han progresado y hacerles algún comentario sobre su actuación y su actitud. Para cerrar de esta forma la clase, es necesario prever la duración de la última actividad de forma que los estudiantes opten a su receso de cinco minutos. 2.4. MEDIOS / RECURSOS DIDÁCTICOS: Pizarra acrílica Marcadores acrílicos Borrador para pizarra acrílica Plan de clase

Upload: luis

Post on 05-Sep-2015

55 views

Category:

Documents


1 download

TRANSCRIPT

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    UNIVERSIDAD NACIONAL DE INGENIERIA

    PLAN DIARIO DE CLASE: Sesin No. 37 y 38

    I. DATOS GENERALES: 1.1 Facultad : Electrotecnia y Computacin

    1.2 Carrera: Ingeniera Electrnica

    1.3 Departamento: Electrnica

    1.4 Asignatura: Programacin II

    1.5 Profesor: Flavia Romero

    1.6 Unidad Temtica: Grficos Tridimensionales en MatLab

    1.7 Tipo de FOE: Clase prctica en laboratorio

    1.8 Tiempo de duracin: 2 horas acadmicas (100 minutos reloj)

    1.10 Grupos: 2M1_Eo 2M3_Eo 1.11 Horario: Mircoles 7:00 a.m. a 10:25 a.m.

    Jueves 7:00 a.m. a 8:40 a.m. Mircoles 10:30 a.m. a 12:10 p.m. Jueves 8:45 a.m. a 10:25 p.m.

    1.12 Fecha: 9 y 10 de julio de 2014 9 y 10 de julio de 2014

    II. COMPONENTES DIDACTICOS:

    2.1. OBJETIVOS: Conceptual

    Sealar las funciones elementales para grficos tridimensionales en MatLab. Identificar la sintaxis de cada de las funciones elementales para grficos tridimensionales en MatLab. Recordar la sintaxis de cada de las funciones elementales para grficos tridimensionales en MatLab.

    Procedimental Crear y etiquetar grficos tridimensionales. Ajustar la apariencia de los grficos tridimensionales.

    Actitudinal Valorar la herramienta por sus mltiples aplicaciones en la confeccin de grficos tridimensionales en MatLab.

    2.2. CONTENIDOS A DESARROLLAR: TIPOS DE FUNCIONES GRFICAS TRIDIMENSIONALES DIBUJO DE MALLADOS: FUNCIONES MESHGRID, MESH Y SURF DIBUJO DE LNEAS DE CONTORNO: FUNCIONES CONTOUR Y CONTOUR3 MAPAS DE COLORES IMGENES Y GRFICOS EN PSEUDOCOLOR DIBUJO DE SUPERFICIES FACETEADAS OTRAS FORMAS DE LAS FUNCIONES MESH Y SURF OTRAS FUNCIONES GRFICAS 3D

    2.3. ACTIVIDADES DE APRENDIZAJE: 2.3.1. Actividades Inciales:

    Efectuar transicin atenuada entre el ambiente del que provienen los estudiantes y el de la clase. Reafirmar conceptos de la sesin anterior pertinentes para el desarrollo de la clase. Explicitar los objetivos de la clase.

    2.3.2. Actividades de Desarrollo: Asignar a cada estudiante un computador. Leer detenidamente el siguiente material sin efectuar intentos en la aplicacin. Leer una segunda vez interactuado con la aplicacin. El profesor procede al desarrollo de los contenidos propuestos para la sesin de clases. Los estudiantes toman notas de los aspectos relevantes de la clase y efectan preguntas motivados por las preguntas de comprobacin de los aprendizajes efectuadas por el docente. Cada estudiante interioriza los conceptos y su interpretacin.

    2.3.3. Actividades Finales: A modo de conclusin y como producto final de la prctica el docente ofrece una sistematizacin del proceso el cual explicitar. Conviene dedicar unos minutos a mencionar los puntos importantes, relacionarlos con la prxima clase, preguntar a los estudiantes si sienten que han progresado y hacerles algn comentario sobre su actuacin y su actitud. Para cerrar de esta forma la clase, es necesario prever la duracin de la ltima actividad de forma que los estudiantes opten a su receso de cinco minutos.

    2.4. MEDIOS / RECURSOS DIDCTICOS: Pizarra acrlica Marcadores acrlicos Borrador para pizarra acrlica Plan de clase

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Proyector Computador

    2.5. FORMAS DE EVALUACIN DE LOS APRENDIZAJES: Las evaluaciones que se aplicaran en todos los casos sern formativas. En las actividades iniciales el docente efecta una evaluacin mediante preguntas de control eligiendo estudiantes aleatoriamente.

    IV. ORIENTACIONES PARA EL ESTUDIO INDEPENDIENTE: Dado que este es el ltimo tema de MatLab ya no se asigna estudio independiente.

    V. BIBLIOGRAFA DE CONSULTA: Holly Moore. (2007). MatLab para ingenieros. (Primera Edicin). Pearson Education. Mxico.

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Desarrollo de Contenidos

    Grficos tridimensionales

    Quizs sea sta una de las caractersticas de MATLAB que ms admiracin despierta entre los usuarios no tcnicos (cualquier alumno de ingeniera sabe que hay ciertas operaciones algebraicas como la descomposicin factorial y en general a todas las operaciones que se les brinda en calculo simblico, sin ir ms lejos que tienen dificultades muy superiores, aunque "luzcan" menos).

    Tipos de funciones grficas tridimensionales

    MATLAB tiene posibilidades de realizar varios tipos de grficos 3D. La primera funcin y quizs las ms elemental de grficos en 3D en MatLab es plot3, que es el anlogo tridimensional de la funcin plot. Esta funcin dibuja puntos cuyas coordenadas estn contenidas en 3 vectores, bien unindolos mediante una lnea continua (defecto), bien mediante markers. Para iniciar la primera aproximacin a los grficos en 3D, asegrese de no tener ventanas grficas abiertas y ejecute el siguiente comando que dibuja una lnea espiral: clear, clc x=linspace(0,10*pi,1000); plot3(cos(x),sin(x),x,'g') grid xlabel('cos(x)'),ylabel('sen(x) '),zlabel('angulo'),title('Un resorte')

    Ahora se ver cmo se representa una funcin de dos variables. Para ello se va a definir una funcin de este tipo.

    Recuerde que estamos utilizando plot3, por lo que es necesario evaluar la funcin de dos variables y despus graficarla tridimensionalmente. Para evaluar una funcin f(x ,y) de dos variables, primero definimos una retcula bidimensional en el plano xy, la retcula se construye a partir de los valores xy, valores subyacentes de z que representan los valores de la funcin. Para evaluar una funcin f(x,y) de dos variables, primero tenemos que definir esta retcula bidimensional en el plano x,y. A continuacin es necesario evaluar la funcin en los puntos de la retcula para determinar puntos en la superficie tridimensional. Definimos una retcula bidimensional en el plano x,y usando dos matrices. Una matriz contiene las coordenadas x de todos los puntos de la retcula, y la otra contiene las coordenadas y de todos los puntos de la retcula.

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Ejemplo No.1 Supongamos que queremos definir una retcula en la que la coordenada x vare de -1 a 1 en incrementos de 1. Luego construyamos la retcula para x, que llamaremos x_grid = meshgrid(x) para la matriz x tiene orden 3x3, tal como se aprecia a continuacin: >> x=-1:1 x = -1 0 1 >> x_grid=meshgrid(x) x_grid = -1 0 1 -1 0 1 -1 0 1 Ejemplo No.2 Supongamos que queremos definir una retcula en la que la coordenada x vare de -2 a 2 en incrementos de 1; y la coordenada y vare de -1 a 2 tambin en incrementos de 1. La matriz correspondiente de valores x en la retcula es la siguiente:

    >> x=-2:2 x = -2 -1 0 1 2 >> x_grid=meshgrid(x) x_grid = -2 -1 0 1 2 -2 -1 0 1 2 -2 -1 0 1 2 -2 -1 0 1 2 -2 -1 0 1 2

    Y la matriz correspondiente de valores y en la retcula es la siguiente:

    >> y=-1:2 y = -1 0 1 2 >> y_grid=meshgrid(y) y_grid = -1 0 1 2 -1 0 1 2 -1 0 1 2 -1 0 1 2

    As, el punto de la esquina superior izquierda de la retcula tiene coordenadas (-2,-1). Y el punto de la esquina inferior derecha de la retcula tiene coordenadas (2,2). La funcin meshgrid genera las dos matrices que definen la retcula subyacente para una funcin bidimensional. Utilizada de la siguiente forma: [x_grid, y_grid] = meshgrid(x,y)

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    >> [x_grid, y_grid] = meshgrid(x,y) x_grid = -2 -1 0 1 2 -2 -1 0 1 2 -2 -1 0 1 2 -2 -1 0 1 2 y_grid = -1 -1 -1 -1 -1 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2

    Genera dos matrices de tamao nxm, con base en los valores de los vectores x e y que contienen m y n valores respectivamente. La matriz x_grid contiene los valores de x repetidos en cada fila, y la matriz y_grid contiene los valores de y repetidos en cada columna. Ejemplo No.3 Para generar las dos matrices descritas en el ejemplo anterior, podemos utilizar las siguientes instrucciones:

    x = -2:2; y = -1:2; [X,Y]=meshgrid(x,y);

    Una vez definidas las matrices de la retcula subyacente, podemos calcular los valores correspondientes de la funcin. Por ejemplo, supongamos que se desea evaluar la siguiente funcin para la retcula que acabamos de definir:

    2y2x1

    1y)f(x,z

    Los valores correspondientes de la funcin se calculan y almacenan en una matriz Z de cuatro filas y cinco columnas con estas instrucciones: Z = 1./(1 +X.^2 + Y.^2);

    Puesto que las operaciones son elemento por elemento, el valor de la matriz Z que tiene subndices (1,1) se calcula usando los valores que estn en X(1,1) y en Y(1,1), y as sucesivamente. Observe que no se requieren ciclos para calcular todos los valores de Z. Un error comn al calcular los valores de una funcin de dos variables es usar los vectores x e y, en lugar de los valores de la retcula subyacente que estn en X y en Y. Una vez hecho esto, procedemos a aplicar alguna de las varias formas que existen para graficar una superficie tridimensional, como pueden ser:

    plot3(X, Y, Z); figure (2); mesh(X, Y, Z); figure (3); surf(X, Y, Z);

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Las cuales representan datos en una superficie, pero de diferente forma; por ejemplo plot3 genera una superficie continua, mesh genera una superficie de cuadrcula abierta, y surf genera una grfica de cuadrcula sombreada. Todo sobre los datos definidos en la matriz Z. Para las ltimas dos funciones tambin se puede aplicar:

    mesh(Z); surf(Z);

    Ejemplo No. 4 A continuacin graficaremos una funcin creada desde un m-file. Trabajaremos con la funcin

    222222 y)1x(

    3

    1yx)5y3x5

    x(10)1y(x2)x1(3z

    Supongamos que guardaremos en un archivo llamado fun1d.m. La frmula siguiente: function z=fun1d(x,y) z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ... - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ... - 1/3*exp(-(x+1).^2 - y.^2);

    Ahora, ejectese la siguiente lista de comandos (directamente, o mejor creando un archivo fun1dFC.m que los contenga): x=[-3:0.4:3]; y=x; [X,Y]=meshgrid(x,y); Z=fun1d(X,Y);

    pause(5); mesh(Z); pause(5); surf(Z); pause(5); contour3(Z,16);

    En la figura resultante aparece una buena muestra de algunas de las posibilidades grficas tridimensionales de MATLAB, se ha aplicado la funcin pause con 5 segundos para que se pueda ver el resultado de cada una de las funciones.

    Curvas en el espacio Como hemos visto anteriormente, las curvas en el espacio se generan de una manera similar a las curvas en el plano, con la diferencia de que aqu se utilizan los comandos plot3, as como para la funcin comet se aplica comet3, tambin existe un comando quiver3 para dibujar vectores velocidad sobre las curvas.

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Ejemplo No. 5 Por ejemplo, queremos dibujar la hlice r(t) = (sen(t); cos(t); t) para 0t10 y sobre ella los vectores velocidad. Generamos los valores de t:

    >> t= 0:pi/50:10*pi;

    Y ahora podemos utilizar el comando: >> plot3(sin(t),cos(t),t);

    con lo que obtendremos la grafica siguiente:

    Ahora cierre la ventana de la imagen, visualice la figura actual y ejecute:

    >> clf,shg,pause(5),comet3(sin(t),cos(t),t) Y con

    >> clf,shg,pause(5),quiver3(sin(t),cos(t),t,cos(t),-sin(t),1)

    Ejercicio No. 1 Representar las curvas siguientes y representar en grafica aparte algunos vectores velocidad de la curva en los intervalos indicados:

    1. r(t) = (cos(3t); 2 cos2(t); sen(2t)) - t . 2. r(t) = (sen(2t) + sen(t);-cos(2t) -cos(t);-t/6) -9t10.

    Dibujo de lneas: funcin plot3 La funcin plot3 es anloga a su homloga bidimensional plot. Su forma ms sencilla es la siguiente: plot3(x,y,z)

    Dibuja una lnea que une los puntos (x(1), y(1), z(1)), (x(2), y(2), z(2)), etc. y la proyecta sobre un plano para poderla representar en la pantalla. Al igual que en el caso plano, se puede incluir una cadena de 1, 2 3 caracteres para determinar el color, los markers, y el tipo de lnea: plot3(x,y,z,s)

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Tambin se pueden utilizar tres matrices X, Y y Z del mismo tamao: plot3(X,Y,Z)

    En cuyo caso se dibujan tantas lneas como columnas tienen estas 3 matrices, cada una de las cuales est definida por las 3 columnas homlogas de dichas matrices. Ejemplo No.6 A continuacin se va a realizar un ejemplo sencillo que consistente en dibujar un cubo. Para ello se crear un archivo llamado cubo.m que contenga las aristas correspondientes, definidas mediante los vrtices del cubo como una lnea poligonal continua (obsrvese que algunas aristas se dibujan dos veces). El archivo cubo.m define una matriz A cuyas columnas son las coordenadas de los vrtices, y cuyas filas son las coordenadas x, y y z de los mismos: A=[0 1 1 0 0 0 1 0 1 1 0 0 1 1 1 1 0 0; 0 0 1 1 0 0 0 0 0 1 1 0 0 0 1 1 1 1; 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 0];

    Ahora basta ejecutar los comandos siguientes (el trasponer los vectores en este caso es opcional): cubo; plot3(A(1,:)',A(2,:)',A(3,:)'),grid O escribir en el archivo cubo.m: A=[0 1 1 0 0 0 1 0 1 1 0 0 1 1 1 1 0 0; 0 0 1 1 0 0 0 0 0 1 1 0 0 0 1 1 1 1; 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 0]; plot3(A(1,:),A(2,:),A(3,:)),grid

    Dibujo de mallados: funciones meshgrid, mesh y surf Ahora se ver con detalle cmo se puede dibujar una funcin de dos variables (z=f(x,y)) sobre un dominio rectangular. Se ver que tambin se pueden dibujar los elementos de una matriz como funcin de los dos ndices. Sean x e y dos vectores que contienen las coordenadas en una y otra direccin de la retcula (grid) sobre la que se va a dibujar la funcin. Despus hay que crear dos matrices X (cuyas filas son copias de x) e Y (cuyas columnas son copias de y). Estas matrices se crean con la funcin meshgrid. Estas matrices representan respectivamente las coordenadas x e y de todos los puntos de la retcula. La matriz de valores Z se calcula a partir de las matrices de coordenadas X e Y. Finalmente hay que dibujar esta matriz Z con la funcin mesh, cuyos elementos son funcin elemento a elemento de los elementos de X e Y.

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Ejemplo No.7 Se tomar la funcin sen(r)/r (siendo r=sqrt(x2+y2); para evitar dividir por 0 se suma al denominador el nmero pequeo eps). Para distinguirla de la funcin fun1d anterior se utilizar u y v en lugar de x e y. Cree un archivo llamado sombrero.m que contenga las siguientes lneas: u=-8:0.5:8; v=u; [U,V]=meshgrid(u,v); R=sqrt(U.^2+V.^2)+eps; W=sin(R)./R; figure(3); pause(5); mesh(W); pause(5); figure(4),surf(W),

    Ejecutando este archivo se obtiene el grfico mostrado en la siguiente figura.

    Se habr podido comprobar que la funcin mesh dibuja en perspectiva una funcin en base a una retcula de lneas de colores, rodeando cuadrilteros del color de fondo, con eliminacin de lneas ocultas. Ms adelante se ver cmo controlar estos colores que aparecen. Baste decir por ahora que el color depende del valor z de la funcin. Recuerde que cuando ejecut el comando surf(W), las graficas diferan drsticamente, pues en lugar de lneas apareca una superficie faceteada, tambin con eliminacin de lneas ocultas. El color de las facetas depende tambin del valor de la funcin.

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Ejemplo No.8 Como un siguiente ejemplo, se va a dibujar la funcin picos (la correspondiente al archivo fun1d.m vista previamente). Crese ahora el archivo picos.m con las siguientes sentencias: x=[-3:0.2:3]; y=x; [X,Y]=meshgrid(x,y); Z=fun1d(X,Y); figure(1), pause(5),plot3(X,Y,Z),pause(5); figure(2), pause(5),mesh(Z), pause(5), figure(3),surf(Z),pause(5); figure(4), pause(5),subplot(2,2,1), mesh(Z),pause(5); subplot(2,2,2), pause(5),surf(Z),shading flat,pause(5); subplot(2,2,3), pause(5),surf(Z),shading faceted,pause(5); subplot(2,2,4), pause(5),plot3(X,Y,Z),

    Es necesario poner la instruccin pause que espera 5 segundos para que se puedan ver las distintas formas de representar la funcin Z (si no, slo se vera la segunda). Una vez creado este archivo, teclese picos en la lnea de comandos y obsrvese el resultado. Busque en help la definicin de las funciones shading flat, shading faceted y shading interp, y ofrezca sus comentarios al respecto.

    Dibujo de lneas de contorno: funciones contour y contour3

    Una forma distinta de representar funciones tridimensionales es por medio de isolneas o curvas de nivel. Ejemplo No.9 A continuacin se ver cmo se puede utilizar estas representaciones con las matrices de datos Z y W que se han calculado previamente: figure(2); contour(Z,20) contour3(Z,20) contour(W,20) contour3(W,20)

    Donde "20" representa el nmero de lneas de nivel. Si no se pone, entonces se asume un nmero por defecto. Otras posibles formas de estas funciones son las siguientes: contour(Z, val) siendo val un vector de valores para las isolneas a dibujar contour(u,v,W,20) se utilizan u y v para dar valores a los ejes de coordenadas contour(Z,20,r--) se puede especificar el tipo de lnea como en la funcin plot contourf(Z, val) anloga a contour(), pero rellenando el espacio entre lneas.

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    MAPAS DE COLORES

    Un mapa de colores se define como una matriz de tres columnas, cada una de las cuales contiene un valor entre 0 y 1, que representa la intensidad de uno de los colores fundamentales: R (red o rojo), G (green o verde) y B (blue o azul). La longitud por defecto de los mapas de colores de MATLAB es 64, es decir, cada mapa de color contiene 64 colores. Algunos mapas de colores estn predefinidos en MATLAB. Buscando colormap en Helpdesk o doc colormap, se obtiene entre otra informacin la lista de los siguientes mapas de colores: autumn varies smoothly from red, through orange, to yellow. bone is a grayscale colormap with a higher value for the blue component. colorcube contains as many regularly spaced colors in RGB colorspace as possible, while attempting to povide more steps of gray, pure red, pure green, and pure blue. cool consists of colors that are shades of cyan and magenta. copper varies smoothly from black to bright copper. flag consists of the colors red, white, blue, and black. gray returns a linear grayscale colormap. hot varies smoothly from black, through shades of red, orange, and yellow, to white. hsv varies the hue component of the hue-saturation-value color model. The colors begin with red, pass through yellow, green, cyan, blue, magenta, and return to red. jet ranges from blue to red, and passes through the colors cyan, yellow, and orange. It is a variation of the hsv colormap. lines colormap of colors specified by the Axes ColorOrder property and a shade of gray. pink contains pastel shades of pink. prism repeats the six colors red, orange, yellow, green, blue, and violet. spring consists of colors that are shades of magenta and yellow. summer consists of colors that are shades of green and yellow. white is an all white monochrome colormap. winter consists of colors that are shades of blue and green.

    El colormap por defecto es jet. Ejemplo No.10 Para visualizar estos mapas de colores se pueden utilizar los comandos: shg, colormap(hot) pcolor([1:65;1:65])

    Donde la funcin pcolor permite visualizar por medio de colores la magnitud de los elementos de una matriz (en realidad representa colores de celdas, para lo que necesita que la matriz tenga una fila y columna ms de las necesarias; sa es la razn de que en el ejemplo anterior a la funcin pcolor se le pasen 65 filas y 2 columnas). Si se desea imprimir una figura en una impresora lser en blanco y negro, puede utilizarse el mapa de color gray. En el siguiente apartado se explica con ms detalle el dibujo en "pseudocolor" (pcolor, abreviadamente).

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    El comando colormap acta sobre la figura activa, cambiando sus colores. Si no hay ninguna figura activa, sustituye al mapa de color anterior para las siguientes figuras que se vayan a dibujar.

    IMGENES Y GRFICOS EN PSEUDOCOLOR Cuando se desea dibujar una figura con un determinado mapa de colores se establece una correspondencia (o un mapping) entre los valores de la funcin y los colores del mapa de colores. Esto hace que los valores pequeos se dibujen con los colores bajos del mapa, mientras que los valores grandes se dibujan con los colores altos. La funcin pcolor es -en cierta forma- equivalente a la funcin surf con el punto de vista situado perpendicularmente al dibujo. Ejemplo No.11 Un Ejemplo interesante de uso de la funcin pcolor es el siguiente: se genera una matriz A de tamao 100x100 con valores aleatorios entre 0 y 1. La funcin pcolor(A) dibuja en color los elementos de la matriz A, mientras que la funcin pcolor(inv(A)) dibuja los colores correspondientes a los elementos de la matriz inversa. Se puede observar que los colores de la matriz inversa son mucho ms uniformes que los de la matriz original. Los comandos son los siguientes: subplot(2,2,1); A=rand(100,100); colormap(hot); pcolor(A); subplot(2,2,2); pcolor(inv(A));

    Si todava se conservan las matrices Z y W que se han definido previamente, se pueden hacer algunas pruebas cambiando el mapa de colores.

    DIBUJO DE SUPERFICIES FACETEADAS La funcin surf tiene diversas posibilidades referentes a la forma en que son representadas las facetas o polgonos coloreados. Las tres posibilidades son las siguientes: shading flat determina sombreado con color constante para cada polgono. Este sombreado se llama plano o flat. shading interp establece que el sombreado se calcular por interpolacin de colores entre los vrtices de cada faceta. Se llama tambin sombreado de Gouraud shading faceted consiste en sombreado constante con lneas negras superpuestas. Esta es la opcin por defecto

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Ejemplo No.12 Edite el archivo picos.m de forma que aparezcan menos facetas y ms grandes. Se puede probar con ese archivo, eliminando la funcin mesh, los distintos tipos de sombreado o shading que se acaban de citar. Para obtener el efecto deseado, basta poner la sentencia shading a continuacin de la sentencia surf.

    OTRAS FORMAS DE LAS FUNCIONES MESH Y SURF Por defecto, las funciones mesh y surf atribuyen color a los bordes y facetas en funcin de los n valores de la funcin, es decir en funcin de los valores de la matriz Z. sta no es sin embargo la nica posibilidad. Ejemplo No.13 En las siguientes funciones, las dos matrices argumento Z y C tienen el mismo tamao: C=Z mesh(Z,C) surf(Z,C)

    En las figuras resultantes, mientras se dibujan los valores de Z, los colores se obtienen de C. Un caso tpico es aqul en el que se quiere que los colores dependan de la curvatura de la superficie (y no de su valor). MATLAB dispone de la funcin del2, que aproxima la curvatura por diferencias finitas con el promedio de los 4 elementos contiguos, resultando as una matriz proporcional a la curvatura. Ejemplo No.14 Obsrvese el efecto de esta forma de la funcin surf en el siguiente ejemplo (si todava se tiene la matriz Z formada a partir de fun1d, utilcese. Si no se conserva, vulvase a calcular): C=del2(Z); close, figure(1),surf(Z,C) C=gradient(Z); figure(1),surf(Z,C)

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    OTRAS FUNCIONES GRFICAS 3D Las siguientes funciones se derivan directamente de las anteriores, pero aaden algn pequeo detalle y/o funcionalidad: surfc combinacin de surf, y contour en z=0 meshz mesh con plano de referencia en el valor mnimo y una especie de cortina en los bordes del dominio de la funcin surfl para controlar la iluminacin determinando la posicin e intensidad de un foco de luz.

  • Elaborado por: Lic. Flavia Romero Prez, M.Sc.

    Ejercicios Representar las graficas de las siguientes funciones de 2 variables, utilizando alguno de los comandos descritos anteriormente. Dibujar tambin algunas curvas de nivel:

    1. 2y2x9

    1z

    2. xyz

    3. 2y2x3

    )4

    2y2xcos(

    z

    4. 22 yxz