Астрономический форум ФПА "Ка-Дар"

Тематические рабочие группы => Общие вопросы => Вопросы астрометрии => Тема начата: andyp от 27 декабря 2005, 19:15:12

Название: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: andyp от 27 декабря 2005, 19:15:12
Я собираюсь попробовать создать программу OrbSearch для расчета и уточнения элементов орбит астероидов.
Основная задача данного приложения - расчет как можно более точных элементов орбиты
на основе большого числа наблюдений, точность должна быть не хуже, чем у OrbFit.
Кроме того, данное приложение должно быть проще по использованию по сравнению
с OrbFit и свободно от ошибок, содержащихся в OrbFit.

Предполагается, что OrbSearch будет написан на C++ с использованием наработок,
которые были созданы в процессе работы над LinOccult.
Результаты работы OrbSearch должны быть тесно интегрированы с LinOccult.
OrbSearch будет создан на платформе UNIX (Linux) с возможностью портирования на другие платформы.
Лицензия GPL GNU Open Source.

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

Однако, соревноваться с OrbFit - задача на порядок сложнее, чем соревнование с
написанной на коленке WinOccult. Поэтому скорее всего, будет необходима разнообразная
помощь от максимально возможного числа людей. Если это реально, я начну разработку
более конкретного плана действий.

Андрей Плеханов
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: ctac от 27 декабря 2005, 19:42:29

 Буду рад подсказать или чем-то помочь :)

 Стас
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: andyp от 28 декабря 2005, 12:15:49
Вот есть задача разобрать как работают некоторые процедуры
перевода времени
UT1 -- TDT -- TAI -- UTC
в OrbFit.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: Игорь Измайлов от 28 декабря 2005, 16:07:43
Я думаю, что наблюдения должны фильтроваться по следующему принципу

1) Улучшаем орбиту по всем доступным наблюдениям.
2) Определяем максимальную невязку.
3) Если эта невязка больше некоторого порога, то исключаем это наблюдение (не все наблюдения, которые больше порога, а только одно наблюдение).
4) Снова, улучшаем орбиту и переходим к п.2.

В общем, это достаточно стандартная процедура фильтрации наблюдений.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: andyp от 28 декабря 2005, 16:45:21
Я думаю, что наблюдения должны фильтроваться по следующему принципу

1) Улучшаем орбиту по всем доступным наблюдениям.
2) Определяем максимальную невязку.
3) Если эта невязка больше некоторого порога, то исключаем это наблюдение (не все наблюдения, которые больше порога, а только одно наблюдение).
4) Снова, улучшаем орбиту и переходим к п.2.

В общем, это достаточно стандартная процедура фильтрации наблюдений.


Да, это стандартный метод.
Но он не всегда подходит.

Тут проблема в том, что прежде чем улучшать орбиту, надо ее вычислить.
А для вычисления надо выбрать три наблюдения (какие ?) из множества доступных.

У меня немного другая идея - попробовать определить несколько орбит
по различным комбинациям трех наблюдений и из всех доступных нам наблюдений выбрать те,
которые попали на большее число этих орбит.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: ctac от 28 декабря 2005, 23:10:46
Вот есть задача разобрать как работают некоторые процедуры
перевода времени
UT1 -- TDT -- TAI -- UTC
в OrbFit.

А надо определить именно как в этом программном продукте это реализуется или вообще решить эту задачу переходов? Если просто второе, то я могу подойти к Жарову - он ведет курс Сфеерической астрономии 1-му курсу астр. отд. физ-фака МГУ, и сейчас выпустил новый учебник. Он точно ответит на этот вопрос ;)
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: andyp от 29 декабря 2005, 11:29:50
Надо сделать как правильно.
Проблема в том, что до 1972 года время наблюдений
определялось в UT1, а после в UTC.
Надо эти времена переводить в ET(TDT).
Как это делается для UTC я знаю, а для UT1 нет.
Я даже не знаю в чем отличие UT1 и UTC.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: ctac от 29 декабря 2005, 23:01:55
Надо сделать как правильно.
Проблема в том, что до 1972 года время наблюдений
определялось в UT1, а после в UTC.
Надо эти времена переводить в ET(TDT).
Как это делается для UTC я знаю, а для UT1 нет.
Я даже не знаю в чем отличие UT1 и UTC.

 Хорошо. Я этот вопрос задам в ГАИШе ;)
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: Алексей Лосюк от 09 июня 2006, 19:38:33
Я даже не знаю в чем отличие UT1 и UTC.

