ENUNCIADO DEL EJEMPLO 19
Un semiaro homogéneo de masa n y radio r gira con velocidad no constante alrededor del eje Z vertical, estando obligado a permanecer en todo momento en un plano vertical. Una particula pesada de masa m puede moverse sin rozamiento ensartada en el semiaro y unida a la vez a un muelle de constante k, cuyo otro extremo se encuentra en el extremo inferior del diámetro vertical. Obtener las ecuaciones del movimiento.
Cargamos los paquetes de Maple que vamos a emplear, entre ellos el Mecapac3d, para lo cuál es necesario indicar previamente donde se encuentra la librería dentro del disco duro.
> |
with(linalg) : with(plots) : with(plottools): |
Warning, the protected names norm and trace have been redefined and unprotected
Warning, the name changecoords has been redefined
Warning, the name arrow has been redefined
> |
libname:="C:\",libname: |
El sistema tiene dos grados de libertad, por lo que lo definiremos con dos coordenadas generalizadas, alpha y theta que representan el ángulo girado por el semiaro alrededor de la vertical y el ángulo que forma el radio que une la partícula con el centro, con la horizontal, respectivamente. Definimos dichas coordenadas generalizadas.
Definimos las coordenadas del centro de gravedad del semiaro y la matriz de rotación del mismo. Como los giros son absolutos, el producto de las matrices lo realizamos por la izquierda.
> |
xgvar := [r*cos(alpha),r*sin(alpha),r*(1-2/Pi)] : |
> |
rtot := evalm(rot2&*rot1): |
Definimos el semiaro.
> |
d1 := [semiaro,xgvar,rtot,n,r]: |
Definimos la partícula.
> |
m1 := [punto, r*(1+cos(theta))*cos(alpha), r*(1+cos(theta))*sin(alpha), r*(1-sin(theta)),m] : |
Definimos el muelle.
> |
c1:= [muelle,[0,0,r],[r*(1+cos(theta))*cos(alpha), r*(1+cos(theta))*sin(alpha), r*(1-sin(theta))],k,lo]: |
Definimos elementos gráficos para representar los ejes.
> |
ejeY:=[vector,[0,0,0],[0,1,0],green]: |
> |
ejeX:=[vector,[0,0,0],[1,0,0],red]: |
> |
ejeZ:=[vector,[0,0,0],[0,0,1],blue]: |
> |
TO := [texto,[0,0,-1],"O"]: |
> |
TY := [texto,[0,1,1],"Y"]: |
> |
TZ := [texto,[0,0,1.5],"Z"]: |
> |
TX := [texto,[1.5,0,0],"X"]: |
Definimos el sistema.
> |
sistema := [d1,m1,c1,ejeX,ejeY,ejeZ,TO,TX,TY,TZ]; |
Calculamos la energía cinética y potencial del sistema, así como la Lagrangiana.
Lagrangiana
Ecuaciones del movimiento
Damos valores a los parámetros para poder representar el sistema en una situación determinada y poder realizar después la integración numérica.
> |
n:= 10 : g:=9.8 : m:= 50 : r:= 0.5 :k:=500:lo:=1: |
Realizamos la integración numérica indicando los valores iniciales de las coordenadas generalizadas y sus velocidades.
> |
res := fint([0.0,1.0,0.0,0]) ; |
Gráfica de las coordenadas generalizadas en función del tiempo
> |
odeplot(res,[t,theta(t)],0..1.2); |
> |
odeplot(res,[t,alpha(t)],0..1.2) ; |
Animación