Atan2

[miniatura| devolve o ángulo  entre o eixe *x* positivo e o [raio (xeometría)|raio desde a orixe ata o punto , confinado a .]]
miniatura|Gráfico de \operatorname{atan2}(y, x) sobre y / x

En computación e matemáticas, a función **atan2** é o arcotanxente de 2 argumentos. Por definición, \theta = \operatorname{atan2}(y, x) é a medida do ángulo (en radiáns, con -\pi ) entre o eixo x positivo e o raio desde a orixe ata o punto (x,\,y) no plano cartesiano. Equivalentemente, \operatorname{atan2}(y, x) é o argumento (tamén chamado *fase* ou *ángulo*) do número complexo x + iy. (O *argumento* dunha función e o *argumento* dun número complexo, mencionados anteriormente, non deben confundirse).

A función \operatorname{atan2} apareceu por primeira vez na linguaxe de programación Fortran en 1961. Orixinalmente, estaba destinada a devolver un valor correcto e inequívoco para o ángulo  na conversión de coordenadas cartesianas  a coordenadas polares . Se \theta = \operatorname{atan2}(y, x) e r = \sqrt{x^2 + y^2}, entón x = r \cos \theta e y = r \sin \theta.

Se , a medida desexada  do ángulo é \theta = \operatorname{atan2}(y,x) = \arctan\left( y / x \right). No entanto, cando , o ángulo \arctan(y / x) é diametralmente oposto ao ángulo desexado, e  (media volta) debe engadirse para situar o punto no cuadrante correcto. O uso da función \operatorname{atan2} elimina esta corrección, simplificando o código e as fórmulas matemáticas.

## Definición e cálculo 
A función  calcula o  argumento principal do número complexo , que tamén é a parte imaxinaria do valor principal do logaritmo complexo. É dicir,
:\operatorname{atan2}(y, x) = \operatorname{arg}(x + iy) = \operatorname{Im}\operatorname{log}(x + iy).

Engadir calquera múltiplo enteiro de  (correspondente a voltas completas ao redor da orixe) dá outro argumento do mesmo número complexo, mais o argumento principal defínese como o ángulo representativo único no intervalo .

En termos da función arcotanxente estándar, cuxa imaxe é {{tmath|\bigl({-\tfrac12\pi}, \tfrac12\pi\bigr)}},  pódese expresar por tramos:

: \operatorname{atan2}(y, x) =
\begin{cases}
 \arctan\left(\frac y x\right) &\text{se } x > 0, \\[5mu]
 \arctan\left(\frac y x\right) + \pi &\text{se } x  0, \\[5mu]
 -\frac{\pi}{2} &\text{se } x = 0 \text{ e } y 

miniatura|A tanxente da metade dun ángulo pódese calcular en termos das coordenadas  e  e o raio .

En vez da tanxente, pode ser conveniente usar a media tanxente  como representación dun ángulo, en parte porque o ángulo {{tmath|1= \theta = \operatorname{atan2}(y,\,x)}} ten unha media tanxente única,
:
\tan\tfrac12\theta = \frac{y}{\textstyle \sqrt{x^2 + y^2} + x} = \frac{\textstyle \sqrt{x^2 + y^2} - x}{y}.

(Véxase fórmula da media tanxente). 

A expresión con  no denominador debe usarse cando  e  para evitar unha posíbel perda de significancia  ao calcular {{tmath|\textstyle \sqrt{x^2 + y^2} + x}}. 

Cando non se dispón dunha función , pódese calcular como dúas veces o arcotanxente da media tanxente . É dicir,

\operatorname{atan2}(y, x) = 2 \arctan \left(\frac{y}{\textstyle \sqrt{x^2 + y^2} + x}\right) = 2 \arctan \left( \frac{\textstyle \sqrt{x^2 + y^2} - x}{y} \right)\,.

## Derivada 
Como a función  é unha función de dúas variábeis, ten dúas derivadas parciais. Nos puntos onde existen estas derivadas,  é, excepto por unha constante, igual a . Polo tanto,
:
\begin{align}
& \frac{\partial}{\partial x}\operatorname{atan2}(y,\, x) = \frac{\partial}{\partial x} \arctan\left(\frac y x \right) = -\frac{y}{x^2 + y^2}, \\[5pt]
& \frac{\partial}{\partial y}\operatorname{atan2}(y,\, x) = \frac{\partial}{\partial y} \arctan\left(\frac y x \right) = \frac x {x^2 + y^2}.
\end{align}

Así, o gradiente de atan2 vén dado por
:\nabla \text{atan2}(y,x)=\left({-y\over x^2+y^2}, \ {x\over x^2+y^2}\right).