Только сегодня случайно наткнулся на вопрос Андрея.

Прикрепляю отсканированную страницу из Астрономического Ежегодника на 1984 год. Там приводится определение UT1 и UTC.

Значения разности UT1-UTC имеются на сайте The International Earth Rotation and Reference Systems Service (IERS): http://www.iers.org/ . Например, на страничке http://www.iers.org/MainDisp.csl?pid=36-9 собраны ссылки на таблицы, содержащие значения этих разностей. Возможно, где-нибудь в недрах этого сайта имеется и формула, аппроксимирующая изменение разности UT1-UTC со временем. :)
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: Lupus от 30 марта 2007, 03:26:37
Эх, жалко тему забросили... А программа-то была бы весьма полезна...  :-\
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: OMI от 28 января 2008, 19:25:59
Кто там дела обстоят с данным проектом?

Программу ещё не сделали?

А то у меня есть интерес к данному вопросу, в части алгоритмов.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: andyp от 27 марта 2008, 19:47:15
Основной каркас программы создан.
Реализован модуль вычисления предварительной
орбиты по трем точкам.
Результат совпадает с OrbFit.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: andyp от 22 мая 2008, 23:02:18
Выложил первую версию программы - OrbSearch 1.0.0 Beta.
Исходники можно найти на моей страничке:

http://andyplekhanov.narod.ru

и на

http://sourceforge.net/projects/orbsearch

Начальная орбита вычисляется с помощью метода Гаусса по трем наблюдениям,
а затем уточняется с помощью нахождения минимума функции отклонения Simplex методом.
В отличии от известных программ упор делается на статистическую обработку и вычисление
неопределености обриты путем вычисления нескольких вариантов.

В программе используются библиотеки из LinOccult и GNU scientific library.

Вот несколько сравнений результатов с OrbFit:

Астероид 49:

OrbSearch (best fitted):

  Epoch (y m d)             2008/05/25.25 (54611.25)
  Semi-major axis (a)         3.09061843 AU
  Eccentricity (e)            0.23131746
  Inclination (i)             3.18124886 deg
  Long. of ascending node   286.13984314 deg
  Argument of perihelion    110.03371310 deg
  Mean anomaly (M)        240.29977619 deg

OrbFit:

        Semimajor axis     =   3.09061933737767E+00 AU
        Eccentricity       =   0.231307001433158
        Inclination        =   3.1814838945372 deg
        Long. of node      = 286.1301224096144 deg
        Arg. of pericenter = 110.0438989194008 deg
        Mean anomaly       = 240.3045776164618 deg
        Epoch of elements  : MJD   54611.28400000 TDT (May 25, 2008,  6.816000
h)

Астероид 165:

OrbSearch (best fitted):

  Epoch (y m d)             2008/05/20.00 (54606.00)
  Semi-major axis (a)         3.12572643 AU
  Eccentricity (e)            0.08338424
  Inclination (i)            11.23946034 deg
  Long. of ascending node   302.65132928 deg
  Argument of perihelion    350.83658219 deg
  Mean anomaly (M)        308.39276761 deg

