Как добавить сюда влияние силы солнечного ветра на спутник? uses Graph3D;
var x,y,z : real; // координаты спутника
x0,y0,z0: real; // координаты планеты
vx,vy,vz: real; // проекции скорости
ax,ay,az: real; // проекции ускорения
r,r3 : real; // расстояние от центра планеты
var M:=5.97E24; // масса Земли
G:=6.6743E-11; // гравитационная поcтоянная
Re:=6.371E6; // радиус Земли
GM:=M*G/Re/Re; // нормировка силы притяжения Земли
dt := 3E-3;
begin
View3D.BackgroundColor := Colors.Black;
View3D.ShowGridLines :=False;;
var Earth := Sphere(0,0,0,1,Colors.Wheat);
Earth.Material := ImageMaterial('Earth.jpg');
Earth.Rotate(V3D(0,1,0),-23.0); //Поворот оси Земли
var an:=Earth.AnimRotate(0,0,1,360,24).Forever; //Анимация вращения Земли
var Back:=Rectangle3D(0,-7,0,100,70,V3D(0,1,0),ImageMaterial('Stars2.png'));
Back.Rotate(V3D(1,0,0),30.0);
an.Begin;
x:=2; //Начальная координата (два радиуса Земли)
y:=0;
z:=0;
vx:= 0;
vy:= -sqrt(GM/2); //Первая космическая скорость (орбита круговая)
vy:= 1.2*vy; // орбита эллиптическая
vz:=0;
var Sputnik:=Sphere(x,y,z,0.1,Colors.white+EmissiveMaterial(Colors.silver));
repeat
r:=sqrt(sqr(x-x0)+sqr(y-y0)+sqr(z-z0));
r3:=r*r*r;
// проекции ускорения
ax:=-GM*(x-x0)/r3;
ay:=-GM*(y-y0)/r3;
az:=-GM*(z-z0)/r3;
// проекции скорости
vx:=vx+ax*dt;
vy:=vy+ay*dt;
vz:=vz+az*dt;
//segment3d(P3D(x,y,z),P3D(x+vx*dt,y+vy*dt,z+vz*dt),1.5,Colors.green);//косяк!
// координаты спутника
x:=x+vx*dt;
y:=y+vy*dt;
z:=z+vz*dt;
sputnik.MoveTo(x,y,z);
sleep(1);
until x>100;
end.
104
288
Ответы на вопрос:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Другие предметы
-
jasmin4706.01.2022 18:46
-
ponyni25.10.2020 16:07
-
какчитаетсяэтосказка12.12.2022 15:36
-
kamilamih22.05.2021 00:50
-
ВладиславПрокофьев16.02.2021 05:59
-
AlinaElsukova22.03.2022 19:02
-
karicristle31328.12.2022 15:22
-
agroDan24.08.2021 01:22
-
Mehriban200704.08.2020 18:03
-
arinasmail122.06.2021 23:52
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.