Sunteți pe pagina 1din 15

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:
1.11 Horario:
1.12 Fecha:

2M1_Eo
Mircoles 7:00 a.m. a 10:25 a.m.
Jueves 7:00 a.m. a 8:40 a.m.
9 y 10 de julio de 2014

2M3_Eo
Mircoles 10:30 a.m. a 12:10 p.m.
Jueves 8:45 a.m. a 10:25 p.m.
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:
1
z f(x, y)
2
1 x y 2
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
2
2
2
2
2
2
x
1
z 3(1 x) 2 x ( y 1) 10( x 3 y5 ) x y (x 1) y
5
3

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.

1
9 x 2 y2

2. z xy
x 2 y2
)
4
3 x 2 y2

cos(

3.

4.

2
2
z x y

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

S-ar putea să vă placă și