作者u5484 (ROCK N ROLL)
站内Prob_Solve
标题[问题] 关於仰角与勒让得多项式
时间Sat Feb 2 21:53:38 2013
大家好 小弟想请问一个简单的数学问题
由於目前需要使用空间中的球座标系座标来计算仰角
例:一个点在空间中的座标 (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)
1F:→ tkcn:不熟,但我猜 -1~1 的单位是 PI? 02/02 22:09
2F:→ u5484:应该不是喔 他就是介於-1~1之间的弧度值吧! 02/02 22:13
3F:推 DJWS:C和matlab 呼叫 acos 得到的数值是 [0, 3.14..] 的弧度值喔! 02/03 12:53
4F:→ DJWS:所以 theta 介於 [0, 3.14...] cos(theta) 介於 [-1, 1] 02/03 12:57
5F:→ DJWS:应该是没有问题才对 02/03 12:57
6F:→ u5484:可是我利用空间中座标再搭配arccos所得到的数值有超过... 02/03 12:59
7F:→ u5484:所以是不是代表我还要将它做旋转角度的动作呢?? 02/03 13:00
8F:→ u5484:不好意思 小弟笔误 是计算其仰角才对 02/03 13:02
※ 编辑: u5484 来自: 120.126.40.118 (02/03 13:03)
9F:→ DJWS:也有可能是程式码写错 你可以把计算仰角的程式码贴出来~ 02/03 13:05
10F:→ DJWS:还有那个仰角的公式 分子是z而不是z平方 02/03 13:06
12F:→ u5484:小弟的仰角计算公式: acos(z/sqrt(x*x+y*y+z*z)) 02/03 13:07
13F:→ u5484:感谢提醒 小弟已修正z平方 02/03 13:08
14F:→ u5484:然後再利用此公式得到的弧度值带入Legendre计算中 02/03 13:09
15F:→ u5484:但MATLAB中明显指出范围须介於-1~1之间 所以很困惑 02/03 13:09
16F:→ DJWS:请问你用哪一种程式语言? 我第一次见到arc这个函数... 02/03 13:10
17F:→ u5484:!!不好意思一直打错= = 我是用C 是acos才对 Sorry!! 02/03 13:13
※ 编辑: u5484 来自: 120.126.40.118 (02/03 13:16)
18F:→ DJWS:照这样看应该是程式码方面的问题 你得找人帮你检查程式码 02/03 13:18
19F:→ u5484:程式码方面我都跟MATLAB所产生的结果对照过了 计算出的结果 02/03 13:20
20F:→ u5484:是一样的 只是这边可能需要做一些角度转换什麽的...很困扰 02/03 13:20
21F:→ u5484:也许我的反余弦函数得到的值还需要做扣掉pi/2? 02/03 13:24
22F:→ vaakaa:建议你可以另外写条件"标记"出有问题的点 02/03 16:29
23F:→ vaakaa:确认看看带入点和结果合不合理 02/03 16:30