stringtranslate.com

atan2

atan2( y , x ) devuelve el ángulo θ entre el eje x positivo y el rayo desde el origen hasta el punto ( x , y ) , confinado a (− π , π ] .
Gráfica de más de

En informática y matemáticas , la función atan2 es la arcotangente de 2 argumentos . Por definición, es la medida del ángulo (en radianes , con ) entre el eje positivo y el rayo desde el origen hasta el punto en el plano cartesiano . Equivalentemente, es el argumento (también llamado fase o ángulo ) del número complejo (El argumento de una función y el argumento de un número complejo, cada uno mencionado anteriormente, no deben confundirse).

La función apareció por primera vez en el lenguaje de programación Fortran en 1961. Originalmente, su propósito era devolver un valor correcto e inequívoco para el ángulo al convertir de coordenadas cartesianas a coordenadas polares . Si y , entonces y

Si ⁠ ⁠ , la medida del ángulo deseado es Sin embargo, cuando x < 0 , el ángulo es diametralmente opuesto al ángulo deseado, y (media vuelta ) debe agregarse para colocar el punto en el cuadrante correcto . [1] El uso de la función elimina esta corrección, simplificando el código y las fórmulas matemáticas.

Motivación

Gráfica de la función tangente de −π a con los signos correspondientes de y / x . Las flechas verdes señalan los resultados de atan2(−1, −1) y atan2(1, 1) .

La función arcotangente ordinaria de un solo argumento solo devuelve medidas de ángulos en el intervalo ⁠ ⁠ , y cuando se la invoca para encontrar el ángulo de dirección desde el origen hasta un punto arbitrario ⁠ ⁠ en el plano cartesiano , arrojará resultados incorrectos cuando el punto esté en el semiplano izquierdo ⁠ ⁠ . Las medidas de ángulos diametralmente opuestos tienen la misma tangente porque

Para determinar completamente el ángulo de dirección desde el origen dado un punto ⁠ ⁠ utilizando la función arcotangente, las fórmulas matemáticas o el código de computadora deben manejar múltiples casos; al menos uno para valores positivos de y uno para valores negativos de , y a veces casos adicionales cuando es negativo o una coordenada es cero. Encontrar medidas de ángulos y convertir coordenadas cartesianas a polares son comunes en la computación científica, y este código es redundante y propenso a errores.

Para ahorrarles problemas a los programadores, los lenguajes de programación de computadoras introdujeron la función atan2 , al menos tan temprano como el lenguaje Fortran IV de la década de 1960. [2] La cantidad ⁠ ⁠ es la medida del ángulo entre el eje ⁠ ⁠ y un rayo desde el origen hasta un punto ⁠ ⁠ en cualquier lugar del plano cartesiano. Los signos de x y ⁠ ⁠ se utilizan para determinar el cuadrante del resultado y seleccionar la rama correcta de la función multivalor ⁠ ⁠ .

La función atan2 es útil en muchas aplicaciones que involucran vectores euclidianos , como encontrar la dirección de un punto a otro o convertir una matriz de rotación en ángulos de Euler .

La función atan2 ahora está incluida en muchos otros lenguajes de programación y también se encuentra comúnmente en fórmulas matemáticas en el campo de la ciencia y la ingeniería.

Orden de argumentos

En 1961, Fortran introdujo la función atan2 con orden de argumento ⁠ ⁠ de modo que el argumento (ángulo de fase) de un número complejo es Esto sigue el orden de izquierda a derecha de una fracción escrita de modo que para valores positivos de Sin embargo, esto es lo opuesto al orden de componentes convencional para números complejos, o como coordenadas Consulte la sección Definición y cálculo.

Otros lenguajes de programación (ver § Realizaciones de la función en lenguajes informáticos comunes) escogieron el orden opuesto. Por ejemplo, Microsoft Excel utiliza OpenOffice Calc y Mathematica utiliza el valor predeterminado de arcotangente de un argumento si se llama con un argumento.

Definición y cálculo

La función atan2 calcula el argumento principal del número complejo , que también es la parte imaginaria del valor principal del logaritmo complejo . Es decir,

Sumando cualquier múltiplo entero de ⁠ ⁠ (correspondiente a vueltas completas alrededor del origen) se obtiene otro argumento del mismo número complejo, pero el argumento principal se define como el único ángulo representativo en el intervalo ⁠ ⁠ .