Representando informalmente a función  como a función de ángulo  (que só está definida ata unha constante) obtense a seguinte fórmula para o diferencial total:
:\begin{align}
\mathrm{d}\theta
&= \frac{\partial}{\partial x}\operatorname{atan2}(y,\, x)\,\mathrm{d}x + \frac{\partial}{\partial y}\operatorname{atan2}(y,\, x)\,\mathrm{d}y \\[5pt]
&= -\frac{y}{x^2 + y^2}\,\mathrm{d}x + \frac{x}{x^2 + y^2}\,\mathrm{d}y.
\end{align}

Aínda que a función  é descontinua ao longo do eixo  negativo, reflectindo o feito de que o ángulo non se pode definir de forma continua, esta derivada está definida de forma continua excepto na orixe, reflectindo o feito de que os cambios infinitesimais (e de feito locais) no ángulo poden definirse en todas as partes agás na orixe. Integrando esta derivada ao longo dun camiño obtense o cambio total no ángulo sobre o camiño, e integrando sobre un bucle pechado dá o índice da curva.

Na linguaxe da xeometría diferencial, esta derivada é unha 1-forma, e é  pechada (a súa derivada é cero) mais non exacta (non é a derivada dunha 0-forma, é dicir, unha función), e de feito xera a primeira cohomoloxía de de Rham do plano perforado. Este é o exemplo máis básico desa forma, e é fundamental en xeometría diferencial.

As derivadas parciais de  non conteñen funcións trigonométricas, o que a fai especialmente útil en moitas aplicacións (por exemplo, sistemas embebidos) onde as funcións trigonométricas poden ser custosas de avaliar.

## Ilustracións 
miniatura|dereita|300px|atan2 para raios seleccionados

Esta figura mostra os valores de atan2 ao longo de raios seleccionados desde a orixe, etiquetados na circunferencia unitaria. Os valores, en radiáns, móstranse dentro do círculo. O diagrama usa a convención matemática estándar de que os ángulos aumentan en sentido contrario ás agullas do reloxo desde cero ao longo do raio á dereita. Nótese que a orde dos argumentos está invertida; a función  calcula o ángulo correspondente ao punto .

[miniatura|dereita|300px|Comparación das funcións [funcións trigonométricas inversas|arctan e atan2]]
Esta figura mostra os valores de \arctan(\tan(\theta)) xunto con \operatorname {atan2}(\sin(\theta),\cos(\theta)) para 0\le \theta \le 2\pi. Ambas as funcións son impares e periódicas con períodos \pi e 2\pi, respectivamente, e polo tanto poden completarse facilmente a calquera rexión de valores reais de \theta. Pódese ver claramente os cortes de rama da función \operatorname {atan2} en \theta = \pi, e da función \arctan en \theta \in \{\tfrac{\pi}{2},\;\tfrac{3\pi}{2}\}.

As dúas figuras seguintes mostran vistas en 3D de  e  sobre unha rexión do plano. Nótese que para , os *raios* no plano *X*/*Y* que emanan da orixe teñen valores constantes, mais para  as *liñas* no plano *X*/*Y* que pasan pola orixe teñen valores constantes. Para , os dous diagramas dan valores idénticos.

## Identidade de suma e diferenza de ángulos 
A suma ou diferenza de múltiples ángulos que se van calcular mediante {{tmath|\operatorname{atan2} }} pode calcularse alternativamente compoñéndoos como números complexos. Dados dous pares de coordenadas  e , os seus ángulos desde o eixo  positivo compoñeranse (e as lonxitudes multiplicaranse) se se tratan como números complexos e logo multiplícanse, {{tmath|1=(x_1 + iy_1)(x_2 + iy_2)={} }}. O ángulo resultante pódese atopar usando unha única operación {{tmath|\operatorname{atan2} }, sempre que o ángulo resultante estea en :

:\operatorname{atan2} (y_1, x_1) \pm \operatorname{atan2} (y_2, x_2) = \operatorname{atan2} (y_1 x_2 \pm x_1 y_2, x_1 x_2 \mp y_1 y_2),

e do mesmo xeito para máis de dous pares de coordenadas. Se o ángulo composto cruza o eixo  negativo (é dicir, excede o intervalo ), entón os cruces poden contarse e engadirse o múltiplo enteiro apropiado de  ao resultado final para corrixilo.

Esta fórmula de diferenza úsase frecuentemente na práctica para calcular o ángulo entre dous vectores planos, xa que o ángulo resultante está sempre no intervalo .

## Notas 
## Véxase tamén 
### Outros artigos 
* funcións trigonométricas inversas
### Ligazóns externas 
* ATAN2 calculadora Online