Дважды в год солнце находится под определенным углом к югу (или северу) от экватора между Тропиком Рака и Тропиком Козерога. В это время солнце будет находиться точно над головой людей на широте (и долготе). Есть ли таблица или, лучше, модель, которая принимает широту (и год) в качестве входных данных и отвечает датой, временем и долготой в качестве выходных данных? - "Ближайший" "полдень" (солнечное время) (до или после) будет самым близким людям на этой широте - по всему миру - придут, чтобы испытать солнце "непосредственно" над головой. Вы могли бы назвать это «Очень высокий полдень».
виджей
Позвольте мне дать немного лучший ответ. Если вы посетите http://ssd.jpl.nasa.gov/horizons.cgi с такими параметрами:
вы увидите астрометрическое прямое восхождение и склонение Солнца за 48-часовой период.
Давайте посмотрим на один из результатов и посмотрим, что он нам говорит:
Дата__(UT)__HR:MN RA_(ICRF/J2000.0)_DEC ************************************************* $$SOE 2016-ноябрь-13 00:00 15 13 30.08 -17 57 18.0
Это говорит о том, что склонение солнца равно 17. 57'18,0", что означает, что солнце (почти) прямо над головой на этой широте.
Прямое восхождение составляет 15 ч 13 м 30,08 с, что означает, что солнце (почти) находится прямо над головой, где это значение соответствует местному звездному времени.
Чтобы вычислить местное звездное время, мы сначала используем http://aa.usno.navy.mil/faq/docs/GAST.php , чтобы получить GMST (я использую приближение):
GMST = 18.697374558 + 24.06570982441908 D
Чтобы получить D, количество дней с 2000 года, я использовал команду даты Unix следующим образом и использовал другие команды для завершения вычисления:
: по http://aa.usno.navy.mil/faq/docs/GAST.php мы вычисляем количество : дни с 1 января 2000 г., 12:00 UT (не 0:00 UT) date -d '2000-01-01 12:00 UTC' +%s;: результат 946728000 date -d '2016-11-13 00:00 UTC' +%s;: результат 1478995200 : взять разницу и преобразовать результат в дни для формулы perl -le 'использовать POSIX; printf("%.10f\n", (1478995200-946728000)/86400)' : результат выше равен 6160,5 (конечные цифры равны 0) : вычисление GMST и модификация для получения результата от 0 до 24 perl -le 'использовать POSIX; printf("%.10f\n", fmod(18.697374558 + 24.06570982441908*6160.5,24))' : результат выше 3.5027478917 : преобразовать солнечный RA в десятичный perl -le 'использовать POSIX; printf("%.10f\n", 15+13/60+30.08/3600)' : результат выше 15.2250222222 : сколько часов к востоку от GMST находится Солнце (в градусах)? 1ч = 15 градусов perl -le 'использовать POSIX; printf("%.10f\n", (15.2250222222-3.5027478917)*15)' : результат выше 175.8341149575 : переводя в минуты и секунды, мы сначала находим секунды из дробной части perl -le 'использовать POSIX; printf("%.10f\n", 0.8341149575*3600)' : результат выше равен 3003, округленному до ближайшей секунды : и теперь минуты/секунды из 3003 секунд всего perl -le 'использовать POSIX; printf("%.10f %.10f\n", этаж(3003/60), 3003%60)' : результат выше 50 и 3
Таким образом, вы могли бы подумать, что Солнце находится над головой в 17 57'18,0'' южной широты (южной, потому что склонение отрицательное) и долготы 175 50'03" в.д. (восток, потому что долгота положительная) в 00:00 UTC 13 ноября 2016 г. Давайте воспользуемся ГОРИЗОНТОМ, чтобы проверить, правда ли это (оказывается, что это не так, поэтому мы будем использовать минуту по обе стороны от 2016-Nov-13 00:00 UTC, чтобы посмотреть, что произойдет):
Мы можем подтвердить, что RA Солнца соответствует местному звездному времени в пределах 1 секунды от 00:00 UTC из этих строк в выходных данных:
Date__(UT)__HR:MN:SC.fff RA DEC Azi Elev Sid_Time 2016-ноябрь-13 00:00:00.000 * 15 13 30.08 -17 57 18.0 104.6639 89.7692 15 13 29.2615 2016-ноябрь-13 00:00:01.000 * 15 13 30.08 -17 57 18.0 104.9166 89.7730 15 13 30.2643
Вы заметите скачки местного звездного времени с 0,82 секунды отставания от прямого восхождения Солнца до 0,18 секунды опережения прямого восхождения Солнца за период в одну секунду (показывая, что эти два момента совпали где-то в течение этой секунды, вероятно, в 00:00:00,82 или так).
Однако самое высокое положение Солнца (обозначенное ГОРИЗОНТОМ как «t» для транзита) происходит немного позже:
Date__(UT)__HR:MN:SC.fff RA DEC Azi Elev Sid_Time 2016-ноябрь-13 00:00:56.000 * 15 13 30,23 -17 57 18,6 178,5844 89,9415 15 14 25,4148 2016-ноябрь-13 00:00:57.000 *t 15 13 30,24 -17 57 18,6 182,4651 89,9415 15 14 26,4176 2016-ноябрь-13 00:00:58.000 * 15 13 30,24 -17 57 18,6 186,3230 89,9412 15 14 27,4203
когда местное звездное время почти на минуту опережает прямое восхождение Солнца. Что тут происходит?
Поскольку Земля представляет собой эллипсоид, а не сферу, получается, что «вверх», направление, перпендикулярное местоположению на Земле, НЕ находится прямо от центра Земли (оказывается, гравитация действует в направлении, которое ни к центру Земли, ни перпендикулярно поверхности, но это не относится к этому вопросу): подробности см. http://www.oc.nps.edu/oc2902w/c_mtutor/shape/shape4.htm .
Если вам нужны действительно точные расчеты, вам придется использовать http://naif.jpl.nasa.gov/naif/tutorials.html http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C . /cspice/surfnm_c.html .
Хотя это не вызывает приведенного выше несоответствия, другим соображением является высота местоположения над поверхностью Земли, что также может иметь небольшой эффект (поскольку «верх» не всегда направлен к зениту). К счастью, есть одна вещь, которую вы можете игнорировать, — это рефракция, поскольку рефракция в зените фактически равна нулю.
Мой http://test.barrycarter.info/sunstuff.html является очень приблизительным представлением того, где Солнце находится над головой, и генерируется https://github.com/barrycarter/bcapps/blob/master/bc-sun-always . -shines.pl
в дженсен
пользователь21