Main Content

atan2

4사분면 역탄젠트(Four-quadrant Inverse Tangent)

설명

예제

P = atan2(Y,X)YX의 tan-1(4사분면 역탄젠트)을 반환합니다. Y와 X는 실수여야 합니다. atan2 함수는 x가 수학적으로 0일 경우(0 또는 -0) atan2(x,x)0을 반환한다는 규칙을 따릅니다.

예제

모두 축소

y = 4, x = -3의 4사분면 역탄젠트를 구합니다.

atan2(4,-3)
ans = 2.2143

4 + 3i를 극좌표로 변환합니다.

z = 4 + 3i;
r = abs(z)
r = 5
theta = atan2(imag(z),real(z))
theta = 0.6435

반지름 r과 각도 theta4 + 3i의 극좌표 표현입니다.

또는 angle을 사용하여 theta를 계산할 수 있습니다.

theta = angle(z)
theta = 0.6435

rtheta를 다시 원래 복소수로 변환합니다.

z = r*exp(i*theta)
z = 4.0000 + 3.0000i

-4<Y<4-4<X<4에 대해 atan2(Y,X)를 플로팅합니다.

플로팅할 구간을 정의합니다.

[X,Y] = meshgrid(-4:0.1:4,-4:0.1:4);

구간에 대한 atan2(Y,X)를 구합니다.

P = atan2(Y,X);

surf를 사용하여 함수의 곡면 플롯을 생성합니다. 참고로, plot은 모든 X<0에 대해 Y=0에 있는 불연속을 플로팅합니다.

surf(X,Y,P);
view(45,45);

Figure contains an axes object. The axes object contains an object of type surface.

입력 인수

모두 축소

y 좌표로, 스칼라, 벡터, 행렬, 다차원 배열, 테이블 또는 타임테이블로 지정됩니다. 입력 인수 YX는 동일한 크기이거나 호환되는 크기를 가져야 합니다. 후자의 예로는 YM×N 행렬이고 X가 스칼라이거나 1×N 행 벡터인 경우를 들 수 있습니다. 자세한 내용은 기본 연산에 대해 호환되는 배열 크기 항목을 참조하십시오.

데이터형: single | double | table | timetable

x 좌표로, 스칼라, 벡터, 행렬, 다차원 배열, 테이블 또는 타임테이블로 지정됩니다. 입력 인수 YX는 동일한 크기이거나 호환되는 크기를 가져야 합니다. 후자의 예로는 YM×N 행렬이고 X가 스칼라이거나 1×N 행 벡터인 경우를 들 수 있습니다. 자세한 내용은 기본 연산에 대해 호환되는 배열 크기 항목을 참조하십시오.

데이터형: single | double | table | timetable

세부 정보

모두 축소

4사분면 역탄젠트

4사분면 역탄젠트 atan2(Y,X)는 아래 그림에 표시된 대로 YX의 값을 기반으로 하여 닫힌 구간 [–π, π] 내에 있는 값을 반환합니다.

Values returned by atan2(Y,X). For negative X and negative Y, atan2(Y,X) returns values in the interval (–π, –π/2). For positive X and negative Y, atan2(Y,X) returns values in the interval (–π/2, 0). For positive X and positive Y, atan2(Y,X) returns values in the interval (0, π/2). For negative X and positive Y, atan2(Y,X) returns values in the interval (π/2, π)

이와 반대로, atan(Y/X)는 도식의 오른쪽에 표시된 구간 [–π/2, π/2]로 제한된 결과값을 반환합니다.

IEEE 준수

실수 입력값에 대해 atan2는 IEEE®-754 표준에서 권장하는 것과 다른 몇 가지 동작을 갖습니다.

  MATLAB® IEEE
atan2(0,-0)

0

pi

atan2(-0,-0)

0

-pi

확장 기능

GPU 코드 생성
GPU Coder™를 사용하여 NVIDIA® GPU용 CUDA® 코드를 생성할 수 있습니다.

버전 내역

R2006a 이전에 개발됨

모두 확장

참고 항목

| | | |