Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Graficando Con Mathematica
Graficando Con Mathematica
nb
Indice:
1. Manejo bsico de Mathematica 2. Grfico de funciones de una variable 3. Grfico de funciones de dos variables 4. Grfico de curvas - en el plano - curvas de nivel - en el espacio 5. Grfico de superficies 6. Grfico de inecuaciones (solo para la versin 5)
El texto que estamos leyendo, es parte de un cuaderno (notebook) de Mathematica. En l se pueden efectuar clculos, realizar grficos de distinto tipo y escribir notas de manera similar a como se hace en un cuaderno con hojas de papel. Los cuadernos estn organizados por celdas. Los lmites de las celdas estn marcados por los corchetes que se ven en el lado derecho de la pantalla. Una celda juega el mismo papel que un prrafo en un texto normal, con la diferencia que cada celda contiene objetos de distinta clase: comandos, clculos producidos por Mathematica, grficos, texto e incluso otras celdas. Cada celda puede tener su propio estilo, tipo de letra, tamao, color, etc... Los cuadernos o notebooks, son archivos que se pueden cargar en memoria para ser modificados. Veamos como se trabaja con una celda que contiene una instruccin que Mathematica pueda leer y ejecutar. Para que la instruccin se ejecute: 1. Colocamos la flecha del mouse dentro de la celda y presionamos el botn izquierdo. 2. Tecleamos Shift y Enter simultneamente (o tecleamos Shift y manteniendo esta tecla pulsada, tecleamos Enter); otra posibilidad es teclear Enter del teclado numrico. Por ejemplo:
In[1]:= Out[1]=
15 4 + 2 13
Observ que la celda que contiene la operacin a calcular, es designada por el programa como In[1]. Esta celda se llama celda de entrada o Input; el nmero que figura entre corchetes indica el nmero de entradas que se ejecutaron. Al resultado de la operacin, el programa lo denomina Out[1]; esta celda se llama celda de salida u Output. Para crear celdas de entrada y evaluarlas: mueva la flecha del mouse hasta que est precisamente debajo de una celda, la flecha cambiar a una lnea horizontal corta. Puls el botn izquierdo del mouse y la lnea se extender hasta cruzar la hoja de lado a lado. Escribir el clculo o instruccin y pulsar Shift+Enter Para modificar un clculo, no es necesario reescribirlo, basta posicionarse en el Input a modificar, cambiar lo que se desee y ejecutar la operacin.
Clculo
!!!! 2 !!! 2
!!!! 2 N 1.41421
Syntax::sntxf : "60 " cannot be followed by "@H12 8L 5D". 860 @H12 8L 5D< 4
More
El ltimo clculo sigue el uso tradicional de los parntesis, corchetes y llaves, pero para Mathematica no tiene significado, por eso marca error de escritura. [ { ] : Se utiliza para delimitar las variables o argumentos de las funciones (en esta misma clase veremos funciones). } : Se utiliza para definir listas de elementos, vectores y matrices.
Espacios
Un espacio entre dos nmeros o variables, siempre se interpreta como una multiplicacin. Hay comandos que contienen ms de una palabra; en ese caso no debe dejarse espacio entre ellas. Por ejemplo: MatrixForm.
Maysculas y minsculas.
Para el programa hay diferencias sustanciales entre las palabras escritas con mayscula y minscula. Se escriben comenzando con mayscula todas las funciones contenidas en el programa y los comandos. Por ejemplo: Abs[x] (mdulo de x), Cos[x] (cos x) son algunos ejemplos de tales funciones.
In[5]:=
cos@D
More
Cos@D 1
1. Mathematica proporciona una descripcin de cualquier funcin o comando, escribiendo el nombre de la instruccin y utilizando los smbolos ? y * como sigue: ?C Dar informacin sobre el comando C.
In[7]:= Plot@f, 8x, xmin, xmax<D generates a plot of f as a function of x from xmin to xmax. Plot@8f1, f2, ... <, 8x, xmin, xmax<D plots several functions fi. More
? Plot
2. Tambin se puede conseguir ayuda eligiendo Help del men principal. El Help, adems de contener la explicacin de todos los comandos, en algunos temas incluye ejemplificacin (Versin 4 y 5 de Mathematica).
El programa permite escribir operaciones, expresiones y smbolos matemticos con la notacin que se utiliza en la escritura tradicional. Ir a File del men principal, y en la opcin Palettes marcar, por ejemplo BasicImput. Aparece una paleta con operaciones y escritura matemtica.
Comando Plot
El comando ms utilizado para graficar en el plano es Plot. La sintaxis bsica es: Plot[f,{x, x min, x max}] : construye el grfico de f en el intervalo [x min, x max]. Plot@8f1 , f2 , ..., f j },{x, x min, x max}] : construye, en un mismo par de ejes, los grficos de las funciones f1 , f2 , ..., f j en el intervalo [x min, x max].
In[8]:=
-2
-1 -1 -2
In[9]:=
PlotA9
3x + 3x 2
3x 3x 2
4 3 2 1
=, 8x, 2, 2<E;
-2
-1 -1 -2
Las opciones de este comando se escriben despus del argumento del mismo y tienen la finalidad de mejorar el aspecto del grfico. La forma general es: Plot[f,{x, x min, x max}, OpcinValor] Las opciones ms utilizadas son:
AspectRatio
En general, Mathematica coloca distintas escalas en los ejes, para mostrar la parte ms significativa del grfico. Pero esto a veces puede llevar a confusin. AspectRatioAutomatic : grafica utilizando la misma escala en ambos ejes
In[10]:=
In[11]:=
AxesLabel
La opcin AxesLabel{"nombre sobre el eje x" ," nombre sobre el eje y"}, permite colocar etiquetas en los ejes.
In[12]:=
PlotStyle
La opcin PlotStyle controla muchos detalles de la apariencia final de un grfico. PlotStyle{Thickness[t]} : da el grosor de la curva. El argumento "t" representa la razn entre el ancho de la lnea y el ancho total del grfico.
In[13]:=
-1 -2 -4
In[14]:=
-1 -2 -4
PlotStyle{RGBColor[a,b,c]} : permite dar color al grfico. Se puede agregar el color deseado, seleccionndolo directamente de una paleta; para lograrlo, dentro del comando Plot posicionamos el cursor inmediatamente despus de " PlotStyle " ; vamos a Input (de la barra de herramientas) y seleccionamos " Color Selector ", aparece una ventana que tiene una paleta de colores. Una vez seleccionado con el mouse un color, se acepta y quedan incorporados dentro de Plot los parmetros del color elegido.
In[15]:=
0.5
1 -0.5
-1
PlotStyle{Dashing[m,n]} : con esta opcin se puede efectuar el grfico en lnea de puntos; su grosor depende de m y n.
In[16]:=
Plot::plnr : Log@x 1D is not a machinesize real number at x = 2.0833333333333333`*^-7. Plot::plnr : Log@x 1D is not a machinesize real number at x = 0.20283495786457897`. Plot::plnr : Log@x 1D is not a machinesize real number at x = 0.4240439992968684`.
Plot@8Log@x 1D, Log@xD<, 8x, 0, 5<, PlotStyle > 8Dashing@80.01, 0.03<D, RGBColor@1, 0, 0D<D;
More
More
More More
1 -2 -4 -6 -8
Observemos que a pesar que Mathematica grafica las funciones pedidas, avisa que hay valores donde se quiere dibujar que no forman parte del dominio de la primer funcin. Podemos combinar la opcin de color, lnea de puntos y grosor.
In[17]:=
Comando Show
Otro comando muy til es el Show. Veamos las posibilidades que brinda. Show[grfico 1, grfico 2, ... ,grfico n] representa en un mismo sistema de ejes, los grficos 1, 2, ... , n, ya existentes.
x Graficamos las funciones f HxL = 1+ x
y gH yL = 1 - y
In[18]:=
h1 = PlotA
-1
0.5
In[19]:=
h2 = PlotA
0.5
-0.4 -0.2
0.2 0.4
-0.5
-1
In[20]:=
0.5
-1
-0.5
0.5
-0.5
-1
La opcin DisplayFunctionIdentity, no muestre el grfico en pantalla, aunque internamente la construye. La opcin DisplayFunction$DisplayFunction, deja ver el grfico que mantuvimos oculto con la opcin anterior.
In[21]:=
gr1 = Plot@x2 , 8x, 2, 2<, PlotStyle > RGBColor@1, 0, 0D, DisplayFunction > IdentityD ; gr2 = Plot@x3 , 8x, 2, 2<, DisplayFunction > IdentityD ; Show@gr1, gr2, DisplayFunction > $DisplayFunctionD ;
1.5 1 0.5
-2
-1 -0.5
El comando Show es tambin una alternativa sencilla para graficar funciones partidas. x + 1 si x 0 Grafiquemos: f HxL = 9 - x2 si x > 0
In[22]:=
-2
-1 -1
-2
-3
Comando Plot3D
Plot3D[f(x,y), {x, x min, x max},{y, y min, y max}] : grafica z = f(x,y) Este comando figura en el Palette BasicCalculations - Graphics.
In[23]:=
10
In[24]:=
1 0.5 0 -0.5 -1 0 -2 0 2 -5 5
De la misma forma que ocurre con el grfico de funciones en el plano, cuando el comando Plot3D encuentra valores de las variables fuera del dominio natural de la funcin, estos son simplemente ignorados, pero el programa avisa que la funcin toma valores no reales en algunos puntos; de ah que no pueda graficarlos.
!!!!!!!!!!!!!!!! !!!!!
at grid point xi = 1, yi = 2 is not a real number. at grid point xi = 1, yi = 3 is not a real number.
More
Axes
Los grficos tridimensionales, por defecto, siempre incluye la escala en los ejes. AxesFalse elimina la escala en los ejes.
11
In[26]:=
In[27]:=
AxesLabel
AxesLabel{n1, n2, n3} rotula los ejes x, y, z respectivamente.
In[28]:=
Boxed
BoxedFalse elimina el paraleleppedo, que por defecto, limita todo grfico tridimensional
12
In[29]:=
In[30]:=
In[31]:=
Plot3D@x3 3 x y2 , 8x, 1, 1<, 8y, 1, 1<, Boxed > False, Axes > FalseD;
BoxRatios
As como lo mencionamos para funciones en el plano, tambin en el espacio, el grfico que Mathematica produce, tiene por defecto diferentes escalas en los tres ejes. BoxRatiosAutomatic muestra el grfico tal como es en la realidad.
13
In[32]:=
0 -0.5 -1 1 2
0.5
-1
-2
PlotPoints
As como el grfico dado por Mathematica de una funcin de una variable, es una sucesin de segmentos unidos de manera tal que se visualiza como una curva suave, la superficie que se obtiene al graficar una funcin de dos variables, es una aproximacin del grfico verdadero. PlotPointsn hace que el programa evale la funcin f(x,y) en n2 puntos donde realizar el grfico Cuanto ms grande sea el valor de n, se obtendr una versin ms suavizada del grfico. El valor de n por defecto es 15. Si el valor de n es muy grande tarda ms tiempo en producir el grfico.
In[33]:=
Plot3D@x3 3 x y2 , 8x, 1, 1<, 8y, 1, 1<, BoxRatios > Automatic, PlotPoints > 8D;
-1 1 -0.5 0.5 0
0 -0.5 -1 1 2
0.5
-1
-2
14
In[34]:=
0 -0.5 -1 1 2
0.5
-1
-2
In[35]:=
1 0.5 0 -0.5 -1 0 -2 0 2 -5 5
Mesh
El programa, por defecto, efecta el grfico con una malla que cubre la superficie, con la finalidad de ayudar a la visualizacin. MeshFalse eliminar la malla del grfico.
15
In[37]:=
0 -0.5 -1 1 2
0.5
-1
-2
ViewPoint
Esta opcin permite elegir el punto del espacio desde el que se quiere ver el grfico. Existe la posibilidad de elegir interactivamente las coordenadas de dicho punto de vista. Para lograrlo, posicionamos el cursor en la lnea del comando Plot3D donde deseamos insertar la opcin ViewPoint. Vamos a Input (de la barra de herramientas) y seleccionamos " 3D ViewPoint Selector ". Aparece una ventana, que tiene el dibujo de los ejes en la posicin actual. Para modificar la posicin de los ejes, llevamos el mouse a la derecha y a la parte de abajo del dibujo y arrastramos el mouse con el botn izquierdo apretado hasta llegar a la posicin deseada. Hacemos un click en 'Paste', y la opcin ViewPoint {a,b,c} ser pegada en el comando Plot3D en donde habamos dejado el cursor.
In[38]:=
Plot3D@x3 3 x y2 , 8x, 1, 1<, 8y, 1, 1<, BoxRatios > Automatic, ViewPoint > 82.560, 0.940, 1.370<, AxesLabel > 8x, y, z<D;
1 2 0.5 0 x -0.5 -0 -1 -
-1
-2 -1 -0.5 0 y 0.5 0 5 1
<< RealTime3D`
16
In[40]:=
17
Se muestran 3 vistas distintas del grfico, movindolo con el mouse. Observacin: - Cuando se utiliza esta opcin, los ejes dejan de estar rotulados. - En una sesin de trabajo, si en uno de los grficos se utiliza esta opcin, de ah en adelante, todos los grficos en 3D estarn afectados por la opcin (sin necesidad de indicarlo). Para desactivar esta opcin hay que colocar <<Default3D` - En los grficos que incluyen puntos que no estn en el dominio, el grfico aparece totalmente distorsionado; no dando ningn indicio de como es en realidad. Se sugiere no utilizarlo.
In[41]:=
<< Default3D`
4. Grfico de curvas
En el plano
Ya hemos visto como graficar funciones de una variable utilizando el comando Plot. En muchos casos, las curvas de inters no estn definidas en forma explcita.
Graphics[ {directivas , primitivas}, opciones] representa puntos, lneas y polgonos. Para ver el grfico debemos combinarlo con el comando Show. Directivas: Indica el aspecto del grfico. Por ejemplo: color (RGB), grosor (PointSize, para puntos y Tickness, para lneas) y lnea de puntos (Dashing). Primitivas: - Point[{x,y}] (corresponde a un punto) - Line[{8x1 , y1 <, ... .., 8xn , yn }}] (corresponde a una lnea, que pasa por los puntos indicados) - Polygon [{8x1 , y1 <, ... .., 8xn , yn }}] (corresponde a un polgono relleno cuyos vrtices son los puntos de la lista} Opciones: Corresponden a la vista general del dibujo. Por ejemplo: AspectRatio, Axes y AxesOrigin. 1. Graficamos un punto
In[42]:=
Para este mismo grfico, le damos grosor al punto, color y pedimos que agregue los ejes.
18
In[43]:=
In[45]:=
p4 = Graphics@8Thickness@0.017D, RGBColor@0.996109, 0.441413, 0.175784D, Line@881, 2<, 81, 4<, 82, 3<, 81, 2<<D<D ; Show@p4D ;
p5 = Graphics@8RGBColor@0, 0.996109, 0.250004D, Polygon@881, 2<, 81, 4<, 82, 3<<D<D ; Show@p5D ;
19
In[47]:=
Los comandos para realizar grficos de curvas en coordenadas paramtricas son: ParametricPlot[{x(t),y(t)},{t, t min, t max}]: realiza el grfico de una curva en coordenadas paramtricas. ParametricPlot[{x(t),y(t)},{t, t min, t max},AspectRatio->Automatic] : considera la misma unidad en ambos ejes. ParametricPlot[{{x1 (t),y1 (t)},{x2 (t),y2 (t)},......},{t, t min, t max}] : representa varias curvas en un mismo grfico.
1. Circunferencia
Graficamos la circunferencia x2 + y2 = 9 La ecuacin paramtrica es : x = 3 cos t , y = 3 sen t
In[48]:=
con t e @0 , 2 pD
-3
-2
-1
-1
-2
-3
La opcin AspectRatio Automatic, realiza el grfico tal cual es Graficamos la circunferencia Hx - 2L2 + Hy + 1L2 = 9 La ecuacin paramtrica es : x = 2 + 3 cos t , y = - 1 + 3 sen t con t e @0 , 2 pD
20
In[49]:=
-1
-1
-2
-3
-4
Efectuamos las dos circunferencias en un mismo grfico, dibujando en lnea de puntos los ejes de la circunferencia de centro (2, - 1).
In[50]:=
c00 = ParametricPlot@83 Cos@tD, 3 Sin@tD<, 8t, 0, 2 <, AspectRatio > Automatic, DisplayFunction IdentityD; c11 = ParametricPlot@82 + 3 Cos@tD, 1 + 3 Sin@tD<, 8t, 0, 2 <, AspectRatio > Automatic, PlotStyle RGBColor@0.996109, 0, 0.500008D, DisplayFunction IdentityD; r1 = ParametricPlot@82, t<, 8t, 4.5, 2.3<, AspectRatio > Automatic, PlotStyle > Dashing@80.03<D, DisplayFunction IdentityD; r2 = ParametricPlot@8t, 1<, 8t, 1.5, 5.5<, AspectRatio > Automatic, PlotStyle > Dashing@80.03<D, DisplayFunction IdentityD; Show@c00, c11, r1, r2, AxesLabel > 8x, y<, DisplayFunction $DisplayFunctionD;
y 3 2 1 x
-2 -1 -2 -3 -4
2. Elipse
2
H y-4L Hx-3L + = 1 4 9
2
con t e @0 , 2 pD.
21
In[55]:= 7
3. Parbola
x = 2 y2 - y + 4. La ecuacin paramtrica es: x = 2 t2 - t + 4 , y = t
In[56]:= 4
10 -2
20
30
40
-4 In[57]:=
4. Hiprbola
Hx+1L2 9
La parametrizacin debe hacerse para cada rama: una rama: x = 1 + 3 ch t , y = 2 + 2 sh t la otra rama: x = - 1 - 3 ch t , y = 2 + 2 sh t con t un nmero real
Hy-2L2 4
=1
22
In[58]:=
-2 -4 -6
Realicemos un grfico que contenga: los nuevos ejes ( x = -1, y =2 ), las asntotas ( y = = 2 3 Hx + 1L + 2 ) y los focos !!!!!! !!!!!! ( ( 1 + 13 , 2) , ( 1 13 , 2) ).
In[59]:=
2 3
Hx + 1L + 2 ; y
8PointSize@0.017D, RGBColor@0, 0, 0.996109D<, DisplayFunction IdentityE; 2 asint1 = PlotA Hx + 1L + 2, 8x, 10, 10<, PlotStyle > Dashing@80.03<D, 3 2 DisplayFunction IdentityE; asint2 = PlotA Hx + 1L + 2, 8x, 11, 10<, 3 PlotStyle > Dashing@80.03<D, DisplayFunction IdentityE;
hip = ParametricPlot@88 1 + 3 Cosh@tD, 2 + 2 Sinh@tD<, 8 1 3 Cosh@tD, 2 + 2 Sinh@tD<<, 8t, 2, 2<, DisplayFunction IdentityD; eje1 = ParametricPlot@8 1, t<, 8t, 6, 9<, PlotStyle > RGBColor@0, 0.500008, 0.750011D, DisplayFunction IdentityD; eje2 = ParametricPlot@8t, 2<, 8t, 12, 10<, PlotStyle > RGBColor@0, 0.500008, 0.750011D, DisplayFunction IdentityD; !!!!!! !!!!!! focos = ListPlotA99 1 + 13 , 2=, 9 1 13 , 2==, PlotStyle >
Show@8hip, eje1, eje2, focos, asint1, asint2<, DisplayFunction $DisplayFunction, AxesLabel > 8x, y<, AspectRatio > AutomaticD;
y
23
In[65]:=
0.5
-1
-0.5
0.5
-0.5
-1
Cos@tD 1+HSin@tDL2
,y=
24
In[66]:=
ParametricPlotA99
8t, 0, 2 <, PlotStyle > 8RGBColor@0, 0, 0.996109D, RGBColor@0.996109, 0.605478, 0.214847D<, AspectRatio > AutomaticE;
1
=,
0.5
-1
-0.5
0.5
-0.5
-1
Paquetes
Mathematica es una aplicacin escrita en lenguaje C. Sin embargo, posee un lenguaje con el que se pueden crear a su vez nuevos procedimientos o programas. Un archivo que contenga definiciones escritas en el propio lenguaje de Mathematica se denomina paquete. Para utilizar las funciones contenidas en l, es necesario previamente cargarlo, lo hacemos del siguiente modo: <<Contexto`Nombre Del Paquete` donde Contexto es el nombre del directorio o carpeta que contiene al paquete. Para evitar problemas con los paquetes, es recomendable cargarlos al comienzo de la sesin, ya que, pueden producirse conflictos entre las funciones definidas por el usuario a lo largo de la misma y las que define el paquete al ser cargado en memoria. Para investigar cuales son los paquetes y sus contenidos, vamos al Help, all marcamos Add-ons y luego StandardPackages; aparecen varios ttulos como Algebra, Calculus,......; esos son los distintos directorios.
Cuando la curva est dada en coordenadas polares, hay que cargar el paquete Graphics`Graphics`. Los comandos son: PolarPlot[r(t), {t, t min, t max}] : genera un grfico polar de radio r, en funcin del ngulo t , para valores de t variando entre t min y t max. PolarPlot[{r1(t), r2(t),....},{t, t min, t max}] : representa en un mismo grfico varias curvas, para el ngulo t en el intervalo de t min hasta t max.
<< Graphics`Graphics`
25
In[68]:=
-2
-1
-1
-2
a 3. Dada la ecuacin r = de la espiral hiperblica, realizamos en un mismo grfico las t espirales para a = 2 y a = - 2.
26
In[70]:=
-1.5
-1
-0.5
0.5
1.5
-1
-2
Cuando la curva est dada en forma implcita, hay que cargar el paquete Graphics`ImplicitPlot`. Los comandos son: ImplicitPlot[ecuacin, {x, x min, x max}] : dibuja la curva dada por la 'ecuacin', para x variando en un intervalo. ImplicitPlot[ecuacin, {x, x min, x max}, {y, y min, y max}]: dibuja la curva, en los intervalos de variacin de x e y. ImplicitPlot[{ecuacin 1,ecuacin 2,.....}, rangos, opciones]: dibuja las curvas dadas por las distintas ecuaciones, en los rangos especificados para las variables y con las opciones indicadas.
1. Graficamos la hiprbola
In[71]:= In[72]:=
Hx+1L2 9
Hy2L2 4
=1
Hy 2L2 4
-10
-5 -2 -4
10
27
In[73]:=
ImplicitPlotA9
1,
2 3
Hx + 1L + 2
y,
2 3
Hx + 1L + 2
y=,
8 6 4 2 -10 -5 -2 -4 5 10
3. Dada la ecuacin de los valos de Cassini Hx2 + y2 + a2 L2 - b4 - 4 a2 x2 = 0 , dibujemos en un mismo grfico dos de estas curvas.
In[75]:=
-3
ImplicitPlotA9Hx2 + y2 + 1L 1 4 x2
2
0, Hx2 + y2 + 1L 1.2 4 x2
2
-1.5
-1
-0.5
-0.2 -0.4
0.5
1.5
Curvas de nivel
Recordemos que si f : U R2 R , la curva de nivel 'c', es el conjunto 8x U f HxL = c< (c es un nmero real). ContourPlot[f(x,y) , {x , x min, x max}, {y , y min, y max}] produce un grfico sombreado de las curvas de nivel de f(x,y) como funcin de x e y. El sombreado es ms oscuro si corresponde a zonas bajas y ms claro si corresponde a zonas altas de la superficie; si se quiere suprimir dicho sombreado, debemos utilizar la opcin ContourShadingFalse . El programa graficar, por defecto, 10 curvas de nivel. Para cambiar este nmero utilizamos la opcin Contours{n} (n cantidad de curvas de nivel). Si se quiere dibujar algunas curvas de nivel particulares, con Contours{z1 , z2 , ...} se obtendrn las curvas de nivel z1 , z2 , ... . Sea f Hx, yL = cos HxyL
28
In[76]:=
-1
-2
-3
In[78]:= 3
-3
-2
-1
-1
-2
-3 -3 -2 -1 0 1 2 3
29
In[79]:=
-1
-2
-3
In[80]:=
ContourPlot@Cos@x yD, 8x, 3, 3<, 8y, 3, 3<, ContourShading > False, Contours > 80.3, 0.6<D;
3
-3
-2
-1
-1
-2
-3 -3 -2 -1 0 1 2 3
Un uso interesante que podemos darle al comando ContourPlot, es el de graficar una funcin definida por la ecuacin f(x,y) = c. Por ejemplo, sea la curva definida por 3 y4 + 2 x y2 + x2 = 9. Tomando Contours{9}, forzamos a graficar la curva pedida.
30
In[81]:=
-2
-4 -4 -2 0 2 4
Curvas en el espacio
ParametricPlot3D[{x(t),y(t),z(t)},{t, t min, t max}]: grafica una curva en el espacio, dada en coordenadas paramtricas.
y- 3 x+ 1 z 1. Sea la recta = = . Las ecuaciones paramtricas son Hx, y, zL = t H- 2, 5, - 3L + H- 1, 3, 0L -2 5 -3
In[82]:=
5 0 z -5 -10 -5 x 0
Como no se ve la recta, cambiamos el punto de vista y el color. Aclaracin: la posibilidad de agregar color en el comando ParametricPlot3D, es para la versin 5.
31
In[83]:=
ParametricPlot3D@8HCos@tDL2 , Sin@tD Cos@tD, Sin@tD<, 8t, 2 , 2 <, AxesLabel > 8x, y, z<D;
x 0 0.5 y 0.25 0.25 0.5 0.75 0 1 -0.25 -0.5 .5 1
0.5
-0.5 -1
ParametricPlot3D@88Cos@tD, Sin@tD, 0, RGBColor@0.996109, 0, 0.500008D<, 8Cos@tD, Sin@tD, 4 Sin@tD Cos@tD, RGBColor@0, 0, 0.996109D<<, 8t, 0, 3 <D;
0.5 0 -1 1 -0.5 0 0.5
-0.5 -1 2
-1
-2
32
In[86]:=
6 4 2 0
In[87]:=
1 0 0 -0 -1
3. El prximo grfico corresponde a una curva helicoidal sobre una espiral logartmica.
33
In[88]:=
15 10 5 0 -10 0 10 20 -10 0 10
5. Grfico de superficies
Ya vimos la representacin de superficies que se definen por medio de una relacin funcional. Graficaremos ahora las superficies parametrizables o localmente parametrizables. ParametricPlot3D[{x(u,v), y(u,v), z(u,v)}, {u, u min, u max},{v, v min, v max}]: usando una parametrizacin de la superficie 1. Una parametrizacin de la esfera es: x = a + r cosu sen v , y = b + r sen u sen v , z = c + r cos v con 0 u 2 p , 0 v p . El centro es (a,b,c) y el radio r. Realizamos en un mismo grfico, un sector de las esferas de radio 1 y 2.
In[89]:=
ParametricPlot3DA88Cos@uD Sin@vD, Sin@uD Sin@vD, Cos@vD<, 3 2 8Cos@uD Sin@vD, Sin@uD Sin@vD, Cos@vD<<, 9u, 0, =, 8v, 0, <E; 2
2 1 0 -1 -2 2
1 0 -1 -2 -2 -1 0 1 2
2. Una paremitrizacin del elipsoide es: x = a + a1 cosu sen v , y = b + b1 sen u sen v , z = c + c1 cos v con 0 u 2 p , 0 v p . El centro es (a,b,c). y2 Hx-1L2 + + Hz + 2L2 = 1 Realizamos el grfico de 4 9
34
In[90]:=
-1 -1.5 -2 -2.5 -3 -1 0 1 2 3 -2 0
3. En la ecuacin cannica del elipsoide si: - uno slo de los sumandos es negativo, entonces es un hiperboloide de una hoja. - dos de los sumandos son negativos, entonces es un hiperboloide de dos hojas.
z Por lo tanto la ecuacin x2 + - = 1 corresponde a un hiperboloide de una hoja. 9 5 !!! Una parametrizacin es: x = cos v ch u , y = 3 sen v ch u , z = 5 sh u con 0v2p , u un real. y2
2
In[91]:=
ParametricPlot3DA9Cos@vD Cosh@uD, 3 Sin@vD Cosh@uD, 8u, 2, 2<, 8v, 0, 2 <, AxesLabel > 8x, y, z<E;
10 5 y -5 -10 10 0
!!!! 5 Sinh@uD=,
5 z
0 -5
-2 x
2
35
In[92]:=
Cos@vD Sinh@uD, Cosh@uD, Sin@vD Sinh@uD=, 2 8u, 2, 2<, 8v, 0, 2 <, AxesLabel > 8x, y, z<E; 1
y 2 1 x 0 1
ParametricPlot3DA9
-1
-2
Pero no representa toda la superficie. De la misma manera que sucedi con la hiprbola, al considerar un sla parametrizacin, no se ha tenido en cuenta que el signo de y es positivo o negativo, mientras que ch u es siempre positivo, por lo tanto 1 cos v sh u , y = - ch u , z = sen v sh u , v un ngulo, u un para obtener la otra rama debemos considerar tambin x = 2 nmero real.
In[93]:=
ParametricPlot3DA99 9 1
1 2
Cos@vD Sinh@uD, Cosh@uD, Sin@vD Sinh@uD==, 8u, 2, 2<, 2 8v, 0, 2 <, AxesLabel > 8x, y, z<, ViewPoint > 83.310, 1.132, 0.100<E;
y -2 0 2
-2
y 4. La ecuacin Hx - 2L2 + = z corresponde a un paraboloide elptico. Una parametrizacin es: 9 con 0 v 2p , u un real. x = u cos v + 2 , y = 3 u sen v , z = u2
2
-1 10 x
36
In[94]:=
10 z 5
0 -10 0 y 10
Otra parametrizacin se obtiene, pensando a z = f(x,y). v2 , siendo u y v nmeros reales. Es decir: x = u , y = v , z = Hu - 2L2 + 9
In[95]:=
ParametricPlot3DA9u , v, Hu 2L2 +
=, 8u, 4, 8<, 8v, 15, 15<, 9 AxesLabel > 8x, y, z<, ViewPoint > 83.310, 1.132, 1.240<E; v2
-10 60
y 0
10
40 z 20
0 5 x
5. La ecuacin - Hx - 2L2 + y2 = z corresponde a un paraboloide hiperblico. Una parametrizacin, pensando a z = f(x,y), es: x = u , y = v , z = - Hu - 2L2 + y2 siendo u y v nmeros reales.
37
In[96]:=
y 0 -2 2
-5
x 6. La ecuacin + Hz - 2L2 = y2 representa un cono con eje paralelo al eje y. 4 Una parametrizacin es x = 2 u cos v , y = u , z = u sen v + 2 con 0 v 2 p , u un nmero real.
2
In[97]:=
ParametricPlot3D@82 u Cos@vD, u , u Sin@vD + 2<, 8u, 3, 3<, 8v, 0, 2 <, AxesLabel > 8x, y, z<, ViewPoint > 83.630, 0.992, 1.131<D;
-5 5
0 5 -2 0 y
7.Vamos a grafica ahora dos superficies cilndricas; x2 7.1. El conjunto de puntos del espacio que verifica + y2 = 1 representa un cilindro elptico (su curva generatriz es una 9 elipse), una parametrizacin es: x = 3 cos v , y = sen v , z = u con 0 v 2 p, u un nmero real.
38
In[98]:=
y 1 0.5 0 -0.5 -1 1
-2
7.2. El conjunto de puntos del espacio que verifica y = 2 sen x, representa un cilindro cuya curva generatriz es la funcin seno. Una parametrizacin es x = v , y = 2 sen v , z = u con v un ngulo, u un nmero real.
In[99]:=
ParametricPlot3D@8v, 2 Sin@vD, u<, 8u, 2, 2<, 8v, 0, 2 <, AxesLabel > 8x, y, z<D;
2 1 z 0 -1 -2 0 2 x 4 6 In[100]:= -2 -1 0 2 1 y
ParametricPlot3D@8v, 2 Sin@vD, u<, 8u, 2, 2<, 8v, 0, 4 <, AxesLabel > 8x, y, z<D;
2 1 0 5 x 10 0 -1 -2 1 0 -1 -2 2 y z
2. Dibujamos una superficie en ocho, que posee una autointerseccin (singularidad en el origen), que es ignorada por el programa.
39
In[101]:=
ParametricPlot3D@8Cos@uD Sin@2 vD, Sin@uD Sin@2 vD, Sin@vD<, 8u, 0, 2 <, 8v, 0, 2 <, AxesLabel > 8"x", "y", "z"<D;
y 0 -0.5 -1 1 1 0.5
0.5 z 0
ParametricPlot3D@ 8H8 + 3 Cos@vDL Cos@uD, H8 + 3 Cos@vDL Sin@uD, 7 Sin@vD<, 8u, 0, 2 <, 8v, 0, 2 <D;
ParametricPlot3DA
3 2
=, 8v, 0, 2 <E;
5 0 10 -5 -10 -5 0 5 10 -10 -5 0 5
40
In[104]:=
ParametricPlot3DA
3 2
=E;
-5 10 7.5 5 2.5 0
6. Veamos un ejemplo de superficie con un punto de pinzamiento: el caso del paraguas de Whitney
In[105]:=
4 3 2 1 0 2 0 5 -2 0
-5
7. El programa tambin realiza el grfico de superficies no orientables, como la botella de Klein (puede definirse como la superficie que resulta de la rotacin de la curva figura de ocho alrededor de un eje, al tiempo que dicha curva realiza un giro sobre su punto medio mientras describe la rotacin anterior).
41
In[106]:=
u 2 u 2
E Sin@vD SinA
E Sin@vD SinA
u 2
E Sin@vD + CosA
u 2
E Sin@2 vD=,
<<Graphics`InequalityGraphics`
In[108]:=
-2
-1
-1
-2 In[109]:=
42
In[110]:=
In[111]:=
<< RealTime3D` InequalityPlot3D@ x2 + z2 4 && y2 + z2 4, 8x, 5, 5<, 8y, 5, 5<, 8z, 5, 5<D;
In[112]:=
<< RealTime3D` InequalityPlot3D@ Abs@ x y zD 2 && x2 + y2 + z2 < 9, 8x, 4, 4<, 8y, 4, 4<, 8z, 4, 4<D;