Ecuación de Lane-Emden. Interior de los cuerpos celestes

Masa del cuerpo celeste

Supongamos un cuerpo celeste de masa M y radio R cuya densidad ρ(r) cambia con la distancia al centro.

Dividimos la esfera de radio R en capas esféricas de radio r y de espesor dr. La masa dm que contiene cada una de las capas es

dm=ρ(r)( 4π r 2 dr )

La masa M(r) contenida en una esfera de radio r es

M(r)=4π 0 r ρ(r) r 2 dr

Cuando el límite superior es R tenemos la masa M del cuerpo celeste

Cuando la densidad es constante

ρ= M 4 3 π R 3

Presión en el centro

En una capa esférica de de radio r y de espesor dr, consideramos un elemento de volumen (en color rojo) de área dA. Las fuerzas sobre el elemento de masa dm=ρ·dA·dr son

En el equilibrio

( p( r+dr )p(r) )dA=g(r)( ρ(r)dA·dr ) dp=g(r)ρ(r)·dr

Que hemos deducido en la página titulada Esfera de gas en equilibrio bajo la acción de su propia gravedad

dp dr =g(r)ρ(r)

Presión en el centro de la Tierra

Suponiendo que la densidad es constante. La aceleración de la gravedad en un punto del interior de la Tierra a una distancia r de su centro es

g(r)=GM r R 3

La presión a una distancia r del centro de la Tierra es

p 0 p= r R M 4 3 π R 3 GM r R 3 dr = 3G M 2 8π R 6 ( R 2 r 2 )

donde p0=1.013·105 Pa es la presión para r=R es decir, la presión atmosférica

En el centro de la Tierra r=0.

