Calculez comment faire tomber un astéroïde au soleil

image

Je ne sais pas comment me passer de spoilers. Vous pouvez vous limiter à une question généralisée concernant la physique, mais si vous suivez l'excellente série de science-fiction sur SyFy, "The Expanse" [ Space ], vous pouvez fermer l'onglet et aller lire autre chose - par exemple, pourquoi vous ne pouvez pas voler à la vitesse de la lumière .

Ne fermez pas? Bon. La tâche est la suivante: mon vaisseau spatial tourne autour du Soleil quelque part dans la ceinture d'astéroïdes entre Mars et Jupiter, et j'ai besoin de détruire un certain astéroïde. Peut-être que la meilleure façon de le faire serait de l'envoyer en direction du soleil. Puis-je percuter cet astéroïde pour qu'il tombe sur le soleil?

La tâche est difficile, mais elle peut être divisée en trois parties: fuite vers un astéroïde, collision avec un astéroïde et trajectoire résultante de l'astéroïde. Mais d'abord, vous devez faire quelques hypothèses. Je vais prendre des chiffres approximatifs de The Expanse, car tout y a déjà été calculé.

• Astéroïde - Eros. Il se déplace sur une orbite circulaire autour du Soleil (en fait, ce n'est pas le cas, mais assez proche), le rayon de l'orbite est de 1,5 UA (1 UA, unité astronomique est la distance du Soleil à la Terre). La masse d'Eros est de 6,7 * 10 15 .
• Vaisseau spatial - Nauvoo, un grand navire pour les voyages interstellaires. En fait, c'est un cylindre d'un rayon de 0,25 km et d'une longueur de 2 km. Distance orbitale initiale - 2,5 AU
• Il y a beaucoup d'espace vide à Nauvoo, donc nous prenons sa densité pour 1000 kg / m 3 . Selon la formule du volume du cylindre, on obtient une masse de 4 * 10 10 kg. Navire assez massif!
• Et une autre estimation est nécessaire - la force réactive de Nauvoo. S'il y a du monde à bord, vous aurez très probablement besoin d'une accélération de 1 g (9,8 m / s 2 ). Sans personne, que l'accélération soit de 2 g.

Voilà toutes les hypothèses.

Partie 1: Vol vers Eros


Je voulais développer un modèle numérique pour calculer la trajectoire et la force d'impact de Nauvoo. Mais je ne le ferai pas. La mécanique orbitale est très complexe. Vous ne pouvez pas simplement dire: "Dirigez le navire vers Eros et démarrez les moteurs."

Pour de meilleurs résultats, le navire a besoin d'une collision frontale avec Eros. Si le rayon de l'orbite circulaire d'Eros est de 1,5 UA, alors sa vitesse est de 24 000 m / s. Nauvoo se déplace à une vitesse de 19 000 m / s. Nauvoo peut-il gagner une vitesse orbitale de 24 000 m / s dans la direction orbitale opposée?

Avec une accélération de 2 g, il faudra un peu plus de 30 minutes pour passer de 19 000 m / s dans un sens à 24 000 m / s dans le sens inverse. Oui, cela me semble étrange aussi. Mais j'accepte le résultat: donc, une collision frontale entre Eros et Nauvoo, chacun se déplaçant à une vitesse de 24 000 m / s.

Partie 2: collision


On pourrait, bien sûr, se limiter à une simple collision inélastique unidimensionnelle entre Nauvoo et Eros, après quoi ils restent ensemble. C'est une excellente question d'examen, mais je veux en faire plus. Je vais créer quelque chose de plus réaliste - une collision partiellement élastique (l'élan est enregistré, mais pas l'énergie cinétique), et cela ne se produira pas dans une seule dimension.

Pour simuler une collision, deux objets peuvent être représentés comme des ressorts. Lorsqu'ils approchent d'une distance inférieure à la somme de leurs tailles (et commencent à se chevaucher), ils commencent à pousser la force du ressort. Plus ils se croisent, plus ils ont de pouvoir. De plus, il est possible de rendre cette collision inélastique en utilisant une constante de ressort plus petite au moment où les objets se déplacent les uns des autres.

Passons à la collision. Mon Nauvoo se dirige tout droit vers Eros, mais ils ne sont pas centrés. Et voici comment leur collision fonctionnera. Je note que notre Eros est sphérique (pas vrai), et Nauvoo est petit par rapport à lui. Dans l'article d'origine, vous pouvez cliquer sur le bouton de lecture et regarder l'animation.

#mass of erors me=6.7e15 #radius of erors re=15e3 erors=sphere(pos=vector(-5*re,0,0), radius=re) #starting momentum erors.p=me*vector(24000,0,0) startp=erors.p #used to caclulate change #length of Nauvoo L=2e3 #Nauvoo starts off axis nauvoo=cylinder(pos=vector(5*re,.4*re,0), axis=vector(2e3,0,0), radius=250) #mass of Nauvoo nauvoo.m=4e10 nauvoo.p=nauvoo.m*vector(-24000,0,0) attach_trail(nauvoo) attach_trail(erors) #k is the effective spring constant k=1e12 t=0 dt=0.001 #lastr is used to determine if the spring is compressing or relaxing lastr=nauvoo.pos-erors.pos #e is the modifier to spring constant for relaxing e=.1 while t<7: rate(1000) r=nauvoo.pos-erors.pos F=vector(0,0,0) if mag(r)<(erors.radius+L/2): F=k*mag(r)*norm(r) #this is force on nauvoo if mag(r)>mag(lastr): F=e*k*mag(r)*norm(r) nauvoo.p=nauvoo.p+F*dt erors.p=erors.pF*dt nauvoo.pos=nauvoo.pos+nauvoo.p*dt/nauvoo.m erors.pos=erors.pos+erors.p*dt/me t=t+dt lastr=r print("Eros change in v = ",(erors.p-startp)/me," m/s") 

Notez que le changement de la vitesse vectorielle d'Eros affichée par le programme est minime. Le problème est qu'Eros est environ 10 000 fois plus massif que Nauvoo. Bien que Nauvoo et Eros connaîtront le même changement d'élan, la masse d'Eros entraînera un très petit changement de vitesse. Même si Nauvoo se déplaçait 100 fois plus vite, cela n'aiderait pas beaucoup.

Partie 3: Tomber sur le soleil


Puisque Nauvoo ne peut pas changer sérieusement la vitesse d'Eros, cette partie semble stupide. Mais cela ne m'arrêtera pas. Je note seulement qu'avant cela j'ai déjà écrit sur la modélisation de la physique de l'incidence sur le Soleil. Il peut vous sembler que tomber au soleil est très facile - mais ce n'est pas le cas.

Au lieu de changer la vitesse à partir de mon calcul de la collision, j'accepterai qu'une collision incroyablement impressionnante fera changer la vitesse d'Eros de 10 000 m / s. Ensuite, je simulerai deux collisions. Le premier conduira au fait que le vecteur vitesse résultant apparaîtra sur le Soleil. Le second ralentira simplement Eros.

Ce modèle montre les deux touches indiquées (la première est jaune, la seconde est rouge), et à titre de comparaison, l'ancienne orbite.

 G=6.67e-11 Ms=1.989e30 AU=1.496e11 g=9.8 f1=series(color=color.red) sun=sphere(pos=vector(0,0,0), radius=4e9, color=color.yellow) eros=sphere(pos=vector(1.5*AU,0,0), radius=sun.radius/7) eros.m=6.687e15 ve=sqrt(G*Ms/mag(eros.pos)) eros.p=eros.m*ve*vector(0,1,0) attach_trail(eros) dv=1e4 erosA=sphere(pos=eros.pos, radius=eros.radius, color=color.yellow) erosA.m=eros.m erosA.p=erosA.m*(vector(0,ve,0)+vector(-dv,0,0)) erosB=sphere(pos=eros.pos, radius=eros.radius, color=color.red) erosB.m=eros.m erosB.p=erosB.m*(vector(0,ve,0)+vector(0,-dv,0)) attach_trail(erosB) attach_trail(erosA) t=0 dt=1e3 while True: rate(10000) re=eros.pos-sun.pos reA=erosA.pos-sun.pos reB=erosB.pos-sun.pos Fe=-G*Ms*eros.m*norm(re)/mag(re)**2 FeA=-G*Ms*erosA.m*norm(reA)/mag(reA)**2 FeB=-G*Ms*erosB.m*norm(reB)/mag(reB)**2 eros.p=eros.p+Fe*dt erosA.p=erosA.p+FeA*dt erosB.p=erosB.p+FeB*dt eros.pos=eros.pos+eros.p*dt/eros.m erosA.pos=erosA.pos+erosA.p*dt/erosA.m erosB.pos=erosB.pos+erosB.p*dt/erosB.m t=t+dt 

Que va-t-il se passer? Vous serez surpris que la poussée d'Eros vers le Soleil conduise effectivement à s'éloigner de lui. La meilleure option est de ralentir Eros, mais à moins de l'arrêter complètement, il ne tombera pas sur le soleil.

Mais finalement, Nauvoo n'a pas rencontré Eros. Ouch. Spoiler ...

Source: https://habr.com/ru/post/fr402177/


All Articles