จุดตัดสำหรับรังสีและพื้นผิวโลก


11

สมมติว่าฉันมีเวกเตอร์เรย์ที่มาจากที่ใดที่หนึ่งในอวกาศ ตัวอย่างอาจเป็นแสงจากดวงอาทิตย์ ฉันจะคำนวณจุดตัด (ถ้ามี) ระหว่างรังสีกับพื้นผิวโลกได้อย่างไร ฉันใช้พิกัดคาร์ทีเซียน (ECEF) และฉันต้องการให้เรขาคณิตทรงรีของโลกเป็นตัวประกอบในการคำนวณ

คำตอบ:


12

มันง่าย แต่ยุ่ง

เนื่องจากคุณทำงานใน ECEF สมมุติว่าคุณมีต้นกำเนิดรังสี (x, y, z) และเวกเตอร์บอกทิศทาง (u, v, w) ในพิกัด ECEF เช่นกัน สำหรับช่วงเวลาสมมติว่าในช่วงเวลาของการเดินทางไปยังพื้นผิวของโลกโลกไม่ได้เคลื่อนไหวชื่นชม (ส่วนที่เร็วที่สุดของโลกที่หมุนรอบตัว, เส้นศูนย์สูตรเคลื่อนที่ประมาณ 0.45 กม. / วินาทีและแสงเคลื่อนที่ประมาณ 300,000 กม. / วินาทีดังนั้นรังสีที่กำเนิดขึ้นกล่าวว่า 1,000 กม. เหนือพื้นโลกและมุ่งหน้าตรงไปยังเส้นศูนย์สูตร 1/300 วินาทีเพื่อไปถึงมันในระหว่างที่ Equator จะขยับ 1.5 เมตรนั่นอาจเป็นข้อผิดพลาดที่ยอมรับได้)

เราแค่ต้องคำนวณจุดตัดของเส้นที่กำหนดพารามิเตอร์

t --> (x,y,z) + t*(u,v,w)

กับพื้นผิวโลกซึ่งถือได้ว่าเป็นเซตของฟังก์ชัน

(x/a)^2 + (y/a)^2 + (z/b)^2 - 1

โดยที่aคือแกนกึ่งหลัก (6,378,137 เมตร) และbคือแกนกึ่งรองของWGS84 ellipsoid (6,356,752.3142 เมตร) เสียบสูตรแรกในสองและแก้ปัญหาสำหรับเสื้อในแง่ของx, y, z, U, V, W มันคือสมการกำลังสองคุณจึงได้คำตอบที่มากถึงสองวิธี: อันหนึ่งสำหรับการเข้าสู่โลกและอีกอันสำหรับการปล่อยมันอีกครั้ง (ซึ่งจะเกิดขึ้นเช่นสำหรับนิวตริโน) เลือกวิธีแก้ปัญหาที่ระยะทางสั้นที่สุด สิ่งนี้จะช่วยให้

t = -(1/(b^2 (u^2 + v^2) +  a^2 w^2)) * (b^2 (u x + v y) + a^2 w z + 1/2 Sqrt[
     4 (b^2 (u x + v y) + a^2 w z)^2 - 
     4 (b^2 (u^2 + v^2) + a^2 w^2) (b^2 (-a^2 + x^2 + y^2) + a^2 z^2)])

เสียบค่านี้เป็นสมการแรกเพื่อให้ได้จุดตัด

สำหรับต้นกำเนิดเรย์อยู่ห่างไกล แต่ไม่ชะมัดห่างไกล ( เช่นจากดวงอาทิตย์ แต่ไม่ได้มาจากนอกระบบสุริยะ) เริ่มต้นด้วยการประมาณการน้ำมันดิบของเวลาTมันควรจะใช้เวลาในการเข้าถึงโลก (ในวินาที): คุณสามารถ ยกตัวอย่างเช่นใช้ระยะทางจาก (x, y, z) ไปยังศูนย์กลางของโลก แก้ไขพิกัดเริ่มต้น (x, y, z) เพื่ออธิบายปริมาณการหมุนของโลกในช่วงเวลานี้: สิ่งนี้จะเปลี่ยนพิกัดเริ่มต้นเป็น

(x*c + y*s, -x*s + y*c, z)

(จุดจะดูเหมือนจะย้ายไปข้างหลัง ) ที่ c และ s เป็นไซน์และโคไซน์ของ0.000072921150 เรเดียน คำนวณจุดตัดของรังสีที่เริ่มต้นจากตำแหน่งที่อัปเดตนี้ คุณอาจถูกปิดโดยมากถึง 10 เมตรหรือมากกว่านั้นเนื่องจากการใช้เวลาโดยประมาณ ถ้าเรื่องนี้อีกครั้งประมาณเวลาที่ผ่านไปขึ้นอยู่กับจุดตัดนี้และทำซ้ำการคำนวณด้วยค่าใหม่ของT


ว้าว. ขอบคุณมากสำหรับคำตอบที่ละเอียดอย่างไม่น่าเชื่อ!
Pris

คำถามนี้ดูเหมือนจะใกล้เคียงกับคำถามอื่น: gis.stackexchange.com/questions/86031/…อย่างไรก็ตามฉันไม่ได้ใช้ ECEF สามารถแก้ไขได้ในวิธีที่คล้ายกัน @whuber? ขอบคุณ
alvarolb

1
@alvarolb อ้างอิงแสดงให้เห็นว่าการแปลงระหว่าง ECEF และ (lon, ลาดพร้าว, ความสูง) จะได้รับที่gis.stackexchange.com/questions/20714
whuber

ไม่สามารถคำนวณได้โดยตรงโดยไม่ผ่านจาก geodesic ไปยัง EFEC และกลับไปเป็น geodesic หรือไม่
alvarolb
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.