Está en la página 1de 5

HERRAMIENTAS INFORMTICAS PARA MATEMTICAS

(Enunciado y resolucin del segundo trabajo propuesto por el equipo docente para el
curso 2013-14)

TRABAJO 2

t4

t1
t3
t2

Un taller de cerrajera tiene el encargo de montar una estructura


metlica para un invernadero. En el montaje est obligado a emplear
tubos de cuatro longitudes (t1, t2, t3 y t4 en metros), no
necesariamente diferentes, con tal de conseguir la forma que muestra
la figura. Observe que el techo de la estructura debe formar un
ngulo en grados con la horizontal. Pero adems, para ajustar bien
su presupuesto, debera emplear una longitud total de tubos igual a L
metros.

2.1) Documentar y programar una funcin tanto en Maxima como en Scilab que ayude
al taller a decidir el tamao de los cuatro tubos. En definitiva, se trata de determinar
cuaternas (t1, t2, t3, t4) de longitudes de tubos compatibles con las especificaciones de
diseo (estructural y longitud total de tubos). Para ello se propone que la funcin tenga
por nombre estructura_tubular, que reciba como argumentos de entrada: t1, t2, L y
. Que genere a su salida las otras dos longitudes de tubo (t3 y t4) y el volumen (V) de
aire que cabra en el invernadero. Y que, cuando la solucin no sea posible devuelva un
valor nulo para t3 y para el volumen.
A continuacin se muestra una tabla compuesta con seis escenarios recreados con esta
funcin que les vendrn bien para depurarla. Los dos primeros escenarios muestran
dos posibles soluciones para unas mismas especificaciones de diseo. El primer
escenario sera el ms favorable de los dos si se desea un invernadero con mayor
volumen. Los tres siguientes escenarios son posibles soluciones con otras
especificaciones de diseo. Y el sexto escenario recrea una situacin imposible.
t1
5
5
10
10
10
10

t2
20
5
10
10
10
25

L
180
180
150
150
180
180

15
15
15
20
20
20

t3
7.72
25.93
9.86
9.74
15.74
0.00

t4
10.35
2.59
5.18
5.32
5.32
13.30

V
978.58
691.66
1051.93
1062.99
1717.58
0.00

Solucin (4 puntos): Por la forma geomtrica especificada, el volumen de aire que


cabra en el interior del invernadero se puede expresar como una funcin de las cuatro
longitudes (t1, t2, t3 y t4) de los tubos que conformarn la estructura de la siguiente
forma:

Trabajos propuestos por el equipo docente de Herramientas Informticas para Matemticas, curso 2012-13

V (t1 , t2 , t3 , t4 ) t1t2 0.5t2 t4 2 0.5t2 t3

Donde

(1)

t4 2 0.5t2 representa la altura relativa del techo de la estructura respecto a


2

sus extremos laterales. Pero como el techo debe formar un ngulo con la horizontal,
las longitudes de los tubos t2 y t4 deben cumplir la siguiente condicin:
t2 2t4 cos

(C.1)

Y como, para ajustar bien su presupuesto, la cerrajera est obligada a emplear una
longitud total de tubos igual a L metros. La forma geomtrica de la estructura impone
una condicin a las longitudes de los cuatro tubos:
L 4 t1 t2 t4 5t3

(C.2)

Tras este primer anlisis del problema estamos en condiciones de proponer un algoritmo
que ayude al taller a decidir el tamao de los cuatro tubos. Por ejemplo el siguiente:
Paso 1: Fije el valor de que le hayan especificado.
Paso 2: Elija los valores que desee para L y para las longitudes de los tubos t1 y t2.
Paso 3: Determine la longitud del tubo t4 despejando de la condicin (C.1).
Paso 4: Determine la longitud del tubo t3 despejando de la condicin (C.2). Si
obtiene un valor positivo es que es posible montar la estructura con esa
longitud total de tubos, contine en el Paso 5. En caso contrario vuela al
Paso 2 y pruebe a elegir otros valores para L, t1 y t2.
Paso 5: Calcule el volumen aire que cabra en el invernadero con la funcin (1).
E inspirados en este algoritmo se pueden proponer como posible solucin al primer
apartado las siguientes funciones, con el mismo nombre t3_t4_V, en Maxima y en
Scilab.
Funcin en Maxima
t3_t4_V(t1,t2,L,alfa):=block(
t4:t2/(2*cos(%pi*alfa/180)),
t3:max((L-4*(t1+t2+t4))/5,0),
V:(t1*t2+0.5*t2*sqrt(t4^2(0.5*t2)^2))*t3,
resultado:float(matrix([t3,t4,V])));

