Braquistócrona en el campo gravitatorio no uniforme de la Tierra

La Tierra tiene una masa M y un radio a. Supondremos que una partícula de masa m parte del reposo desde una distancia r0>a al centro de la Tierra, tal como se muestra en la figura

Calcularemos la trayectoria que deberá seguir la partícula para que emplee un tiempo mínimo en llegar al punto P más cercano al superficie terrestre

Cuando la partícula se encuentra en B a una distancia r del centro de la Tierra, su velocidad v es

1 2 m v 2 +( G Mm r )=G Mm r 0 v= 2GM( 1 r 1 r 0 )

El tiempo que tarda en desplazarse entre desde A(r0,0) a B (r,θ) es

t= A B ds v

Expresamos ds= d x 2 +d y 2 , en coordenadas polares

x=rcosθ, y=rsinθ

dx=dr·cosθ-rsinθ·dθ, dy=dr·sinθ+rcosθ·dθ

ds= d r 2 + r 2 d θ 2 = ( dr dθ ) 2 + r 2 dθ= r ˙ 2 + r 2 dθ

El tiempo que tarda en desplazarse el móvil entre A y B expresado en coordendas polares es

t(r)= A B r ˙ 2 + r 2 2GM( 1 r 1 r 0 ) dθ= 1 2GM A B r r 0 ( r ˙ 2 + r 2 ) r 0 r dθ

Establecemos magnitudes adimensionales, de modo que R=r/a, g=GM/a2 y T=t 2g a

T(r)= A B R R 0 ( R ˙ 2 + R 2 ) R 0 R dθ

Tenemos que buscar la función R=R(θ) que haga la funcional T(r) extremo. Dado que el integrando, la función

f(θ,R, R ˙ )= R R 0 ( R ˙ 2 + R 2 ) R 0 R

no depende de θ, la ecuación de Euler-Lagrange se escribe

f R ˙ f R ˙ = 1 c R R 0 ( R ˙ 2 + R 2 ) R 0 R R R 0 R 0 R R ˙ 2 R ˙ 2 + R 2 1 c dR dθ =±R c R 0 R 3 +R R 0 R 0 R

Siendo c una constante a determinar por las condiciones de contorno. El signo adecuado es (-) ya que R disminuye con el ángulo θ

Trayectoria

El punto P, la distancia más cercana a la Tierra Rc (en unidades adimensionales) se obtiene derivando dR/dθ=0. La raíz real de la ecuación cúbica, cR0R3+R-R0=0

Las raíces de un polinomio se calculan mediante el comando roots de MATLAB, para una ecuación cúbica las raíces se puede calcular de forma exacta. Se ha creado una función raices_3, que calcula las raíces de la ecuación x3+ax2+bx+c=0. Si la ecuación, como es este el caso, tiene una raíz real y dos complejas conjugadas, la primera es la real

function x = raices_3(p)
    Q=(p(2)*p(2)-3*p(3))/9;
    R=(2*p(2)^3-9*p(2)*p(3)+27*p(4))/54;
    x=zeros(3,1); %reserva memoria para un vector de tres elementos
    if (R*R)<(Q^3)
        tetha=acos(R/sqrt(Q^3));
        x(1)=-2*sqrt(Q)*cos(tetha/3)-p(2)/3;
        x(2)=-2*sqrt(Q)*cos((tetha+2*pi)/3)-p(2)/3;
        x(3)=-2*sqrt(Q)*cos((tetha-2*pi)/3)-p(2)/3;
    else
        A=-sign(R)*nthroot(abs(R)+sqrt(R*R-Q^3),3);
        if A==0
            B=0;
        else
            B=Q/A;
        end
        x(1)=(A+B)-p(2)/3;
        x(2)=-(A+B)/2-p(2)/3+(sqrt(3)*(A-B)/2)*sqrt(-1); %mejor que i
        x(3)=-(A+B)/2-p(2)/3-(sqrt(3)*(A-B)/2)*sqrt(-1);
    end
end

Llamamos a la función raices_3 para calcular la raíz real de la ecuación