OrbFit:

        Semimajor axis     =   3.12571555818036E+00 AU
        Eccentricity       =   0.083388649509875
        Inclination        =  11.2393034099170 deg
        Long. of node      = 302.6507359851024 deg
        Arg. of pericenter = 350.8433943595194 deg
        Mean anomaly       = 308.4035998068666 deg
        Epoch of elements  : MJD   54606.09000000 TDT (May 20, 2008,  2.160000
h)
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: Lupus от 04 июня 2008, 04:40:11
OrbSearch портирована и под Windows. Подробности ТУТ (http://www.astronomy.ru/forum/index.php/topic,11747.msg719069.html#msg719069). Тестирование приветствуется. :)
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: Lupus от 04 июня 2008, 13:36:12
Для расчёта орбит конкретных астероидов нужны файлы с данными их наблюдений. Но...
Цитировать
The .obs files, in the format specified by the Minor Planets Center, are currently available from the MPC Extended Computer Service at http://cfa-www.harvard.edu/iau/services/WebCSAccess.html. However, note that at present this is a service reserved to paying customers.
Буржуины проклятые...  :'( Закрывают доступ к научной информации, а потом деньгу сшибают... Это что ж -- чтобы получить эти данные, надо теперь региться к ним за деньги?!
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: Алексей Лосюк от 04 июня 2008, 13:52:33
Буржуины проклятые...  :'( Закрывают доступ к научной информации, а потом деньгу сшибают... Это что ж -- чтобы получить эти данные, надо теперь региться к ним за деньги?!

Нет, вроде бы можно получить данные наблюдений и бесплатно...

Вот я попробовал сейчас зайти на http://hamilton.dm.unipi.it/cgi-bin/astdys/astibo?quicksearch:0;main . Ввёл первый пришедший в голову номер астероида: 431. Нажал "submit query". Нашёл строчку "Get the observational details:" и нажал на гиперсылку "ASCII file". В результате открылся файл http://hamilton.dm.unipi.it/astdys/mpcobs/numbered/0/431.rwo , содержащий результаты наблюдений данного астероида с 07.10.1902 г. по 29.02.2008 г.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: ctac от 04 июня 2008, 13:55:15
Буржуины проклятые...  :'( Закрывают доступ к научной информации, а потом деньгу сшибают... Это что ж -- чтобы получить эти данные, надо теперь региться к ним за деньги?!

Нет, вроде бы можно получить данные наблюдений и бесплатно...

Вот я попробовал сейчас зайти на http://hamilton.dm.unipi.it/cgi-bin/astdys/astibo?quicksearch:0;main . Ввёл первый пришедший в голову номер астероида: 431. Нажал "submit query". Нашёл строчку "Get the observational details:" и нажал на гиперсылку "ASCII file". В результате открылся файл http://hamilton.dm.unipi.it/astdys/mpcobs/numbered/0/431.rwo , содержащий результаты наблюдений данного астероида с 07.10.1902 г. по 29.02.2008 г.

 Виталий, я высылал тебе в личку этот сайт ;)
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: ched от 04 июня 2008, 15:50:06
Буржуины проклятые...  :'( Закрывают доступ к научной информации, а потом деньгу сшибают... Это что ж -- чтобы получить эти данные, надо теперь региться к ним за деньги?!

Нет, вроде бы можно получить данные наблюдений и бесплатно...

Вот я попробовал сейчас зайти на http://hamilton.dm.unipi.it/cgi-bin/astdys/astibo?quicksearch:0;main . Ввёл первый пришедший в голову номер астероида: 431. Нажал "submit query". Нашёл строчку "Get the observational details:" и нажал на гиперсылку "ASCII file". В результате открылся файл http://hamilton.dm.unipi.it/astdys/mpcobs/numbered/0/431.rwo , содержащий результаты наблюдений данного астероида с 07.10.1902 г. по 29.02.2008 г.

Спасибо за ссылку! только почему-то там не все астероиды есть – например, там нет 2007VA85.
Название: Re: OrbSearch - приложение для расчета и уточнения элементов орбит астероидов
Отправлено: Lupus от 04 июня 2008, 18:07:18
О, спасибо, мужики! Сайт этот смотрел, да не разобрал, что там есть всё, что надо.

Файлы придётся немного переработать, ну да ничего -- терпимо. ;)

