arcsin(역사인)은 다중값 함수(multivalued function)입니다. 즉, 각 x값에 대해 sin(z) = x를 만족하는 z는 무수히 많습니다. NumPy의 관례상 실수부가 [-π/2, π/2] 범위에 속하는 각도 z를 반환합니다. 실수형 입력 데이터 타입의 경우 arcsin은 항상 실수 결과를 반환합니다. 실수 또는 무한대로 표현할 수 없는 값에 대해서는 nan을 반환하고 부동 소수점 유효성 오류 플래그(invalid floating point error flag)를 설정합니다. 복소수 입력의 경우 arcsin은 복소 해석 함수(complex analytic function)로, 관례상 [-inf, -1]과 [1, inf]에 분지 절단(branch cuts)을 가지며, 전자 구간에서는 위쪽부터, 후자 구간에서는 아래쪽부터 연속입니다. 역사인은 asin 또는 sin-1로도 알려져 있습니다.
삼각함수 역사인을 구하려면 Python Numpy에서 numpy.arcsin() 메서드를 사용하면 됩니다. 이 메서드는 첫 번째 매개변수 x의 각 요소에 대한 역사인 값을 반환하며, x가 스칼라라면 결과 역시 스칼라입니다. 첫 번째 매개변수 x는 단위원(unit circle) 상의 y 좌표를 의미합니다. 두 번째와 세 번째 매개변수는 선택 사항(optional)입니다.
두 번째 매개변수는 결과가 저장될 위치를 나타내는 ndarray입니다. 이 값을 제공하면 입력들이 브로드캐스팅되는 형태(shape)여야 하며, 제공하지 않거나 None으로 지정하면 새로 할당된 배열이 반환됩니다. 튜플(키워드 인수로만 사용 가능)을 전달할 경우 길이가 출력 수와 같아야 합니다. 세 번째 매개변수는 입력 전체에 브로드캐스팅되는 조건(condition)으로, 조건이 True인 위치에서만 out 배열이 ufunc 결과로 설정되고, 그 외 위치에서는 out 배열이 기존 값을 유지합니다.
단계별 진행 방법
먼저 필요한 라이브러리를 임포트합니다.
import numpy as np
np.arcsin()을 사용하여 삼각함수 역사인을 구합니다. π/2에 해당하는 값(1)에 대한 arcsin 계산:
print("\nResult...",np.arcsin(1))-π/2에 해당하는 값(-1)에 대한 arcsin 계산:
print("\nResult...",np.arcsin(-1))0에 대한 arcsin 계산:
print("\nResult...",np.arcsin(0))0.3에 대한 arcsin 계산:
print("\nResult...",np.arcsin(0.3))예제 코드
import numpy as np
# arcsin은 다중값 함수입니다. 각 x에 대해 sin(z) = x를 만족하는 z는 무수히 많으며,
# 관례상 실수부가 [-pi/2, pi/2] 범위에 있는 각도 z를 반환합니다.
print("삼각함수 역사인 구하기...")
# 1(pi/2에 대한 sin 값)의 arcsin 계산
print("\nResult...",np.arcsin(1))
# -1(-pi/2에 대한 sin 값)의 arcsin 계산
print("\nResult...",np.arcsin(-1))
# 0의 arcsin 계산
print("\nResult...",np.arcsin(0))
# 0.3의 arcsin 계산
print("\nResult...",np.arcsin(0.3))출력 결과
삼각함수 역사인 구하기... Result... 1.5707963267948966 Result... -1.5707963267948966 Result... 0.0 Result... 0.3046926540153975