기본 콘텐츠로 건너뛰기

벡터와 행렬에 관련된 그림들

삼각함수의 합, 차 그리고 곱에 대한 공식

삼각함수의 합, 차 그리고 곱에 대한 공식

내용

합과 차 공식

두 각에 대한 합 또는 차에 대해 식 1의 규칙이 성립합니다.

\begin{align}&\sin(\alpha\pm\beta)=\sin(\alpha)\cos(\beta)\pm\cos(\alpha)\sin(\beta)\\\tag{식 1} &\cos(\alpha\pm\beta)=\cos(\alpha)\cos(\beta)\mp\sin(\alpha)\sin(\beta)\\ &\tan(\alpha\mp\beta)=\frac{\tan(\alpha) \pm \tan(\beta)}{1 \pm \tan(\alpha)\tan(\beta)} \end{align}

그림 1은 반지름 a인 원에 내접한 두 삼각형을 나타낸 것입니다.

그림 1. 반지름 a인 원에 내접한 두 삼각형.

그림 1의 원위의 점 A와 B는 각 α와 β에 대한 식 2와 같이 삼각함수로 나타낼 수 있습니다.

\begin{align}\tag{식 2}\cos(\alpha)=\frac{x_1}{a}\quad \sin(\alpha)=\frac{y_1}{a}& \Rightarrow A(a\cos(\alpha),\,a\sin(\alpha)) \\ \cos(\beta)=\frac{x_2}{a}\quad \sin(\beta)=\frac{y_2}{a}& \Rightarrow B(a\cos(\beta),\,a\sin(\beta))\end{align}

그림 1의 원 내부에 존재하는 삼각형의 변 b의 길이를 계산하기 위해 cosine 2 법칙과 적용합니다(식 3).

\begin{align}\tag{식 3}b^2=a^2+a^2-a\cdot a·\cos(\alpha-\beta)=2a^2(1-\cos(\alpha-\beta))\end{align}

그림 1의 좌표 A, B를 각각 $\vec{A}, \vec{B}$로 간주하고 두 벡터의 거리(norm) 즉 변 b는 식 4와 같이 계산할 수 있습니다.

\begin{align}\Vert{AB}\Vert&=(x_1-x_2)^2+(y_1-y_2)^2\\ b^2&=(a\cos(\alpha)-a\cos(\beta))^2-(a\sin(\alpha)-a\sin(\beta))^2\\\tag{식 4}&=a^2\left(\cos^2(\alpha)-2\cos(\alpha)\cos(\beta)+\cos^2(\beta)+\sin^2(\alpha)-2\sin(\alpha)\sin(\beta)+\sin^2(\beta) \right)\\ &=a^2(2-2\cos(\alpha)\cos(\beta)-2\sin(\alpha)\sin(\beta))\\&=2a^2(1-\cos(\alpha)\cos(\beta)-\sin(\alpha)\sin(\beta))\\ &\because \; \sin^2(\theta)+\cos^2(\theta)=1\end{align}

식 3과 4로부터 식 5를 유도할 수 있습니다.

\begin{align}\tag{식 5}1-\cos(\alpha-\beta) &= 1-\cos(\alpha)\cos(\beta)-\sin(\alpha)\sin(\beta)\\ \cos(\alpha-\beta) &=\cos(\alpha)\cos(\beta)+\sin(\alpha)\sin(\beta)\end{align}

식 5에서 각 β를 음의 값으로 전달하면 식 6과 같이 나타낼 수 있습니다. /p>

\begin{align}\cos(α+β)&=\cos(α-(-β))\\\tag{식 6}&=\cos(α)\cos(-β)+\sin(α)\sin(-β)\\&=\cos(α)\cos(β)-\sin(α)\sin(β)\\ \because\; \sin(-α)&=-\sin(α),\; \cos(-α)=\cos(α)\end{align}

식 1을 사용하여 식 7을 계산할 수 있습니다.