Funcin en Scilab
function [t3, t4, V]=t3_t4_V(t1, t2, L, alfa)
t4=t2/(2*cos(%pi*alfa/180))
t3=max((L-4*(t1+t2+t4))/5,0)
V=(t1*t2+0.5*t2*sqrt(t4^2-(0.5*t2)^2))*t3
endfunction

Observe que el uso de la funcin max en ambas herramientas nos ha permitido


quedarnos con un valor nulo para t3 si el resultado al despejarlo en la condicin (C.2) es
negativo.
Basta ahora asegurarnos que ambas funciones son capaces de recrear los seis escenarios
facilitados en la tabla. Lo haremos con varias llamadas, empleando los argumentos de
entrada adecuados. Por ejemplo en Maxima:
t3_t4_V(5,20,180,15);
t3_t4_V(5,5,180,15);
t3_t4_V(10,10,150,15);
t3_t4_V(10,10,150,20);

Trabajos propuestos por el equipo docente de Herramientas Informticas para Matemticas, curso 2012-13

t3_t4_V(10,10,180,20);
t3_t4_V(10,25,180,20);

Como existen muchas otras alternativas de llegar a estos mismos resultados, cualquier
otra funcin sera vlida siempre y cuando cumpla con la funcionalidad especificada en
el enunciado.
2.2) Definitivamente se ha decidido emplear 200 m de tubo y que el techo del
invernadero forme un ngulo de 15 con la horizontal, qu cuaterna (t1, t2, t3, t4) de
longitudes de tubos debera utilizar el taller para que el volumen del invernadero sea
mximo? Se pide resolver este problema mediante optimizacin en Scilab. En su
planteamiento se le sugiere reutilizar parte de la funcin programada en el apartado
anterior y hacerlo lo suficientemente general como para que el cdigo presentado se
pueda probar en otras condiciones (L y ) de diseo. Por ejemplo se sabe que la
cuaterna ptima con 150 m de tubo y techo a 20 es (11.71, 8.67, 10.00, 4.62).
Solucin (4 puntos): Elegidas unas especificaciones (L y ) de diseo, el anlisis del
primer apartado ha servido para comprobar que las longitudes de los tubos t3 y t4
quedaban condicionadas. Por tanto, el problema de optimizacin planteado en este
segundo apartado se puede abordar como una bsqueda de las longitudes de los tubos t1
y t2 que garantizan el volumen mximo en el invernadero. Para ello necesitaremos una
funcin auxiliar en Scilab muy parecida a la empleada en el apartado anterior. Puede
valer la siguiente:
function V=volumen_invernadero(x, L, alfa)
t1=x(1),t2=x(2)
t4=t2/(2*cos(%pi*alfa/180))
t3=max((L-4*(t1+t2+t4))/5,0)
V=-(t1*t2+0.5*t2*sqrt(t4^2-(0.5*t2)^2))*t3
endfunction

