Fuerza de rozamiento proporcional al cuadrado de la velocidad (I)

Un proyectil de masa m que se dispara desde el origen con velocidad v0, haciendo un ángulo θ0 con la horizontal

Si despreciamos el empuje, las fuerzas que actúan sobre el cuerpo de masa m son:

Las ecuaciones del movimiento del cuerpo serán por tanto.

{ m d v x dt =mb v x v x 2 + v y 2 m d v y dt =mgmb v y v x 2 + v y 2 { d 2 x d t 2 +b dx dt ( dx dt ) 2 + ( dy dt ) 2 =0 d 2 y d t 2 +b dy dt ( dx dt ) 2 + ( dy dt ) 2 +g=0

Las condiciones iniciales son t=0, velocidad inicial: v0x=v0·cosθ, v0y=v0·sinθ, posición inicial: x=0, y=0.

Se resuelve este sistema de ecuaciones diferenciales mediante el procedimiento ode45 de MATLAB para mostrar las trayectorias del proyectil disparado con velocidad v0=60 m/s para varios ángulo de tiro, θ=20, 40, 60, 80°.

function cuadrado_1
    b=0.0025; %parámetro
    v0=60;  %velocidad incial
    
    % x(1) es x, x(2) es dx/dt, x(3) es y, x(4) es dy/dt
    fg=@(t,x)[x(2);-b*sqrt(x(2)^2+x(4)^2)*x(2); x(4);
-9.8-b*sqrt(x(2)^2+x(4)^2)*x(4)];
    opts=odeset('events',@stop_proyectil);
    hold on
    for th_0=(20:20:80); %ángulo de tiro
        [~,x]=ode45(fg,[0,10],[0,v0*cosd(th_0),0,v0*sind(th_0)], opts);
        plot(x(:,1),x(:,3),'displayName',num2str(th_0)) %trayectoria
    end
    hold off
    grid on
    xlabel('x')
    legend('-DynamicLegend','location','best')
    ylabel('y')
    title('Fuerza de rozamiento proporcional al cuadrado de la velocidad')

    function [detect,stopin,direction]=stop_proyectil(t,x)
        detect=x(3); 
        stopin=1; 
        direction=-1; 
    end
end

Hemos definido una función stop_proyectil, para que se detenga el proceso de integración cuando el proyectil llega al suelo, ordenada y=0, en el código x(3)

Mostramos las trayectorias de los proyectiles disparados con velocidad v0=20,30, 40, 50, 60 m/s y con ángulo de tiro, θ=45°.

function cuadrado_2
    b=0.0025; %parámetro
    th_0=pi/4;  %ángulo de tiro (45)
    % x(1) es x, x(2) es dx/dt, x(3) es y, x(4) es dy/dt
    fg=@(t,x)[x(2);-b*sqrt(x(2)^2+x(4)^2)*x(2); x(4);
-9.8-b*sqrt(x(2)^2+x(4)^2)*x(4)];
    opts=odeset('events',@stop_proyectil_v2);
    hold on
    for v0=(20:10:60); %velocidad de disparo
        [~,x]=ode45(fg,[0,10],[0,v0*cos(th_0),0,v0*sin(th_0)], opts);
        plot(x(:,1),x(:,3),'displayName',num2str(v0)) %trayectoria
    end
    hold off
    grid on
    xlabel('x')
    legend('-DynamicLegend','location','best')
    ylabel('y')
    title('Fuerza de rozamiento proporcional al cuadrado de la velocidad')

    function [detect,stopin,direction]=stop_proyectil_v2(t,x)
        detect=x(3); 
        stopin=1; 
        direction=-1; 
    end
end

Actividades

Introducimos:

Se pulsa el botón titulado Nuevo

El programa interactivo traza y calcula el alcance de los proyectiles disparados con ángulos de 10, 15, 20, 25, 30, 35, 40 y 45º (en color rojo).

Compara estas trayectorias con la que seguiría el mismo proyectil disparado con un ángulo de 45º en el vacío (en color azul).

En la parte superior derecha, se muestra el alcance (aproximado) de cada uno de los proyectiles. Observamos que el máximo alcance del proyectil no se obtiene para el ángulo de disparo de 45º sino para un ángulo inferior. Y como cabía esperar, el alcance del proyectil disparado con 45º es inferior en un medio como el aire que en el vacío.


Experiencia

Se dispone de un dispositivo lanzador de proyectiles, por ejemplo el ME-6800 de PASCO que lanza bolas de acero de D=2.5 cm de diámetro con velocidades iniciales variables. Se pone el dispositivo sobre una mesa de h=1 m de altura, se ajusta el ángulo de tiro θ, se dispara y se mide el tiempo de vuelo T y el alcance horizontal X del proyectil.

Se compara las medidas con la del mismo proyectil describiendo una trayectoria parabólica con la misma velocidad inicial y en la misma dirección.

Datos:

Fuente: N.I. Koshkin , M. G. Shirkévich. Manual de física elemental. Editorial Mir (1975), págs, 36, 39 y 57

El número de Reynolds para un proyectil de forma esférica que se mueve a la velocidad v= 7 m/s es

Re= ρ f Dv η = 1.293·0.025·7 18.37· 10 6 =1.2318· 10 4

Para números de Reynolds del orden de 104 hasta 2·105 el coeficiente de arrastre se mantiene casi constante y próximo a CD=0.4

La expresión de la fuerza de rozamiento proporcional al cuadrado de la velocidad es

F r = C D 1 2 ρ f A v 2 =0.4 1 2 1.293· π· 0.025 2 4 v 2 =1.2694· 10 4 v 2

En el aparatado anterior, el módulo de fuerza de rozamiento se escribe Fr=mb·v2. Donde m es la masa (producto de la densidad del acero por el volumen de la esfera). El parámetro b vale

b= 1.2694· 10 4 7700 1 6 π 0.025 3 =0.0020 m -1

El valor que se proporciona en el artículo de Pirooz Mohazzabi citado en las referencias es b=0.002141 m-1

Dibujamos las trayectorias de los proyectiles disparados con velocidad v0=10 m/s y con ángulos de tiro 0, 10, 20, ...90°.

function rozamiento
    b=0.002141; %parámetro
    v0=10;  %velocidad incial
    h=1; %altura 
    fg=@(t,x)[x(2);-b*sqrt(x(2)^2+x(4)^2)*x(2); x(4);
-9.8-b*sqrt(x(2)^2+x(4)^2)*x(4)];
    opts=odeset('events',@stop_proyectil_v2);
    hold on
    for th_0=(0:10:90)*pi/180 %ángulo de tiro
        [t,x]=ode45(fg,[0,10],[0,v0*cos(th_0),0,v0*sin(th_0)], opts);
        plot(x(:,1),x(:,3)) %trayectoria
        disp([th_0*180/pi, t(end), x(end,1)])
    end
    grid on
    ylim([-1,5])
    xlabel('x(m)')
    ylabel('y(m)');
    title('Tiro con rozamiento')
    hold off

    function [detect,stopin,direction]=stop_proyectil_v2(~,x)
        detect=x(3)+h; 
        stopin=1; 
        direction=-1; 
    end
end

En esta tabla, la primera columna es el ángulo de tiro, la segunda, el tiempo de vuelo y la tercera, el alcance horizontal

         0    0.4525    4.5029
   10.0000    0.6629    6.4824
   20.0000    0.9192    8.5569
   30.0000    1.1893   10.1815
   40.0000    1.4479   10.9482
   50.0000    1.6782   10.6395
   60.0000    1.8682    9.2139
   70.0000    2.0097    6.7847
   80.0000    2.0969    3.5975
   90.0000    2.1263    0.0000

Actividades

Se introduce

Se resuelve por el procedimiento de Runge-Kutta, el sistema de dos ecuaciones diferenciales hasta que el proyectil choca con el suelo y=-h. Se traza la trayectoria del poyectil en color rojo.

Se traza la trayectoria parabólica (sin rozamiento) en color azul

{ a x =0 a y =g { v x = v 0 cosθ v y = v 0 sinθgt { x= v 0 cosθ·t y= v 0 sinθ·t 1 2 g t 2

Cuando el proyectil llega al suelo y=-h, el tiempo de vuelo T y el alcance X son

T= v 0 sinθ+ v 0 2 sin 2 θ+2gh g X= v 0 cosθ·T


Soluciones analíticas aproximadas

Las ecuaciones del movimiento del cuerpo son:

d v x dt =bv· v x d v y dt =gbv· v y v= v x 2 + v y 2

Vamos a considerar tres casos:

En este apartado, vamos a obtener soluciones analíticas para estos tres casos

Angulos de tiro θ pequeños

Para ángulos de tiro θ pequeños, vx>>vy, v=vx. Se cumple en todos los puntos de la trayectoria. Las ecuaciones del movimiento se escriben

d v x dt =b v x 2 d v y dt =gb v x · v y

Integramos la primera ecuación diferencial, con la condición inicial de que en el instante t=0, vx=v0x=v0·cosθ

v 0x v x d v x v x 2 = 0 t bdt v x = v 0x 1+ v 0x bt

Integramos la segunda ecuación diferencial, con la condición inicial de que en el instante t=0, vy=v0y=v0·sinθ

d v y dt +b v 0x 1+ v 0x bt v y =g

Llamando z=vy y a=b·v0x. Escribimos la ecuación diferencial de la forma equivalente

dz dt + a 1+at z=g

Probamos la solución z=u·v

du dt v+ dv dt u+ a 1+at u·v=g v( du dt + a 1+at u )+ dv dt u=g

>> syms z a t g v0y;
>> dsolve('Dz+a*z/(1+a*t)=-g','z(0)=v0y')
ans =v0y/(a*t + 1) - (g*t*(a*t + 2))/(2*(a*t + 1))
>> simplify(ans)
ans =-(a*g*t^2 + 2*g*t - 2*v0y)/(2*(a*t + 1))

Conocidas las componentes vx=dx/dt y vy=dy/dt de la velocidad en función del tiempo, integramos para obtener la posición x e y de la partícula en función del tiempo t, sabiendo que parte del origen en el instante t=0

Ecuación de la trayectoria. Despejamos el tiempo en la primera ecuación y sustituimos en la segunda

t= 1 b v 0x ( e bx 1 ) y=( v 0y + g 2b v 0x ) x v 0x g 4 b 2 v 0x 2 ( e 2bx 1 )

El rango R, se obtiene cuando y=0.

( v 0y + g 2b v 0x ) R v 0x g 4 b 2 v 0x 2 ( e 2bR 1 )=0 e 2bR =2b( 1+ 2b v 0x v 0y g )R+1

Expresamos el rango en términos de la función W de Lambert, solución de la ecuación trascendente ab·x+c=d·x+f con a→e, b→2b, c→0, d2b( 1+ 2b v 0x v 0y g ) , f→1

R= 1 2b { W( 1 1+β exp( 1 1+β ) )+ 1 (1+β) } β= 2b v 0x v 0y g

Altura máxima, se obtiene dy/dx=0. La abscisa del máximo de y es

h=( v 0y + g 2b v 0x ) 1 2b v 0x ln( 2b v 0x v 0y g +1 ) v 0y 2b v 0x h= v 0y 2b v 0x { ( β+1 β )ln( β+1 )1 }

Poniendo x=R, obtenemos el tiempo de vuelo

t= 1 b v 0x ( e bx 1 ) T= 1 b v 0x { exp( 1 2 { W( 1 1+β exp( 1 1+β ) )+ 1 (1+β) } )1 }

Lanzamos un proyectil con velocidad inicial v0=9.8 m/s, con un ángulo de tiro θ=20°. Supondremos que el parámetro b=0.1 m-1

b=0.1; %parámetro
v0=9.8;  %velocidad incial
angulo=20*pi/180; %ángulo de tiro
%solución analítica aproximada 
beta=2*b*v0*cos(angulo)*v0*sin(angulo)/9.8;
z=-exp(-1/(1+beta))/(1+beta);
R=-(lambertw(-1,z)+1/(1+beta))/(2*b); %alcance
f=@(x) (v0*sin(angulo)+9.8/(2*b*v0*cos(angulo)))*x/(v0*cos(angulo))-
9.8*(exp(2*b*x)-1)/(2*b*v0*cos(angulo))^2;

%procedimiento numérico
x0=[0,v0*cos(angulo),0,v0*sin(angulo)];
tspan=[0,2*v0*sin(angulo)/9.8]; %tiempo de vuelo sin rozamiento
%x(1) es x, x(2) es v_x, x(3) es y, x(4) es v_y
fg=@(t,x)[x(2);-b*sqrt(x(2)^2+x(4)^2)*x(2); x(4);-9.8-b*sqrt(x(2)^2+x(4)^2)*x(4)];
opts=odeset('events',@stop_proyectil_v2);
[t,x]=ode45(fg,tspan,x0,opts);

hold on
plot(x(:,1),x(:,3)) %trayectoria
fplot(f,[0,R])
grid on
legend('numérico','ángulo pequeño')
xlabel('x(m)')
ylabel('y(m)');
title('Tiro con rozamiento')
hold off

Comparamos la altura máxima h con el valor obtenido integrando las ecuaciones del movimiento por procedimientos numéricos, max(x(:,3)), el tiempo de vuelo T con t(end), y el rango R con x(end,1), tal como se aprecia en el código más abajo

>> h=v0*sin(angulo)*((beta+1)*log(beta+1)/beta-1)/(2*b*v0*cos(angulo))
h =    0.4806
>> max(x(:,3))
ans =    0.4773
>> T=(exp(-(lambertw(-1,z)+1/(1+beta))/2)-1)/(b*v0*cos(angulo))
T=    0.6246
>> t(end)
ans =    0.6228
>> R 
R =    4.5436
>> x(end,1)
ans =    4.5106

La solución numérica se aproxima a la solución analítica para ángulos pequeños de tiro

Angulos de tiro grandes, próximos a 90°

Para ángulos de tiro θ grandes, próximos a 90°, |vy|>>vx, v=|vy|. vy es positivo en la rama ascendente, es negativo en la rama descendente y es nulo en el punto más alto de la trayectoria. Las ecuaciones del movimiento se escriben

d v x dt =mb| v y | v x d v y dt =gb| v y | v y

Debido a que vy cambia de signo de la trayectoria ascendente a la descendente, hay que resolver este sistema de ecuaciones diferenciales en dos etapas

Trayectoria ascendente vy>0

d v x dt =b v y v x d v y dt =gb v y 2

Integramos la segunda ecuación diferencial

v 0y v y d v y g+b v y 2 = 0 t dt arctan( b g v y )arctan( b g v 0y )= bg t v y = g b tan( φ bg t ) φ=arctan( b g v 0y )

Conocido vy, integramos la primera ecuación diferencial para obtener la expresión de vx

v 0x v x d v x v x = 0 t b g b tan( φ bg t )dt ln v x v 0x =ln( cos( φ bg t ) cosφ ) v x = v 0x cosφ cos( φ bg t )

Conocidas las componentes vx y vy de la velocidad en función del tiempo, integramos para obtener la posición x, y, sabiendo que en el instante t=0, el proyectil parte del origen

Vértice de la trayectoria

Denominamos τ al tiempo que tarda la partícula en alcanzar la altura máxima, el vértice de la trayectoria

τ= φ bg

Las coordenadas del vértice de la trayectoria son

y 1 = ln( cosφ ) b x 1 = v 0x cosφ bg ln( tan( π 4 + φ 2 ) )

Las componentes de velocidad v1x y v1y son

v 1x = v 0x cosφ v 1y =0

El vértice de la trayectoria es el punto de partida para la trayectoria descendente

Trayectoria descendente vy<0

Las ecuaciones del movimiento se escriben

d v x dt =b v y v x d v y dt =g+b v y 2

Integramos la segunda ecuación diferencial

0 v y d v y g+b v y 2 = τ t dt 1 gb 0 u du 1 u 2 =(tτ)u= b g v y du 1 u 2 = 1 2 { du 1+u + du 1u }= 1 2 ln( 1+u 1u ) 1 2 gb ln( 1+ b g v y 1 b g v y )=(tτ) v y = g b exp( 2 gb (tτ) )1 exp( 2 gb (tτ) )+1

Conocida vy, integramos la primera ecuación diferencial para obtener la expresión de vx

v 1x v x d v x v x =b τ t g b exp( 2 gb (tτ) )1 exp( 2 gb (tτ) )+1 dt e 2u 1 e 2u +1 du= tanh( u ) ·du=ln( cosh( u ) ) ln( v x v 1x )=ln( cosh( gb (tτ) ) ) v x = v 0x cosφ cosh( gb (tτ) )

Conocidas las componentes vx y vy de la velocidad en función del tiempo, integramos para obtener las expresiones de x e y

Tiempo de vuelo, T que tarda en llegar al suelo, y=0

cosh( gb (tτ) )cosφ=1 e u + e u 2 = 1 cosφ e 2u 2cosφ e u +1=0 T=τ+ 1 gb ln( 1 cosφ +tanφ )

Introduciendo este tiempo T en la expresión de x obtenemos el rango R

Lanzamos un proyectil con velocidad inicial v0=9.8 m/s, con un ángulo de tiro θ=70°. Supondremos que el parámetro b=0.1 m-1

b=0.1; %parámetro
v0=9.8;  %velocidad incial
angulo=70*pi/180; %ángulo de tiro
%solución analítica aproximada 
phi=atan(sqrt(b/9.8)*v0*sin(angulo));
%coordendas del vértice de la trauyectoria
tau=phi/sqrt(9.8*b); %tiempo 
y1=-log(cos(phi))/b;
x1=v0*cos(angulo)*cos(phi)*log(tan(pi/4+phi/2))/sqrt(9.8*b);
f_X=@(t) v0*cos(angulo)*cos(phi)*log(tan(phi/2+pi/4)./
tan(phi/2+pi/4-sqrt(9.8*b)*t/2))/sqrt(9.8*b);
f_Y=@(t) log(cos(phi-sqrt(9.8*b)*t)/cos(phi))/b;
g_X=@(t) 2*v0*cos(angulo)*cos(phi)*
(atan(exp(sqrt(9.8*b)*(t-tau)))-pi/4)/sqrt(9.8*b)+x1;
g_Y=@(t) -log(cosh(sqrt(9.8*b)*(t-tau))*cos(phi))/b;
tFin=tau+log(1/cos(phi)+tan(phi))/sqrt(9.8*b); %tiempo total de vuelo

%procedimiento numérico
x0=[0,v0*cos(angulo),0,v0*sin(angulo)];
tspan=[0,2*v0*sin(angulo)/9.8]; %tiempo de vuelo sin rozamiento
fg=@(t,x)[x(2);-b*sqrt(x(2)^2+x(4)^2)*x(2); x(4);-9.8-b*sqrt(x(2)^2+x(4)^2)*x(4)];
opts=odeset('events',@stop_proyectil_v2);
[t,x]=ode45(fg,tspan,x0,opts);

hold on
plot(x(:,1),x(:,3)) %trayectoria
fplot(f_X,f_Y,[0,tau])
fplot(g_X,g_Y,[tau,tFin])
grid on
legend('numérico','ángulo grande')
xlabel('x(m)')
ylabel('y(m)');
title('Tiro con rozamiento')
hold off

Comparamos la altura máxima y1 con el valor obtenido integrando las ecuaciones del movimiento por procedimientos numéricos, max(x(:,3)), el tiempo de vuelo tFin con t(end), y el rango R con x(end,1), tal como se aprecia en el código más abajo

>> y1
y1 =    3.1173
>> max(x(:,3))
ans =    3.0336
>> tFin
tFin =    1.5965
>> t(end)
ans =    1.5732
>> R=2*v0*cos(angulo)*cos(phi)*(atan(exp(sqrt(9.8*b)*(T-tau)))-pi/4)/sqrt(9.8*b)+x1
R =    3.9180
>> x(end,1)
ans =    3.6386

Vemos que la solución numérica y la aproximación analítica para ángulos próximos a 90° se alejan bastante en comparación con el caso anterior, para ángulos de tiro pequeños

Angulos de tiro próximos a 45°

El módulo de la velocidad en la dirección horizontal es v= 2 v x , y en la dirección vertical v= 2 | v y |

Las ecuaciones del movimiento se escriben

d v x dt = 2 b v x 2 d v y dt =g 2 b| v y | v y

Debido a que vy cambia de signo de la trayectoria ascendente a la descendente, hay que resolver este sistema de ecuaciones diferenciales en dos etapas

Trayectoria ascendente vy>0

d v x dt = 2 b v x 2 d v y dt =g 2 b v y 2

Trayectoria desscendente vy<0

d v x dt = 2 b v x 2 d v y dt =g+ 2 b v y 2

La solución de la primera ecuación diferencial es la misma que hemos obtenido para ángulos de tiro pequeños, cambiando b 2 b . La solución de la segunda ecuación diferencial es la misma que hemos obtenido para ángulos de tiro grandes, haciendo el mismo cambio

Lanzamos un proyectil con velocidad inicial v0=9.8 m/s, con un ángulo de tiro θ=45°. Supondremos que el parámetro b=0.1 m-1

b=0.1*sqrt(2); % (b=0.1), parámetro para la solución analítica
v0=9.8;  %velocidad incial
%solución analítica aproximada 
angulo=45*pi/180; %ángulo de tiro
phi=atan(sqrt(b/9.8)*v0*sin(angulo));
%coordendas del vértice de la trayectoria
tau=phi/sqrt(9.8*b); %tiempo 
y1=-log(cos(phi))/b;
x1=log(1+b*v0*cos(angulo)*tau)/b;
f_X=@(t) log(1+b*v0*cos(angulo)*t)/b;
f_Y=@(t) log(cos(phi-sqrt(9.8*b)*t)/cos(phi))/b;
g_X=@(t) log(1+b*v0*cos(angulo)*t)/b;
g_Y=@(t) -log(cosh(sqrt(9.8*b)*(t-tau))*cos(phi))/b;
tFin=tau+log(1/cos(phi)+tan(phi))/sqrt(9.8*b); %tiempo total de vuelo

%procedimiento numérico
b=0.1; %parámetro para la solución numérica
x0=[0,v0*cos(angulo),0,v0*sin(angulo)];
tspan=[0,2*v0*sin(angulo)/9.8]; %tiempo de vuelo sin rozamiento
fg=@(t,x)[x(2);-b*sqrt(x(2)^2+x(4)^2)*x(2); x(4);-9.8-b*sqrt(x(2)^2+x(4)^2)*x(4)];
opts=odeset('events',@stop_proyectil_v2);
[t,x]=ode45(fg,tspan,x0,opts);

hold on
plot(x(:,1),x(:,3)) %trayectoria
fplot(f_X,f_Y,[0,tau])
fplot(g_X,g_Y,[tau,tFin])
grid on
legend('numérico','ángulo medio')
xlabel('x(m)')
ylabel('y(m)');
title('Tiro con rozamiento')
hold off

Comparamos la altura máxima y1 con el valor obtenido integrando las ecuaciones del movimiento por procedimientos numéricos, max(x(:,3)), el tiempo de vuelo tFin con t(end), y el rango R con x(end,1), tal como se aprecia en el código más abajo

>> y1
y1 =    1.8614
>> max(x(:,3))
ans =    1.7997
>> tFin
tFin =    1.2334
>> t(end)
ans =    1.2078
>> R=log(1+b*v0*cos(angulo)*tFin)/b
R =    5.6032
>> x(end,1)
ans =    5.8162

Referencias

Al final de la siguiente página, titulada Fuerza de rozamiento proporcional al cuadrado de la velocidad (II)