![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Что называется «глаз замылился»! Уже несколько дней бьюсь с непонятной проблемой: некоторые функции библиотеки SOFA выдавали неправильный результат. Думаю: ну быть же такого не может, где-то у меня ошибка! Полез в документацию, читал-читал (а мануалов там — приличное количество). Вот непонятно и все тут! Вроде бы, все функции у меня правильно написаны, но при вычислении apparent place получается ошибка примерно в 0.5 секунд времени (что, между прочим, аж 7.5'' на небе!). Вот — «виновник торжества» (правда, уже обновленный).
Я в попытках понять, в чем дело, даже вывел отдельно отображение разницы между местным видимым звездным временем и прямым восхождением (что дает часовой угол):
На сами функции преобразования координат между системами нареканий нет: первые две строчки показывают, что все однозначно (да и что там может быть неправильного в несложной сферической геометрии?). Значит, что-то не так с методикой вычисления звездного времени!
И тут-то я увидел, «где собака порылась»: при вычислении apparent place я брал значение dUT1 из функции-заглушки getDUT, а при вычислении звездного времени — из константы, записанной в начале main().
Теперь вроде бы все правильно (взял другую точку для надежности):
Но чувствую, что все равно рукожопость осталась: в вычислении звездного времени. Что-то мне подсказывает, что координаты географического полюса тоже имеют значение. И как-то странно, что в SOFA нет одной из важнейших функций: для вычисления звездного времени!
Честно говоря, уже голова едет от этого многообразия времен и представлений координат! Между тем, 0.5м телескоп все простаивает: ждет, когда я уже обработаю последние данные для вычисления СКН и либо разберусь, как их правильно вводить в монтировку (на форуме 10micron внятного алгоритма давать не хотят), либо (что более вероятно) буду каждую секунду корректировать положение телескопа на СКН и рефракцию, отключив его «самодеятельность»…
Я в попытках понять, в чем дело, даже вывел отдельно отображение разницы между местным видимым звездным временем и прямым восхождением (что дает часовой угол):
A=-179 00 00.00, Z=+45 00 00.00; HOR->EQ: HA=00:02:49.75, RA=11:43:25.74, DEC=-01 20 31.23 Back conversion EQ->HOR: A=-179 00 00.00, Z=+45 00 00.00 Apparent place, RA=11:44:27.85, HA=00:01:48.19, ST-RA=00:01:47.64, DEC=-01 26 29.67; A=-179 21 49.53, Z=+45 05 48.88 HOR->EQ: RA=11:44:27.30, HA=00:01:48.19, ST-RA=00:01:48.19, DEC=-01 26 29.67 EQ->HOR: A=-179 22 01.22, Z=+45 05 48.81
На сами функции преобразования координат между системами нареканий нет: первые две строчки показывают, что все однозначно (да и что там может быть неправильного в несложной сферической геометрии?). Значит, что-то не так с методикой вычисления звездного времени!
И тут-то я увидел, «где собака порылась»: при вычислении apparent place я брал значение dUT1 из функции-заглушки getDUT, а при вычислении звездного времени — из константы, записанной в начале main().
Теперь вроде бы все правильно (взял другую точку для надежности):
A=+91 00 00.00, Z=+45 00 00.00; HOR->EQ: HA=20:25:21.94, RA=15:30:08.24, DEC=+28 37 55.63 Back conversion EQ->HOR: A=+91 00 00.00, Z=+45 00 00.00 Apparent place, RA=15:30:56.78, HA=20:24:33.40, ST-RA=20:24:33.40, DEC=+28 34 16.30; A=+90 55 43.69, Z=+45 10 51.05 HOR->EQ: RA=15:30:56.78, HA=20:24:33.40, ST-RA=20:24:33.40, DEC=+28 34 16.30 EQ->HOR: A=+90 55 43.69, Z=+45 10 51.05
Но чувствую, что все равно рукожопость осталась: в вычислении звездного времени. Что-то мне подсказывает, что координаты географического полюса тоже имеют значение. И как-то странно, что в SOFA нет одной из важнейших функций: для вычисления звездного времени!
Честно говоря, уже голова едет от этого многообразия времен и представлений координат! Между тем, 0.5м телескоп все простаивает: ждет, когда я уже обработаю последние данные для вычисления СКН и либо разберусь, как их правильно вводить в монтировку (на форуме 10micron внятного алгоритма давать не хотят), либо (что более вероятно) буду каждую секунду корректировать положение телескопа на СКН и рефракцию, отключив его «самодеятельность»…