วิธีการดึงข้อมูลจาก NASA Horizons ไปใช้ในการวางแผน analemmas สำหรับดาวเคราะห์ดวงอื่น

Aug 20 2020

ฉันโพสต์คำถามดังกล่าวใน space.stackexchange ( https://space.stackexchange.com/questions/46077/which-are-the-correct-input-parameters-for-nasa-horizons-query-to-get-the-right?noredirect=1#comment150190_46077) แต่มันน่าจะเหมาะกว่าที่นี่เพราะมันเป็น "ปัญหาด้านบนศูนย์กลาง" แม้ว่าสำหรับดาวเคราะห์ดวงอื่นที่ไม่ใช่โลก เราสามารถเรียกมันว่า "ดาราศาสตร์อวกาศ" ;-)

ฉันกำลังพยายามหาวิธีดึงข้อมูลที่ถูกต้องจาก Nasa Horizons เพื่อพล็อต analemmas ดวงอาทิตย์ตามที่เห็นจากโลกอื่น ฉันพบข้อความค้นหาที่ใช้งานได้ดีสำหรับโลก แต่เมื่อเปลี่ยนตำแหน่งผู้สังเกตการณ์จากโลกไปยังดาวเคราะห์ดวงอื่นสิ่งต่าง ๆ ก็แปลกไปและฉันได้รับเส้นโค้งผิด WRt เส้นโค้ง "เป็นทางการ" (แม้ว่าจะไม่มีเส้นโค้งอะนาเลมมาเดียวสำหรับดาวเคราะห์แต่ละดวง แต่ เส้นโค้งที่แตกต่างกันสำหรับเวลาที่ต่างกัน)

นี่คือข้อความค้นหาที่ฉันใช้สำหรับ Earth analemma ซึ่งมีศูนย์กลางอยู่ที่ Greenwich เวลา 12.00 น.:

ผลลัพธ์:

ด้วยการใช้พิกัดเดียวกันบนดาวอังคารช่วงเวลาที่ยาวขึ้นและ 1477 นาทีเป็นช่วงเวลา (ความยาวของวันอังคาร) ฉันไม่ได้พล็อตที่ถูกต้อง ( ลิงค์ ):

analemma ที่ถูกต้องบนดาวอังคารคือ:

ฉันสังเกตเห็นว่า Earth analemmas ถูกพล็อตเทียบกับ Azimuth แต่ Analemmas ของดาวอังคารถูกพล็อตกับสมการของเวลา ทำไม? และฉันจะทำพล็อตใน Excel ด้วยตัวเองได้อย่างไร

คำตอบ

7 DavidHammen Aug 20 2020 at 19:50

คุณทำผิดสองอย่างผู้เยาว์หนึ่งคนที่สำคัญอื่น ๆ สิ่งเล็กน้อยที่คุณทำผิดคือการเลือกศูนย์กลางระบบสุริยะเป็นเป้าหมายแทนที่จะเป็นดวงอาทิตย์ ใช้ดวงอาทิตย์

สิ่งสำคัญที่คุณทำผิดคือการใช้ขนาดก้าว 1477 นาที นั่นคือ (ถึงภายในหนึ่งนาที) ของความยาวของวันดาวอังคาร ดวงอาทิตย์จะเดินข้ามขอบฟ้าหากคุณใช้วันที่มีความเป็นจริง สิ่งที่คุณต้องการคือวันสุริยคติของดาวอังคารซึ่งมีความยาว 1479 นาที 35 วินาที

นี่เป็นปัญหาใหม่ ตามหลักการแล้วขนาดขั้นตอนของคุณควรเป็น 88775 วินาที แต่คุณไม่สามารถเลือกวินาทีเป็นหน่วยของขนาดขั้นตอนได้ คุณติดอยู่กับนาทีและนั่นเป็นเรื่องที่ไม่เหมาะสม มีแนวทางอื่น:

  • เลือกตัวเลือก "ช่วงเวลาเท่ากัน (ไม่มีหน่วย)" สำหรับขนาดขั้นตอน
  • กำหนดความแตกต่างของเวลาระหว่างเวลาเริ่มต้นและเวลาสิ้นสุดให้เป็นผลคูณในตัวของ 88775 วินาทีและ
  • ระบุขนาดขั้นตอนเป็นอินทิกรัลพหุคูณที่เลือกเพื่อกำหนดช่วงเวลา

ตัวอย่างเช่นการเลือก 711 เป็นตัวคูณอินทิกรัลและ 2020-20 ส.ค. 20 12:00:00 น. เป็นเวลาเริ่มต้นหมายความว่าเวลาสิ้นสุดควรเป็น 2022 ส.ค. 21 01:03:45 น. คุณอาจต้องทวีตเวลาสิ้นสุดเพื่อให้ analemma ปิดได้อย่างถูกต้อง


แก้ไข
ฉันสังเกตเห็นว่าคุณใช้จุดศูนย์กลางของดาวอังคาร คุณต้องมีจุดบนพื้นผิวเพื่อให้ได้คำอธิบายที่เหมาะสม Horizons มีจุดที่กำหนดไว้ล่วงหน้าหลายจุด หากคุณเลือก Viking 1 / Chryse @ 499 คุณจะต้องแก้ไขเวลาเริ่มต้นและเวลาสิ้นสุดเพื่อให้ดวงอาทิตย์อยู่เหนือขอบฟ้า เพิ่ม 12 ชั่วโมงในเวลาเริ่มต้นและเวลาสิ้นสุดที่แสดงด้านบนดูเหมือนว่าจะทำงานได้ดีมากสำหรับตำแหน่งของ Viking 1

ด้านล่างนี้คือสิ่งที่ฉันได้รับในการวางแผนระดับความสูงของดวงอาทิตย์เทียบกับมุมราบตามที่เห็นจากตำแหน่ง Viking 1 / Chryse โดยมีการสุ่มตัวอย่าง 711 ช่วง (712 จุดข้อมูล) ในช่วงเวลา 2020-21 ส.ค. 00:00:00 ถึง 2022-Aug-21 13 : 03: 35 UT.

3 jumpjack Aug 20 2020 at 23:32

ขอบคุณความช่วยเหลือจาก @DavidHammen นี่คือตัวอย่างของURL / ข้อความค้นหาที่ถูกต้องเพื่อรับ Mars analemma

ในรูปแบบที่อ่านได้:

  • https://ssd.jpl.nasa.gov/horizons_batch.cgi?batch=1
  • คำสั่ง = '10 ' (เป้าหมาย = ดวงอาทิตย์อย่าสับสนกับ "0", ศูนย์พลังงานแสงอาทิตย์)
  • CENTER = 'Coord @ 499' (ผู้สังเกตการณ์บนพื้นผิวดาวอังคาร)
  • OBJ_DATA = 'ใช่'
  • MAKE_EPHEM = 'ใช่'
  • TABLE_TYPE = 'OBSERVER'
  • REF_PLANE = 'ECLIPTIC'
  • COORD_TYPE = 'GEODETIC'
  • SITE_COORD = '0,90,0' (ตำแหน่งของดาวอังคารบนพื้นผิวลองจิจูดละติจูดระดับความสูง)
  • START_TIME = '2020-08-20 12:00:00'
  • STEP_SIZE = '668' (จำนวนเซ็กเมนต์ที่ช่วงเวลาเริ่ม - หยุดแบ่งออกเป็นตัวเลขนี้กำหนดความยาวของวันวันสุริยคติของดาวอังคาร (*) กินเวลา 88775 วินาทีหรือ 1479 นาที 35 วินาที แต่ Horizons ไม่อนุญาต การระบุขั้นตอนเป็นวินาทีไม่ใช่ในนาทีเศษส่วนและการระบุ 1479 หรือ 1480 จะส่งผลให้เส้นโค้งอะนาเลมมาไม่ถูกต้อง แต่ Horizons ยอมรับพารามิเตอร์ที่ไม่มีมิติซึ่งหมายถึง "จำนวนขั้นตอนระหว่างวันที่ที่กำหนด" ดังนั้นคุณจะใส่จำนวน Sols ที่นี่ ระหว่างวันที่เริ่มต้นและวันที่หยุดหนึ่งปีอังคารที่ผ่านมา 668.6 โซลทั้ง 668 หรือ 669 จะให้ผลลัพธ์ที่ถูกต้องเป็นเพียงเส้นโค้งที่สั้นกว่าหรือยาวกว่าตราบเท่าที่ใช้ค่าเดียวกันในการคำนวณ STOP_TIME)
  • STOP_TIME = '2022-07-07 20:44' ("เวลาหยุด" ลบ "เวลาเริ่มต้น" ซึ่งแสดงเป็นวินาทีต้องเป็นผลคูณของ 88775 วินาทีระยะเวลาของวันสุริยคติของดาวอังคาร(*) ในสเปรดชีตคุณจะ เพิ่มวันที่เริ่มต้น: (88775 * NumberOfSols) / 86400)
  • QUANTITIES = '4' (ผลลัพธ์ = ระดับความสูง / Azimuth)
  • FIXED_QUANTITIES = 'กำหนดเอง'
  • REF_SYSTEM = 'J2000'
  • OUT_UNITS = 'KM-S'
  • VECT_TABLE = '3'
  • VECT_CORR = 'ไม่มี'
  • CAL_FORMAT = 'CAL'
  • ANG_FORMAT = 'HMS'
  • APPARENT = 'AIRLESS'
  • TIME_TYPE = 'UTC'
  • TIME_DIGITS = 'MINUTES'
  • RANGE_UNITS = 'AU'
  • SUPPRESS_RANGE_RATE = 'ไม่'
  • SKIP_DAYLT = 'ไม่'
  • EXTRA_PREC = 'ใช่'
  • CSV_FORMAT = 'ใช่'
  • VEC_LABELS = 'ใช่'
  • ELM_LABELS = 'ใช่'
  • TP_TYPE = 'ABSOLUTE'
  • R_T_S_ONLY = 'ไม่'
  • CA_TABLE_TYPE = 'มาตรฐาน'

อาจจะไม่ได้พารามิเตอร์ทั้งหมดมีผลบังคับใช้, URL นี้ถูกสร้างขึ้นโดยอัตโนมัติNHUGUI

ไฮไลต์เป็นพารามิเตอร์เฉพาะสำหรับ analemma

ภาพด้านล่างแสดง analemmas ที่สร้างขึ้นสำหรับเวลา 12:00 ที่ลองจิจูด 0 °และละติจูด 0 °, 45 °และ 90 °

ภาพนี้แสดงวิธีตั้งค่าสเปรดชีตเพื่อคำนวณวันที่หยุดโดยอัตโนมัติวันที่เริ่มต้นที่กำหนดระยะเวลาปีในโซลและระยะเวลาโซลเป็นวินาทีโลก:

(*) ไม่ใช่วันจริง ตามความหมายวันสุริยคติสัมพันธ์กับดวงอาทิตย์มากกว่าดวงดาวและ analemma เป็นเส้นโค้งที่สัมพันธ์กับดวงอาทิตย์ วันสุริยคติของดาวอังคารมีชื่อว่า "Sol" และกินเวลา 88775.245 โลกต่อวินาที