[問題] 關於方位角與勒讓得多項式

看板Prob_Solve (計算數學 Problem Solving)作者 (ROCK N ROLL)時間11年前 (2013/02/02 21:53), 編輯推噓1(1022)
留言23則, 4人參與, 最新討論串1/2 (看更多)
大家好 小弟想請問一個簡單的數學問題 由於目前需要使用空間中的球座標系座標來計算仰角 例:一個點在空間中的座標 (x,y,z) 而仰角計算公式為: Arccos(z平方/根號(x平方+y平方+z平方) 小弟只用此公式計算出"仰"角之後 再帶入勒讓得多項式 可是問題來了 由於勒讓得多項式所限定需要帶入的Cosin theta值必須介於-1~1之間 而小弟算出來的數值有超過1.5~2.多的 請問需要做轉換之類的嗎還是? 否則這樣子無法做計算 請神人幫解答 感謝!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.126.40.118 ※ 編輯: u5484 來自: 120.126.40.118 (02/02 21:56)

02/02 22:09, , 1F
不熟,但我猜 -1~1 的單位是 PI?
02/02 22:09, 1F

02/02 22:13, , 2F
應該不是喔 他就是介於-1~1之間的弧度值吧!
02/02 22:13, 2F

02/03 12:53, , 3F
C和matlab 呼叫 acos 得到的數值是 [0, 3.14..] 的弧度值喔!
02/03 12:53, 3F

02/03 12:57, , 4F
所以 theta 介於 [0, 3.14...] cos(theta) 介於 [-1, 1]
02/03 12:57, 4F

02/03 12:57, , 5F
應該是沒有問題才對
02/03 12:57, 5F

02/03 12:59, , 6F
可是我利用空間中座標再搭配arccos所得到的數值有超過...
02/03 12:59, 6F

02/03 13:00, , 7F
所以是不是代表我還要將它做旋轉角度的動作呢??
02/03 13:00, 7F

02/03 13:02, , 8F
不好意思 小弟筆誤 是計算其仰角才對
02/03 13:02, 8F
※ 編輯: u5484 來自: 120.126.40.118 (02/03 13:03)

02/03 13:05, , 9F
也有可能是程式碼寫錯 你可以把計算仰角的程式碼貼出來~
02/03 13:05, 9F

02/03 13:06, , 10F
還有那個仰角的公式 分子是z而不是z平方
02/03 13:06, 10F

02/03 13:07, , 11F
02/03 13:07, 11F

02/03 13:07, , 12F
小弟的仰角計算公式: acos(z/sqrt(x*x+y*y+z*z))
02/03 13:07, 12F

02/03 13:08, , 13F
感謝提醒 小弟已修正z平方
02/03 13:08, 13F

02/03 13:09, , 14F
然後再利用此公式得到的弧度值帶入Legendre計算中
02/03 13:09, 14F

02/03 13:09, , 15F
但MATLAB中明顯指出範圍須介於-1~1之間 所以很困惑
02/03 13:09, 15F

02/03 13:10, , 16F
請問你用哪一種程式語言? 我第一次見到arc這個函數...
02/03 13:10, 16F

02/03 13:13, , 17F
!!不好意思一直打錯= = 我是用C 是acos才對 Sorry!!
02/03 13:13, 17F
※ 編輯: u5484 來自: 120.126.40.118 (02/03 13:16)

02/03 13:18, , 18F
照這樣看應該是程式碼方面的問題 你得找人幫你檢查程式碼
02/03 13:18, 18F

02/03 13:20, , 19F
程式碼方面我都跟MATLAB所產生的結果對照過了 計算出的結果
02/03 13:20, 19F

02/03 13:20, , 20F
是一樣的 只是這邊可能需要做一些角度轉換什麼的...很困擾
02/03 13:20, 20F

02/03 13:24, , 21F
也許我的反餘弦函數得到的值還需要做扣掉pi/2?
02/03 13:24, 21F

02/03 16:29, , 22F
建議你可以另外寫條件"標記"出有問題的點
02/03 16:29, 22F

02/03 16:30, , 23F
確認看看帶入點和結果合不合理
02/03 16:30, 23F
文章代碼(AID): #1H3HfbVx (Prob_Solve)
文章代碼(AID): #1H3HfbVx (Prob_Solve)