1 votos

¿Por qué la diferencia tan dramática en la tangente arc?

¿Por qué son tan dramáticamente diferentes los dos cálculos siguientes en los resultados?

Dado ATAN(y2 - y1 / x2 - x1)

Atan(165.377838 - 240 / 57.234100 - 160) = 0.8696708890423176

Atan(159.340393 - 240 / 61.901459 - 160) = -1.3538428308947705

Estoy calculando todos los puntos en un círculo, y cuando llego aproximadamente de 45 a 135 grados, girando en sentido antihorario, todos mis resultados van de positivos a negativos, y me dan resultados erráticos, como los anteriores. El resultado de la arcotangente, en cualquier otro lugar de la rotación, es alrededor de 1.43 a 1.53, pero en esta área van a negativo y caen enteros completos.

¿Alguna idea de por qué está sucediendo esto?

10voto

Adjit Puntos 172

Faltan paréntesis. Probablemente querías escribir ATAN((y2 - y1) / (x2 - x1)).

0voto

NoAnswer Puntos 277

Echa un vistazo a un gráfico de la función tangente, por ejemplo http://commons.wikimedia.org/wiki/File:Tangent-plot.svg.

Aquí tienes una definición de la tangente tan(x) = sin(x)/cos(x). Para cada x con cos(x)=0: tan(x) es indefinido. Eso sucede en cada medio círculo (180° o pi que es aproximadamente 3.14159265).

Se supone que la arcotangente revierte esta extraña cosa. Su gráfico se ve así: http://en.wikipedia.org/wiki/File:Arctangent_Arccotangent.svg

Tus fórmulas pueden ser resueltas a atan(1.18453366) y atan(-4.53673694), debido a los paréntesis faltantes. Echando un vistazo al gráfico de la arcotangente nuevamente, diría que obtuviste exactamente lo que pediste. Proporcionaste valores que difieren aproximadamente en 5.5. Una diferencia de alrededor de 1.5 no es tan dramática.

Puedes usar los paréntesis correctos establecidos por Shaun Ault. Sin embargo, debes esperar que atan "salte" de -pi/2 a pi/2 (aproximadamente 3.14159265) y regrese para x2-x1 "oscilando" alrededor de 0. Así es como funciona atan. Mira el gráfico y ten en cuenta que 1/0 es indefinido para los matemáticos o +/-infinito para los ingenieros. Por lo tanto, para "algo / algo cercano a cero", puedes ir desde el lado izquierdo del gráfico directamente al lado derecho.

La solución puede estar en el comentario de J.M.

En realidad, si él está haciendo lo que creo que está haciendo, la arcotangente de dos argumentos podría ser algo mejor de usar: atan2(y2 - y1, x2 - x1)

Aquí está la definición: http://en.wikipedia.org/wiki/Atan2#Definition_and_computation

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X