ENUNCIADO EJEMPLO 15

     Un hilo AB (flexible, inextensible y de masa despreciable) de longitud 3b pasa a traves de un tubo CD (fijo, horizontal y liso) de longitud b. En los extremos del hilo estan sujetas sendas particulas, de masa M la que se encuentra en A, y de masa m la de B. Inicialmente el hilo sobresale por igual por ambos extremos del tubo (AC=CD=DB=b). Todo el hilo se encuentra situado en un plano vertical DYZ, colgando verticalmente el tramo AC, mientras que el DB esta desviado 30 grados de la vertical descendente.

   Paso 0. Reiniciación de las variables del sistema y llamada a los paquetes linalg, plots y plottools.

> restart:

> 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:

> with (mecapac3d):

   Paso 1. Definimos las coordenadas generalizadas del sistema en una lista que se denominará cg.

> cg := [theta,beta,z];

cg := [theta, beta, z]

   Paso 2. Definición mediante variables de los elementos que forman el sistema mecánico.

> m1 := [punto,0.,-b,-z,M]:

> m2 := [punto,(2*b-z)*cos(beta)*sin(theta),(2*b-z)*cos(beta)*cos(theta),-((2*b-z)*sin(beta)),m]:  

> a1 := [segmento,[0.,-b,-z],[0.,-b,0.],blue] :

> a2 := [segmento,[0.,0.,0.],[(2*b-z)*cos(beta)*sin(theta),(2*b-z)*cos(beta)*cos(theta),-(2*b-z)*sin(beta)],blue]:

> a3 := [segmento,[0.,0.,0.],[0.,-b,0.],green] :

   Paso 3. Definición de la variable sistema que agrupa en una lista todos los elementos anteriores.

> sistema := [m1,m2,a1,a2,a3] :

   Paso 4. Obtención de la energía cinética del sistema mediante fT asignándola a la variable T.

> T := fT(sistema);

T := 1/2*M*z1^2+1/2*m*((-z1*cos(beta)*sin(theta)-(2*b-z)*sin(beta)*beta1*sin(theta)+(2*b-z)*cos(beta)*cos(theta)*theta1)^2+(-z1*cos(beta)*cos(theta)-(2*b-z)*sin(beta)*beta1*cos(theta)-(2*b-z)*cos(beta...

   Paso 5. Obtención de la energía potencial del sistema mediante fV asignándola a la variable V.

> V := fV(sistema);

V := -M*g*z-m*g*(2*b-z)*sin(beta)

   Paso 6. Obtención de la lagrangiana como diferencia de energías entre la energía cinética y la potencial.

> L := simplify(T-V);

L := M*g*z-2*m*cos(beta)^2*theta1^2*b*z+1/2*m*z1^2+1/2*M*z1^2+1/2*m*beta1^2*z^2+2*m*g*sin(beta)*b-m*g*sin(beta)*z-2*m*beta1^2*b*z+2*m*cos(beta)^2*theta1^2*b^2+1/2*m*cos(beta)^2*theta1^2*z^2+2*m*beta1^...

   Paso 7. Obtención de las ecuaciones de lagrange para las dos coordenadas generalizadas mediante el operador Ec_lag

> ecua := ec_lag() ;

ecua := [8*m*cos(beta(t))*diff(theta(t), t)*b*z(t)*sin(beta(t))*diff(beta(t), t)-4*m*cos(beta(t))^2*diff(theta(t), `$`(t, 2))*b*z(t)-4*m*cos(beta(t))^2*diff(theta(t), t)*b*diff(z(t), t)-8*m*cos(beta(t...ecua := [8*m*cos(beta(t))*diff(theta(t), t)*b*z(t)*sin(beta(t))*diff(beta(t), t)-4*m*cos(beta(t))^2*diff(theta(t), `$`(t, 2))*b*z(t)-4*m*cos(beta(t))^2*diff(theta(t), t)*b*diff(z(t), t)-8*m*cos(beta(t...ecua := [8*m*cos(beta(t))*diff(theta(t), t)*b*z(t)*sin(beta(t))*diff(beta(t), t)-4*m*cos(beta(t))^2*diff(theta(t), `$`(t, 2))*b*z(t)-4*m*cos(beta(t))^2*diff(theta(t), t)*b*diff(z(t), t)-8*m*cos(beta(t...ecua := [8*m*cos(beta(t))*diff(theta(t), t)*b*z(t)*sin(beta(t))*diff(beta(t), t)-4*m*cos(beta(t))^2*diff(theta(t), `$`(t, 2))*b*z(t)-4*m*cos(beta(t))^2*diff(theta(t), t)*b*diff(z(t), t)-8*m*cos(beta(t...ecua := [8*m*cos(beta(t))*diff(theta(t), t)*b*z(t)*sin(beta(t))*diff(beta(t), t)-4*m*cos(beta(t))^2*diff(theta(t), `$`(t, 2))*b*z(t)-4*m*cos(beta(t))^2*diff(theta(t), t)*b*diff(z(t), t)-8*m*cos(beta(t...ecua := [8*m*cos(beta(t))*diff(theta(t), t)*b*z(t)*sin(beta(t))*diff(beta(t), t)-4*m*cos(beta(t))^2*diff(theta(t), `$`(t, 2))*b*z(t)-4*m*cos(beta(t))^2*diff(theta(t), t)*b*diff(z(t), t)-8*m*cos(beta(t...

   Paso 8. Asignación de valores numéricos a los parámetros que queden sun asignar para poder proceder a la integración numérica.

> m :=1 : M :=3 : b :=3 : g :=9.8 :

   Paso 9. Representacion de las condiciones iniciales.

> fG([evalf(Pi/3),evalf(Pi/4),2.]) ;

[Plot]

   Paso 10. Integración numérica del problema mediante la función fint asignando el resultado a la variable res.

> res := fint([0.1,0.5,0.6,0.3,1,0.9]):

   Paso 11. Representación gráfica de las evoluciones temporales de theta mediante odeplot.

> p1:=odeplot(res,[t,theta(t)],0..1.64,color=red):

> p2:=odeplot(res,[t,beta(t)],0..1.64,color=green):

> display({p1,p2});

[Plot]

   Paso 12. Procedemos a realizar una animación del movimiento del conjunto por medio de la función dibu3.

> dibu3(1.641,70);

[Plot]

>