Расчет положения восходящих и нисходящих узлов Луны из файлов эфемерид

Я пытаюсь найти положение планет и луны в любую конкретную дату, которую мне удалось найти, используя файлы ASCII эфемерид JPL.

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

Это зависит от того, какие именно данные вы просматриваете. Что вам нужно, так это эклиптическая широта, равная нулю в узле. Не стесняйтесь обращаться ко мне напрямую в Google по адресу carter.barry@gmail.com, так как я делаю такие вещи и для развлечения.
@barrycarter, многим из нас будет полезно, если вы дадите ответ.
Хорошо, но мне нужно знать, какие данные уже есть у OP и какие инструменты доступны. astronomy.stackexchange.com/questions/13488/… — это общий ресурс, который может помочь.

Ответы (3)

Вот способ сделать это полностью онлайн, если вы не хотите загружать библиотеки CSPICE. Посетите https://naif.jpl.nasa.gov/naif/webgeocalc.html -> щелкните WebGeocalc и щелкните поиск позиции:

введите описание изображения здесь

Заполните данные следующим образом:

введите описание изображения здесь

введите описание изображения здесь

Обратите внимание, что планетоцентрическая широта, равная 0, означает, что эклиптическая широта равна 0, поскольку мы используем систему отсчета ECLIPDATE (эклиптика даты).

Нажмите рассчитать:

введите описание изображения здесь

Результаты — это все случаи пересечения Луной эклиптики между 1970 и 2040 годами. Сюда входят как восходящие, так и нисходящие узлы.

Конечно, вам нужны не времена, а фактические позиции, поэтому нажмите «Сохранить все интервалы»:

введите описание изображения здесь

Вернитесь в меню расчета и нажмите «вектор состояния»:

введите описание изображения здесь

Заполните его следующим образом:

введите описание изображения здесь

введите описание изображения здесь

Обратите внимание, что вам может потребоваться перетащить список сохраненных интервалов в поле «Список интервалов», иначе он может быть заполнен автоматически.

После заполнения нажмите «Рассчитать»:

введите описание изображения здесь

И вот оно: список положений Луны, когда Луна находится в нисходящем и восходящем узлах.

введите описание изображения здесь

Обратите внимание, что прямое восхождение узла движется несколько линейно:

введите описание изображения здесь

но не совсем.

Если бы вы построили эклиптическую долготу узла, вы бы увидели более линейную подгонку из-за последовательного цикла между драконьим и сидерическим месяцами Луны.

Спасибо за очень информативный ответ. Я не знал об этом инструменте, и я с нетерпением жду возможности поиграть с ним.

Ответ с использованием SPICE превосходен!

Самый короткий путь — использовать интерфейс JPL Horizons в режиме ORBITAL ELEMENTS, загрузить таблицу и использовать OMили Ом , долгота восходящего узла в градусах.

Установка JPL Horizons для геоцентрических элементов орбиты Луны

элементы геоцентрической орбиты Луны из JPL Horizons

  Symbol meaning:

    JDTDB    Julian Day Number, Barycentric Dynamical Time
      EC     Eccentricity, e
      QR     Periapsis distance, q (km)
      IN     Inclination w.r.t X-Y plane, i (degrees)
      OM     Longitude of Ascending Node, OMEGA, (degrees)
      W      Argument of Perifocus, w (degrees)
      Tp     Time of periapsis (Julian Day Number)
      N      Mean motion, n (degrees/sec)
      MA     Mean anomaly, M (degrees)
      TA     True anomaly, nu (degrees)
      A      Semi-major axis, a (km)
      AD     Apoapsis distance (km)
      PR     Sidereal orbit period (sec)

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import numpy as np
import matplotlib.pyplot as plt

with open('datamoon.txt', 'r') as infile:
    linez = infile.readlines()

lines = [line.split(',') for line in linez]

Omega = np.array([float(line[5]) for line in lines])

JD = np.array([float(line[0]) for line in lines])
JD -= JD[0]

plt.plot(JD/365.2564 + 10, Omega)
plt.xlim(10, 30)
plt.xlabel('years since 2000')
plt.ylabel('geocentric lunar ascending node Ω (deg)')
plt.show()

Индийские родные альманахи указывают положение узлов. Восходящий узел — Рааху, нисходящий — Кету. https://srirangaminfo.com/vakya-panchangam-srirangam.php