$$\begin{align}\sin\left(\frac{\pi}{2}-\theta \right)=\cos(\theta) \qquad & \cos\left(\frac{\pi}{2}-\theta \right)=\sin(\theta)\\\tag{식 7} \csc\left(\frac{\pi}{2}-\theta \right)=\sec(\theta) \qquad & \sec\left(\frac{\pi}{2}-\theta \right)=\csc(\theta)\\ \tan\left(\frac{\pi}{2}-\theta \right)=\cot(\theta) \qquad & \cot\left(\frac{\pi}{2}-\theta \right)=\tan(\theta)\end{align}$$
import numpy as np
x=np.pi/6
rightA= np.radians(90)
print(np.allclose(np.sin(rightA-x), np.cos(x)))
print(np.allclose(np.cos(rightA-x), np.sin(x)))
True
True
print(np.allclose(1/np.sin(rightA-x), 1/np.cos(x)))
print(np.allclose(1/np.cos(rightA-x), 1/np.sin(x)))
True
True
print(np.allclose(np.tan(rightA-x), 1/np.tan(x)))
True

예 1)

cos(80)과 동일한 값을 갖는 sin(x)?

식 7을 적용하면 다음과 같이 나타낼 수 있습니다.

cos(80) = sin(90 - 80) = sin(10)

python에서 삼각함수의 계산은 radian 값을 인수로 전달하여야 합니다. 그러므로 80도를 radian으로 환산하기 위해 작성한 함수 np.radians()를 적용합니다.

x=np.radians(80)
y=np.radians(10)
print(np.allclose(np.cos(x), np.sin(y)))
True

식 1의 sin 함수에 대한 합차의 규칙은 식 7을 적용하여 유도할 수 있습니다(식 8).

\begin{align} \sin(α+β)&=\cos(\frac{\pi}{2}-α-β)=\cos((\frac{\pi}{2}-α)-β)\\ &=\cos(\frac{\pi}{2}-α)\cos(β)+\sin(\frac{\pi}{2}-α)\sin(β)\\ \tag{식 8}&=\sin(α)\cos(β)+\cos(α)\sin(β)\\ \sin(α-β)&=\cos(\frac{\pi}{2}-α+β)=\cos((\frac{\pi}{2}-α)+β)\\ &=\cos(\frac{\pi}{2}-α)\cos(β)-\sin(\frac{\pi}{2}-α)\sin(β)\\ &=\sin(α)\cos(β)-\cos(α)\sin(β)\end{align}

식 1의 tan 함수에 대한 규칙은 sin과 cos 함수의 비로 식 9와 같이 유도 됩니다.

\begin{align}\tan(\alpha + \beta)&=\frac{\sin(\alpha + \beta)}{\cos(\alpha + \beta)}\\ &=\frac{\sin(\alpha)\cos(\beta)+\cos(\alpha)\sin(\beta)}{\cos(\alpha)\cos(\beta)-\sin(\alpha)\sin(\beta)}\\ \tag{식 9} &=\frac{\tan(\alpha)+\tan(\beta)}{1-\tan(\alpha)\tan(\beta)}\\ \tan(\alpha - \beta)&=\frac{\sin(\alpha - \beta)}{\cos(\alpha - \beta)}\\&=\frac{\sin(\alpha)\cos(\beta)-\cos(\alpha)\sin(\beta)}{\cos(\alpha)\cos(\beta)+\sin(\alpha)\sin(\beta)}\\ &=\frac{\tan(\alpha)-\tan(\beta)}{1+\tan(\alpha)\tan(\beta)}\end{align}

예 2)

sin(105°)와 tan(165°)를 합과 차 공식을 사용하여 계산합니다.

sin(105°) = sin(60°+45°) = sin(60°)cos(45°) + cos(60°)sin(45°)

a=np.radians(105)
b=np.radians(60)
c=np.radians(45)
A=np.sin(a)
A1=np.sin(b)*np.cos(c)+np.cos(b)*np.sin(c)
np.allclose(A, A1)
True

\begin{align}\tan(165)&=\tan(120+45)\\&=\frac{\tan(120)+\tan(45)}{1-\tan(120)\tan(45)}\end{align}