Вот выход для 1220T-2 с http://hamilton.dm.unipi.it/cgi-bin/astdys/astibo?quicksearch:0;main :
version =   1
errmod  = ' '
RMSast  =   6.01924E-01
RMSmag  =   6.21149E-01
END_OF_HEADER
! Object   Obser ============= Date ============= ================== Right Ascension =================  ================= Declination ===================== ==== Magnitude ==== Obs  Residual SEL
! Design   K T N YYYY MM DD.dddddddddd   Accuracy HH MM SS.sss  Accuracy      RMS  F     Bias    Resid sDD MM SS.ss  Accuracy      RMS  F     Bias    Resid Val  B   RMS  Resid Cod       Chi A M
 52167     O A   1973 09 19.18611       1.000E-05 00 20 50.440  1.500E-01    1.000 F    0.000   -1.730 +02 41 32.10  1.000E-01    1.000 F    0.000   -3.114                     675      3.48 0 0
 52167     O A   1973 09 19.23785       1.000E-05 00 20 48.250  1.500E-01    1.000 F    0.000   -0.903 +02 41 17.40  1.000E-01    1.000 F    0.000   -3.748                     675      3.80 0 0
 52167     O A   1973 09 20.22847       1.000E-05 00 20 06.240  1.500E-01    1.000 F    0.000   -0.227 +02 36 46.80  1.000E-01    1.000 F    0.000   -2.516                     675      2.56 1 0
 52167     O A   1973 09 24.34688       1.000E-05 00 17 07.470  1.500E-01    1.000 F    0.000    0.212 +02 17 29.70  1.000E-01    1.000 F    0.000   -1.715                     675      1.74 1 0
 52167     O A   1973 09 24.41597       1.000E-05 00 17 04.330  1.500E-01    1.000 F    0.000    0.300 +02 17 09.60  1.000E-01    1.000 F    0.000   -2.073                     675      2.11 1 0
 52167     O A   1973 09 25.24375       1.000E-05 00 16 28.100  1.500E-01    1.000 F    0.000   -1.233 +02 13 11.80  1.000E-01    1.000 F    0.000   -3.071                     675      3.25 0 0
 52167     O A   1973 09 25.30729       1.000E-05 00 16 25.180  1.500E-01    1.000 F    0.000   -1.480 +02 12 56.40  1.000E-01    1.000 F    0.000   -0.275                     675      1.56 1 0
 52167     O A   1973 09 29.25330       1.000E-05 00 13 31.200  1.500E-01    1.000 F    0.000    1.657 +01 53 59.00  1.000E-01    1.000 F    0.000   -0.956 18.4    0.70   0.10 675      1.94 1 1
 52167     O A   1973 09 29.31806       1.000E-05 00 13 28.160  1.500E-01    1.000 F    0.000    0.570 +01 53 40.40  1.000E-01    1.000 F    0.000   -0.884                     675      1.06 1 0
 52167     O A   1973 09 30.21007       1.000E-05 00 12 49.060  1.500E-01    1.000 F    0.000    1.030 +01 49 23.40  1.000E-01    1.000 F    0.000   -0.741                     675      1.29 1 0
 52167     O A   1973 09 30.27431       1.000E-05 00 12 46.100  1.500E-01    1.000 F    0.000    0.551 +01 49 06.80  1.000E-01    1.000 F    0.000    1.140                     675      1.30 1 0
 52167     O A   1973 10 04.28958       1.000E-05 00 09 51.260  1.500E-01    1.000 F    0.000    0.557 +01 29 58.70  1.000E-01    1.000 F    0.000   -0.064                     675      0.58 1 0
 52167     O A   1973 10 04.35208       1.000E-05 00 09 48.400  1.500E-01    1.000 F    0.000   -0.514 +01 29 41.30  1.000E-01    1.000 F    0.000    0.184                     675      0.56 1 0
 52167     O A   1973 10 05.31684       1.000E-05 00 09 07.430  1.500E-01    1.000 F    0.000    2.219 +01 25 09.00  1.000E-01    1.000 F    0.000   -0.913                     675      2.45 1 0
 52167     O A   1973 10 05.37917       1.000E-05 00 09 04.650  1.500E-01    1.000 F    0.000    1.767 +01 24 51.60  1.000E-01    1.000 F    0.000   -0.854                     675      2.00 1 0
 52167     O A   1979 11 16.81921       1.000E-05 01 39 50.900  1.500E-01    1.000 F    0.000   -0.120 +10 39 26.10  1.000E-01    1.000 F    0.000   -1.102 18.0    0.70  -0.73 095      1.12 1 1
 52167     O c   1996 09 08.38795       1.000E-05 23 47 38.760  1.500E-01    1.000 F    0.000   -0.758 -00 50 48.20  1.000E-01    1.000 F    0.000   -0.145                     691      0.78 1 0
 52167     O c   1996 09 08.40908       1.000E-05 23 47 37.850  1.500E-01    1.000 F    0.000   -0.746 -00 50 53.80  1.000E-01    1.000 F    0.000   -0.076 18.3 V  0.70   0.38 691      0.75 1 1
 52167     O c   1996 09 08.44321       1.000E-05 23 47 36.380  1.500E-01    1.000 F    0.000   -0.792 -00 51 03.10  1.000E-01    1.000 F    0.000   -0.218                     691      0.83 1 0
 52167     O C   1996 09 18.42211       1.000E-05 23 40 24.490  1.500E-01    1.000 F    0.000   -0.153 -01 37 42.70  1.000E-01    1.000 F    0.000    0.203 18.1 V  0.70   0.48 566      0.26 1 1
 52167     O C   1996 09 18.43191       1.000E-05 23 40 24.020  1.500E-01    1.000 F    0.000   -0.440 -01 37 45.90  1.000E-01    1.000 F    0.000   -0.183 18.5 V  0.70   0.88 566      0.48 1 1
 52167     O C   1996 09 18.44227       1.000E-05 23 40 23.530  1.500E-01    1.000 F    0.000   -0.642 -01 37 48.10  1.000E-01    1.000 F    0.000    0.592 18.6 V  0.70   0.98 566      0.88 1 1
 52167     O c   1996 09 19.31751       1.000E-05 23 39 44.870  1.500E-01    1.000 F    0.000   -1.092 -01 42 01.20  1.000E-01    1.000 F    0.000   -0.355                     691      1.15 1 0

