Az arctg2 függvény az arkusztangens (arctg) egyfajta általánosítása: alkalmas arra, hogy egy síkvektor y és x koordinátáiból – ügyelve a szokásoshoz képest fordított sorrendre – kiszámítsuk a vektor irányszögét (azaz az X-tengellyel bezárt szögét), nulla és 2π (vagy -π és π) között. Angol rövidítése: arctan2 vagy atan2.
Az arctg2 függvény minden valós (y,x) értékpárra értelmezve van, kivéve a (0,0)-t, mivel a nullvektor irányszöge definiálatlan. A gépi megvalósítások általában nullát adnak vissza ebben az esetben.
Az alábbi definíció a (-π,π] tartományra képező változatot adja meg, egy gépi megvalósításra is alkalmas formában (azaz ügyelve arra, hogy az arkusztangenst az x/y és y/x számok közül a kisebb értékre (abszolút értékben) számítsuk ki).
arctg2
(
y
,
x
)
=
{
arctg
(
y
/
x
)
,
ha
x
≥
|
y
|
π
/
2
−
arctg
(
x
/
y
)
,
ha
y
≥
|
x
|
π
+
arctg
(
y
/
x
)
,
ha
x
≤
−
y
≤
0
−
π
+
arctg
(
y
/
x
)
,
ha
x
≤
y
<
0
−
π
/
2
−
arctg
(
x
/
y
)
,
ha
y
≤
−
|
x
|
{\displaystyle \operatorname {arctg2} (y,x)={\begin{cases}\operatorname {arctg} (y/x),&{\mbox{ha }}x\geq |y|\\\pi /2-\operatorname {arctg} (x/y),&{\mbox{ha }}y\geq |x|\\\pi +\operatorname {arctg} (y/x),&{\mbox{ha }}x\leq -y\leq 0\\-\pi +\operatorname {arctg} (y/x),&{\mbox{ha }}x\leq y<0\\-\pi /2-\operatorname {arctg} (x/y),&{\mbox{ha }}y\leq -|x|\\\end{cases}}}
Ebből a változatból könnyen megkaphatjuk a [0,2π) tartományra képező változatot, ha a negatív értékekhez hozzáadunk 2π-t:
arctg2
+
(
y
,
x
)
=
{
arctg
(
y
/
x
)
,
ha
x
≥
y
≥
0
π
/
2
−
arctg
(
x
/
y
)
,
ha
y
≥
|
x
|
π
+
arctg
(
y
/
x
)
,
ha
x
≤
−
|
y
|
3
π
/
2
−
arctg
(
x
/
y
)
,
ha
y
≤
−
|
x
|
2
π
+
arctg
(
y
/
x
)
,
ha
x
≥
−
y
>
0
{\displaystyle \operatorname {arctg2} ^{+}(y,x)={\begin{cases}\operatorname {arctg} (y/x),&{\mbox{ha }}x\geq y\geq 0\\\pi /2-\operatorname {arctg} (x/y),&{\mbox{ha }}y\geq |x|\\\pi +\operatorname {arctg} (y/x),&{\mbox{ha }}x\leq -|y|\\3\pi /2-\operatorname {arctg} (x/y),&{\mbox{ha }}y\leq -|x|\\2\pi +\operatorname {arctg} (y/x),&{\mbox{ha }}x\geq -y>0\\\end{cases}}}
sin
(
arctg2
(
y
,
x
)
)
=
y
/
x
2
+
y
2
{\displaystyle \operatorname {sin} (\operatorname {arctg2} (y,x))=y/{\sqrt {x^{2}+y^{2}}}}
cos
(
arctg2
(
y
,
x
)
)
=
x
/
x
2
+
y
2
{\displaystyle \operatorname {cos} (\operatorname {arctg2} (y,x))=x/{\sqrt {x^{2}+y^{2}}}}
arctg2
(
k
y
,
k
x
)
=
arctg2
(
y
,
x
)
;
ha
k
>
0
{\displaystyle \operatorname {arctg2} (ky,kx)=\operatorname {arctg2} (y,x);{\mbox{ha }}k>0}
arctg2
(
k
y
,
k
x
)
=
π
+
arctg2
(
y
,
x
)
;
ha
k
<
0
{\displaystyle \operatorname {arctg2} (ky,kx)=\pi +\operatorname {arctg2} (y,x);{\mbox{ha }}k<0}
arctg2
(
−
y
,
x
)
=
−
arctg2
(
y
,
x
)
{\displaystyle \operatorname {arctg2} (-y,x)=-\operatorname {arctg2} (y,x)}
arctg2
(
y
,
−
x
)
=
π
−
arctg2
(
y
,
x
)
{\displaystyle \operatorname {arctg2} (y,-x)=\pi -\operatorname {arctg2} (y,x)}
arctg2
(
−
y
,
−
x
)
=
−
π
+
arctg2
(
y
,
x
)
{\displaystyle \operatorname {arctg2} (-y,-x)=-\pi +\operatorname {arctg2} (y,x)}
arctg2
(
x
,
y
)
=
π
/
2
−
arctg2
(
y
,
x
)
{\displaystyle \operatorname {arctg2} (x,y)=\pi /2-\operatorname {arctg2} (y,x)}
(A fenti azonosságok a szögfüggvények periodikus volta miatt „2π erejéig” érvényesek.)
arctg2
(
y
,
x
)
=
2
arctg
y
x
2
+
y
2
+
x
{\displaystyle \operatorname {arctg2} (y,x)=2\operatorname {arctg} {\frac {y}{{\sqrt {x^{2}+y^{2}}}+x}}}
(Kizárva az
y
=
0
{\displaystyle y=0}
,
x
≤
0
{\displaystyle x\leq 0}
esetet.)
arctg2
(
y
,
x
)
=
2
arctg
x
2
+
y
2
−
x
y
.
{\displaystyle \operatorname {arctg2} (y,x)=2\operatorname {arctg} {\frac {{\sqrt {x^{2}+y^{2}}}-x}{y}}.}
(Kizárva az
y
=
0
{\displaystyle y=0}
esetet.)
∂
y
arctg2
(
y
,
x
)
=
x
/
(
x
2
+
y
2
)
{\displaystyle \partial _{y}\operatorname {arctg2} (y,x)=x/(x^{2}+y^{2})}
∂
x
arctg2
(
y
,
x
)
=
−
y
/
(
x
2
+
y
2
)
{\displaystyle \partial _{x}\operatorname {arctg2} (y,x)=-y/(x^{2}+y^{2})}
∂
y
(
y
arctg2
(
y
,
x
)
−
1
/
2
x
ln
(
x
2
+
y
2
)
)
=
arctg2
(
y
,
x
)
{\displaystyle \partial _{y}(y\operatorname {arctg2} (y,x)-1/2\ x\ \ln(x^{2}+y^{2}))=\operatorname {arctg2} (y,x)}
∂
x
(
x
arctg2
(
y
,
x
)
+
1
/
2
y
ln
(
x
2
+
y
2
)
)
=
arctg2
(
y
,
x
)
{\displaystyle \partial _{x}(x\operatorname {arctg2} (y,x)+1/2\ y\ \ln(x^{2}+y^{2}))=\operatorname {arctg2} (y,x)}
Érdekes lehet összehasonlítani az arctg2 fenti képletét azzal, amivel az arcsin és arccos függvényeket számíthatjuk ki az arctg felhasználásával:
arcsin
(
x
)
=
arctg2
(
x
,
1
−
x
2
)
=
{
−
π
/
2
−
arctg
(
1
−
x
2
/
x
)
,
ha
x
<
−
1
/
2
arctg
(
x
/
1
−
x
2
)
,
ha
|
x
|
≤
1
/
2
π
/
2
−
arctg
(
1
−
x
2
/
x
)
,
ha
x
>
1
/
2
{\displaystyle \arcsin(x)=\operatorname {arctg2} (x,{\sqrt {1-x^{2}}})={\begin{cases}-\pi /2-\operatorname {arctg} ({\sqrt {1-x^{2}}}/x),&{\mbox{ha }}x<-{\sqrt {1/2}}\\\operatorname {arctg} (x/{\sqrt {1-x^{2}}}),&{\mbox{ha }}|x|\leq {\sqrt {1/2}}\\\pi /2-\operatorname {arctg} ({\sqrt {1-x^{2}}}/x),&{\mbox{ha }}x>{\sqrt {1/2}}\\\end{cases}}}
(Az értékkészlet [-π/2,π/2])
arccos
(
x
)
=
arctg2
(
1
−
x
2
,
x
)
=
{
π
+
arctg
(
1
−
x
2
/
x
)
,
ha
x
<
−
1
/
2
π
/
2
−
arctg
(
x
/
1
−
x
2
)
,
ha
|
x
|
≤
1
/
2
arctg
(
1
−
x
2
/
x
)
,
ha
x
>
1
/
2
{\displaystyle \arccos(x)=\operatorname {arctg2} ({\sqrt {1-x^{2}}},x)={\begin{cases}\pi +\operatorname {arctg} ({\sqrt {1-x^{2}}}/x),&{\mbox{ha }}x<-{\sqrt {1/2}}\\\pi /2-\operatorname {arctg} (x/{\sqrt {1-x^{2}}}),&{\mbox{ha }}|x|\leq {\sqrt {1/2}}\\\operatorname {arctg} ({\sqrt {1-x^{2}}}/x),&{\mbox{ha }}x>{\sqrt {1/2}}\\\end{cases}}}
(Az értékkészlet [0,π])
Érdemes továbbá megemlíteni, hogy a komplex számokon értelmezett arg függvény az alábbi képlettel vezethető vissza az arctg2 függvényre:
arg
(
a
+
b
i
)
=
arctg2
(
b
,
a
)
{\displaystyle \arg(a+bi)=\operatorname {arctg2} (b,a)}
Ennek alapján komplex számok logaritmusát így írhatjuk fel (k és l tetszőleges egész):
ln
(
a
+
b
i
)
=
ln
(
a
2
+
b
2
)
+
(
arctg2
(
b
,
a
)
+
2
k
π
)
i
{\displaystyle \operatorname {ln} (a+bi)=\operatorname {ln} ({\sqrt {a^{2}+b^{2}}})+(\operatorname {arctg2} (b,a)+2k\pi )i}
log
c
+
d
i
(
a
+
b
i
)
=
ln
(
a
2
+
b
2
)
+
(
arctg2
(
b
,
a
)
+
2
k
π
)
i
ln
(
c
2
+
d
2
)
+
(
arctg2
(
d
,
c
)
+
2
l
π
)
i
{\displaystyle \operatorname {log} _{c+di}(a+bi)={\dfrac {\operatorname {ln} ({\sqrt {a^{2}+b^{2}}})+(\operatorname {arctg2} (b,a)+2k\pi )i}{\operatorname {ln} ({\sqrt {c^{2}+d^{2}}})+(\operatorname {arctg2} (d,c)+2l\pi )i}}}
Az arctg2 függvény háromdimenziós megfelelője az a (kétértékű, háromváltozós) függvény, amely egy (x,y,z) koordinátákkal definiált térvektorhoz adja meg a ϕ és θ szögeket:
ϕ
=
arctg2
(
y
,
x
)
{\displaystyle \phi =\operatorname {arctg2} (y,x)}
θ
=
arctg2
(
z
,
x
2
+
y
2
)
{\displaystyle \theta =\operatorname {arctg2} (z,{\sqrt {x^{2}+y^{2}}})}