Телескопы покупают здесь


A A A A Автор Тема: как просчитать траекторию спутника?  (Прочитано 11794 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн antifatonАвтор темы

  • Новичок
  • *
  • Сообщений: 6
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от antifaton
Здравствуйте, уважаемые господа.
Подскажите пожалуйста, можно ли просчитать траекторию спутника земли имея за исходные данные только высоту спутника над землей и его скорость?

Как  я понял то траекторию можно просчитать по формуле r=p/(1-e*cos(x)).
где r- растояние до спутника, p - фокальный параметр, e- ексцентриситет орбиты, x- угол наклона. http://www.lr.kiev.ua/antenna/page23.html

В википедии нашел что фокальный параметр и ексцентриситет можно высчитать через большую и малую полуось.
http://ru.wikipedia.org/wiki/%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%B0%D1%8F_%D0%BF%D0%BE%D0%BB%D1%83%D0%BE%D1%81%D1%8C
 Там же нашел формулу по которой, имея скорость и высоту, можно высчитать большую полуось, но откуда взять малую не понятно... Буду благодарен за помощ.
« Последнее редактирование: 23 Сен 2011 [15:58:08] от Smirnov Andrey »

Оффлайн olenellus

  • *****
  • Сообщений: 625
  • Благодарностей: 105
    • Сообщения от olenellus
Re: как просчитать праекторию спутника?
« Ответ #1 : 23 Сен 2011 [15:47:02] »
Посчитать траекторию спутника можно, зная его положение (радиус-вектор — три координаты) и скорость (тоже вектор, и тоже три координаты) . Их векторное произведение есть удельный момент, который является интегралом движения (его величина нам ещё пригодится). Нормированный момент даст нормаль плоскости орибты:

Можно с помощью нормали найти наклонение орбиты (её косинус равен скалярному произведению этой нормали на единичный вектор, направленный на северный полюс Мира):

и долготу восходящего узла:


Здесь — единичный вектор, направленный на точку весеннего равноденствия, а

Теперь находим второй интеграл движения, а именно, удельную энергию спутника:


С помощью интегралов движения находим параметр орбиты:

и ексцентриситет:


Осталось только найти истинную аномалию и аргумент перегея. Истинная аномалия находится сразу из уравнения эллипса, которое Вы привели:



Аргумент перигея:


Вот, собственно, всё, что надо для построения кеплеровской орбиты. Но! На самом деле Земля не является сферичски симметричной, на спутник действует Луна, Солнце, солнечный ветер, солнечное излучение, сопротивление остаточной атмосферы. Поэтому вычисленная орбита будет лишь оскулирующей, и надо учитывать эволюцию её параметров во времени. Как это делать, читайте в какой-нибудь книге, вроде:
Левантовский В.И. Механика космического полёта в элементарном изложении.
Субботин М.Ф. Введение в теоретическую астрономию.
« Последнее редактирование: 27 Сен 2011 [18:50:05] от olenellus »

Tau

  • Гость
Re: как просчитать траекторию спутника?
« Ответ #2 : 23 Сен 2011 [22:06:05] »
Подскажите пожалуйста, можно ли просчитать траекторию спутника земли имея за исходные данные только высоту спутника над землей и его скорость?
А вы представьте образно: вот есть Земля, на некотором расстоянии от ее поверхности находится спутник, имеющий какую-то скорость. В какой пространственной точке находится спутник - неизвестно, в какую сторону летит - тоже неизвестно. Бесконечное множество вариантов траекторий. Для определенности нужны пространственные координаты и направление вектора скорости.

Цитата
Можно с помощью нормали найти наклонение орбиты (скалярное произведение этой нормали на единичный вектор, направленный на северный полюс Мира):
olenellus, вспомнился анекдот:
-Папа, а как пишется цифра восемь?
-Как бесконечность, повернутая на пи-пополам, сынок.  :D

Оффлайн antifatonАвтор темы

  • Новичок
  • *
  • Сообщений: 6
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от antifaton
Re: как просчитать траекторию спутника?
« Ответ #3 : 24 Сен 2011 [10:49:45] »
Спасибо большое за ответы. Но, если честно, это немного заумно для меня...
Если немного упростить модель, рассматривать траекторию только в одной плоскости (2-D). Большой точности не нужно(солнечный ветер, влияние луны и т.д. во внимание не брать). Есть ли алгоритм расчета траектории попороще?

У меня стоит задача написать программу, которая будет визуально отображать движение спутников вокруг земли. Пользователь будет вводить только начальную высоту над землей и скорость спутника, остальные данные берутся произвольно..

Оффлайн olenellus

  • *****
  • Сообщений: 625
  • Благодарностей: 105
    • Сообщения от olenellus
Re: как просчитать траекторию спутника?
« Ответ #4 : 24 Сен 2011 [14:24:08] »
Если немного упростить модель, рассматривать траекторию только в одной плоскости (2-D)... Есть ли алгоритм расчета траектории попороще?

У меня стоит задача написать программу, которая будет визуально отображать движение спутников вокруг земли. Пользователь будет вводить только начальную высоту над землей и скорость спутника, остальные данные берутся произвольно..
Тогда уж лучше пусть пользователь вводит эксцентриситет и большую полуось. Ну, или скорость в перигее вместо эксцентриситета. Этого будет достаточно, чтобы найти форму траектории и отобразить её. Если же Вы хотите показать, как спутник движется... Вам придётся вводить эксцентричную (E) и среднуюю (M) аномалии и решать (численными методами) уравнение Кеплера:

чтобы в каждый момент времени вычислять, где именно находится спутник.

Для этого читайте Субботина.

Оффлайн antifatonАвтор темы

  • Новичок
  • *
  • Сообщений: 6
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от antifaton
Re: как просчитать траекторию спутника?
« Ответ #5 : 30 Сен 2011 [01:51:20] »
Цитата
Если вводить только высоту и скорость, получите равномерное движение по кругу - пятиминутная задачка для тринадцатилетнего программиста. Как ещё данные будут браться?

Пользователь должен вводить только эти значения (по условию задачи), есд нужны еще какие то данные, то видимо я должен подбирать их сам. По поводу равномерного движения по кругу... Оно будет только если скорость спутника будет равна первой космической скорости, а если скорость будет больше 11200 м/с тоспутник вообще покинет орбиту земли...


Я тут еще немного пошуршал и вот чего придумал. По ссылке которую приводил в первом сообщении указано как найти большую полуось оперируя скоростью и высотой:

В небесной механике большая полуось  может быть рассчитана методом векторов орбитального состояния:

для эллиптических орбит

для гиперболической траектории
и

(en:specific orbital energy)
и

(стандартный гравитационный параметр), где:
v — орбитальная скорость спутника, на основе вектора скорости,
 r— вектор положения спутника в координатах системы отсчёта, относительно которой должны быть вычислены элементы орбиты (например, геоцентрический в плоскости экватора — на орбите вокруг Земли, или гелиоцентрический в плоскости эклиптики — на орбите вокруг Солнца),
 G— гравитационная постоянная,
 M и m — массы тел.

C  эксцентриситетом я схалтурил (каюсь). Я его взял просто пропорционально скорости а именно е=(V-7900)/(11200-7900).

далее зная эксцентриситет и большую полуось можно высчитать фокальный параметр p=a(1-e^2).
а потом высчитывать координаты движения спутника уравнением

Я знаю что в этом алгоритме ошибка! Но не знаю где именно... когда я высчитываю большую полуось то беру  |r| = 6371км +вводимую пользователем высоту... возможно это не правильно?
« Последнее редактирование: 30 Сен 2011 [01:56:58] от antifaton »

Tau

  • Гость
Re: как просчитать траекторию спутника?
« Ответ #6 : 30 Сен 2011 [08:15:57] »
Имхо, задачу вы сформулировали неправильно. Что является целью? Показать, что ИСЗ движется над Землей? Так для этого не нужны никакие формулы, нарисовать круг или эллипс - задачка действительно для тринадцатилетнего программиста. Или целью является показать, как движется ИСЗ под действием силы притяжения? Тогда надо ввести дополнительное условие в задачу. Например, задавать высоту над Землей и скорость в конкретной точке орбиты: в перигее и апогее проще всего. При введении этого условия однозначно определяется эксцентриситет и большая полуось.
Например, задается высота и скорость в перигее (в точке наибольшего приближения ИСЗ к Земле). Понадобятся три уравнения (см.картинку).
1) Расстояние от ИСЗ до центра Земли в перигее: r = R0 + H =  a* (1-e)
где R0 - радиус Земли, H - высота ИСЗ над поверхностью Земли в перигее, а - большая полуось, е - эксцентриситет.
2) Связь скорости с расстоянием ИСЗ от центра земли: V2=fm*(2/r-1/a)
где fm = 398600.5 гравитационная постоянная Земли.
3) Условие на ограничение скорости (выводится из второго уравнения),  она должна быть в определенных пределах, чтобы спутник не упал на Землю и не улететел в бескрайние просторы.
fm/r <= V2 < 2*fm/r