En términos de la función arcotangente estándar, cuya imagen es ⁠ ⁠ , atan2 se puede expresar por partes :

La tangente de la mitad de un ángulo se puede calcular en términos de las coordenadas x e y y el radio r .

En lugar de la tangente, puede ser conveniente utilizar la semitangente como representación de un ángulo, en parte porque el ángulo tiene una semitangente única ,

(Ver fórmula de la mitad del ángulo tangente ). La expresión con ⁠ ⁠ en el denominador debe usarse cuando ⁠ ⁠ y ⁠ ⁠ para posible pérdida de significancia en el cálculo ⁠ ⁠ . Cuando una función atan2 no está disponible, se puede calcular como el doble de la arcotangente de la mitad de la tangente ⁠ ⁠ .

Derivado

Como la función atan2 es una función de dos variables, tiene dos derivadas parciales . En los puntos donde existen estas derivadas, atan2 es, salvo una constante, igual a arctan( y / x ) . Por lo tanto, para x > 0 o y ≠ 0 ,

Por lo tanto, el gradiente de atan2 viene dado por

Representando informalmente la función atan2 como la función angular θ ( x , y ) = atan2( y , x ) (que sólo está definida hasta una constante) se obtiene la siguiente fórmula para la diferencial total :

Si bien la función atan2 es discontinua a lo largo del eje x negativo , lo que refleja el hecho de que el ángulo no se puede definir de forma continua, esta derivada se define de forma continua excepto en el origen, lo que refleja el hecho de que los cambios infinitesimales (y, de hecho, locales) en el ángulo se pueden definir en todas partes excepto en el origen. La integración de esta derivada a lo largo de una trayectoria da el cambio total en el ángulo sobre la trayectoria, y la integración sobre un bucle cerrado da el número de vueltas .

En el lenguaje de la geometría diferencial , esta derivada es una forma unidimensional , y es cerrada (su derivada es cero) pero no exacta (no es la derivada de una forma 0, es decir, una función), y de hecho genera la primera cohomología de De Rham del plano perforado . Este es el ejemplo más básico de una forma de este tipo, y es fundamental en geometría diferencial.

Las derivadas parciales de atan2 no contienen funciones trigonométricas, lo que lo hace particularmente útil en muchas aplicaciones (por ejemplo, sistemas integrados) donde las funciones trigonométricas pueden ser costosas de evaluar.

Ilustraciones

atan2 para rayos seleccionados

Esta figura muestra los valores de atan2 a lo largo de rayos seleccionados desde el origen, etiquetados en el círculo unitario. Los valores, en radianes, se muestran dentro del círculo. El diagrama utiliza la convención matemática estándar de que los ángulos aumentan en sentido antihorario desde cero a lo largo del rayo hacia la derecha. Tenga en cuenta que el orden de los argumentos está invertido; la función atan2( y , x ) calcula el ángulo correspondiente al punto ( x , y ) .

Comparación de las funciones arctan y atan2

Esta figura muestra los valores de junto con para . Ambas funciones son impares y periódicas con períodos y , respectivamente, y por lo tanto pueden complementarse fácilmente con cualquier región de valores reales de . Se pueden ver claramente los cortes de ramificación de la función en , y de la función en . [3]

Las dos figuras siguientes muestran vistas 3D de atan2( y , x ) y arctan( y/incógnita ) ​​sobre una región del plano. Nótese que para atan2( y , x ) , los rayos en el plano X / Y que emanan del origen tienen valores constantes, pero para arctan( y/incógnita ) ​​las líneas en el plano X / Y que pasan por el origen tienen valores constantes. Para x > 0 , los dos diagramas dan valores idénticos.

Identidad de suma y diferencia de ángulos

La suma o diferencia de ángulos múltiples que se calcularán mediante ⁠ ⁠ se puede calcular alternativamente componiéndolos como números complejos . Dados dos pares de coordenadas ⁠ ⁠ y ⁠ ⁠ , sus ángulos desde el eje ⁠ ⁠ positivo se compondrán (y sus longitudes se multiplicarán) si se tratan como números complejos y luego se multiplican juntos, ⁠ ⁠ ⁠ ⁠ . El ángulo resultante se puede encontrar utilizando una sola ⁠ ⁠ operación, siempre que el ángulo resultante se encuentre en ⁠ ⁠ :

y lo mismo para más de dos pares de coordenadas. Si el ángulo compuesto cruza el eje negativo ( es decir, excede el rango ) , entonces se pueden contar los cruces y agregar el múltiplo entero apropiado de al resultado final para corregirlo.

