通用演算法與數值計算
角度、誤差、資料處理、內插與求根,是計算天文問題的通用工具。
先認識角度與精度,再進入插值、擬合與迭代。
先看生活中的現象 →
- 原地轉了一整圈,為什麼還是面對同一棟房子?
用轉身找方向,分清「轉了多少」和「最後朝哪裡」。
- 計算機算出了32°,為什麼目標卻在相反方向?
兩個相反方向能有相同的斜率。只留下一個比值,就丟掉了你真正需要的符號。
- 兩次秤重幾乎一樣,相減就能知道少了多少嗎?
先把兩張讀數記下來,再看捨入怎樣改變那個很小的差。
- 星歷裡的誤差,到底出在輸入、公式,還是機器裡?
同一个结果要经过四道关:输入、算法、内部运算、最后显示。不要把它們混成一種「精度」。
- 一疊亂序觀測記錄,怎樣排得又對又省事?
先比較哪張更早,再移動整張記錄,親眼看數據怎樣排好。
- 表格每天只記一次,晚上那一刻的數字從哪裡來?
用前後幾筆記錄,補出附近沒有直接列出的時刻。
- 星曆表只記幾次,怎麼找出「最近」和「剛好過零」的時刻?
除了補一個中間值,插值還能尋找局部極小值或過零點;前提是資料真的在附近。
- 記錄時間不整齊,還能補出中間的資料嗎?
不用把記錄強行搬到整點上,讓每個真實的輸入位置都參加計算。
- 讀數有高有低,怎麼找出背後的趨勢?
把散落的觀測記錄放在一起,找一條整體最貼近它們的線。
- 一塊長條花園,怎麼一步步變成正方形?
面積不變,調整兩邊,親眼看見「越猜越準」。
- 反覆“改進答案”,為什麼有時越算越離譜?
不是所有重複計算都能靠近答案;同一題,改寫方式和起點都會影響結果。