la fórmula secreta de la coca cola -...
TRANSCRIPT
La fórmula secreta
de la Coca Cola
por José Luis Gómez Muñoz
http://www.globalcomputing.com.mx/
Graficando y modificando funciones
Los siguientes comandos sirven para para definir una función f HxL = x2, graficándola de 0 a 1
In[1]:=
f@x_D := x2;Plot@f@xD, 8x, 0, 1<D
Out[2]=
0.2 0.4 0.6 0.8 1.0
0.2
0.4
0.6
0.8
1.0
Para que el eje horizontal y el vertical tengan la misma escala, debemos añadir la opción:
AspectRatioÆAutomatic
adentro del comando Plot:
In[3]:=
f@x_D := x2;Plot@f@xD, 8x, 0, 1<,AspectRatio → AutomaticD
Out[4]=
0.2 0.4 0.6 0.8 1.0
0.2
0.4
0.6
0.8
1.0
2 CocaColaPiecewiseTextureExport.nb
Aquí cambiamos un poco la función subiéndola 0.5 unidades, y además ponemos la opción
AxesOriginÆ{0,0}
La cual forza a Mathematica a dibujar los ejes cruzándose en el origen, que es lo que usualmente
hacemos en un dibujo a mano:
In[5]:=
f@x_D := 0.5 + x2;
Plot@f@xD, 8x, 0, 1<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[6]=
0.2 0.4 0.6 0.8 1.0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
CocaColaPiecewiseTextureExport.nb 3
Cambiamos un signo en la función, haciendo que abra hacia abajo:
In[7]:=
f@x_D := 0.5 − x2;
Plot@f@xD, 8x, 0, 1<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[8]=
0.2 0.4 0.6 0.8 1.0
-0.4
-0.2
0.2
0.4
4 CocaColaPiecewiseTextureExport.nb
Volvemos a cambiar la función, moviéndola 0.4 unidades a la derecha:
In[9]:=
f@x_D := 0.5 − Hx − 0.4L2;Plot@f@xD, 8x, 0, 1<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[10]=
0.2 0.4 0.6 0.8 1.0
0.1
0.2
0.3
0.4
0.5
Ahora hacemos que la variación en alturas sea menor multiplicando por 0.3:
In[11]:=
f@x_D := 0.5 − 0.3 Hx − 0.4L2;Plot@f@xD, 8x, 0, 1<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[12]=
0.2 0.4 0.6 0.8 1.0
0.1
0.2
0.3
0.4
0.5
CocaColaPiecewiseTextureExport.nb 5
Ahora graficamos de 0 a 2:
In[13]:=
f@x_D := 0.5 − 0.3 Hx − 0.4L2;Plot@f@xD, 8x, 0, 2<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[14]=
0.5 1.0 1.5 2.0
-0.2
-0.1
0.1
0.2
0.3
0.4
0.5
Superficies de Revolución
Los siguientes comandos sirven para para definir la función g HxL = x2, graficandola de 0 a 0.5
In[15]:=
g@x_D := x2;Plot@g@xD, 8x, 0, 0.5<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[16]=
0.1 0.2 0.3 0.4 0.5
0.05
0.10
0.15
0.20
0.25
6 CocaColaPiecewiseTextureExport.nb
A continuación usamos la función g (que fue definida arriba) para graficar la ecuación x = y2
In[17]:=
ParametricPlot@8g@yD, y<, 8y, 0, 0.5<D
Out[17]=
0.05 0.10 0.15 0.20 0.25
0.1
0.2
0.3
0.4
0.5
CocaColaPiecewiseTextureExport.nb 7
Reemplaza "ParametricPlot" con "RevolutionPlot3D" y se obtiene la superficie generada por la
rotación de la curva x = y2 alrededor del eje y:
In[18]:=RevolutionPlot3D@8g@yD, y<, 8y, 0, 0.5<D
Out[18]=
8 CocaColaPiecewiseTextureExport.nb
Una pieza de ajedrez
Supón que queremos fabricar un juego de ajedrez. Por ejemplo para crear un peón se puede generar
al girar la siguiente función alrededor del eje. Aquí x y f(x) están dadas en centímetros:
f(x)=
1- x2
0 § x § 1
12
1 < x § 3
34- Ix- 7
2M2 3 < x § 4
Primero definimos la función peon(x) usando el comando Piecewise, y la graficamos:
In[19]:=
peon@x_D := PiecewiseB:
:1 −x
2, 0 < x < 1>,
: 12, 1 < x < 3>,
: 34
− x −7
2
2
, 3 < x < 4>
>F;Plot@peon@xD, 8x, 0, 4<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[20]=
1 2 3 4
0.2
0.4
0.6
0.8
1.0
CocaColaPiecewiseTextureExport.nb 9
Usamos la función peon(x) (que fue creada en el comando anterior) y el comando ParametricPlot para
graficar la ecuación x=peon(y)
In[21]:=ParametricPlot@8peon@yD, y<, 8y, 0, 4<, PlotRange → AllD
Out[21]=
0.2 0.4 0.6 0.8 1.0
1
2
3
4
10 CocaColaPiecewiseTextureExport.nb
Reemplaza "ParametricPlot" con "RevolutionPlot3D" y se obtiene la superficie generada por la
rotación de la curva x = peon HyL alrededor del eje y
In[22]:=RevolutionPlot3D@8peon@yD, y<, 8y, 0, 4<, PlotRange → AllD
Out[22]=
CocaColaPiecewiseTextureExport.nb 11
Con la opción MeshØNone se puede obtener la superficie sin la malla:
In[23]:=
RevolutionPlot3D@8peon@yD, y<, 8y, 0, 4.05<,PlotRange → All, Mesh → NoneD
Out[23]=
12 CocaColaPiecewiseTextureExport.nb
Imagen en la superficie
El comando FileNames permite mostrar las imágenes JPG que están en el folder "Mis documentos" de
esta computadora.
El resultado de este comando será diferente en tu computadora.
Si obtienes como resultado una lista vacía, obtén una imagen JPG de internet y guárdala en la carpeta
(folder) donde Mathematica busca archivos (Usualmente es "Mis documentos" si tu computadora usa
Windows)
In[24]:=FileNames@"∗.jpg"D
Out[24]=8ambassadors.jpg, lennablue.jpg, lenna.jpg<
Selecciona una de las imágenes JPG que aparecieron en tu computadora, y guárdala en la variable
imagen, como se muestra abajo:
In[25]:=
imagen = Import@"ambassadors.jpg"D
Out[25]=
CocaColaPiecewiseTextureExport.nb 13
A continuación la imagen alrededor del peón. La función peon[y] fue definida más arriba en este
documento, y la imagen fue guardada en imagen en el comando anterior (EN MATHEMATICA
PUEDES GIRAR LA IMAGEN EN 3D CON EL RATÓN). La figura tridimensional se guarda en la
variable peonsolido, como se muestra abajo:
In[26]:=peonsolido = RevolutionPlot3D@8peon@yD, y<, 8y, 0, 4.05<,
Mesh → None, PlotStyle → Texture@imagenDD
Out[26]=
14 CocaColaPiecewiseTextureExport.nb
Volumen de la pieza de ajedrez
La siguiente fórmula permite calcular el volumen de un sólido de revolución:
volumen=Ÿyiniyend
p ◊ Hf @yDL2 „ y
A continuación se usa el comando NIntegrate para calcular el volumen del peón:
In[27]:=
NIntegrateAπ ∗ Hpeon@yDL2, 8y, 0, 4<EOut[27]=
4.81711
Este número significa que, si el peón va a ser fabricado de plata, contendrá 4.8 centímet-
ros cúbicos de plata. Si tenemos el costo de un centímetro cúbico de plata, podemos
multiplicarlo por 4.8 para conocer el costo del material necesario para fabricar este peón.
Exportando la figura final
A continuación se guarda el dibujo del perfil del peón en la variable peonplano:
In[28]:=
peonplano = Plot@peon@xD, 8x, 0, 4<,AspectRatio → Automatic,
AxesOrigin → 80, 0<D
Out[28]=
1 2 3 4
0.2
0.4
0.6
0.8
1.0
CocaColaPiecewiseTextureExport.nb 15
A continuación se juntan la figura tridimensional peonsolido, la figura peonplano y la función peon[x] (las
tres fueron definidas más arriba) en una figura llamada final, la cual será exportada más abajo en un
archivo JPG. En la etiqueta PlotLabel pon tú número de estudiante (matrícula), como se
muestra abajo:
In[29]:=final = GraphicsGrid@
88 peon@xD, peonsolido <,8 peonplano, SpanFromAbove<
<,Frame → All,
PlotLabel → "ESTUDIANTE: A00123456",
ImageSize → LargeD
Out[29]=
Abajo exportamos la figura llamada final, que fue definida arriba, que contiene el peón y su función, y
que tiene en la etiqueta tú número de matrícula en un archivo JPG:
16 CocaColaPiecewiseTextureExport.nb
In[30]:=
Export@"peon.jpg", final,
ImageSize → LargeDOut[30]=
peon.jpg
El comando FileNames[“*.jpg”] muestra la lista de archivos JPG en el directorio (carpeta, folder)
donde Mathematica busca y guarda archivos. Este directorio suele ser “Mis Documentos” en
Windows. La lista de archivos JPG puede ser diferente en tu computadora de la lista que se muestra
abajo:
In[31]:=
FileNames@"∗.jpg"DOut[31]=
8ambassadors.jpg, lennablue.jpg, lenna.jpg, peon.jpg<
Primer ejercicio: La fórmula secreta de la Coca Cola
a) Construye la expresión de una función seccionada (usando Piecewise) tal que cuando
sea rotada alrededor del eje genere una botella de Coca Cola, como se muestra en la
imagen abajo. Tu botella de Coca Cola debe tener 18 centímetros de alto.
b) Calcula el volumen de tu botella con la siguiente fórmula para calcular el volumen:
volumen=Ÿ018p ◊ Hf @yDL2 „y
Usa el comando NIntegrate, como se hizo con el peón, mas arriba en este documento
El volumen de tu botella de Coca Cola debe ser cercano a los 237 centímetros cúbi-
cos (237 mililitros), que es el volumen de una botella real de 18 centímetros de alto.
c) Ponle una imagen (etiqueta) a tu botella de Coca Cola
d) Exporta tu Coca Cola tridimensional con etiqueta, junton la función que usaste para
crearla, en un archivo JPG con tu número de matrícula. Envía ese archivo JPG al instruc-
tor mediante el programa o red social que él o ella te haya indicado.
CocaColaPiecewiseTextureExport.nb 17
Segundo ejercicio: El florero
Construye la expresión de una función seccionada (usando Piecewise) tal que cuando sea
rotada alrededor del eje genere una superficie que se vea exactamente como el siguiente
florero. Usa el comando Texture para ponerle una imagen en la superficie, como se hizo
con el peón.
18 CocaColaPiecewiseTextureExport.nb