Esta fórmula de diferencia se utiliza con frecuencia en la práctica para calcular el ángulo entre dos vectores planos , ya que el ángulo resultante siempre está en el rango ⁠ ⁠ .

Convenciones de este a antihorario, norte a horario y sur a horario, etc.

La función fue diseñada originalmente para la convención en matemáticas puras que puede denominarse este-antihorario . Sin embargo, en aplicaciones prácticas, las convenciones norte-horario y sur-horario suelen ser la norma. En ciencias atmosféricas, por ejemplo, la dirección del viento puede calcularse utilizando la función con los componentes este y norte del vector del viento como argumentos; [4] el ángulo azimutal solar puede calcularse de manera similar con los componentes este y norte del vector solar como argumentos. La dirección del viento normalmente se define en el sentido norte-horario, y el ángulo azimutal solar utiliza ampliamente las convenciones norte-horario y sur-horario. [5] Estas diferentes convenciones pueden realizarse intercambiando las posiciones y cambiando los signos de los argumentos x e y de la siguiente manera:

A modo de ejemplo, sea y , entonces el formato este-antihorario da , el formato norte-horario da , y el formato sur-horario da .

Cambiar el signo de los argumentos x y/o y y/o intercambiar sus posiciones puede crear 8 posibles variaciones de la función y, curiosamente, corresponden a 8 posibles definiciones del ángulo, es decir, en el sentido de las agujas del reloj o en el sentido contrario a las agujas del reloj a partir de cada una de las 4 direcciones cardinales : norte, este, sur y oeste.

Realizaciones de la función en lenguajes informáticos comunes

La realización de la función difiere de un lenguaje informático a otro:

La convención es utilizada por:

Esta definición está relacionada con el concepto de cero con signo .

Véase también

Referencias

  1. ^ "El argumento de un número complejo" (PDF) . Instituto de Física de Partículas de Santa Cruz. Invierno de 2011.
  2. ^ Organick, Elliott I. (1966). A FORTRAN IV Primer . Addison-Wesley. pág. 42. Algunos procesadores también ofrecen la función de biblioteca denominada ATAN2, una función de dos argumentos (opuesto y adyacente).
  3. ^ "Wolf Jung: Mandel, software para dinámicas complejas". www.mndynamics.com . Consultado el 20 de abril de 2018 .
  4. ^ "Referencia rápida de la dirección del viento". NCAR UCAR Earth Observing Laboratory.
  5. ^ Zhang, Taiping; Stackhouse, Paul W.; MacPherson, Bradley; Mikovitz, J. Colleen (2021). "Una fórmula de acimut solar que hace innecesario el tratamiento circunstancial sin comprometer el rigor matemático: configuración matemática, aplicación y extensión de una fórmula basada en el punto subsolar y la función atan2". Energía renovable . 172 : 1333–1340. Código Bibliográfico :2021REne..172.1333Z. doi : 10.1016/j.renene.2021.03.047 . S2CID  233631040.
  6. ^ "Método Atan2 de Microsoft Excel". Microsoft. 14 de junio de 2014.
  7. ^ "LibreOffice Calc ATAN2". Libreoffice.org.
  8. ^ "Funciones y fórmulas – Ayuda para editores de documentos". support.google.com .
  9. ^ "Lista de funciones trigonométricas de números". Apple.
  10. ^ "CLHS: Función ASIN, ACOS, ATAN". LispWorks.
  11. ^ "Matemáticas · El lenguaje Julia". docs.julialang.org .
  12. ^ "Preguntas frecuentes · El lenguaje Julia". docs.julialang.org .
  13. ^ Manual del desarrollador de software de arquitectura Intel IA-32. Volumen 2A: Referencia del conjunto de instrucciones, AM, 2004.
  14. ^ Burger, Wilhelm; Burge, Mark J. (7 de julio de 2010). Principios del procesamiento de imágenes digitales: técnicas fundamentales. Springer Science & Business Media. ISBN 978-1-84800-191-6. Recuperado el 20 de abril de 2018 – vía Google Books.
  15. ^ Glisson, Tildon H. (18 de febrero de 2011). Introducción al análisis y diseño de circuitos. Springer Science & Business Media. ISBN 9789048194438. Recuperado el 20 de abril de 2018 – vía Google Books.

Enlaces externos

Otras implementaciones/código para atan2

Notas