Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python NumPy로 쌍곡 사인(sinh) 계산하기 – np.sinh() 함수 완벽 정리

Python에서 쌍곡 사인(hyperbolic sine)을 계산하려면 NumPy의 numpy.sinh() 메서드를 사용하면 됩니다. 이 함수는 수학적으로 1/2 * (np.exp(x) - np.exp(-x)) 또는 -1j * np.sin(1j*x)와 동일한 결과를 반환합니다. 입력값이 스칼라라면 결과 역시 스칼라로 반환됩니다.

np.sinh()의 주요 매개변수

x: 쌍곡 사인을 계산할 입력 배열입니다.

out(선택): 계산 결과를 저장할 ndarray입니다. 지정하는 경우, 입력값들이 브로드캐스팅될 수 있는 형태(shape)여야 합니다. 지정하지 않거나 None이면 새로 할당된 배열이 반환됩니다.

where(선택): 입력 전체에 브로드캐스팅되는 조건입니다. 조건이 True인 위치에는 ufunc 연산 결과가 저장되고, 그 외 위치에서는 out 배열의 원래 값이 유지됩니다.

계산 단계

먼저 필요한 라이브러리를 임포트합니다.

import numpy as np

삼각함수형 쌍곡 사인 값을 구해봅니다. sinh(πi) 계산:

print("\nResult...", np.sinh(np.pi*1j))

90도(π/2)에 대한 sinh 계산:

print("\nResult...", np.sinh(np.pi/2.))

60도(π/3)에 대한 sinh 계산:

print("\nResult...", np.sinh(np.pi/3.))

45도(π/4)에 대한 sinh 계산:

print("\nResult...", np.sinh(np.pi/4.))

30도(π/6)에 대한 sinh 계산:

print("\nResult...", np.sinh(np.pi/6.))

0도에 대한 sinh 계산:

print("\nResult...", np.sinh(0))

전체 예제 코드

import numpy as np

# 쌍곡 사인 계산에는 numpy.sinh() 메서드를 사용합니다.
# 이 함수는 1/2 * (np.exp(x) - np.exp(-x)) 또는 -1j * np.sin(1j*x)와 동일합니다.

print("삼각함수형 쌍곡 사인 계산...")

# sinh 계산
print("\nResult...", np.sinh(np.pi*1j))

# 90도에 대한 sinh
print("\nResult...", np.sinh(np.pi/2.))

# 60도에 대한 sinh
print("\nResult...", np.sinh(np.pi/3.))

# 45도에 대한 sinh
print("\nResult...", np.sinh(np.pi/4.))

# 30도에 대한 sinh
print("\nResult...", np.sinh(np.pi/6.))

# 0도에 대한 sinh
print("\nResult...", np.sinh(0))

실행 결과

삼각함수형 쌍곡 사인 계산...

Result... (-0+1.2246467991473532e-16j)

Result... 2.3012989023072947

Result... 1.2493670505239751

Result... 0.8686709614860095

Result... 0.5478534738880397

Result... 0.0

실행 결과를 보면, 각도가 커질수록 쌍곡 사인 값이 빠르게 증가하는 것을 확인할 수 있습니다. 특히 sinh(0)은 정확히 0.0이 반환되며, 복소수 입력(πi)에 대해서도 오차 범위 내에서 올바른 결과를 얻을 수 있습니다.