Observe que mientras la funcin empleada en el primer apartado recibe los valores de t1
y t2 por separado, la nueva funcin los recibe agrupados en el vector x de dos
componentes. Adems, nicamente devuelve como salida el volumen V del invernadero
con signo negativo. De esta forma el problema de optimizacin se podr abordar como
una bsqueda de mnimo usando la funcin fminsearch de Scilab.
As el siguiente conjunto de instrucciones nos valdr para comprobar la solucin del
ejemplo del enunciado, es decir que la cuaterna ptima con 150 m de tubo y techo a 20
es (11.71, 8.67, 10.00, 4.62). En primer lugar se lanza la optimizacin para determinar
las longitudes t1 y t2. En este proceso se ha elegido 10 m como valor inicial en ambas
longitudes y una tolerancia de 0.01 m. Pero a esta misma solucin o muy cercana a ella
tambin se podra haber llegado eligiendo otros valores iniciales. A continuacin,
haciendo uso de la funcin t3_t4_V definida en el primer apartado, se han
determinado las otras dos longitudes t3, t4, y el volumen del invernadero. En este caso
concreto se obtiene un valor de 1084.24 m3.
opt = optimset ("TolX", 0.01)
L=150
alfa=20
xo=[10;10]
[x,fval,exitflag,output]=fminsearch(volumen_invernadero,xo,opt);
t1=x(1)
t2=x(2)
[t3,t4,V]=t3_t4_V(t1,t2,L,alfa)

Trabajos propuestos por el equipo docente de Herramientas Informticas para Matemticas, curso 2012-13

disp('Especificaciones')
disp([L alfa])
disp('Longitudes de los tubos')
disp([t1 t2 t3 t4])
disp('Volumen mximo')
disp(V)

Por ltimo, bastara cambiar las dos especificaciones (L y ) de diseo y ejecutar parte
del cdigo anterior para encontrar la solucin a este segundo apartado, es decir las
longitudes de los cuatros tubos que debera utilizar la cerrajera en el montaje de la
estructura: (15.90, 11.49, 13.33, 5.95). Con los que conseguiran un volumen de
2553.13 m3. El cdigo a emplear podra ser el siguiente:
L=200
alfa=15
[x,fval,exitflag,output]=fminsearch(volumen_invernadero,xo,opt);
t1=x(1)
t2=x(2)
[t3,t4,V]=t3_t4_V(t1,t2,L,alfa)
disp('Especificaciones')
disp([L alfa])
disp('Longitudes de los tubos')
disp([t1 t2 t3 t4])
disp('Volumen mximo')
disp(V)

2.3) Comprobar de forma grfica en Maxima que la solucin encontrada en el


apartado 2.2 corresponde a un mximo absoluto y no a un mximo local. Se le sugiere
utilizar una representacin tridimensional del volumen (V) frente a las longitudes (t1 y
t2) en el rango de 1 a 30 m.
Solucin (2 puntos): Las longitudes (t1 y t2) de apartado anterior se han encontrado con
un mtodo numrico, no tenemos garantas de que sean la nica solucin posible para
esas especificaciones. Lo vamos a comprobar grficamente; haciendo una
representacin tridimensional del volumen (V) frente a las longitudes (t1 y t2) y
comprobando visualmente que en las proximidades del punto (15.90, 11.49) el volumen
presenta su valor mximo y que este mximo es el nico en el rango analizado. El
siguiente conjunto de instrucciones permite hacer esta comprobacin grfica en
Maxima:
volumen(t1,t2,L,alfa):=block(
t4:t2/(2*cos(%pi*alfa/180)),
t3:max((L-4*(t1+t2+t4))/5,0),
V:(t1*t2+0.5*t2*sqrt(t4^2-(0.5*t2)^2))*t3);
plot3d(volumen(t1,t2,200,15), [t1,1,30], [t2,1,30])$

Observe que en este apartado tambin se ha utilizado otra funcin, simplificada de la


propuesta en el primer apartado, puesto que no necesitamos conocer los valores de las
longitudes (t3 y t4). A continuacin se muestra la grfica resultante, tras un cierto
cambio de orientacin provocado con el ratn se observa que el mximo (punto de
mayor intensidad en color azul) es nico y se encuentra en las proximidades del punto
(15.90, 11.49) determinado numricamente.

Trabajos propuestos por el equipo docente de Herramientas Informticas para Matemticas, curso 2012-13

Representacin grfica en Maxima del volumen (V) frente a las longitudes (t1 y t2).

También podría gustarte