遠隔資源へのアクセス方法の使用ヒント/アドバイス

現在,遠隔データに依存した2つの方法がある.

1つ目は SkyCoord from_name() 方法、この方法を用いて Sesame 特定の命名対象の座標を検索するには、以下の操作を実行してください。

>>> from astropy.coordinates import SkyCoord
>>> SkyCoord.from_name("PSR J1012+5307")  
<SkyCoord (ICRS): (ra, dec) in deg
    ( 153.1393271,  53.117343)>

2つ目は EarthLocation of_site() 方法、この方法は、同様の迅速な方法を提供する EarthLocation 天文台からの名前:

>>> from astropy.coordinates import EarthLocation
>>> apo = EarthLocation.of_site('Apache Point Observatory')  
>>> apo  
<EarthLocation (-1463969.3018517173, -5166673.342234327, 3434985.7120456537) m>
使用可能な天文台名の完全リストを通過することができる

astropy.coordinates.EarthLocation.get_site_names() それがそうです。

これらの方法は便利ですが、いくつか考慮すべき点があります。

  • これらの手法はオンラインデータにアクセスしているため,データは時間の経過とともに変化する可能性がある(たとえば,座標の精度が向上する可能性があり,新たな観測ステーションが増加する可能性がある).したがって、これは、これらのスクリプトを使用し、現在実行されているスクリプトが5年以内に異なる答えを与える可能性があることを意味する。したがって,再現性に関心のあるユーザは,それらの最終スクリプトでこれらの方法を使用すべきではなく,それらを使用して必要な値を取得し,それらをスクリプトにハードコードすることができる.例えば、以下のコマンドを使用して、キト峰天文台の座標を検査することができる。

    >>> loc = EarthLocation.of_site('Kitt Peak')  
    

    なお、このコマンドはInternet接続が必要です。

    天文台の実際のデカルト座標を見ることができます

    >>> loc  
    <EarthLocation (-1994502.6043061386, -5037538.54232911, 3358104.9969029757) m>
    

    その後、コードに変換することができます:

    >>> loc = EarthLocation(-1994502.6043061386, -5037538.54232911, 3358104.9969029757, unit='m')
    

    そして,後の行をスクリプトに含めることができ,結果が時間の経過とともに不変であることを確保することができる.

  • あなたの目的に対して、オンラインデータは正確ではないかもしれません。最大精度が最も重要であれば、便利な方法ではなく、天球または地球座標を自分で決定し、ハードコードすることをお勧めします。

  • もしインターネット接続が利用できなければ、このような方法は機能しないだろう。したがって,オフライン時にスクリプトを処理する必要がある場合は,上の最初の項目記号の説明に従ってオフライン前に座標をハードコードしてください.