a=np.radians(165)
b=np.radians(120)
c=np.radians(45)
A=np.tan(a)
A1=(np.tan(b)+np.tan(c))/(1-np.tan(b)*np.tan(c))
np.allclose(A, A1)
True

예 3)

다음 식이 성립합니까?

$$sec^2(θ)+csc^2(θ)=sec^2(θ)csc^2(θ)$$

\begin{align}\sec^2(\theta)+\csc^2(\theta)&=\frac{1}{\cos^2(\theta)}+\frac{1}{\sin^2(\theta)}\\ &=\frac{\sin^2(\theta)+\cos^2(\theta)}{\sin^2(\theta)\cos^2(\theta)}\\ &=\frac{1}{\sin^2(\theta)\cos^2(\theta)}\\ &=\frac{1}{\sin^2(\theta)}\frac{1}{\cos^2(\theta)}\\&=\sec^2(\theta)\csc^2(\theta)\end{align}

곱을 합으로 전환

식 10의 두 각에 대한 삼각함수의 곱은 식 1의 합차 공식을 적용하여 유도 할 수 있습니다.

\begin{align} \sin(α)\sin(β) &=\frac{1}{2}[\cos(α-β)-\cos(α+β)] \\ \tag{식 10}\cos(α)\cos(β) &=\frac{1}{2}[\cos(α-β)+\cos(α+β)]\\ \sin(α)\cos(β) &=\frac{1}{2}[\sin(α+β)+\sin(α+β)] \\ \cos(α)\sin(β) &=\frac{1}{2}[\sin(α-β)-\sin(α+β)] \end{align}

예를 들어 식 10의 두번째인 $\cos(α)\cos(β)$는 식 11과 같이 나타낼 수 있습니다.

\begin{align} &\cos(α)\cos(β)-\sin(α)\sin(β)=\cos(α+β)\\ \tag{식 11}+&\;\underline{\cos(α)\cos(β)+\sin(α)\sin(β)=\cos(α-β)}\\ &2\cos(α)\cos(β)=\cos(α+β)+\cos(α-β)\\ &\rightarrow \cos(α)\cos(β)=\frac{1}{2}[\cos(α+β)+\cos(α-β)]\end{align}

합을 곱으로 전환

특정한 두 삼각함수의 합과 차는 식 12와 같이 곱의 형태로 전환할 수 있습니다.

\begin{align}\sin(\alpha)+\sin(\beta)&=2\sin\left(\frac{\alpha+\beta}{2}\right)\cos\left(\frac{\alpha-\beta}{2}\right)\\ \tag{식 12}\sin(\alpha)-\sin(\beta)&=2\cos\left(\frac{\alpha+\beta}{2}\right)\sin\left(\frac{\alpha-\beta}{2}\right)\\ \cos(\alpha)+\cos(\beta)&=2\cos\left(\frac{\alpha+\beta}{2}\right)\cos\left(\frac{\alpha-\beta}{2}\right)\\ \cos(\alpha)-\cos(\beta)&=2\sin\left(\frac{\alpha+\beta}{2}\right)\sin\left(\frac{\alpha-\beta}{2}\right)\end{align}

위의 식들 중에 sin(α)+sin(β)를 유도하면 다음과 같습니다.

α, β를 다음과 같이 변환하여 유도합니다.

\begin{align}\tag{식 13} α + β = A,&\quad α - β =B\\ α=\frac{A+B}{2},&\quad β=\frac{A-B}{2}

위 값들을 식에 대입하여 합의 공식을 적용하여 정리합니다.

\begin{align}&\quad\sin\left(\frac{A+B}{2}\right)=\sin\left(\frac{A}{2}\right)\cos\left(\frac{B}{2}\right)+\cos\left(\frac{A}{2}\right)\sin\left(\frac{B}{2}\right)\\\tag{식 14} &+\underline{\sin\left(\frac{A-B}{2}\right)=\sin\left(\frac{A}{2}\right)\cos\left(\frac{B}{2}\right)-\cos\left(\frac{A}{2}\right)\sin\left(\frac{B}{2}\right)}\\&\quad\sin\left(\frac{A+B}{2}\right)\sin\left(\frac{A-B}{2}\right)= 2\sin\left(\frac{A}{2}\right)\cos\left(\frac{B}{2}\right)\end{align}

