Movimiento de una partícula atada a una cuerda que se enrolla en un cilindro horizontal (II).

Cuando la partícula de masa m cae, en el instante t la parte de la cuerda que está enrollada en el cilindro es la longitud del arco de una circunferencia de radio R. Describiremos el movimiento de la partícula en términos del ángulo φ.

Posición, velocidad y aceleración de la partícula

La posición de la partícula en el Sistema de Referencia de la figura es

{ x=Rsinφ+lcosφ=Rsinφ+( l 0 Rφ )cosφ y=Rcosφlsinφ=Rcosφ( l 0 Rφ )sinφ

Donde l=l0-

Derivamos con respecto del tiempo para obtener las componentes de la velocidad

{ dx dt =( Rcosφlsinφ ) dφ dt +cosφ dl dt =( Rcosφlsinφ ) dφ dt Rcosφ dφ dt dy dt =( Rsinφlcosφ ) dφ dt sinφ dl dt =( Rsinφlcosφ ) dφ dt +Rsinφ dφ dt { dx dt =( l 0 Rφ )sinφ dφ dt dy dt =( l 0 Rφ )cosφ dφ dt

Derivamos respecto del tiempo para obtener las componentes de la aceleración

{ d 2 x d t 2 =( Rsinφ( l 0 Rφ )cosφ ) ( dφ dt ) 2 ( l 0 Rφ )sinφ d 2 φ d t 2 d 2 y d t 2 =( Rcosφ+( l 0 Rφ )sinφ ) ( dφ dt ) 2 ( l 0 Rφ )cosφ d 2 φ d t 2

Ecuación del movimiento

Las fuerzas que actúan sobre la partícula son:

{ m d 2 x d t 2 =Tcosφ m d 2 y d t 2 =Tsinφmg

Eliminamos la tensión T en el sistema de dos ecuaciones, multiplicando la primera por sinφ, la segunda por cosφ y sumando

( l 0 Rφ) d 2 φ d t 2 =gcosφ+R ( dφ dt ) 2

Despejamos la tensión T/m de la cuerda

T m =gsinφ+( l 0 Rφ ) ( dφ dt ) 2

Conservación de la energía

Ponemos el nivel cero de energía potencial en el origen.

La energía inicial de la partícula es E0=mgR

La energía de la partícula en cualquier instante es

E= 1 2 m l 2 ( dφ dt ) 2 +mgy= 1 2 m ( l 0 Rφ ) 2 ( dφ dt ) 2 +mg( Rcosφ( l 0 Rφ )sinφ )

La energía permanece constante, E=E0=mgR

( dφ dt ) 2 =2g RRcosφ+( l 0 Rφ )sinφ ( l 0 Rφ ) 2

Tensión de la cuerda

La tensión T de la cuerda es una función del ángulo φ.

T m =g 2R2Rcosφ+3( l 0 Rφ )sinφ l 0 Rφ

La tensión de la cuerda se anula cuando

2R2Rcosφ+3( l 0 Rφ )sinφ=0 3 2 ( φ l 0 R )=tan φ 2

Se resuelve por procedimientos numéricos esta ecuación trascendente.

La cuerda alcanzará la tensión nula siempre que no se enrolle completamente, es decir, Rφ<l0. El primer término de la igualdad ha de ser negativo, por lo que se tiene que igualar a la rama negativa de tan(φ/2), es decir, el ángulo 180<φ<360, tal como se aprecia en la figura.

En la figura, representamos la recta y=(3/2)(φ-l0/R) y la función y=tan(φ/2) para l0=6 m y R=1 m.

Denominamos longitud crítica de la cuerda lc a aquella que se enrolla completamente en el cilindro y a la vez, alcanza la tensión cero en el punto de contacto de la partícula.

Como vemos en la figura, la recta y=(3/2)(φ-l0/R) y la función y=tan(φ/2) se cortan en el punto de tangencia. En el punto de corte la pendiente de la función es 3/2.

3 2 = 1 2 1 cos 2 (φ/2) φ c =250.5º=4.372rad

Introducimos el valor del ángulo φ en la ecuación trascendente y despejamos el cociente l/R.

l c R = φ c 2 3 tan( φ c 2 ) l c R =5.315

Se utiliza la función buscar_intervalos, para encontrar el primer intervalo en el que la función g(x) cambia de signo. La función MATLAB fzero, encuentra el ángulo límite en dicho intervalo.

Definimos la función stop_enrolla, para que el procedimiento ode45 de integración de la ecuación diferencial termine cuando se alcanza el ángulo límite

function enrolla
    L=6; %longitud de la cuerda
    R=1; %radio
    %calcula el ángulo límite, T=0
    if L>5.315
        g=@(x) 3*(L-x)/2+tan(x/2);
        xb=buscar_intervalos(g,pi+0.1,2*pi,50);
        aLimite=fzero(g,[xb(1,1),xb(1,2)]);
    end
    
    %resuelve la ecuación diferencial
    f=@(t,x) [x(2); (9.8*cos(x(1))/R+x(2)^2)*R/(L-x(1))]; 
    opts=odeset('events',@(t,x) stop_enrolla(t,x,aLimite));
    [~,x]=ode45(f,[0,3],[0,0],opts);
    xp=R*sin(x(:,1))+(L-R*x(:,1)).*cos(x(:,1));
    yp=R*cos(x(:,1))-(L-R*x(:,1)).*sin(x(:,1));
    hold on
    %dibuja el cilindro
    z=0:pi/40:2*pi;
    fill(R*sin(z),R*cos(z),'g')
    %dibuja la trayectoria de la partícula
    plot(xp,yp)
    hold off
    grid on
    axis equal
    xlabel('x')
    ylabel('y');
    title('Cuerda que se enrolla')

    function xb = buscar_intervalos(f,a,b,n)
        x = linspace(a,b,n);
        j = 0; 
        xb=[];
        for i = 1:length(x)-1
            if sign(f(x(i))) ~= sign(f(x(i+1))) 
                j = j + 1;
                xb(j,1) = x(i);
                xb(j,2) = x(i+1);
            end
        end
        if isempty(xb) 
            disp('no se han encontrado cambios de signo')
        else
            disp(['número de intervalos:' int2str(j)]) 
        end
    end

    function [value,isterminal,direction]=stop_enrolla(~,x,xFin)
        value=x(1)-xFin; 
        isterminal=1;
        direction=0; 
    end
    
end

Comprobamos la conservación de la energía. La energía inicial es mgR

>> E=((L-R*x(:,1)).^2).*x(:,2).^2/2-9.8*((L-R*x(:,1)).*
sin(x(:,1))-R*cos(x(:,1)))
E =    9.8000
       9.8000
       ......
       9.7960
       9.7960

Tiro parabólico

Cuando la cuerda alcanza la tensión cero, supondremos que la partícula se mueve bajo la acción del peso, describiendo un tiro parabólico.

Se calcula el ángulo límite φ cuando la tensión es nula. La posición inicial x0, y0 de la partícula en ese instante es.

{ x 0 =Rsinφ+( l 0 Rφ )cosφ y 0 =Rcosφ( l 0 Rφ )sinφ

Se calculan las componentes de la velocidad en dicho instante

v 0x =( l 0 Rφ) dφ dt sinφ v 0y =( l 0 Rφ) dφ dt cosφ

Las ecuaciones del movimiento de la partícula bajo la acción de su propio peso son:

x= x 0 + v 0x t y= y 0 + v 0y t+ 1 2 (g) t 2

Actividades

Se introduce

Se pulsa el botón titulado Nuevo

Observamos el movimiento de la partícula hasta que:

En el segundo caso, a partir de dicho instante, la partícula descibe un tiro parabólico

El programa calcula en cada instante el tanto por ciento de error relativo en la energía o el cociente

| E E 0 E 0 |·100

donde E es la energía en cualquier instante t y E0=mgR es la energía inicial.

Deducción alternativa en coordenadas polares

Para describir el movimiento de la partícula adoptamos el sistema de referencia que se muestra en la figura

Expresamos la velocidad y aceleración en coordenadas polares, véase el final de la página Movimiento de dos bloques atados por una cuerda

v = dr dt r ^ +r dθ dt θ ^ a =( d 2 r d t 2 r ( dθ dt ) 2 ) r ^ +( r d 2 θ d t 2 +2 dθ dt dr dt ) θ ^

Ecuaciones de la dinámica

Las fuerzas que actúan sobre la partícula son:

Las ecuaciones del movimiento en la dirección radial r ^ y en la dirección θ ^ son, respectivamente

m( d 2 r d t 2 r ( dθ dt ) 2 )=mgsinθTcosδ m( r d 2 θ d t 2 +2 dr dt dθ dt )=mgcosθTsinδ

Donde sinδ=R/r y cosδ=(l-Rφ)/r

Despejamos la tensión T de la segunda ecuación y la sustituimos en la primera

T m = r R { gcosθ( r d 2 θ d t 2 +2 dr dt dθ dt ) } ( d 2 r d t 2 r ( dθ dt ) 2 )=gsinθ r R { gcosθ( r d 2 θ d t 2 +2 dr dt dθ dt ) } (lRφ) r

Esta es la ecuación diferencial del movimiento de la partícula en términos de r y θ  y el ángulo φ que como veremos se simplifica notablemente al expresarla únicamente en términos de la variable φ.

El arduo trabajo algebraico consiste en expresar r y θ y sus derivadas en términos del ángulo φ y sus derivadas.

Como vemos en la figura

{ rsinθ=(lRφ)sinφRcosφ rcosθ=(lRφ)cosφ+Rsinφ tanθ= (lRφ)tanφR (lRφ)+Rtanφ r 2 = ( lRφ ) 2 + R 2

Expresamos la derivada con respecto del tiempo t de r en términos de φ y su derivada.

r dr dt =R(lRφ) dφ dt

Expresamos la derivada con respecto del tiempo t de θ en términos de φ y su derivada.

1 cos 2 θ dθ dt = ( Rtanφ+(lRφ) 1 cos 2 φ )( lRφ+Rtanφ )( R+ R cos 2 φ )( (lRφ)tanφR ) ( lRφ+Rtanφ ) 2 dφ dt

Teniendo en cuenta que 1/cos2θ=1+tan2θ, llegamos a la expresión

r 2 dθ dt = (lRφ) 2 dφ dt

A continuación, las derivadas segundas

r d 2 r d t 2 =R(lRφ) d 2 φ d t 2 + R 4 r 2 ( dφ dt ) 2 r 2 d 2 θ d t 2 = ( lRφ ) 2 d 2 φ d t 2 2 R 3 r 2 ( lRφ ) ( dφ dt ) 2

Las componentes de la aceleración

( d 2 r d t 2 r ( dθ dt ) 2 )= R r (lRφ) d 2 φ d t 2 + 1 r ( R 2 ( lRφ ) 2 ) ( dφ dt ) 2 ( r d 2 θ d t 2 +2 dr dt dθ dt )= ( lRφ ) 2 r d 2 φ d t 2 2R r (lRφ) ( dφ dt ) 2

Finalmente, expresamos la tensión de la cuerda y la ecuación del movimiento en términos del ángulo φ y sus derivadas.

T m =gsinφ+(lRφ) ( dφ dt ) 2 d 2 φ d t 2 = R (lRφ) ( g R cosφ+ ( dφ dt ) 2 )

Resolvemos la ecuación diferencial por procedimientos numéricos con las siguientes condiciones iniciales: en el instante t=0, φ=0, dφ/dt=0.

Una vez que conocemos el ángulo φ en función del tiempo, las coordenadas polares r y θ de la partícula se calculan del siguiente modo.

θ=arctan( (lRφ)sinφRcosφ (lRφ)cosφ+Rsinφ )r= ( lRφ ) 2 + R 2

A continuación, la abscisa x y la ordenada y de la partícula

x=r·cosθ
y=r·sinθ

Conservación de la energía

Ponemos el nivel cero de energía potencial en el origen.

La energía inicial de la partícula es Ei=mgR

La energía final de la partícula es

E f = 1 2 m( v r 2 + v θ 2 )mgrsinθ E f = 1 2 m( ( dr dt ) 2 + r 2 ( dθ dt ) 2 )mgrsinθ

Expresamos r, θ y sus derivadas en términos de φ y sus derivadas

gR= ( lRφ ) 2 2 ( dφ dt ) 2 g( (lRφ)sinφRcosφ ) ( dφ dt ) 2 = 2g( R+(lRφ)sinφRcosφ ) ( lRφ ) 2

function enrolla_1
    L=6; %longitud de la cuerda
    R=1; %Radio
    %calcula el ángulo límite
    if L>5.315
        g=@(x) 3*(L-x)/2+tan(x/2);
        xb=buscar_intervalos(g,pi+0.1,2*pi,50);
        aLimite=fzero(g,[xb(1,1),xb(1,2)]);
    end
    
    %resuelve la ecuación diferencial
    f=@(t,x) [x(2); (9.8*cos(x(1))/R+x(2)^2)*R/(L-x(1))]; 
    opts=odeset('events',@(t,x) stop_enrolla(t,x,aLimite));
    [~,x]=ode45(f,[0,3],[0,0],opts);
    %coordenadas polares
    r=sqrt((L-x(:,1)).^2+R^2);
    angulo=atan2((L-R*x(:,1)).*sin(x(:,1))-R*cos(x(:,1)),  
(L-R*x(:,1)).*cos(x(:,1))+R*sin(x(:,1)));
    %coordenadas rectangulares
    xp=r.*cos(angulo);
    yp=-r.*sin(angulo);  
    hold on
    %dibuja el cilindro
    z=0:pi/40:2*pi;
    fill(sin(z),cos(z),'g')
    %dibuja la trayectoria de la partícula
    plot(xp,yp)
    hold off
    grid on
    axis equal
    xlabel('x')
    ylabel('y');
    title('Cuerda que se enrolla')
    
    function xb = buscar_intervalos(f,a,b,n)
        x = linspace(a,b,n);
        j = 0; 
        xb=[];
        for i = 1:length(x)-1
            if sign(f(x(i))) ~= sign(f(x(i+1))) 
                j = j + 1;
                xb(j,1) = x(i);
                xb(j,2) = x(i+1);
            end
        end
        if isempty(xb) 
            disp('no se han encontrado cambios de signo')
        else
            disp(['número de intervalos:' int2str(j)]) 
        end
    end

    function [value,isterminal,direction]=stop_enrolla(~,x,xFin)
        value=x(1)-xFin; 
        isterminal=1;
        direction=0; 
    end

end

Obtenemos la misma figura

Oscilaciones

Cuando la cuerda no se enrolla completamente y no alcanza la tensión T=0, la partícula de masa m, unida a la cuerda que parte de ángulo φ0>0, oscila

Se resuelve la ecuación diferencial

( l 0 Rφ) d 2 φ d t 2 =gcosφ+R ( dφ dt ) 2

con las condiciones iniciales, φ=φ0, dφ/dt=0.

Se introduce

Se pulsa el botón titulado Nuevo

Se observa una oscilación completa del péndulo


Referencias

Theoretical Question 1. A swing with a Falling Weight. IPHO problems and solutions. 2003 Taiwan

Kirk T. McDonald. A Pendulum Problem. October 2025