아크탄젠트2arc Tangent 2arctan2:(R2∖{(0,0)})→R 는 다음과 같이 정의된다.
arctan2:(rsinθ,rcosθ)↦θr>0 는 임의의 양수다.
설명
아크탄젠트2는 기계공학 등에서 아크탄젠트 arctan 로는 부족한 정보를 채우기 위해 사용되는 함수로써, 위치정보 rcos, rsin 을 알아도 탄젠트 cossin 가 되며 부호가 사라지는 문제를 보완한다. 정의역에서 알 수 있듯 (0,0) 에서는 여전히 정의되지 않는다.
arctan 과의 차이점
보다시피 아크탄젠트는 (1,1) 과 (−1,−1) 을 구분하지 못하지만, 아크탄젠트2는 구분할 수 있다.
컨벤션
x=cos 이고 y=sin 이라 할 때 C 언어, 매트랩에서는 θ=arctan2(y,x) 인데 어떤 곳에서는 또 θ=arctan2(x,y) 라고 한다. 사인-코사인 순서대로 한다면 arctan2(sin,cos) 이 자연스럽고 x-y 순서대로 한다면 arctan2(x,y) 가 자연스러운 수준의 차이니까 그때그때 주의하는 수밖에 없다.
이러한 컨벤션의 차이에서도 느낄 수 있듯, 아크탄젠트2는 수학적으로 어떤 큰 의미가 있다기보다는 오로지 실용성 하나를 위해서 2를 붙여쓸 뿐이다. 역기구학inverse Kinematics에서 자주 등장하는 다음의 정리를 소개한다.
정리
삼각함수의 선형결합이 주어졌을 때의 각도
acosθ+bsinθ=c삼각함수의 선형결합이 c∈R 와 같다면, 각도θ 는 다음과 같다.
cosθ=sinθ=θ=a2+b2ac±b2(a2+b2−c2)b(a2+b2)b2c∓ab2(a2+b2−c2)arctan2(sinθ,cosθ)
특히 c=0 일 때는 다음과 같이 더 간단한 꼴을 사용할 수 있다.
cosθ=sinθ=θ=±a2+b2b2∓baa2+b2b2arctan2(sinθ,cosθ)
근의 공식: 이차방정식 ax2+bx+c=0 (단, a=0)에 대해
x=2a−b±b2−4ac
sinθ=1−cos2θ 이므로
⟹⟹⟹⟹acosθ+bsinθ=cacosθ−c=−bsinθa2cos2θ−2accosθ+c2=b2(1−cos2θ)a2cos2θ−2accosθ+c2=b2(1−cos2θ)(a2+b2)cos2θ−2accosθ+(c2−b2)=0
1차항이 2의 배수일 때의 근의 공식에 따라
cosθ==a2+b2ac±a2c2−(a2+b2)(c2−b2)a2+b2ac±−b2c2+a2b2+b4
한편 sinθ=bc−acosθ 이므로
sinθ=====bc−acosθbc−aa2+b2ac±b2(a2+b2−c2)bc−b(a2+b2)a2c±ab2(a2+b2−c2)bc(a2+b2)−b(a2+b2)a2c±ab2(a2+b2−c2)−b(a2+b2)b2c±ab2(a2+b2−c2)
이다. 사인과 코사인을 알았으니 아크탄젠트2에 우리가 원하던 θ=arctan2(sinθ,cosθ) 을 얻는다.