Тест: Задаем H = 3000 (высота в перигее), границы скорости при этом будут: от  6.519 до  9.220 км/c
Выбираем V = 8 км/сек. Получаем e =  0.50577, a =  18975.241. А дальше просто рисуем эллипс:
x = r*cos(t)
y = r*sin(t)
где t - угол, изменяющийся от 0 до 360 градусов,
r = a*(1-e2) /(1+e*cos(t)) - расстояние от центра Земли до ИСЗ при текущем угле t.
« Последнее редактирование: 30 Сен 2011 [08:22:45] от Tau »

Оффлайн antifatonАвтор темы

  • Новичок
  • *
  • Сообщений: 6
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от antifaton
Re: как просчитать траекторию спутника?
« Ответ #7 : 30 Сен 2011 [10:06:46] »
то  что нужно!!! Большое спасибо! Я вполне могу принять введенные высоту и скорость за данные в перигее :)

Спасибо всем откликнувшимся)))

Оффлайн antifatonАвтор темы

  • Новичок
  • *
  • Сообщений: 6
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от antifaton
Re: как просчитать траекторию спутника?
« Ответ #8 : 30 Сен 2011 [11:19:58] »
Уточните пожалуйста несколько моментов.

Попробовал пересчитать ваш тестовый пример, у меня не получилась большая полуось.
Так как скорость и высота спутника известны то находим большую полуась из уравнения V2=fm*(2/r-1/a). Сделав соответствующие преобразования получаем а=r*fm/(2fm - r*V2), если подставить значения:
r = 6371 + 3000 = 9371 км.
fm =  398600.5
V = 8 км/с
то получаю а=503
Я поумал что нужно преобразоват в систему СИ:
r = 9371 000
fm = G*M = 6.67388*10-11 * 5.98*1024 = 39,9098 * 1013
V = 8000 м/с
Но при этих даных по той же формуле получается а = 74610 метров... в чем я тут обсчитался?..

