Está en la página 1de 17

PRÁCTICAS CON MAXIMA

EEC1

JAVIER RODRIGUEZ LOSADA


DNI33348623A
INDICE

1-ELECCIÓN DE LAS CURVAS INICIAL Y FINAL DEL TRAYECTO

2_CONSTRUCCION DE LA CURVA DE BEZIER

3-ESTUDIO DE LA CURVA

4-CONCLUSIONES Y PROPUESTA
1-ELECCIÓN DE LAS CURVAS INICIAL Y FINAL DEL TRAYECTO

La curva que he escogido para crear C, es una curva contenida en el plano YZ, que he hecho yo mismo
con la siguiente parametrización:

curvaC1x(t):=d*0;
curvaC1y(t):=d*(t);
curvaC1z(t):=d*(6*t^4+2*t^2);
d:1; /* parametro para escalar C1*/

Es una curva parabólica y la he escogido para el intervalo t ∈ [-1, 0] mostrando una furte caida cerca de
t=0 y siendo completamente horizontal en este punto, en x(0)=(0,0,0), basta con sustituir en las
ecuaciones y es regular en el punto de enlace con la curva de bezzier ya que x´(0)≠(0,0,0) para
cualquier valor de t como se puede comprobar en la derivada que aparece mas abajo con el nombre
tangente

x1(t):=0
x2(t):=t
x3(t):=6·t^4+2·t^2
x(t):=[x1(t),x2(t),x3(t)]
tangente(t):=[0,1,24·t^3+4·t]

La grafica de esta curva desarrollada con Maxima en el archivo CurvaC1.WXMX es la siguiente:


La curva que he escogido para hacer de C2es una helice cónica contenida en XYZ que aparece en el
documento de la EEC1 con la siguiente parametrización:
curvaC2x(t):=e*t*b*cos(a*t);
curvaC2y(t):=e*t*b*sin(a*t);
curvaC2z(t):=e*t;
a:2* %pi; /*parametro para C2*/
b:2; /* parametro para escalar C2*/
e:2; /* parametro para escalar C2*/
Esta curva la he escogido para el intervalo t ∈ [1, 2], Es regular en el punto de enlace con la curva de
bezzier ya que y´(1)≠(0,0,0) para cualquier valor de t como se puede comprobar en la derivada que
aparece mas abajo con el nombre tangente

y1(t):=e·t·b·cos(a·t)
y2(t):=e·t·b·sin(a·t)
y3(t):=e·t
a:2·π
b:2
y(t):=[y1(t),y2(t),y3(t)]
tangente(t):=[4·cos(2·π·t)-8·π·t·sin(2·π·t), 4·sin(2·π·t)+8·π·t·cos(2·π·t), 2]

La grafica de esta curva desarrollada con Maxima en el archivo CurvaC2.WXMXes la siguiente:


En la siguiente gráfica se hace la representación de las 2 curvas anteriores estando representada C1 en
azul y C2 en rojo. El archivo usado para representarlas se llama CurvaC1+C2.WXMX
2_CONSTRUCCIÓN DE LA CURVA DE BEZIER

Queremos enlazar las dos curvas mediante una curva de Bezier, de ecuación:

b (t) =∑(i=0 hasta n) bi*Bni(t) , t ∈ [0, 1].

Como tenemos expresiones de C1 y C2, podemos determinar los vectores velocidad x′(0) y y′(1).
Buscamos que la velocidad sea una funció ncontinua y que en los puntos de enlace coincidan los
vectores tangente de C1 y C2 y de la curva de Bezier. Teniendo en cuenta las propiedades
de las curvas de Bezier, elegimos el polígono de control {bi}:

Con cuatro puntos para el poligono de control será suficiente b0,b1,b2,b3 y teniendo en cuenta que las
curvas deben coincidir en los extremos:

b0=x(0)=(0,0,0)
b3=y(1)=(4,0,2)

