擅长:python、mysql、java
<p>您可以通过创建一个<a href="http://rhodesmill.org/skyfield/earth-satellites.html" rel="nofollow noreferrer">^{<cd1>}</a>对象作为TLE,然后在一个时间列表中为每次生成<a href="http://rhodesmill.org/skyfield/positions.html" rel="nofollow noreferrer">^{<cd2>}</a>对象。您需要将时间列表指定为支持时区的datetime对象。你可以用这样的方法创建你的时间列表(可能有很大的空间来提高效率):</p>
<pre><code>from datetime import timezone, timedelta, datetime
from skyfield.api import load
ts = load.timescale() # create skyfield timescale object
tz = timezone(timedelta(hours=-4)) # whatever your timezone offset from UTC is
start = datetime(2018, 06, 21, 0, 0, 0, tzinfo=tz) # timezone-aware start time
end = start + timedelta(hours=24) # one day's worth of times
delta = timedelta(minutes=1) # your interval over which you evaluate
times = [start]
now = start
while now <= end:
now += delta
times.append(now)
</code></pre>
<p>并用以下方法进行评估:</p>
^{pr2}$
<p>这将在你指定的每一次给你一个天体测量的列表。你可以用这些物体来得到物体的位置(我想是速度),在你喜欢的任何单位或参考系里。例如,可以通过以下方式获取列表中每个元素的高度和方位角(以弧度为单位):</p>
<pre><code>alt_az = []
for ast in astrometrics:
alt_az.append(ast.altaz().radians
</code></pre>