R 3 + 1 c R 0 R 1 c =0

R0=2;
c=0.5;
raiz=raices_3([1,0,1/(c*R0),-1/c]);
Rc=raiz(1);
display(Rc)
Rc =     1

Obtenemos la ecuación implícita de la trayectoria R=R(θ) en magnitudes adimensionales, integrando la ecuación diferencial de primer orden

θ= R R 0 1 R R 0 R c R 3 R 0 +R R 0 dR

Para R=Rc obtenemos la otra coordenada θc del punto P más cercano a la superficie de la Tierra

R0=2;
c=0.5;
raiz=raices_3([1,0,1/(c*R0),-1/c]);
Rc=raiz(1);
f=@(x) sqrt((R0-x)./(c*R0*x.^3+x-R0))./x;
phi_c=integral(f,Rc,R0);
display(phi_c)
phi_c =    0.6054

El integrando se hace infinito para el límite inferior R=Rc, sin embargo, MATLAB maneja adecuadamente este tipo de integral. Representamos el integrando en función de R

>> fplot(f,[Rc,R0])
>> line([Rc,Rc],[0,15],'linestyle','--')
>> xlim([0,R0])

Dado el valor de la constante c obtenemos las coordendas de los puntos B(R,θ) por los que pasa la trayectoria en la que la partícula tarda un tiempo mínimo en desplazarse. En principio, es posible el problema inverso, dadas las coordenadas de un punto B calcular la constante c, resolviendo la ecuación trascendente, f(c)=0.

θ R R 0 1 R R 0 R c R 3 R 0 +R R 0 dR =0

Sin embargo, la función fzero de MATLAB, o el procedimiento de Newton dan errores provocados por valores complejos de la integral cuando el parámetro c desconocido está fuera de cierto rango

Una vez alcanzada la posición de retorno P, la partícula se mueve siguiendo una trayectoria simétrica hasta que alcanza la distancia R0 en reposo haciendo un ángulo 2θc, tal como vemos en la figura al principio de esta página. Debido a la simetría, solamente es necesario calcular media trayectoria.

R0=2;
c=0.5;
raiz=raices_3([1,0,1/(c*R0),-1/c]);
Rc=raiz(1);
%trayectoria
f=@(x) sqrt((R0-x)./(c*R0*x.^3+x-R0))./x;
r=linspace(R0,Rc,100);
phi=zeros(0,length(r));
i=1;
for R=r
    phi(i)=integral(f,R,R0);
    i=i+1;
end
ang=[phi,2*phi(end)-fliplr(phi)];
rr=[r,fliplr(r)];
x=rr.*sin(ang);
y=rr.*cos(ang);
hold on
plot(x,y);

%punto P más cercano
x=Rc*sin(phi(end));
y=Rc*cos(phi(end));
plot(x,y,'o','markersize',3,'markeredgecolor','r','markerfacecolor','r')
line([0,x],[0,y], 'linestyle','--')

%superficie de la Tierra
fplot(@(t) cos(t),@(t) sin(t),[0,2*pi])
hold off
grid on
axis equal
xlim([0,R0])
ylim([0,R0])
xlabel('x')
ylabel('y')
title('trayectoria de tiempo mínimo')

Tiempo de viaje

El tiempo (en unidades adimensionales) que tarda la partícula en viajar desde A(R0,0) a B(Rc,θc)

T= R 0 R c R R 0 ( R ˙ 2 + R 2 ) R 0 R dθ

con

R ˙ = dR dθ =R c R 0 R 3 +R R 0 R 0 R dθ= 1 R R 0 R c R 3 R 0 +R R 0 dR

Tenemos que integrar

T= R c R 0 R 2 ( R 0 R )( c R 3 R 0 +R R 0 ) dR

La siguiente porción de código, nos proporciona las coordendas del punto B(Rc,θc) de llegada y el tiempo T que tarda en desplazarse desde A(R0, 0) a B siguiendo la trayectoria que emplea un tiempo mínimo