А это выход с сайта OrbFit (формат пригоден для OrbSearch):

     T2S1220  A1973 09 19.18611 00 20 50.44 +02 41 32.1                      675
     T2S1220  A1973 09 19.23785 00 20 48.25 +02 41 17.4                      675
     T2S1220  A1973 09 20.22847 00 20 06.24 +02 36 46.8                      675
     T2S1220  A1973 09 24.34688 00 17 07.47 +02 17 29.7                      675
     T2S1220  A1973 09 24.41597 00 17 04.33 +02 17 09.6                      675
     T2S1220  A1973 09 25.24375 00 16 28.10 +02 13 11.8                      675
     T2S1220  A1973 09 25.30729 00 16 25.18 +02 12 56.4                      675
     T2S1220* A1973 09 29.25330 00 13 31.20 +01 53 59.0          18.4        675
     T2S1220  A1973 09 29.31806 00 13 28.16 +01 53 40.4                      675
     T2S1220  A1973 09 30.21007 00 12 49.06 +01 49 23.4                      675
     T2S1220  A1973 09 30.27431 00 12 46.10 +01 49 06.8                      675
     T2S1220  A1973 10 04.28958 00 09 51.26 +01 29 58.7                      675
     T2S1220  A1973 10 04.35208 00 09 48.40 +01 29 41.3                      675
     T2S1220  A1973 10 05.31684 00 09 07.43 +01 25 09.0                      675
     T2S1220  A1973 10 05.37917 00 09 04.65 +01 24 51.6                      675

Как видно, всё сходится. Теперь можно тестировать в своё удовольствие. :)