ATANPI — 아크탄젠트를 반 바퀴 단위로 계산하기
ATANPI — 아크탄젠트를 반 바퀴 단위로 계산하기
아크탄젠트 결과를 라디안 대신 반 바퀴(half-revolution) 단위로 받고 싶을 때가 있어요. 회전 횟수를 다루는 코드라면 2π 대신 1이 한 바퀴가 되는 체계가 편하죠. ATANPI는 atan(x) / π를 계산해 주는 내장 함수로, 두 인자 형태를 쓰면 atan2(y, x) / π도 계산할 수 있어요.
본문
시그니처
RESULT = ATANPI(X)
RESULT = ATANPI(Y, X)
설명
ATANPI(X)는 atan(x) / π를 계산해요. ATANPI(Y, X)는 atan2(y, x) / π를 계산해요. 두 결과 모두 각도를 반 바퀴 단위로 잰 측정값이에요.
클래스
원소 함수(Elemental function)예요.
인자
- Y — 타입은 실수(
REAL)여야 해요. - X —
Y가 함께 주어지면X는Y와 같은 타입과 kind를 가져야 해요.Y가 0이면X는 0이 아니어야 해요.Y없이 한 인자로 쓸 때는X가 실수(REAL)여야 해요.
반환값
반환값은 X와 같은 타입과 kind를 가져요. 반 바퀴 단위로 표현되며 -0.5 ≤ atanpi(x) ≤ 0.5를 만족해요.
예제
program test_atanpi
implicit none
real, parameter :: x = 0.123, y(3) = [0.123, 0.45, 0.8]
real, parameter :: a = atanpi(x), b(3) = atanpi(y)
call foo(x, y)
contains
subroutine foo(u, v)
real, intent(in) :: u, v(:)
real :: f, g(size(v))
f = atanpi(u)
g = atanpi(v)
if (abs(a - f) > 8 * epsilon(f)) stop 1
if (any(abs(g - b) > 8 * epsilon(f))) stop 2
end subroutine foo
end program test_atanpi
표준
Fortran 2023 표준이에요.
더 알아보기
- 반 바퀴 단위 계열의 짝꿍
ACOSPI,ASINPI,ATAN2PI도 함께 보면 성질이 비슷해요. - GNU Fortran 내장 프로시저 전체 목록은 Intrinsic Procedures에서 확인할 수 있어요.