名 前
atan2, atan2f, atan2l − 二 つ の 変 数 に 対 す る 逆 正 接 ( arc tangent) 関 数
書 式
#include <math.h>
double
atan2(double y, double x);
float atan2f(float y, float x);
long double atan2l(long double y, long
double x);
−lm で リ ン ク す る 。
glibc 向 け の 機 能 検 査 マ ク ロ の 要 件 (feature_test_macros(7) 参 照 ):
atan2f(), atan2l():
_BSD_SOURCE || _SVID_SOURCE ||
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ||
_POSIX_C_SOURCE >= 200112L;
or cc −std=c99
説 明
atan2() 関 数 は y/x の 逆 正 接 (arg tangent) の 主 値 を 計 算 す る 。 二 つ の 引 き 数 の 符 号 は 結 果 の 象 限 を 決 定 す る た め に 使 わ れ る 。
返 り 値
成 功 す る と 、 こ れ ら の 関 数 は y/x の 逆 正 接 の 主 値 を ラ ジ ア ン 単 位 で 返 す 。 返 り 値 は [−pi, pi] の 範 囲 と な る 。
y が +0 (−0) で x が 0 未 満 の 場 合 、 +pi (−pi) が 返 さ れ る 。
y が +0 (−0) で x が 0 よ り 大 き い 場 合 、 +0 (−0) が 返 さ れ る 。
y が 0 未 満 で x が +0 か −0 の 場 合 、 −pi/2 が 返 さ れ る 。
y が 0 よ り 大 き く x が +0 か −0 の 場 合 、 pi/2 が 返 さ れ る 。
x か y の い ず か が NaN の 場 合 、 NaN が 返 さ れ る 。
y が +0 (−0) で x が −0 の 場 合 、 +pi (−pi) が 返 さ れ る 。
y が +0 (−0) で x が +0 の 場 合 、 +0 (−0) が 返 さ れ る 。
y が 0 よ り 大 き い (小 さ い ) 有 限 値 で x が 負 の 無 限 大 の 場 合 、 +pi (−pi) が 返 さ れ る 。
y が 0 よ り 大 き い (小 さ い ) 有 限 値 で x が 正 の 無 限 大 の 場 合 、 +0 (−0) が 返 さ れ る 。
y が 正 の 無 限 大 (負 の 無 限 大 ) で x が 有 限 値 の 場 合 、 pi/2 (−pi/2) が 返 さ れ る 。
y が 正 の 無 限 大 (負 の 無 限 大 ) で x が 負 の 無 限 大 の 場 合 、 +3*pi/4 (−3*pi/4) が 返 さ れ る 。
y が 正 の 無 限 大 (負 の 無 限 大 ) で x が 正 の 無 限 大 の 場 合 、 +pi/4 (−pi/4) が 返 さ れ る 。
エ ラ ー
エ ラ ー は 発 生 し な い 。
準 拠
C99, POSIX.1−2001. double 版 の 関 数 は SVr4, 4.3BSD, C89 に も 準 拠 し て い る 。
関 連 項 目
acos(3), asin(3), atan(3), carg(3), cos(3), sin(3), tan(3)
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。