Как рассчитать время восхода и захода солнца для текущей даты с Delphi - PullRequest
8 голосов
/ 23 декабря 2011

Мне нужно определить время восхода и захода солнца (местное время) для текущего дня с учетом определенной широты и долготы и использования Delphi (я использую XE2).Я нашел эту статью и использовал библиотеку SysTools , но результаты не согласуются с опубликованными таблицами для Великобритании.

Кто-нибудь видел алгоритм паскаля для этого?

Ответы [ 3 ]

6 голосов
/ 23 декабря 2011

Некоторые случайные сайты:

3 голосов
/ 23 декабря 2011

Какие времена вам нужны?Есть несколько определений для «восхода» и «заката» (то есть гражданский, морской, астрономический).При сравнении с опубликованными таблицами вам также необходимо знать, как были рассчитаны эти таблицы (геоцентрическое положение или нет, стандартное время или истинное местное время и т. Д.) И какой результат дают вам используемые алгоритмы.Есть также некоторые приближенные алгоритмы, использующие всего несколько терминов, и более точный, использующий гораздо больше.Также следует помнить о проблемах с плавающей точкой IEEE, в некоторых ситуациях они могут сильно снизить точность.

Одним из лучших источников для таких алгоритмов является Astronomical Algorithms Жана Миуса (1998), 2-е издание

3 голосов
/ 23 декабря 2011

Здесь вы можете найти некоторые реализации в c, c ++, pascal и других:

http://www.sci.fi/~benefon/stuff.html

За паскалем можно зайти сюда:

http://www.sci.fi/~benefon/SUNDAY.PAS

Кроме того, учитываете ли вы переход на летнее время?

Еще одна полезная ссылка:

http://www.delphiarea.com/products/delphi-components/suntime/

Это компонент для расчета времени восхода и захода солнца.

Надеюсь, это поможет вам.

...