p= p 0` + 3G M 2 8π R 4 =1.73· 10 11 Pa

Con G=6.67·10-11 Nm2/kg2, R=6.37·106 m, M=5.98·1024 kg

La presión atmosférica es despreciable frente a la presión en el centro de una distribución esférica y uniforme de masa.

Relación entre presión y densidad

Supondremos que la presión p(r) y la densidad ρ(r) están relacionadas. Una ecuación similar a la de un proceso politrópico

p=K ρ (n+1)/n

La densidad se expresa

ρ(r)= ρ c θ n (r)

Para r=0, ρ=ρc, por lo que θ(0)=1

La presión p(r) es, entonces

p(r)=K ρ 1+1/n =K ρ c 1+1/n θ n+1 (r)

La presión en el centro, r=0

p c =K ρ c 1+1/n

La presión p(r) se expresa

p(r)= p c θ n+1 (r)

Ecuación Lane-Emden

La aceleración de la gravedad g(r) en un punto situado a una distancia r del centro, se debe (ley de Gauss) a la masa M(r) contenida en la esfera de radio r

g(r)= GM(r) r 2 dp dr =ρ(r) GM(r) r 2

La ecuación diferencial que relaciona presión y densidad se convierte

r 2 ρ dp dr =GM(r) d dr ( r 2 ρ d( K ρ c 1+1/n θ n+1 ) dr )=4πG r 2 ρ 1 r 2 d dr ( r 2 ρ c θ n K ρ c 1+1/n (n+1) θ n dθ dr )=4πG ρ c θ n (n+1)K ρ c 1+1/n 4πG 1 r 2 d dr ( r 2 dθ dr )= θ n

Hemos derivado respecto de r, teniendo en cuenta que dM(r)/dr=4πr2ρ(r)

Se define una variable ξ tal que r=αξ

(n+1)K ρ c 1+1/n 4πG 1 α 2 1 ξ 2 d dξ ( ξ 2 dθ dξ )= θ n 1 ξ 2 d dξ ( ξ 2 dθ dξ )= θ n ,α= (n+1)K ρ c 1+1/n 4πG

Esta es la ecuación de Lane-Emden que resolveremos con las condiciones iniciales

Representamos las soluciones numéricas, empleando el procedimiento ode45 de MATLAB, de la ecuación de Lane-Emden para n=0, 1, 2, 3, 4, 5, 6.

d 2 θ d ξ 2 + 2 ξ dθ dξ + θ n =0

Observamos que algunas cortan al eje horizontal ξ en un punto, en varios puntos o en ninguno. El primer punto de corte es significativo, su abscisa es ξ1

function politropico_9
    opts=odeset('events',@stop_politropico);
    hold on  
    for n=0:6
        fg=@(t,x)[x(2);-2*x(2)/t-x(1)^n];
        [t,x]=ode45(fg,[eps,20],[1,eps],opts);
        plot(t,x(:,1))
    end
    hold off
    grid on
    xlabel('\xi')
    ylabel('\theta');
    title('Ecuación Lane-Emden')
 
    function [value,isterminal,direction]=stop_politropico(~,x)
       %x(1) es  x, x(3) es y
        value=x(1)+0.25;
        isterminal=1;   
        direction=-1; 
    end
end

Representamos dichas soluciones numéricas, hasta el primer punto de corte con el eje horizontal (punto de color rojo) si lo tuviera

function politropico_6
    opts=odeset('events',@stop_politropico);
    hold on  
    for n=0:6
        fg=@(t,x)[x(2);-2*x(2)/t-x(1)^n];
        [t,x, te, xe]=ode45(fg,[eps,20],[1,eps],opts);
        plot(t,x(:,1))
        if te
            plot(te,0,'ro','markersize',3,'markerfacecolor','r')
            disp([n,te, xe(2)])
        end
    end
    hold off
    grid on
    xlabel('\xi')
    ylabel('\theta');
    title('Ecuación Lane-Emden')
    
    function [value,isterminal,direction]=stop_politropico(~,x)
        value=x(1);
        isterminal=1;   
        direction=-1; 
    end

end

        0    2.4495   -0.8165
    1.0000    3.1420   -0.3182
    2.0000    4.3541   -0.1271
    3.0000    6.9009   -0.0424
    4.0000   15.0052   -0.0080

La tabla recoge los datos de la abscisa ξ1 del punto de corte con el eje horizontal y de la pendiente de la curva θ(ξ) en dicho punto. Datos que precisaremos más adelante

nξ1(dθ/dξ)ξ1
0 2.4495-0.8165
13.1420-0.3182
24.3541-0.1271
36.9009-0.0424
415.0052-0.0080

Masa y radio del cuerpo celeste

En la superficie del cuerpo celeste r=R, la densidad ρ(r) se anula, R=αξ1, θ(ξ1)=0. Por tanto, ξ1 es el primer cero de la función θ(ξ)

La masa M vale

M=4π 0 R ρ(r) r 2 dr =4π ρ c α 3 0 ξ 1 ξ 2 θ n dξ , ξ 1 = R α

Por la ecuación de Lane-Emden

ξ 2 θ n = d dξ ( ξ 2 dθ dξ )

La masa del cuerpo celeste se expresa en términos de ξ1 y de la derivada dθ/dξ para ξ=ξ1

M=4π ρ c α 3 0 ξ 1 ξ 2 θ n dξ =4π ρ c α 3 0 ξ 1 d( ξ 2 dθ dξ ) =4π ρ c α 3 ξ 1 2 ( dθ dξ ) ξ 1 M=4π ρ c ( (n+1)K ρ c 1+1/n 4πG ) 3/2 ξ 1 2 ( dθ dξ ) ξ 1 M= ( n+1 ) 3/2 4π ( K G ) 3/2 ρ c 3n 2n ξ 1 2 ( dθ dξ ) ξ 1

Relación entre masa M y radio R

M=4π ρ c α 3 ξ 1 2 ( dθ dξ ) ξ 1 ,R= ξ 1 α α 2 = (n+1)K ρ c 1+1/n 4πG , ρ c 1n n = 4πG α 2 (n+1)K , ρ c = ( (n+1)K 4πG α 2 ) n n1 M=4π ( (n+1)K 4πG α 2 ) n n1 α 3 ξ 1 2 ( dθ dξ ) ξ 1 =4π ( (n+1)K 4πG ) n n1 ( R ξ 1 ) n3 n1 ξ 1 2 ( dθ dξ ) ξ 1 4π ( M ξ 1 2 ( dθ dξ ) ξ 1 ) n1 = ( (n+1)K G ) n ( R ξ 1 ) n3 M n1 R n3

Dos casos son importantes

  • para n=1, el radio es independiente de la masa, lo comprobaremos más abajo
  • para n=3, la masa es independiente del radio
  • Otra característica importante, es el cociente entre las densidad y la densidad media

    D n = ρ c <ρ> ,<ρ>= M 4 3 π R 3 D n = ρ c 4π R 3 3M = ρ c 4π R 3 3M = ρ c 4π α 3 ξ 1 3 3·4π ρ c α 3 ξ 1 2 ( dθ dξ ) = ξ 1 3 ( dθ dξ ) ξ 1

    Soluciones analíticas

    La ecuación de Lane-Emden tiene soluciones analíticas para n=0, 1 y 5

    n=0

    Para n=0, la densidad es constante e igual a la densidad ρc. La solución de la ecuación Lane-Emden es sencilla

    1 ξ 2 d dξ ( ξ 2 dθ dξ )=1 d dξ ( ξ 2 dθ dξ )= ξ 2 ξ 2 dθ dξ = ξ 3 3 + c 1 dθ dξ = ξ 3 + c 1 ξ 2 θ= ξ 2 6 c 1 ξ + c 2

    Las constantes c1 y c2 se determinan a partir de las condiciones iniciales

    ξ=0, θ=1

    c1=0, c2=1

    θ=1 ξ 2 6

    Se cumple la segunda condición inicial, que dθ/dξ=0 para ξ=0

    La función se anula θ(ξ)=0 para ξ 1 = 6 . El radio del cuerpo celeste es, R= 6 α

    La presión es

    p= p c θ(ξ)= p c ( 1 ξ 2 6 )= p c ( 1 r 2 6 α 2 ) p(r)= p c ( 1 r 2 R 2 )

    Como la densidad es constante ρc, la presión en el centro se calcula integrando

    dp dr =ρ(r) GM(r) r 2 dp dr = ρ c G ρ c 4 3 π r 3 r 2 p c 0 dp = 4π 3 G ρ c 2 0 R r·dr p c = 2π 3 G ρ c 2 R 2

    n=1

    La ecuación de Lane-Emden para n=1

    1 ξ 2 d dξ ( ξ 2 dθ dξ )=θ ξ 2 d 2 θ d ξ 2 +2ξ dθ dξ + ξ 2 θ=0

    Es la ecuación diferencial de las funciones esféricas de Bessel.

    x 2 d 2 y d x 2 + 2 x d y d x + ( x 2 n ( n + 1 ) ) y = 0

    La solución de esta ecuación diferencial para n=0 es

    y(x)=A· j 0 (x)+B· y 0 (x) j 0 (x)= sinx x , y 0 (x)= cosx x

    La solución de la ecuación de Lane_Emden

    θ(ξ)= sinξ ξ

    B=0, ya que cosξ/ξ tiende a ∞ cuando ξ→0. Esta solución cumple las condiciones iniciales

    lim ξ0 sinξ ξ =1 dθ dξ = ξcosξsinξ ξ 2 ( dθ dξ ) ξ=0 =0

    El primer cero de esta función es ξ1

    El parámetro α para n=1

    α= K 2πG

    La presión en el centro es

    p c =K ρ c 2 α 2 = p c 2πG ρ c 2 , R 2 π 2 = p c 2πG ρ c 2 p c = 2G π ρ c 2 R 2

    La presión p(r)

    θ(r)= sin( π r R ) π r R = R πr sin( π r R ) p(r)= p c θ 2 (r)= p c ( R πr sin( π r R ) ) 2

    La densidad

    ρ= ρ c θ ρ(r)= ρ c R πr sin( π r R )

    La masa

    M=4π ρ c α 3 ξ 1 2 ( dθ dξ ) ξ 1 M=4π ρ c ( R π ) 3 π 2 ( dθ dξ ) ξ 1

    Nos queda por calcular el valor de la derivada de θ(ξ) en ξ1

    dθ dξ = ξcosξsinξ ξ 2 dθ dξ | ξ=π = π π 2 = 1 π

    El resultado es

    M=4π ρ c ( R π ) 3 π 2 1 π = 4 π ρ c R 3

    El radio R

    p c = 2G π ρ c 2 R 2 R= π p c 2G ρ c 2 = πK ρ c 2 2G ρ c 2 = πK 2G

    es independiente de la masa M

    n=5

    Se ha encontrado solución analítica a la ecuación diferencial

    1 ξ 2 d dξ ( ξ 2 dθ dξ )= θ 5

    Es complicado deducir la solución de esta ecuación diferencial, Véase

    Chandrasekhar, S. An Introduction to the Study of Stellar Structure. New York: Dover, pp. 84-182, 1967.

    θ= 1 1+ 1 3 ξ 2

    La densidad es

    ρ(r)= ρ c θ n ρ(r)= ρ c ( 1+ 1 3 ξ 2 ) 5/2

    No hay corte ξ1 con el eje horizontal, ya que θ→0 cuando ξ→∞. El radio es por tanto, infinito. Sin embargo, la masa es finita

    M= ( n+1 ) 3/2 4π ( K G ) 3/2 ρ c 3n 2n ξ 1 2 ( dθ dξ ) ξ 1

    El límite cuando ξ→∞, del producto de los dos últimos términos

    ξ 2 dθ dξ = ξ 3 3 ( 1+ 1 3 ξ 2 ) 3/2 1 3 lim ξ ( ξ 3 ( 1+ 1 3 ξ 2 ) 3/2 )= 1 3 lim ξ ( 1 ( 1 ξ 2 + 1 3 ) 3/2 )= 3 3/2 3 = 3

    La masa M es

    M= 6 3/2 4π ( K G ) 3/2 ρ c 1 5 3 = 3 2 2 π ( K G ) 3/2 ρ c 1 5

    La presión en el centro es

    p c =K ρ c 1+1/n p c =K ρ c 6/5

    En términos de la masa M

    M 2 = 3 4 2 π ( K G ) 3 ρ c 2/5 p c = ( π M 2 G 3 3 4 ·2 ) 1/3 ρ c 4/3

    Representamos las soluciones analíticas de la ecuación diferencial de Lane-Emden

    hold on
    fplot(@(x) 1-x.^2/6, [0,sqrt(6)])
    fplot(@(x) sin(x)./x, [0,pi])
    fplot(@(x) 1./sqrt(1+x.^2/3), [0,10])
    hold off
    grid on
    xlabel('\xi')
    ylabel ('\theta')
    legend('n=0','n=1','n=5', 'location','best')
    title('Soluciones analíticas')

    Las abscisas de los puntos de corte con el eje horizontal son, para n=0, ξ1= 6 , para n=1, ξ1=π.

    Procedimiento numérico

    Comprobamos que el procedimiento de Runge-Kutta resuelve la ecuación diferencial de Lane-Emden para los casos que tiene solución analítica. Este procedimiento parece más adecuado que las diversas veriones ode?? de MATLAB

    Para mejorar los resultados, calculamos ξ1 y (dθ/dξ)ξ1 mediante interpolación lineal, del siguiente modo

    ξ= θ k ξ k+1 θ k+1 ξ k θ k θ k+1 ,v= v k ( ξ k+1 ξ )+ v k+1 ( ξ ξ k ) ξ k+1 ξ k

    Donde el símbolo v significa dθ/dξ

    function politropico_8
        hold on
        for n=[0,1,5]
            f=@(t,x,v) -2*v/t-x^n;
            [t,x,~,k1]=rk_2(f,eps,20,1,eps,200);
            x=x(1:k1);
            t=t(1:k1);
            plot(t,x)
        end
        fplot(@(x) 1-x.^2/6, [0,sqrt(6)]) %soluciones analíticas
        fplot(@(x) sin(x)./x, [0,pi])
        fplot(@(x) 1./sqrt(1+x.^2/3), [0,20])
        hold off
        grid on
        xlabel('\xi')
        ylabel('\theta');
        title('Ecuación de Lane-Emden')
    
        function [t,x,v, k1] =rk_2(f,t0,tf,x0,v0,n)
              h=(tf-t0)/n;
              t=t0:h:tf;
              x=zeros(n+1,1); 
              v=zeros(n+1,1);
              x(1)=x0; v(1)=v0;
              
              for k=1:n
                k1=h*v(k);
                l1=h*f(t(k),x(k),v(k));
                k2=h*(v(k)+l1/2);
                l2=h*f(t(k)+h/2,x(k)+k1/2,v(k)+l1/2);
                k3=h*(v(k)+l2/2);
                l3=h*f(t(k)+h/2,x(k)+k2/2,v(k)+l2/2);
                k4=h*(v(k)+l3);
                l4=h*f(t(k)+h,x(k)+k3,v(k)+l3);
                
                x(k+1)=x(k)+(k1+2*k2+2*k3+k4)/6;
                v(k+1)=v(k)+(l1+2*l2+2*l3+l4)/6;        
                if x(k+1)<=0
                     %interpolación
                     k1=k+1;
                     t1=(x(k)*t(k+1)-x(k+1)*t(k))/(x(k)-x(k+1));
                     v1=(v(k)*(t(k+1)-t1)+v(k+1)*(t1-t(k)))/(t(k+1)-t(k));
                     t(k+1)=t1;
                     x(k+1)=0;
                      v(k+1)=v1;
                     disp([t1,v1])
                    break;
                end
              end
        end
    end
        2.4482   -0.8158
        3.1438   -0.3178
    nExactoNumérico
    0 6 2.4495 2.4482
    1π≈3.14163.1438

    La solución analítica y numérica de la ecuación diferencial coinciden

    Viaje a través de un túnel que atraviesa un cuerpo celeste

    Densidad

    ρ(r) ρ c = θ n (r)

    Analítica para n=0, 1, 5

    n=0, ρ ρ c =1 n=1, ρ ρ c = sinξ ξ n=5, ρ ρ c = ( 1+ 1 3 ξ 2 ) 5/2

    hold on
    line([0,sqrt(6)],[1,1])
    fplot(@(x) sin(x)./x, [0,pi])
    fplot(@(x) 1./sqrt(1+x.^3/3).^5, [0,4])
    hold off
    grid on
    xlabel('\xi')
    ylabel('\rho/\rho_c')
    ylim([0,1.02])
    legend('0','1','5','Location','best')
    title('Densidad')

    Para n=0, la densidad es constante e igual a ρc

    Numérica

    Representamos la densidad ρ/ρc en función de r/R o bien, de ξ/ξ1 para n=0, 1, 1.5, 3.

    function politropico_11
        hold on
        for n=[0,1,1.5,3]
            f=@(t,x,v) -2*v/t-x^n;
            [t,x,~,k1]=rk_2(f,eps,20,1,eps,200);
            x=x(1:k1);
            t=t(1:k1);
            plot(t/t(end),x.^n)
        end
        hold off
        grid on
        xlabel('r/R')
        ylabel('\rho/\rho_c');
        ylim([0,1.02])
        legend('0','1','1.5','3','Location','best')
        title('Densidad')
    
        function [t,x,v, k1] =rk_2(f,t0,tf,x0,v0,n)
              h=(tf-t0)/n;
              t=t0:h:tf;
              x=zeros(n+1,1); 
              v=zeros(n+1,1);
              x(1)=x0; v(1)=v0;
              
              for k=1:n
                k1=h*v(k);
                l1=h*f(t(k),x(k),v(k));
                k2=h*(v(k)+l1/2);
                l2=h*f(t(k)+h/2,x(k)+k1/2,v(k)+l1/2);
                k3=h*(v(k)+l2/2);
                l3=h*f(t(k)+h/2,x(k)+k2/2,v(k)+l2/2);
                k4=h*(v(k)+l3);
                l4=h*f(t(k)+h,x(k)+k3,v(k)+l3);
                
                x(k+1)=x(k)+(k1+2*k2+2*k3+k4)/6;
                v(k+1)=v(k)+(l1+2*l2+2*l3+l4)/6;        
                if x(k+1)<=0
                     %interpolación
                     k1=k+1;
                     t1=(x(k)*t(k+1)-x(k+1)*t(k))/(x(k)-x(k+1));
                     v1=(v(k)*(t(k+1)-t1)+v(k+1)*(t1-t(k)))/(t(k+1)-t(k));
                     t(k+1)=t1;
                     x(k+1)=0;
                    v(k+1)=v1;
                    break;
                end
              end
        end
    end

    Cuando n es grande, la masa se distribuye alrededor del centro y cada vez más próxima a éste.

    Aceleración de la gravedad

    La aceleración de la gravedad g(r) en un punto situado a una distancia r del centro, se debe (ley de Gauss) a la masa M(r) contenida en la esfera de radio r

    M(r)=4π ρ c α 3 ξ 2 ( dθ dξ ),r=αξ g(r)=G M(r) r 2 =4πG ρ c α( dθ dξ )

    Supongamos que excavamos un túnel a través de un diámetro del cuerpo celeste. Soltamos la partícula en un extremo del túnel, en la superficie de dicho cuerpo, su velocidad cuando está a una distancia r del centro se calcula aplicando el principio de conservación de la energía

    El valor de la aceleración de la gravedad en la superficie de la Tierra es

    g m = GM R 2

    El cociente g(r)/gm vale

    g(r) g m = R 2 4π ρ c α dθ dξ 4π ρ c α 3 ξ 1 2 ( dθ dξ ) ξ 1 = R 2 dθ dξ α 2 ξ 1 2 ( dθ dξ ) ξ 1 = dθ dξ ( dθ dξ ) ξ 1

    Analítica para n=0, 1

    n=0, g g m = ξ 6 n=1, g g m =π ξcosξsinξ ξ 2

    hold on
    line([0,sqrt(6)],[0,1],'color','r')
    fplot(@(x) -pi*(x.*cos(x)-sin(x))./x.^2, [0,pi])
    hold off
    grid on
    xlabel('\xi')
    ylabel('g/g_m')
    legend('0','1','Location','best')
    title('Aceleración de la gravedad')

    Para n=0, la densidad es constante e igual a ρc. La aceleración de la gravedad se incrementa linealmente hasta su valor en la superficie gm

    Numérica

    Representamos el cociente g/gm en función de r/R o bien, de ξ/ξ1 para n=0, 1, 1.5, 2.

    function politropico_12
        hold on
        for n=[0,1,1.5,2]
            f=@(t,x,v) -2*v/t-x^n;
            [t,~,v, k1]=rk_2(f,eps,20,1,eps,200);
            v=v(1:k1);
            t=t(1:k1);
            plot(t/t(end),v/v(end))
        end
        hold off
        grid on
        xlabel('r/R')
        ylabel('g/g_m');
        ylim([-0.1,3])
        legend('0','1','1.5','2','Location','best')
        title('Aceleración de la gravedad')
    
        function [t,x,v, k1] =rk_2(f,t0,tf,x0,v0,n)
              h=(tf-t0)/n;
              t=t0:h:tf;
              x=zeros(n+1,1); 
              v=zeros(n+1,1);
              x(1)=x0; v(1)=v0;
              
              for k=1:n
                k1=h*v(k);
                l1=h*f(t(k),x(k),v(k));
                k2=h*(v(k)+l1/2);
                l2=h*f(t(k)+h/2,x(k)+k1/2,v(k)+l1/2);
                k3=h*(v(k)+l2/2);
                l3=h*f(t(k)+h/2,x(k)+k2/2,v(k)+l2/2);
                k4=h*(v(k)+l3);
                l4=h*f(t(k)+h,x(k)+k3,v(k)+l3);
                
                x(k+1)=x(k)+(k1+2*k2+2*k3+k4)/6;
                v(k+1)=v(k)+(l1+2*l2+2*l3+l4)/6;        
                if x(k+1)<=0
                     %interpolación
                     k1=k+1;
                     t1=(x(k)*t(k+1)-x(k+1)*t(k))/(x(k)-x(k+1));
                     v1=(v(k)*(t(k+1)-t1)+v(k+1)*(t1-t(k)))/(t(k+1)-t(k));
                     t(k+1)=t1;
                     x(k+1)=0;
                    v(k+1)=v1;
                     break;
                end
              end
        end
    end

    Tiempo de viaje

    La fuerza que ejerce el campo gravitatorio producido por el cuerpo celeste sobre una partícula de masa m es el producto de su masa por la aceleración de la gravedad g(r). La aceleración de la gravedad en el interior de dicho cuerpo es M(r)/r2 y en el exterior es M/r2, siendo M la masa dl cuerpo celeste.

    El nivel cero de energía potencial se encuentra en el infinito, de modo que la energía potencial de una partícula de masa m situada a una distancia r del centro, es

    E p (r)= r R G M(r)m r 2 dr + R G M·m r 2 dr = r R G M(r)m r 2 dr G Mm R

    Aplicamos el principio de conservación de la energía y despejamos la velocidad v de la partícula a la distancia r del centro

    1 2 m v 2 + E p (r)= E p (R) v 2 =2 r R G M(r) r 2 dr =2 r R g(r)dr=2α ξ ξ 1 g(ξ)dξ =8πG ρ c α 2 ξ ξ 1 dθ dξ dξ v 2 =8πG ρ c α 2 ( θ( ξ 1 )θ(ξ) )=8πG ρ c α 2 θ(ξ) v=2 R ξ 1 2πG ρ c θ(ξ)

    Como θ(0)=1, la máxima velocidad se alcanza para ξ=0, r=0, en el centro

    v m =2 R ξ 1 2πG ρ c v(ξ)= v m θ(ξ)

    Analítica para n=0, 1

    n=0, v v m = 1 1 6 ξ 2 n=1, v v m = sinξ ξ

    hold on
    fplot(@(x) sqrt(1-x.^2/6), [0,sqrt(6)])
    fplot(@(x) sqrt(sin(x)./x), [0,pi])
    hold off
    grid on
    xlabel('\xi')
    ylabel('v/v_m')
    legend('0','1','Location','best')
    title('Velocidad')

    Alcanza la máxima velocidad vm en el centro del cuerpo celeste (ξ=0).

    Numérica

    Representamos el cociente v/vm en función de r/R o bien, de ξ/ξ1 para n=0, 1, 1.5, 2. La partícula parte del reposo en la superficie r=R (ξ1).

    function politropico_13
        hold on
        for n=[0,1,1.5,2]
            f=@(t,x,v) -2*v/t-x^n;
            [t,x,~, k1]=rk_2(f,eps,20,1,eps,200);
            x=x(1:k1);
            t=t(1:k1);
            plot(t/t(end),sqrt(x))
        end
        hold off
        grid on
        xlabel('r/R')
        ylabel('v/v_m');
        legend('0','1','1.5','2','Location','best')
        title('Velocidad')
    
        function [t,x,v, k1] =rk_2(f,t0,tf,x0,v0,n)
              h=(tf-t0)/n;
              t=t0:h:tf;
              x=zeros(n+1,1); 
              v=zeros(n+1,1);
              x(1)=x0; v(1)=v0;
              
              for k=1:n
                k1=h*v(k);
                l1=h*f(t(k),x(k),v(k));
                k2=h*(v(k)+l1/2);
                l2=h*f(t(k)+h/2,x(k)+k1/2,v(k)+l1/2);
                k3=h*(v(k)+l2/2);
                l3=h*f(t(k)+h/2,x(k)+k2/2,v(k)+l2/2);
                k4=h*(v(k)+l3);
                l4=h*f(t(k)+h,x(k)+k3,v(k)+l3);
                
                x(k+1)=x(k)+(k1+2*k2+2*k3+k4)/6;
                v(k+1)=v(k)+(l1+2*l2+2*l3+l4)/6;        
                if x(k+1)<=0
                     %interpolación
                     k1=k+1;
                     t1=(x(k)*t(k+1)-x(k+1)*t(k))/(x(k)-x(k+1));
                     v1=(v(k)*(t(k+1)-t1)+v(k+1)*(t1-t(k)))/(t(k+1)-t(k));
                     t(k+1)=t1;
                     x(k+1)=0;
                      v(k+1)=v1;
                    break;
                end
              end
        end
    end

    El tiempo que tarda en viajar desde la superficie hasta el centro, es

    T 0 = 0 R dr v(r) =α 0 ξ 1 dξ v(ξ) =α 0 ξ 1 dξ 8πG ρ c α 2 θ(ξ) = 1 2 2πG ρ c 0 ξ 1 dξ θ(ξ)

    El tiempo de viaje dese un punto de la superficie hasta su antípoda es el doble

    T=2 T 0 = 1 2πG ρ c 0 ξ 1 dξ θ(ξ) = τ 1 2πG ρ c

    Analítica para n=0, 1

    τ 1 = 0 ξ 1 dξ θ(ξ) n=0, τ 1 = 0 6 dξ 1 ξ 2 6 = 6 0 1 dx 1 x 2 = 6 ( arcsin(1)arcsin(0) )= π 2 6 n=1, τ 1 = 0 π dξ sinξ ξ = 0 π ξ sinξ dξ

    Resolvemos la segunda integral por procedimientos numéricos, utilizando la función integral de MATLAB

    >> f=@(x) sqrt(x./sin(x));
    >> integral(f,0,pi)
    ans =    5.8934

    Para la Tierra uniforme (n=0), M=5.98·1024 kg, y R=6370 km, constante G=6.67·10-11 Nm2/kg2. La densidad ρc=M/(4πR3/3)=2 533.7 kg/m3. Obtenemos el tiempo de viaje T= 42.23 min entre un punto de la superficie terrestre y su antípoda

    Numéricamente

    Se ha de tener en cuenta que para el límite superior ξ1 la función θ(ξ1)=0

    Representamos el integrando 1 θ(ξ) , para n=1, vemos que tiene una asíntota vertical en ξ1=3.1438.

    Calculamos la integral utilizando la función trapz de MATLAB, excluyendo el último término ξ1

    function politropico_14
        hold on
        n=1;
        f=@(t,x,v) -2*v/t-x^n;
        [t,x,~, k1]=rk_2(f,eps,20,1,eps,200);
        x=x(1:k1);
        t=t(1:k1);
        tau_1=trapz(t(1:k1-1),1./sqrt(x(1:k1-1)));
        disp(tau_1)
        plot(t,1./sqrt(x),'-ro','markersize',3,'markerfacecolor','r')
        line([t(end),t(end)],[1,10])
        hold off
        grid on
        ylim([1,10])
        xlabel('\xi')
        ylabel('1/sqrt(\theta)')
        title('Tiempo de vuelo')
    
    
        function [t,x,v, k1] =rk_2(f,t0,tf,x0,v0,n)
              h=(tf-t0)/n;
              t=t0:h:tf;
              x=zeros(n+1,1); 
              v=zeros(n+1,1);
              x(1)=x0; v(1)=v0;
              
              for k=1:n
                k1=h*v(k);
                l1=h*f(t(k),x(k),v(k));
                k2=h*(v(k)+l1/2);
                l2=h*f(t(k)+h/2,x(k)+k1/2,v(k)+l1/2);
                k3=h*(v(k)+l2/2);
                l3=h*f(t(k)+h/2,x(k)+k2/2,v(k)+l2/2);
                k4=h*(v(k)+l3);
                l4=h*f(t(k)+h,x(k)+k3,v(k)+l3);
                
                x(k+1)=x(k)+(k1+2*k2+2*k3+k4)/6;
                v(k+1)=v(k)+(l1+2*l2+2*l3+l4)/6;        
                if x(k+1)<=0
                     %interpolación
                     k1=k+1;
                     t1=(x(k)*t(k+1)-x(k+1)*t(k))/(x(k)-x(k+1));
                     v1=(v(k)*(t(k+1)-t1)+v(k+1)*(t1-t(k)))/(t(k+1)-t(k));
                     x(k+1)=eps;
                     t(k+1)=t1;
                     v(k+1)=v1;
                    break;
                end
              end
        end
    end

       5.2350

    Para n=1, el valor calculado de τ1=5.8934, el valor que hemos obtenido 5.2350. El procedimiento trapz no es el adecuado para obtener valores con mayor precisión

    Ecuación del movimiento

    La fuerza que actúa sobre la partícula es el peso, mg(r), donde m es la masa de la partícula y g(r) es la aceleración de la gravedad que cambia con r o ξ. La ecuación del movimiento es

    m d 2 r d t 2 =mg(r) α T 2 d 2 ξ d τ 2 =4πG ρ c α dθ dξ 2πG ρ c τ 1 2 d 2 ξ d τ 2 =4πG ρ c dθ dξ d 2 ξ d τ 2 =2 τ 1 2 dθ dξ

    Hemos cambiado la variable t tiempo por la variable adimensional τ=t/T.

    Resolvemos la ecuación diferencial con las siguientes condiciones iniciales, en el instante τ=0, el móvil parte de ξ1 (superficie del cuerpo celeste) en repso, dξ/dτ=0

    Analítica para n=0, 1

    n=0,θ=1 ξ 2 6 , dθ dξ = 1 3 ξ, ξ 1 = 6 , τ 1 = π 2 6 , d 2 ξ d τ 2 + π 2 ξ=0

    La solución de esta ecuación diferencial con las condiciones iniciales especificdas

    ξ= 6 cos( πt )

    Se trata de un MAS de periodo P=2, tarda una unidad de tiempo en ir desde un punto de la superficie hasta su antípoda y 1/2 en desplazarse desde la superficie al centro

    n=1,θ(ξ)= sinξ ξ , dθ dξ = ξcosξsinξ ξ 2 , ξ 1 =π, τ 1 =5.8934 d 2 ξ d τ 2 2 τ 1 2 ξcosξsinξ ξ 2 =0

    Resolvemos esta ecuación diferencial utilizando el procedimiento ode45 de MATLAB. Interrumpimos el proceso de integración cuando ξ=0 (el centro del cuerpo celeste).

    Representamos la posición ξ en función del tiempo τ desde la salida en ξ1 hasta la posición de llegada -ξ1. Las posiciones se repiten entre τ=1/2 y 1 pero con el signo cambiado.

    function politropico_20
        tau_1=5.8934;
        f=@(t,x) [x(2); 2*tau_1^2*(x(1)*cos(x(1))-sin(x(1)))/x(1)^2]; 
         opts=odeset('events',@stop_tunel);
        [t,x]=ode45(f,[0,1],[pi,0], opts);
        hold on
        fplot(@(t) sqrt(6)*cos(pi*t),[0,1])
        x1=x(:,1);
        xx=[x1;-x1(length(x1):-1:1)];
        tt=[t; 1-t(length(t):-1:1)];
        plot(tt,xx)
        hold off
        grid on
        xlabel('\tau')
        legend('n=0','n=1','Location','best')
        ylabel('\xi');
        title('Movimiento')
    
        function [value,isterminal,direction]=stop_tunel(~,x)
            value=x(1);
            isterminal=1;    
            direction=-1; 
        end
    end

    Representamos la velocidad dξ/dτ en función del tiempo τ

    function politropico_20_1
        tau_1=5.8934;
        f=@(t,x) [x(2); 2*tau_1^2*(x(1)*cos(x(1))-sin(x(1)))/x(1)^2]; 
         opts=odeset('events',@stop_tunel);
        [t,x]=ode45(f,[0,1],[pi,0], opts);
        hold on
        fplot(@(t) -sqrt(6)*pi*sin(pi*t),[0,1])
        v1=x(:,2);
        vv=[v1;v1(length(v1):-1:1)];
        tt=[t; 1-t(length(t):-1:1)];
        plot(tt,vv)
        hold off
        grid on
        xlabel('\tau')
        legend('n=0','n=1','Location','best')
        ylabel('d\xi/d\tau');
        title('Movimiento. Velocidad')
    
        function [value,isterminal,direction]=stop_tunel(~,x)
            value=x(1);
            isterminal=1;    
            direction=-1; 
        end
    end

    Numérica

    Para otros valores del índice n no disponemos de la función θ(ξ) o de su derivada pero disponemos de una tabla de valores (ξ, dθ/dξ) obtenida a partir de la ecuación de Lane-Emden cuando se resuelve por el procedimiento de Runge-Kutta. Podemos obtener el valor de la derivada dθ/dξ para un valor de ξ que no está en la tabla, mediante interpolación lineal, utilizando la función interp1 de MATLAB

    function politropico_13
        hold on    
        for n=[0,1,1.5,2,3]
            f=@(t,x,v) -2*v/t-x^n;
            [t,x,v, k1]=rk_2(f,eps,20,1,eps,200);
            x=real(x(1:k1));
            vv=real(v(1:k1));
            tt=t(1:k1);
            tau_1=trapz(t(1:k1-1),1./sqrt(x(1:k1-1)));
            f=@(t,x,v) 2*interp1(tt,vv,x)*tau_1^2;
            [t,x,~, ~]=rk_2(f,0,0.6,tt(end),0,200);
            plot(t, x(:,1))
        end
        hold off
        grid on
        xlabel('\tau')
        ylabel('\xi');
        legend('0','1','1.5','2','3','Location','best')
        title('Movimiento')
    
        function [t,x,v, k1] =rk_2(f,t0,tf,x0,v0,n)
            h=(tf-t0)/n;
              t=t0:h:tf;
              x=zeros(n+1,1); 
              v=zeros(n+1,1);
              x(1)=x0; v(1)=v0;
              
              for k=1:n
                k1=h*v(k);
                l1=h*f(t(k),x(k),v(k));
                k2=h*(v(k)+l1/2);
                l2=h*f(t(k)+h/2,x(k)+k1/2,v(k)+l1/2);
                k3=h*(v(k)+l2/2);
                l3=h*f(t(k)+h/2,x(k)+k2/2,v(k)+l2/2);
                k4=h*(v(k)+l3);
                l4=h*f(t(k)+h,x(k)+k3,v(k)+l3);
                
                x(k+1)=x(k)+(k1+2*k2+2*k3+k4)/6;
                v(k+1)=v(k)+(l1+2*l2+2*l3+l4)/6;        
                 if x(k+1)<=0
                     %interpolación
                     k1=k+1;
                     t1=(x(k)*t(k+1)-x(k+1)*t(k))/(x(k)-x(k+1));
                     v1=(v(k)*(t(k+1)-t1)+v(k+1)*(t1-t(k)))/(t(k+1)-t(k));
                     t(k+1)=t1;
                     x(k+1)=0;
                      v(k+1)=v1;
                    break;
                end
              end
        end
    end

    Debido a los errores de cálculo numérico, la función ξ(τ) no se hacen cero (cuando pasa por el centro) para τ=1/2 cualquiera que sea el índice n. La mayor fuente de error, probablemente, es la función trapz de MATLAB utilizada para calcular la integral que nos proporciona el valor de τ1

    Ejemplos

    Resolvemos la la ecuación diferencial de Lane-Emden para n=0, 0.715, 1, 1.5, 2, 3, 3.5. Con los datos de la masa de la Tierra M=5.972·1024 kg y el radio 6.371·106 m. El índice n=0.715 es el que proporciona una densidad que se ajusta mejor a los datos del modelo PREM del interior de la Tierra

    function politropico_16
        M=5.972e24; %masa de la Tierra
        R=6.371e6; %radio de la Tierra
        G=6.67e-11; %constante G
        r_m=M/(4*pi*R^3/3); %densidad media
        for n=[0,0.715,1,1.5,2,3, 3.5]
            f=@(t,x,v) -2*v/t-x^n;
            [t,x,v,k1]=rk_2(f,eps,20,1,eps,200);
            x1=t(k1);
            v1=v(k1);
            alfa=R/x1;
            r_c=-M/(4*pi*alfa^3*x1^2*v1); % densidad centro
            p_c=(4*pi*alfa^2*r_c^2)/(n+1);
            tau_1=trapz(t(1:k1-1),1./sqrt(x(1:k1-1)));
            T=tau_1/sqrt(2*pi*G*r_c); %tiempo
            v_m=2*R*sqrt(2*pi*G*r_c)/x1;
            fprintf('n=%1.3f, x_1= %1.3f, v_1= %1.3f,  r_c/r_m=%1.2f, p_c=%1.2e, 
    T=%2.2f, v_m=%2.2f\n',n, x1,v1, r_c/r_m, p_c, T/60,v_m/1000)    
        end
        
        function [t,x,v, k1] =rk_2(f,t0,tf,x0,v0,n)
              h=(tf-t0)/n;
              t=t0:h:tf;
              x=zeros(n+1,1); 
              v=zeros(n+1,1);
              x(1)=x0; v(1)=v0;
              
              for k=1:n
                k1=h*v(k);
                l1=h*f(t(k),x(k),v(k));
                k2=h*(v(k)+l1/2);
                l2=h*f(t(k)+h/2,x(k)+k1/2,v(k)+l1/2);
                k3=h*(v(k)+l2/2);
                l3=h*f(t(k)+h/2,x(k)+k2/2,v(k)+l2/2);
                k4=h*(v(k)+l3);
                l4=h*f(t(k)+h,x(k)+k3,v(k)+l3);
                
                x(k+1)=x(k)+(k1+2*k2+2*k3+k4)/6;
                v(k+1)=v(k)+(l1+2*l2+2*l3+l4)/6;        
                if x(k+1)<=0
                     %interpolación
                     k1=k+1;
                     t1=(x(k)*t(k+1)-x(k+1)*t(k))/(x(k)-x(k+1));
                     v1=(v(k)*(t(k+1)-t1)+v(k+1)*(t1-t(k)))/(t(k+1)-t(k));
                     t(k+1)=t1;
                     x(k+1)=0;
                    v(k+1)=v1;
                    break;
                end
              end
        end
    end
    n=0.000, x_1= 2.448, v_1= -0.816,  r_c/r_m=1.00, p_c=2.59e+21, T=37.24, v_m=7.91
    n=0.715, x_1= 2.909, v_1= -0.410,  r_c/r_m=2.36, p_c=5.97e+21, T=37.44, v_m=10.24
    n=1.000, x_1= 3.144, v_1= -0.318,  r_c/r_m=3.30, p_c=8.53e+21, T=31.61, v_m=11.19
    n=1.500, x_1= 3.657, v_1= -0.203,  r_c/r_m=6.00, p_c=1.67e+22, T=29.52, v_m=12.97
    n=2.000, x_1= 4.356, v_1= -0.127,  r_c/r_m=11.41, p_c=3.54e+22, T=28.68, v_m=15.02
    n=3.000, x_1= 6.895, v_1= -0.043,  r_c/r_m=54.01, p_c=2.38e+23, T=26.77, v_m=20.64
    n=3.500, x_1= 9.520, v_1= -0.021,  r_c/r_m=151.72, p_c=8.75e+23, T=29.46, v_m=25.06

    Recogemos los resultados de los cálculos en una tabla

    nξ1(dθ/dξ)ξ1ρcmpc (Pa)T (min)vm(km/s)
    02.448-0.8161.002.59·102137.247.91
    0.7152.909-0.4102.365.97·102137.4410.24
    13.144-0.3183.308.53·102131.6111.19
    1.53.657-0.2036.001.67·102229.5212.97
    24.356-0.12711.413.54·102228.6815.02
    36.895-0.04354.012.38·102326.7720.64
    3.59.520-0.021151.728.75·102329.4625.06

    Comparando esta tabla con la tabla 1 del primer artículo citado en las referencias, vemos que los tiempos T difieren, por ejemplo, para densidad constante n=0, T=42.20 min en vez de 37.44

    Referencias

    W. Dean Pesnell. Flying through polytropes. Am. J. Phys. 84 (3), March 2016. pp. 192-201

    Lecture 7a Polytropes