【问题标题】:Is there a way to calculate transit times in Skyfield?有没有办法计算 Skyfield 的运输时间?
【发布时间】:2020-04-26 08:46:35
【问题描述】:

Skyfield 目前提供了一种计算天体升起和落下时间的方法。它是否提供了一种计算尸体运输时间的方法?

【问题讨论】:

    标签: python astronomy skyfield


    【解决方案1】:

    编辑:是的! Skyfield 现在直接支持传输,如其文档的新部分所述:

    https://rhodesmill.org/skyfield/almanac.html#meridian-transits

    一个示例脚本:

    from skyfield import api
    from skyfield import almanac
    
    bluffton = api.Topos('40.8939 N', '83.8917 W')
    
    ts = api.load.timescale()
    t0 = ts.utc(2020, 11, 6)
    t1 = ts.utc(2020, 11, 7)
    
    eph = api.load('de421.bsp')
    f = almanac.meridian_transits(eph, eph['Mars'], bluffton)
    t, y = almanac.find_discrete(t0, t1, f)
    
    print(t.utc_strftime('%Y-%m-%d %H:%M'))
    print(y)
    print([almanac.MERIDIAN_TRANSITS[yi] for yi in y])
    

    及其输出:

    ['2020-11-06 03:32', '2020-11-06 15:30']
    [1 0]
    ['Meridian transit', 'Antimeridian transit']
    

    【讨论】:

      【解决方案2】:

      您可以寻找地形观测物体高度的局部最大值。

      【讨论】:

      • 一个简短的技术评论:只有当物体的磁偏角速度为零时,最高高度时刻才会与子午线过境时刻完美重合。但除此之外,预计会有一个小的差异——例如,如果物体的偏角在增加,它的高度会在短时间内继续增加,即使它超过了子午线。
      • 这就是我们付给 Brandon 大笔费用的原因 ;)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-08
      • 2018-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-17
      • 2021-05-13
      相关资源
      最近更新 更多