Tau

  • Гость
Re: как просчитать траекторию спутника?
« Ответ #9 : 30 Сен 2011 [12:31:47] »
Сделав соответствующие преобразования получаем а=r*fm/(2fm - r*V2)
Я по-другому делала (см. картинку), но и так правильно

Цитата
если подставить значения:
r = 6371 + 3000 = 9371 км.
fm =  398600.5
V = 8 км/с
то получаю а=503
Вы что-то не то подставили. Код в студию.

Цитата
Я поумал что нужно преобразоват в систему СИ:
Не нужно, r  в км, V  в км/сек, fm в км3/сек2

Оффлайн antifatonАвтор темы

  • Новичок
  • *
  • Сообщений: 6
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от antifaton
Re: как просчитать траекторию спутника?
« Ответ #10 : 30 Сен 2011 [19:45:15] »
действительно ошибка закралась в мои расчеты, все сошлось, идеально))) спасибо большое!!

Оффлайн Arderun

  • Новичок
  • *
  • Сообщений: 15
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от Arderun
Re: как просчитать траекторию спутника?
« Ответ #11 : 02 Мая 2012 [03:13:32] »
Извиняюсь что поднимаю эту тему на верх, но вот  возникла необходимость развития этой задачи:

в апроксимированной ортогональном двухмерном пространстве(в плоскости орбиты), нужно расчитать орбиту имея скорость и массу спутника(+все параметры земли естественно). Причем  скорость  задается Vx и Vy тоесть не в минимальной точке приближения спутника  к земле а произвольно(от прямого направления на планету до перпендикулярного ухода от нее.

Задача для моего ума слишком непривычная, и я был бы очень благодарен за помощь .

Tau

  • Гость
Re: как просчитать траекторию спутника?
« Ответ #12 : 02 Мая 2012 [09:43:41] »
Причем  скорость  задается Vx и Vy тоесть не в минимальной точке приближения спутника  к земле а произвольно(от прямого направления на планету до перпендикулярного ухода от нее.
Эти компоненты скорости называются радиальной и трансверсальной скоростями. Скачайте http://www.astrolib.ru/library/42.html , глава 2., Эллиптическое движение. Трансверсальная и радиальная скорости зависят от большой полуоси, эксцентриситета и положения спутника на орбите (истинной аномалии). Положение спутника на орбите нужно задавать (иначе уравнения два, а неизвестных три).
Радиальная скорость направлена не к центру планеты, а в противоположную сторону (по радиус-вектору спутника), то есть знак будет другой.

Оффлайн Arderun

  • Новичок
  • *
  • Сообщений: 15
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от Arderun
Re: как просчитать траекторию спутника?
« Ответ #13 : 02 Мая 2012 [10:11:45] »
Да, само собой положение относительно планеты известно. Спасибо. просто обращатся с векторами не моя сильная сторона.

Оффлайн Arderun

  • Новичок
  • *
  • Сообщений: 15
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от Arderun
Re: как просчитать траекторию спутника?
« Ответ #14 : 02 Мая 2012 [11:23:42] »
основной вопрос по формуле всеминого тяготения...  там в ней получается что при вычислении ускорения масса сокращается... как-то это не правдоподобно. так ли это? ->

m*a=-(G*M*m*R)/(|R|^3) 

AlAn

  • Гость
Re: как просчитать траекторию спутника?
« Ответ #15 : 02 Мая 2012 [11:35:25] »
основной вопрос по формуле всеминого тяготения...  там в ней получается что при вычислении ускорения масса сокращается... как-то это не правдоподобно. так ли это? ->

m*a=-(G*M*m*R)/(|R|^3)
В первом приближении, строго говоря нужно учитывать ускорение планеты.

Tau

  • Гость
Re: как просчитать траекторию спутника?
« Ответ #16 : 02 Мая 2012 [11:51:11] »
основной вопрос по формуле всеминого тяготения...  там в ней получается что при вычислении ускорения масса сокращается... как-то это не правдоподобно. так ли это? ->
m*a=-(G*M*m*R)/(|R|^3) 
Это так. Читаем первый абзац http://www.astronet.ru/db/msg/1188726

Оффлайн Крупин

  • *****
  • Сообщений: 4 878
  • Благодарностей: 92
    • Сообщения от Крупин
    • Девятой планеты нет
Re: как просчитать траекторию спутника?
« Ответ #17 : 02 Мая 2012 [11:53:10] »
основной вопрос по формуле всеминого тяготения...  там в ней получается что при вычислении ускорения масса сокращается... как-то это не правдоподобно. так ли это? ->

m*a=-(G*M*m*R)/(|R|^3) 

   Да, так оно и выходит. А в чём странность? В том, что противоречит житецским представлениям, что тяжёлое тело труднее сдвинуть? Так в том и специфика гравитационных сил, что сила изменяется ровно во столько же раз, во сколько и масса.

Оффлайн Arderun

  • Новичок
  • *
  • Сообщений: 15
  • Благодарностей: 0
  • Мне нравится этот форум!
    • Сообщения от Arderun
Re: как просчитать траекторию спутника?
« Ответ #18 : 02 Мая 2012 [12:12:10] »
тоесть вы хотите сказать что если я на орбиту выбущу еще одну землю и сделаю иежду ними зазор в месту минимального приближения примерно в один свой палец, то они будут вращатся друг вокруг друга с по той же орбите что и если бы я выкинул на это же растояние свой ботинок? дается если чесно понимание этого сложно. Особенно учитывая что одной из вводных переменных задачи есть масса спутника

Tau

  • Гость
Re: как просчитать траекторию спутника?
« Ответ #19 : 02 Мая 2012 [14:55:48] »
В ситуации "Земля+Земля" обе Земли будут приятигвать друг друга одинаково.
В ситуации "Земля+ботинок" Земля будет притягивать ботинок, а ботинок Землю - нет, т.к. поле притяжения ботинка можно вообще не учитывать (из-за мизерной массы ботинка).
В обоих ситуациях перигей на расстоянии одного пальца невозможен.
Цитата
Особенно учитывая что одной из вводных переменных задачи есть масса спутника
О каком спутнике вообще идет речь? Если об ИСЗ, то их массы никогда не учитывают. Или речь о Луне? Или мы вообще не о Земле говорим? Хотя это неважно: дифференциальное уравнение движения тела в поле притяжения другого тела (задача двух тел) одно на всех, только имеет разные вариации в случае возмущений. Масса притягиваемого тела не фигурирует в этом уравнении.
Не могли бы вы написать задачу полностью, не пересказывая своими словами?
« Последнее редактирование: 02 Мая 2012 [15:02:30] от Tau »