배각공식

각이 두 배가 되는 경우 역시 식 1의 합차 공식을 적용하여 계산할 수 있습니다(식 15).

\begin{align}\tag{9}\sin(2\theta)&=\sin(\theta+\theta)\\&=\sin(\theta)\cos(\theta)+\cos(\theta)\sin(\theta)\\&=2\sin(\theta)\cos(\theta)\\ \tag{식 15} \cos(2\theta)&=\cos(\theta+\theta)\\&=\cos(\theta)\cos(\theta)-\sin(\theta)\sin(\theta)\\&=\cos^2(\theta)-\sin^2(\theta)\\&=2\cos^2(\theta)-1\\&=1-2\sin^2(\theta)\\ \tan(2\theta)&=\tan(\theta+\theta)\\&=\frac{2\tan(\theta)}{1-\tan^2(\theta)} \end{align}

예)

다음 삼각함수의 해?

$$\cos(2θ)=2-3\sin(θ), 0≤θ≤2π$$

\begin{align}& 1-2\sin^2(θ)=2-3\sin(θ)\\ &\begin{aligned}→2\sin^2(θ)-3\sin(θ)+1&=(2\sin(θ)-1)(\sin(θ)-1)\\&=0\end{aligned}\end{align}

t=symbols('t')
solve(2*sin(t)**2-3*sin(t)+1, t)
[pi/6, pi/2, 5*pi/6]

반각공식

식 16은 특정한 각의 반각에 대한 공식입니다.

\begin{align}&\sin^2\left(\frac{\theta}{2}\right)=\frac{1-\cos(\theta)}{2}\\\tag{식 16}&\cos^2\left(\frac{\theta}{2}\right)=\frac{1+\cos(\theta)}{2}\\&\tan^2\left(\frac{\theta}{2}\right)=\frac{1-\cos(\theta)}{1+\cos(\theta)}\end{align}

식 16의 첫번째 형태를 유도하기 위해 식 15의 cos(2θ)를 적용합니다(식 17).

\begin{align}\begin{aligned}\cos(2\theta)&=2\cos^2(\theta)-1\\&=1-2\sin^2(\theta)\end{aligned}\\\tag{식 17}\rightarrow \sin(\theta)&=\pm\sqrt{\frac{1-\cos(2\theta)}{2}}\\\rightarrow \sin\left(\frac{\theta}{2}\right)&=\pm\sqrt{\frac{1-\cos(\theta)}{2}} \end{align}$$

t=pi/3
sin(t/2)**2
$\quad \small \color{blue}{\frac{1}{4}}$
(1-cos(t))/2
$\quad \small \color{blue}{\frac{1}{4}}$

댓글

이 블로그의 인기 게시물

[Linear Algebra] 유사변환(Similarity transformation)

유사변환(Similarity transformation) n×n 차원의 정방 행렬 A, B 그리고 가역 행렬 P 사이에 식 1의 관계가 성립하면 행렬 A와 B는 유사행렬(similarity matrix)이 되며 행렬 A를 가역행렬 P와 B로 분해하는 것을 유사 변환(similarity transformation) 이라고 합니다. $$\tag{1} A = PBP^{-1} \Leftrightarrow P^{-1}AP = B $$ 식 2는 식 1의 양변에 B의 고유값을 고려한 것입니다. \begin{align}\tag{식 2} B - \lambda I &= P^{-1}AP – \lambda P^{-1}P\\ &= P^{-1}(AP – \lambda P)\\ &= P^{-1}(A - \lambda I)P \end{align} 식 2의 행렬식은 식 3과 같이 정리됩니다. \begin{align} &\begin{aligned}\textsf{det}(B - \lambda I ) & = \textsf{det}(P^{-1}(AP – \lambda P))\\ &= \textsf{det}(P^{-1}) \textsf{det}((A – \lambda I)) \textsf{det}(P)\\ &= \textsf{det}(P^{-1}) \textsf{det}(P) \textsf{det}((A – \lambda I))\\ &= \textsf{det}(A – \lambda I)\end{aligned}\\ &\begin{aligned}\because \; \textsf{det}(P^{-1}) \textsf{det}(P) &= \textsf{det}(P^{-1}P)\\ &= \textsf{det}(I)\end{aligned}\end{align} 유사행렬의 특성 유사행렬인 두 정방행렬 A와 B는 'A ~ B' 와 같...