Vector velocidad en punto de enlace de C1 con la curva de Bezier=(0,1,0) ya que

x1(t):=0
x2(t):=t
x3(t):=6·t^4+2·t^2
x(t):=[x1(t),x2(t),x3(t)]
x´(t):=[0,1,24·t^3+4·t]

vector velocidad en punto de enlace de C2 con la curva de Bezier y′(1)=(4,8π,2)

y1(t):=e·t·b·cos(a·t)
y2(t):=e·t·b·sin(a·t)
y3(t):=e·t
a:2·π
b:2
y(t):=[y1(t),y2(t),y3(t)]
y´(t):=[4·cos(2·π·t)-8·π·t·sin(2·π·t), 4·sin(2·π·t)+8·π·t·cos(2·π·t), 2]

Como sabemos que la recta que une en el poligono de control b0 con b1 debe ser tangente a la curva de
bezzier en b0 y esto debe ser paralelo al vector velocidad de la curva C1 en el punto 0 tenemos que

n (b1 − b0)=K x′(0), al ser cuatro puntos el poligono de control n=3 y suponemos K=12
3((b1x,b1y,b1z)-(0,0,0)=12(0,1,0)

*Nota se ha escogido k=12 por que se observó que con valores bajos de K la curvatura que se producía
en el enlace de la primera curva C1 con la curva de Bezzier era muy fuerte aunque de este modo solo
poseía curvatura en un sentido, ahora presenta curvatura en dos sentidos y esto es necesario debido a la
orientacion de la primera curva. Si la primera curva hubiese estado girada 90º con la orientacion
correcta, aparecería una curva de Bezier con curvatura en un solo sentido aunque pusieramos K=1
Luego tenemos que b1=(0,4,0)

Como también sabemos que la recta que une en el poligono de control b3 con b2 debe ser tangente a la
curva de bezzier en b3 y esto debe ser paralelo al vector velocidad de la curva C2 en el punto 1
tenemos que

n (b3 − b2)=K y′(1), al ser cuatro puntos el poligono de control n=3 y suponemos K=1
3((4,0,2)-(b2x,b2y,b2z)=12(4,8π,2)

Luego tenemos que b2=(8/3,-8π/3,4/3)

Entonces, tenemos ya el polígono de control con cuatro puntos que introduciendo estos cuatro puntos
en el archivo de maxima DesarrolloparahacerBezier.WXMX nos da las siguientes ecuaciones
parametricas y la curva siguientes

x1(t)=8·t^2-4·t^3
x2(t)=(8·π+12)·t^3+(-8·π-24)·t^2+12·t
x3(t)=4·t^2-2·t^3

Finalmente obtenemos la curva final creada con el archivo de Maxima CurvaC1+Bezier+C2.WXMX


Se muestra en azul C1, en verde Bezier y en rojo C2
3_ESTUDIO DE LA CURVA

Para el estudio de la curva se ha descompuesto esta, en tres trozos donde se han calculado el vector
tangente, vector con la direccion normal, velocidad(como modulo del vector tangente), (aceleracion
como módulo de la derivada segunda) curvatura y torsion y sus limites en los puntos de enlace de las
curvas

CALCULOS PARA C1:

Para realizar estos calculos se ha usado el fichero de maxima llamado CalculosC1.WXMX


obteniendo los siguientes resultados:
vectortangente(t):=[0,1/sqrt((24·t^3+4·t)^2+1),(24·t^3+4·t)/sqrt((24·t^3+4·t)^2+1)]
vectordirnormal(t):=[0,-(72·t^2+4)·(24·t^3+4·t),72·t^2+4]
velocidad(t):=sqrt((24·t^3+4·t)^2+1)
aceleracion(t):=72·t^2+4
curvatura(t):=(72·t^2+4)/((24·t^3+4·t)^2+1)^(3/2)
torsion(t):=0

CALCULOS PARA enlace de C1 con curva Bezier en el punto t=0,


Para realizar estos calculos se han usado los ficheros de maxima llamados CalculosC1.WXMX y
CalculosBezier.WXMX obteniendo los siguientes resultados:
curvatura ----limite por la izquierda=4 limite por la derecha no sale el cálculo
torsion----limite por la izquierda=0 limite por la derecha=12
velocidad----limite por la izquierda=1 limite por la derecha=100
aceleracion----limite por la izquierda=4 limite por la derecha=4·sqrt(16·π^2+96·π+164)

CALCULOS PARA BEZIER:


Para realizar estos calculos se ha usado el fichero de maxima llamado CalculosBezier.WXMX
obteniendo los siguientes resultados:
vectortangente(t):=[(16·t-12·t^2)/sqrt((3·(8·π+12)·t^2-2·(8·π+24)·t+12)^2+(8·t-6·t^2)^2+(16·t-
12·t^2)^2),(3·(8·π+12)·t^2-2·(8·π+24)·t+12)/sqrt((3·(8·π+12)·t^2-2·(8·π+24)·t+12)^2+(8·t-
6·t^2)^2+(16·t-12·t^2)^2),(8·t-6·t^2)/sqrt((3·(8·π+12)·t^2-2·(8·π+24)·t+12)^2+(8·t-6·t^2)^2+(16·t-
12·t^2)^2)]

vectordirnormal(t):=[((16-24·t)·(8·t-6·t^2)-(8-12·t)·(16·t-12·t^2))·(8·t-6·t^2)-(3·(8·π+12)·t^2-
2·(8·π+24)·t+12)·((6·(8·π+12)·t-2·(8·π+24))·(16·t-12·t^2)-(16-24·t)·(3·(8·π+12)·t^2-
2·(8·π+24)·t+12)),(16·t-12·t^2)·((6·(8·π+12)·t-2·(8·π+24))·(16·t-12·t^2)-(16-24·t)·(3·(8·π+12)·t^2-
2·(8·π+24)·t+12))-(8·t-6·t^2)·((8-12·t)·(3·(8·π+12)·t^2-2·(8·π+24)·t+12)-(6·(8·π+12)·t-
2·(8·π+24))·(8·t-6·t^2)),(3·(8·π+12)·t^2-2·(8·π+24)·t+12)·((8-12·t)·(3·(8·π+12)·t^2-2·(8·π+24)·t+12)-
(6·(8·π+12)·t-2·(8·π+24))·(8·t-6·t^2))-((16-24·t)·(8·t-6·t^2)-(8-12·t)·(16·t-12·t^2))·(16·t-12·t^2)]

velocidad(t):=sqrt((3·(8·π+12)·t^2-2·(8·π+24)·t+12)^2+(8·t-6·t^2)^2+(16·t-12·t^2)^2)
sqrt((2304·π^2+6912·π+5904)·t^2+(-1536·π^2-6912·π-7872)·t+256·π^2+1536·π+2624)

aceleracion(t):=sqrt((6·(8·π+12)·t-2·(8·π+24))^2+(8-12·t)^2+(16-24·t)^2)
sqrt(46080·π^2·t^4+138240·π·t^3+(103680-92160·π)·t^2-138240·t+46080)
((576·π^2+1728·π+1476)·t^4+(-768·π^2-3456·π-3936)·t^3+(256·π^2+2112·π+3488)·t^2+(-
384·π-1152)·t+144)^(3/2)

curvatura(t):=sqrt(((8-12·t)·(3·(8·π+12)·t^2-2·(8·π+24)·t+12)-(6·(8·π+12)·t-2·(8·π+24))·(8·t-
6·t^2))^2+((6·(8·π+12)·t-2·(8·π+24))·(16·t-12·t^2)-(16-24·t)·(3·(8·π+12)·t^2-2·(8·π+24)·t+12))^2+
((16-24·t)·(8·t-6·t^2)-(8-12·t)·(16·t-12·t^2))^2)/((3·(8·π+12)·t^2-2·(8·π+24)·t+12)^2+(8·t-
6·t^2)^2+(16·t-12·t^2)^2)^(3/2)

torsion(t):=0

CALCULOS PARA enlace de curva Bezier con curva C2 en el punto t=1,

Para realizar estos calculos se han usado los ficheros de maxima llamados CalculosC2.WXMX y
CalculosBezier.WXMX obteniendo los siguientes resultados:
curvatura ----limite por la izquierda=0,046 limite por la derecha=0,25
torsion----limite por la izquierda=0 limite por la derecha=-0,021
velocidad----limite por la izquierda=26 limite por la derecha=26
aceleracion----limite por la izquierda=130 limite por la derecha=165

CALCULOS PARA C2:

Para realizar estos calculos se ha usado el fichero de maxima llamado CalculosC2.WXMX


obteniendo los siguientes resultados:
vectortangente(t):=[(4·cos(2·π·t)-8·π·t·sin(2·π·t))/sqrt((4·cos(2·π·t)-8·π·t·sin(2·π·t))^2+(4·sin(2·π·t)
+8·π·t·cos(2·π·t))^2+4),(4·sin(2·π·t)+8·π·t·cos(2·π·t))/sqrt((4·cos(2·π·t)-
8·π·t·sin(2·π·t))^2+(4·sin(2·π·t)+8·π·t·cos(2·π·t))^2+4),2/sqrt((4·cos(2·π·t)-
8·π·t·sin(2·π·t))^2+(4·sin(2·π·t)+8·π·t·cos(2·π·t))^2+4)]
vectordirnormal(t):=[4·(-16·π·sin(2·π·t)-16·π^2·t·cos(2·π·t))-(4·sin(2·π·t)
+8·π·t·cos(2·π·t))·((4·cos(2·π·t)-8·π·t·sin(2·π·t))·(16·π·cos(2·π·t)-16·π^2·t·sin(2·π·t))-(4·sin(2·π·t)
+8·π·t·cos(2·π·t))·(-16·π·sin(2·π·t)-16·π^2·t·cos(2·π·t))),(4·cos(2·π·t)-8·π·t·sin(2·π·t))·((4·cos(2·π·t)-
8·π·t·sin(2·π·t))·(16·π·cos(2·π·t)-16·π^2·t·sin(2·π·t))-(4·sin(2·π·t)+8·π·t·cos(2·π·t))·(-16·π·sin(2·π·t)-
16·π^2·t·cos(2·π·t)))+4·(16·π·cos(2·π·t)-16·π^2·t·sin(2·π·t)),-2·(4·sin(2·π·t)
+8·π·t·cos(2·π·t))·(16·π·cos(2·π·t)-16·π^2·t·sin(2·π·t))-2·(-16·π·sin(2·π·t)-
16·π^2·t·cos(2·π·t))·(4·cos(2·π·t)-8·π·t·sin(2·π·t))]

velocidad(t):=sqrt((4·cos(2·π·t)-8·π·t·sin(2·π·t))^2+(4·sin(2·π·t)+8·π·t·cos(2·π·t))^2+4)

aceleracion(t):=sqrt((16·π·cos(2·π·t)-16·π^2·t·sin(2·π·t))^2+(-16·π·sin(2·π·t)-16·π^2·t·cos(2·π·t))^2)
sqrt(16384·π^6·t^4+17408·π^4·t^2+5120·π^2)

curvatura(t):=sqrt(((4·cos(2·π·t)-8·π·t·sin(2·π·t))·(16·π·cos(2·π·t)-16·π^2·t·sin(2·π·t))-(4·sin(2·π·t)
+8·π·t·cos(2·π·t))·(-16·π·sin(2·π·t)-16·π^2·t·cos(2·π·t)))^(2)+4·(16·π·cos(2·π·t)-
16·π^2·t·sin(2·π·t))^2+4·(-16·π·sin(2·π·t)-16·π^2·t·cos(2·π·t))^2)/((4·cos(2·π·t)-
8·π·t·sin(2·π·t))^2+(4·sin(2·π·t)+8·π·t·cos(2·π·t))^2+4)^(3/2)
torsion(t):=(1024·π^5·t^2·sin(2·π·t)^2+1536·π^3·sin(2·π·t)^2+1024·π^5·t^2·cos(2·π·t)^2+1536·π^3·c
os(2·π·t)^2)/(((4·cos(2·π·t)-8·π·t·sin(2·π·t))·(16·π·cos(2·π·t)-16·π^2·t·sin(2·π·t))-(4·sin(2·π·t)
+8·π·t·cos(2·π·t))·(-16·π·sin(2·π·t)-16·π^2·t·cos(2·π·t)))^(2)+4·(16·π·cos(2·π·t)-
16·π^2·t·sin(2·π·t))^2+4·(-16·π·sin(2·π·t)-16·π^2·t·cos(2·π·t))^2)
REPRESENTACION GRAFICA DE LA CURVATURA PARA CURVA C1 BEZZIER Y C2
Se puede observar en las graficas como la curvatura posee un maximo absoluto en t=0,15 coincidiendo
con la primera curva pronunciada de la curva de Bezzier, hay varios puntos donde la curvatura resulta
con un valor de 0 donde la montaña rusa posee tramos casi rectos
Hay también dos máximos relativos, uno en la curva menos pronunciada de la curva de bezier para
t=0.7 y otro cerca de t=0 de la primera curva que es cuando pasa de vertical a casi horizontal la prinera
curva
REPRESENTACIÓN GRAFICA DE LA VELOCIDAD PARA CURVA C1 BEZZIER Y C2
Se puede observar en las graficas como la velocidad posee un maximo absoluto en t=2 y un minimo
absoluto en t=0, posee tambien dos minimos relativos en t=0,15 y en t=0,7

REPRESENTACIÓN GRAFICA DE LA ACELERACION PARA CURVA C1 BEZZIER Y C2


Se puede observar en las graficas como la aceleración posee un maximo absoluto en t=2 y un minimo
absoluto en t=0, posee tambien un minimos relativos en t=0,42 y en

Observando las graficas anteriores se concluye que en los puntos donde existe una gran curvatura se
producen variaciones grandes del modulo de velocidad y aceleracion
INTERPRETACION DE LOS RESULTADOS OBTENIDOS EN EL PUNTO 3

Sin tener en cuenta resultados físicos sabemos que la velocidad y la aceleracion en una montaña rusa
deben ser funciones continuas y esto no es así ya que con los limites laterales en los puntos de union de
las curvas vemos que la velocidad sufre un cambion brusco al pasar de la curva1 a la curva de Bezier
debido a que se tuvo que hacer una modificacion usando un vector velocidad en el punto de union que
era paralelo pero su modulo era 4 veces mas grande ya que si nó la curvatura que aparecía en este
punto era muy brusca y no se realizaba una transición suave entre las dos curvas por la orientacion que
posee la curva1
Además la velocidad no debe variar de forma brusca ya que cambios en el modulo y sentido de la
velocidad producen cambios en la aceleracion y aceleraciones muy grandes provocan problemas de
desmayos. Curvaturas muy grandes producen grandes aceleraciones y para evitar esto es necesario en
los tramos que hay una gran velocidad disminuir las curvaturas y estas se pueden aumentar cuando las
velocidades son mas bajas

Para realizar transiciones suaves entre curvas podriamos utilizar clotoides, donde la curvatura
disminuye de forma inversamente proporcional a la distancia recorrida, y así llegar a un valor de
curvatura que coincida en el punto de enlace con otro tramo de curva con el mismo valor de curvatura.
De esta forma en el punto de enlace no existen cambios bruscos de velocidad ni de aceleración

*nota Todos los calculos y graficas obtenidas han sido realizados con los archivos de maxima que se
entregan y que se han ido nombrando

También podría gustarte