R0=2;
c=0.5;
raiz=raices_3([1,0,1/(c*R0),-1/c]);
Rc=raiz(1);
f=@(x) sqrt((R0-x)./(c*R0*x.^3+x-R0))./x;
phi_c=integral(f,Rc,R0);
g=@(x) (x.^2)./sqrt((R0-x).*(c*R0*x.^3+x-R0));
T=integral(g,Rc,R0)*sqrt(c)*R0;
disp([Rc; phi_c;T])
    1.0000
    0.6054
    4.2099

El integrando se hace infinito en los dos límites de integración, pero el procedimiento integral de MATLAB consigue hallar su valor numérico, sin avisos ni errores

>> fplot(g,[Rc,R0])
>> xlim([0,R0])
>> line([Rc,Rc],[0,15],'linestyle','--')

Otras posibles trayectorias

Trayectoria rectilínea

Para que sirva de comparación, examinamos el tiempo que tarda la partícula en moverse desde el punto A(R0, 0) a B(Rc,θc) siguiendo una trayectoria rectilínea bajo la única acción de la fuerza de atracción

La ecuación de la recta que une dos puntos A y B es

y= R 0 R c cos θ c R c sin θ c x+ R 0 Rcosθ= R 0 R c cos θ c R c sin θ c Rsinθ+ R 0

Despejamos R y calculamos dR/dθ

R= R 0 R c sin θ c R c sin( θ c θ )+ R 0 sinθ R ˙ = dR dθ = R 0 R c sin θ c ( R c cos( θ c θ ) R 0 cosθ ) ( R c sin( θ c θ )+ R 0 sinθ ) 2

Calculamos el tiempo T integrando por procedimientos numéricos

T= A B R R 0 ( R ˙ 2 + R 2 ) R 0 R dθ T= ( R c 2 + R 0 2 2 R 0 R c cos θ c ) R 0 3 R c 3 sin 3 θ c 0 θ c dθ ( R c sin( θ c θ )+ R 0 sinθ ) 2 R c sin( θ c θ )+ R 0 sinθ R c sin θ c

R0=2;
c=0.5;
raiz=raices_3([1,0,1/(c*R0),-1/c]);
Rc=raiz(1);
f=@(x) sqrt((R0-x)./(c*R0*x.^3+x-R0))./x;
phi_c=integral(f,Rc,R0);
g=@(x) 1./(((Rc*sin(phi_c-x)+R0*sin(x)).^2).*
sqrt(Rc*sin(phi_c-x)+R0*sin(x)-Rc*sin(phi_c)));
T=integral(g,0,phi_c)*sqrt((Rc^2+R0^2-2*R0*Rc*cos(phi_c))*
R0^3*Rc^3*sin(phi_c)^3);
disp([Rc; phi_c;T])
    1.0000
    0.6054
    4.4124

Tarda un tiempo de 4.41 en recorrer la trayectoria rectilínea, mayor que tiempo mínimo 4.21 calculado en el apartado precedente

Caída del cuerpo

Finalizamos, comparando con el tiempo que tarda la partícula en caer radialmente desde la distancia R0 a la distancia Rc partiendo del reposo. En la página titulada, Movimiento de dos cuerpos bajo la fuerza de atracción mutua, estudiamos esta situación, llegando a la expresión

t= r 0 r 0 2GM { arccos ( r c r 0 )+ r c r 0 1 r c r 0 }

Establecemos las mismas magnitudes adimensionales, de modo que R=r/a, g=GM/a2 y T=t 2g a , siendo a el radio de la Tierra

T= R 0 3/2 ( arccos ( R c R 0 )+ R c R 0 1 R c R 0 )

R0=2;
c=0.5;
raiz=raices_3([1,0,1/(c*R0),-1/c]);
Rc=raiz(1);
T=R0^(3/2)*(acos(sqrt(Rc/R0))+sqrt(Rc/R0)*sqrt(1-Rc/R0));
disp(T)
    3.6357

Referencias

Bani Singh, Raive Kumar. Brachistochrone problem in nonuniform gravity. Indian J. pure appl. Math. 19 (6): 575-585, June 1988