[sympy] Sympy객체의 표현을 위한 함수들

Sympy객체의 표현을 위한 함수들 General simplify(x): 식 x(sympy 객체)를 간단히 정리 합니다. import numpy as np from sympy import * x=symbols("x") a=sin(x)**2+cos(x)**2 a $\sin^{2}{\left(x \right)} + \cos^{2}{\left(x \right)}$ simplify(a) 1 simplify(b) $\frac{x^{3} + x^{2} - x - 1}{x^{2} + 2 x + 1}$ simplify(b) x - 1 c=gamma(x)/gamma(x-2) c $\frac{\Gamma\left(x\right)}{\Gamma\left(x - 2\right)}$ simplify(c) $\displaystyle \left(x - 2\right) \left(x - 1\right)$ 위의 예들 중 객체 c의 감마함수(gamma(x))는 확률분포 등 여러 부분에서 사용되는 표현식으로 다음과 같이 정의 됩니다. 감마함수는 음이 아닌 정수를 제외한 모든 수에서 정의됩니다. 식 1과 같이 자연수에서 감마함수는 factorial(!), 부동소수(양의 실수)인 경우 적분을 적용하여 계산합니다. $$\tag{식 1}\Gamma(n) =\begin{cases}(n-1)!& n:\text{자연수}\\\int^\infty_0x^{n-1}e^{-x}\,dx& n:\text{부동소수}\end{cases}$$ x=symbols('x') gamma(x).subs(x,4) $\displaystyle 6$ factorial 계산은 math.factorial() 함수를 사용할 수 있습니다. import math math.factorial(3) 6 a=gamma(x).subs(x,4.5) a.evalf(3) 11.6 simpilfy() 함수의 알고리즘은 식에서 공통사항을 찾아 정리하...

sympy.solvers로 방정식해 구하기

sympy.solvers로 방정식해 구하기 대수 방정식을 해를 계산하기 위해 다음 함수를 사용합니다. sympy.solvers.solve(f, *symbols, **flags) f=0, 즉 동차방정식에 대해 지정한 변수의 해를 계산 f : 식 또는 함수 symbols: 식의 해를 계산하기 위한 변수, 변수가 하나인 경우는 생략가능(자동으로 인식) flags: 계산 또는 결과의 방식을 지정하기 위한 인수들 dict=True: {x:3, y:1}같이 사전형식, 기본값 = False set=True :{(x,3),(y,1)}같이 집합형식, 기본값 = False ratioal=True : 실수를 유리수로 반환, 기본값 = False positive=True: 해들 중에 양수만을 반환, 기본값 = False 예 $x^2=1$의 해를 결정합니다. solve() 함수에 적용하기 위해서는 다음과 같이 식의 한쪽이 0이 되는 형태인 동차식으로 구성되어야 합니다. $$x^2-1=0$$ import numpy as np from sympy import * x = symbols('x') solve(x**2-1, x) [-1, 1] 위 식은 계산 과정은 다음과 같습니다. $$\begin{aligned}x^2-1=0 \rightarrow (x+1)(x-1)=0 \\ x=1 \; \text{or}\; -1\end{aligned}$$ 예 $x^4=1$의 해를 결정합니다. solve() 함수의 인수 set=True를 지정하였으므로 결과는 집합(set)형으로 반환됩니다. eq=x**4-1 solve(eq, set=True) ([x], {(-1,), (-I,), (1,), (I,)}) 위의 경우 I는 복소수입니다.즉 위 결과의 과정은 다음과 같습니다. $$x^4-1=(x^2+1)(x+1)(x-1)=0 \rightarrow x=\pm \sqrt{-1}, \; \pm 1=\pm i,\; \pm1$$ 실수...