SlideShare a Scribd company logo
1 of 7
Download to read offline
Atan2 1
Atan2
In a variety of computer languages, the function atan2 is the arctangent function with two arguments. The purpose
of using two arguments instead of one, is to gather information of the signs of the inputs in order to return the
appropriate quadrant of the computed angle, which is not possible for the single-argument arctangent function.
For any real number (e.g., floating point) arguments x and y not both equal to zero, atan2(y, x) is the angle in radians
between the positive x-axis of a plane and the point given by the coordinates (x, y) on it. The angle is positive for
counter-clockwise angles (upper half-plane, y > 0), and negative for clockwise angles (lower half-plane, y < 0).
The atan2 function was first introduced in computer programming languages, but now it is also common in other
fields of science and engineering. It dates back at least as far as the FORTRAN programming language
[1]
and is
currently found in C's math.h standard library, the Java Math library, .NET's System.Math (usable from C#,
VB.NET, etc.), the Python math module, the Ruby Math module, and elsewhere. Many scripting languages, such as
Perl, include the C-style atan2 function.
[2]
In mathematical terms, atan2 computes the principal value of the argument function applied to the complex number
x+iy. That is, atan2(y, x) = Pr arg(x+iy) = Arg(x+iy). The argument can be changed by 2π (corresponding to a
complete turn around the origin) without making any difference to the angle, but to define atan2 uniquely one uses
the principal value in the range (−π, π]. That is, −π < atan2(y, x) ≤ π.
The atan2 function is useful in many applications involving vectors in Euclidean space, such as finding the direction
from one point to another. A principal use is in computer graphics rotations, for converting rotation matrix
representations into Euler angles.
In some computer programming languages, the order of the parameters is reversed (for example, in some
spreadsheets) or a different name is used for the function (for example, Mathematica uses ArcTan[x,y]). On
scientific calculators the function can often be calculated as the angle given when (x, y) is converted from rectangular
coordinates to polar coordinates.
Motivation
The one-argument arctangent function can not distinguish between diametrically opposite directions. For example,
the anticlockwise angle from the x-axis to the vector (1, 1), calculated in the usual way as arctan(1/1), is π/4
(radians), or 45°. However, the angle between the x-axis and the vector (−1, −1) appears, by the same method, to be
arctan(−1/−1), again π/4, even though the answer clearly should be −3π/4, or −135°.
The atan2 function takes into account the signs of both vector components, and places the angle in the correct
quadrant. Thus, atan2(1, 1) = π/4 and atan2(−1, −1) = −3π/4.
Additionally, the ordinary arctangent method breaks down when required to produce an angle of ±π/2 (or ±90°). For
example, an attempt to find the angle between the x-axis and the vector (0, 1) requires evaluation of arctan(1/0),
which fails on division by zero. In contrast, atan2(1, 0) gives the correct answer of π/2.
When calculations are performed manually, the necessary quadrant corrections and exception handling can be done
by inspection, but in computer programs it is extremely useful to have a single function that always gives an
unambiguous correct result.
Atan2 2
Definition and computation
In terms of the standard arctan function, whose range is (−π/2, π/2), it can be expressed as follows:
Notes:
• This produces results in the range (−π, π], which can be mapped to [0, 2π) by adding 2π to negative results.
•• Traditionally, atan2(0, 0) is undefined.
• The C function atan2, and most other computer implementations, are designed to reduce the effort of
transforming cartesian to polar coordinates and so always define atan2(0, 0). On implementations without
signed zero, or when given positive zero arguments, it is normally defined as 0. It will always return a value in
the range [−π, π] rather than raising an error or returning a NaN (Not a Number).
• Systems supporting symbolic mathematics normally return an undefined value for atan2(0,0) or
otherwise signal that an abnormal condition has arisen.
• For systems implementing signed zero, infinities, or Not a Number (for example, IEEE floating point), it is
common to implement reasonable extensions which may extend the range of values produced to include −π and
−0. These also may return NaN or raise an exception when given a NaN argument.
• For systems implementing signed zero (for example, IEEE floating point), atan2(-0, x), x < 0 returns the value
−π. atan2(+0, x), x < 0 still returns +π.
The free math library FDLIBM (Freely Distributable LIBM) available from netlib has source code showing how it
implements atan2 including handling the various IEEE exceptional values.
For systems without a hardware multiplier the function atan2 can be implemented in a numerically reliable
manner by the CORDIC method. Thus implementations of atan(y) will probably choose to compute
atan2(y,1).
The following expression derived from the tangent half-angle formula can also be used to define atan2.
This expression may be more suited for symbolic use than the definition above. However it is unsuitable for floating
point computational use as it is undefined for y = 0, x < 0 and may overflow near these regions. The formula gives an
NaN or raises an error for atan2(0, 0), but this is not an issue since atan2(0, 0) is not defined.
A variant of the last formula is sometimes used in high precision computation. This avoids overflow but is always
undefined when y = 0:
Atan2 3
Variations and notation
• In Common Lisp, where optional arguments exist, the atan function allows one to optionally supply the x
coordinate: (atan y x).
[3]
• In Mathematica, the form ArcTan[x, y] is used where the one parameter form supplies the normal
arctangent. Mathematica classifies ArcTan[0, 0] as an indeterminate expression.
• In Microsoft Excel, the atan2 function has the two arguments reversed.
[4]
OpenOffice.org Calc also reverses
the arguments, as does the Google Spreadsheets <atan2 function.
[5]
• In the Intel Architecture assembler code, atan2 is known as the FPATAN (floating-point partial arctangent)
instruction.
[6]
It can deal with infinities and results lie in the closed interval [−π, π], e.g. atan2(∞, x) = +π.
Particularly, FPATAN is defined when both arguments are zero:
atan2(+0, +0) = +0
atan2(+0, −0) = +π
atan2(−0, +0) = −0
atan2(−0, −0) = −π
This definition is related to the concept of signed zero, i.e.
• On most TI graphing calculators (excluding the TI-85 and TI-86), the equivalent function is called R►Pθ and has
the arguments reversed.
• In mathematical writings other than source code, such as in books and articles, the notations Arctan
[7]
and
Tan
-1[8]
have been utilized; these are uppercase variants of the regular arctan and tan
-1
. This usage is consistent
with the complex argument notation, such that Atan(y, x) = Arg(x+iy).
Atan2 4
Illustrations
atan2 round a circle
The diagram alongside shows values of
atan2 at selected points on the unit
circle. The values, in radians, are
shown inside the circle. The diagram
uses the standard mathematical
convention that angles increase
anticlockwise (counterclockwise), and
zero is to the right. Note that the order
of arguments is reversed; the function
atan2(y, x) computes the angle
corresponding to the point (x, y).
The diagram below shows values of
atan2 for points on the unit circle. On
the x-axis is the complex angle of the
points, starting from 0 ( point (1,0) )
and going anticlockwise
(counterclockwise), through points:
•• (0, 1) with complex angle π/2 (in
radians),
• (−1, 0) with complex angle π,
• (0, −1) with complex angle 3π/2,
to (1, 0) with complex angle 0 = (2nπ
mod 2π).
On this diagram one can clearly see the discontinuity of the atan2 function.
[9]
The diagrams below show 3D view of respectively atan2(y, x) and arctan(y/x) over a region of the plane.
Note that for atan2, rays emanating from the origin have constant values, but for atan lines passing through the origin
have constant values. For x > 0, the two diagrams give identical values.
Atan2 5
Derivative
As the function atan2 is a function of two variables, it has two partial derivatives. At points where these derivatives
exist, atan2 is, except for a constant, equal to arctan(y/x). hence:
for
Informally representing the function atan2 as the angle function (which is only defined up
to a constant) yields the following formula for the total derivative:
While the function atan2 is discontinuous along the negative y-axis, reflecting the fact that angle cannot be
continuously defined, this derivative is continuously defined except at the origin, reflecting the fact that infinitesimal
(and indeed local) changes in angle can be defined everywhere except the origin. Integrating this derivative along a
path gives the total change in angle over the path, and integrating over a closed loop gives the winding number.
In the language of differential geometry, this derivative is a one-form, and it is closed (its derivative is zero) but not
exact (it is not the derivative of a 0-form, i.e., a function), and in fact it generates the first de Rham cohomology of
the punctured plane. This is the most basic example of such a form, and it is fundamental in differential geometry.
The partial derivatives of atan2 do not contain trigonometric functions, making it particularly useful in many
applications (e.g. embedded systems) where trigonometric functions can be expensive to evaluate.Wikipedia:Please
clarify
Atan2 6
References
[2] The Linux Programmer's Manual (http://linux.die.net/man/3/atan2) says:
"The atan2() function calculates the arc tangent of the two variables y and x. It is similar to calculating the arc
tangent of y / x, except that the signs of both arguments are used to determine the quadrant of the result."
[6] IA-32 Intel Architecture Software Developer’s Manual. Volume 2A: Instruction Set Reference, A-M, 2004.
[7] http://books.google.com/books?id=2LIMMD9FVXkC&pg=PA234&dq=four+quadrant+inverse+tangent+mathematical+notation&
hl=en&sa=X&ei=Q2Y4UaGTAcmzyAHsooCoBw&ved=0CDgQ6AEwAg#v=onepage&
q=four%20quadrant%20inverse%20tangent%20mathematical%20notation&f=false
[8] http://books.google.com/books?id=7nNjaH9B0_0C&pg=PA345&dq=four+quadrant+inverse+tangent+mathematical+notation&
hl=en&sa=X&ei=Q2Y4UaGTAcmzyAHsooCoBw&ved=0CDIQ6AEwAQ#v=onepage&
q=four%20quadrant%20inverse%20tangent%20mathematical%20notation&f=false
[9] Computation of the external argument by Wolf Jung (http://www.mndynamics.com/indexp.html)
External links
• Java 1.6 SE JavaDoc (http://java.sun.com/javase/6/docs/api/java/lang/Math.html#atan2(double, double))
• atan2 (http://everything2.com/index.pl?node_id=1008481) at Everything2
• PicBasic Pro solution (http://www.picbasic.co.uk/forum/showthread.php?p=70269#post70269) atan2 for a
PIC18F
Other implementations/code for atan2
• Bearing Between Two Points (http://mathforum.org/library/drmath/view/55417.html)
• Arctan and Polar Coordinates (http://mathforum.org/library/drmath/view/54114.html)
• What's 'Arccos'? (http://mathforum.org/library/drmath/view/54172.html)
Article Sources and Contributors 7
Article Sources and Contributors
Atan2  Source: http://en.wikipedia.org/w/index.php?oldid=568349161  Contributors: 1exec1, 2620:0:1000:1502:6E3B:E5FF:FE1A:AFFC, Adam majewski, Anthony Appleyard, Apatterno,
Arichnad, Armando, Army1987, ArnoldReinhold, Avraham, Balabiot, Basawala, Ben pcc, Betacommand, Bob K, CALR, CBM, Cheesefondue, Chowbok, CompuChip, Cooperised, Csc14us,
DVdm, Daimanta, Davidhorman, Dcoetzee, Dhollm, Diegoaac, Dmcq, Drilnoth, Fgnievinski, Gandalf61, Gerbrant, GregorB, Hgilbert, Ian Vaughan, InverseHypercube, James Skinsale, Jfmantis,
John Vandenberg, JohnOwens, Jvohn, KSmrq, Keenan Pepper, Kenyon, KlappCK, Kpengboy, Kri, Kuashio, Lukas Mach, MarkSweep, Maulattu, Mdd4696, Michael Hardy, Michel BUZE,
Monsterman222, Mwarren us, Nbarth, Netheril96, NevemTeve, Nijdam, PAR, PreviousDeclaration, Quelt42, Quietbritishjim, Qwfp, R27182818, RahulWaghamare, Raise exception, Rgfibe,
Rjamisolajr, Rjgodoy, Rumping, Simetrical, SimonP, Slawekb, Slithymatt, Stevenj, Superm401, Thonord, Tobias Bergemann, Unbitwise, Utopianheaven, V1adis1av, Vadmium, Yuzisee, 谢弘,
102 anonymous edits
Image Sources, Licenses and Contributors
File:Atan2 60.svg  Source: http://en.wikipedia.org/w/index.php?title=File:Atan2_60.svg  License: Creative Commons Attribution-Sharealike 3.0  Contributors: Dmcq
File:Atan2-discontinuity.svg  Source: http://en.wikipedia.org/w/index.php?title=File:Atan2-discontinuity.svg  License: Creative Commons Attribution-Sharealike 3.0  Contributors: Atan2.PNG:
Adam majewski derivative work: Kpengboy (talk)
Image:Atan2Diagram.png  Source: http://en.wikipedia.org/w/index.php?title=File:Atan2Diagram.png  License: Public Domain  Contributors: Self.
Image:AtanDiagram.png  Source: http://en.wikipedia.org/w/index.php?title=File:AtanDiagram.png  License: Public Domain  Contributors: Self.
License
Creative Commons Attribution-Share Alike 3.0 Unported
//creativecommons.org/licenses/by-sa/3.0/

More Related Content

What's hot

Linear Algebra PowerPoint
Linear Algebra PowerPointLinear Algebra PowerPoint
Linear Algebra PowerPointAshley Carter
 
application of differential equation and multiple integral
application of differential equation and multiple integralapplication of differential equation and multiple integral
application of differential equation and multiple integraldivya gupta
 
Solving Poisson Equation using Conjugate Gradient Method and its implementation
Solving Poisson Equation using Conjugate Gradient Methodand its implementationSolving Poisson Equation using Conjugate Gradient Methodand its implementation
Solving Poisson Equation using Conjugate Gradient Method and its implementationJongsu "Liam" Kim
 
제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링jdo
 
Comunicação entre Java e Arduino Utilizando o Middleware Javino
Comunicação entre Java e Arduino Utilizando o Middleware JavinoComunicação entre Java e Arduino Utilizando o Middleware Javino
Comunicação entre Java e Arduino Utilizando o Middleware JavinoCarlos Eduardo Pantoja
 
Partial differential equation &amp; its application.
Partial differential equation &amp; its application.Partial differential equation &amp; its application.
Partial differential equation &amp; its application.isratzerin6
 
Introdução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de MicrocontroladoresIntrodução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de MicrocontroladoresCarlos Eduardo Pantoja
 
Laplace transform and its applications
Laplace transform and its applicationsLaplace transform and its applications
Laplace transform and its applicationsNisarg Shah
 
Histroy of partial differential equation
Histroy of partial differential equationHistroy of partial differential equation
Histroy of partial differential equationamanullahkakar2
 
Laplace transform & fourier series
Laplace transform & fourier seriesLaplace transform & fourier series
Laplace transform & fourier seriesvaibhav tailor
 
First Order Partial Differential Equations.pdf
First Order Partial Differential Equations.pdfFirst Order Partial Differential Equations.pdf
First Order Partial Differential Equations.pdfJorge Vega Rodríguez
 
Matlab - Conceitos Básicos
Matlab - Conceitos BásicosMatlab - Conceitos Básicos
Matlab - Conceitos BásicosRodolfo Almeida
 
First Order Differential Equations
First Order Differential EquationsFirst Order Differential Equations
First Order Differential EquationsItishree Dash
 
Corrente E ResistêNcia
Corrente E ResistêNciaCorrente E ResistêNcia
Corrente E ResistêNciaguestf9bbf1
 

What's hot (19)

Apostila cnc
Apostila cncApostila cnc
Apostila cnc
 
Linear Algebra PowerPoint
Linear Algebra PowerPointLinear Algebra PowerPoint
Linear Algebra PowerPoint
 
application of differential equation and multiple integral
application of differential equation and multiple integralapplication of differential equation and multiple integral
application of differential equation and multiple integral
 
Inverse Laplace Transform
Inverse Laplace TransformInverse Laplace Transform
Inverse Laplace Transform
 
Solving Poisson Equation using Conjugate Gradient Method and its implementation
Solving Poisson Equation using Conjugate Gradient Methodand its implementationSolving Poisson Equation using Conjugate Gradient Methodand its implementation
Solving Poisson Equation using Conjugate Gradient Method and its implementation
 
제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링제어-제어공학의 수학적모델링
제어-제어공학의 수학적모델링
 
Denavit hartenberg
Denavit hartenbergDenavit hartenberg
Denavit hartenberg
 
Comunicação entre Java e Arduino Utilizando o Middleware Javino
Comunicação entre Java e Arduino Utilizando o Middleware JavinoComunicação entre Java e Arduino Utilizando o Middleware Javino
Comunicação entre Java e Arduino Utilizando o Middleware Javino
 
Partial differential equation &amp; its application.
Partial differential equation &amp; its application.Partial differential equation &amp; its application.
Partial differential equation &amp; its application.
 
Finite difference Matlab Code
Finite difference Matlab CodeFinite difference Matlab Code
Finite difference Matlab Code
 
Introdução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de MicrocontroladoresIntrodução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de Microcontroladores
 
Laplace transform and its applications
Laplace transform and its applicationsLaplace transform and its applications
Laplace transform and its applications
 
Histroy of partial differential equation
Histroy of partial differential equationHistroy of partial differential equation
Histroy of partial differential equation
 
Laplace transform & fourier series
Laplace transform & fourier seriesLaplace transform & fourier series
Laplace transform & fourier series
 
First Order Partial Differential Equations.pdf
First Order Partial Differential Equations.pdfFirst Order Partial Differential Equations.pdf
First Order Partial Differential Equations.pdf
 
Matlab - Conceitos Básicos
Matlab - Conceitos BásicosMatlab - Conceitos Básicos
Matlab - Conceitos Básicos
 
First Order Differential Equations
First Order Differential EquationsFirst Order Differential Equations
First Order Differential Equations
 
CFD Aula 1
CFD Aula 1CFD Aula 1
CFD Aula 1
 
Corrente E ResistêNcia
Corrente E ResistêNciaCorrente E ResistêNcia
Corrente E ResistêNcia
 

Viewers also liked

Viewers also liked (20)

La Regina del Rock and Roll
La Regina del Rock and RollLa Regina del Rock and Roll
La Regina del Rock and Roll
 
Tina Turner La Regina del Rock and Roll
 Tina Turner La Regina del Rock and Roll Tina Turner La Regina del Rock and Roll
Tina Turner La Regina del Rock and Roll
 
What what app
What what appWhat what app
What what app
 
La Regina del Rock and Roll
La Regina del Rock and RollLa Regina del Rock and Roll
La Regina del Rock and Roll
 
Prasad n. resume
Prasad n. resumePrasad n. resume
Prasad n. resume
 
Tina Turner Die Königin Rock and Roll
Tina Turner Die Königin Rock and RollTina Turner Die Königin Rock and Roll
Tina Turner Die Königin Rock and Roll
 
A Rainha do Rock and Roll
A Rainha do Rock and RollA Rainha do Rock and Roll
A Rainha do Rock and Roll
 
La Reina del Rock and Roll
 La Reina del Rock and Roll La Reina del Rock and Roll
La Reina del Rock and Roll
 
Tina Turner La Regina del Rock and Roll
Tina Turner La Regina del Rock and RollTina Turner La Regina del Rock and Roll
Tina Turner La Regina del Rock and Roll
 
Slideshare
SlideshareSlideshare
Slideshare
 
La Regina del Rock and Roll
La Regina del Rock and RollLa Regina del Rock and Roll
La Regina del Rock and Roll
 
A Rainha do Rock and Roll
A Rainha do Rock and RollA Rainha do Rock and Roll
A Rainha do Rock and Roll
 
Idc business-value-of-openshift
Idc business-value-of-openshiftIdc business-value-of-openshift
Idc business-value-of-openshift
 
Die Königin Rock and Roll
Die Königin Rock and RollDie Königin Rock and Roll
Die Königin Rock and Roll
 
FOTOVIDEO EN DIAPOSITIVA DE LA MATERIA DE ECONOMIA
FOTOVIDEO EN DIAPOSITIVA DE LA MATERIA DE ECONOMIAFOTOVIDEO EN DIAPOSITIVA DE LA MATERIA DE ECONOMIA
FOTOVIDEO EN DIAPOSITIVA DE LA MATERIA DE ECONOMIA
 
Tati
TatiTati
Tati
 
Idc business-value-of-openshift
Idc business-value-of-openshiftIdc business-value-of-openshift
Idc business-value-of-openshift
 
The Queen of Rock and Roll
The Queen of Rock and RollThe Queen of Rock and Roll
The Queen of Rock and Roll
 
The Queen of Rock and Roll
The Queen of Rock and RollThe Queen of Rock and Roll
The Queen of Rock and Roll
 
Die Königin Rock and Roll
Die Königin Rock and RollDie Königin Rock and Roll
Die Königin Rock and Roll
 

Similar to Atan2

Cs6402 design and analysis of algorithms may june 2016 answer key
Cs6402 design and analysis of algorithms may june 2016 answer keyCs6402 design and analysis of algorithms may june 2016 answer key
Cs6402 design and analysis of algorithms may june 2016 answer keyappasami
 
Newton cotes integration method
Newton cotes integration  methodNewton cotes integration  method
Newton cotes integration methodshashikant pabari
 
Numerical Analysis Assignment Help
Numerical Analysis Assignment HelpNumerical Analysis Assignment Help
Numerical Analysis Assignment HelpMath Homework Solver
 
Chp-1 Quick Review of basic concepts.pdf
Chp-1 Quick Review of basic concepts.pdfChp-1 Quick Review of basic concepts.pdf
Chp-1 Quick Review of basic concepts.pdfSolomonMolla4
 
Scientific Computing II Numerical Tools & Algorithms - CEI40 - AGA
Scientific Computing II Numerical Tools & Algorithms - CEI40 - AGAScientific Computing II Numerical Tools & Algorithms - CEI40 - AGA
Scientific Computing II Numerical Tools & Algorithms - CEI40 - AGAAhmed Gamal Abdel Gawad
 
Inverse trig functions
Inverse trig functionsInverse trig functions
Inverse trig functionsJessica Garcia
 
Calculus academic journal (sample)
Calculus academic journal (sample)Calculus academic journal (sample)
Calculus academic journal (sample)Vincentius Soesanto
 
Robotics_Final_Paper_Folza
Robotics_Final_Paper_FolzaRobotics_Final_Paper_Folza
Robotics_Final_Paper_FolzaAlex Folz
 
Design and analysis of ra sort
Design and analysis of ra sortDesign and analysis of ra sort
Design and analysis of ra sortijfcstjournal
 
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...ijcga
 
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...ijcga
 
An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...
An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...
An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...ijcga
 
Hormann.2001.TPI.pdf
Hormann.2001.TPI.pdfHormann.2001.TPI.pdf
Hormann.2001.TPI.pdfssuserbe139c
 

Similar to Atan2 (20)

MATLABgraphPlotting.pptx
MATLABgraphPlotting.pptxMATLABgraphPlotting.pptx
MATLABgraphPlotting.pptx
 
Cs6402 design and analysis of algorithms may june 2016 answer key
Cs6402 design and analysis of algorithms may june 2016 answer keyCs6402 design and analysis of algorithms may june 2016 answer key
Cs6402 design and analysis of algorithms may june 2016 answer key
 
Signals and Systems Assignment Help
Signals and Systems Assignment HelpSignals and Systems Assignment Help
Signals and Systems Assignment Help
 
Newton cotes integration method
Newton cotes integration  methodNewton cotes integration  method
Newton cotes integration method
 
Exp integrals
Exp integralsExp integrals
Exp integrals
 
Numerical Analysis Assignment Help
Numerical Analysis Assignment HelpNumerical Analysis Assignment Help
Numerical Analysis Assignment Help
 
Parallel algorithm in linear algebra
Parallel algorithm in linear algebraParallel algorithm in linear algebra
Parallel algorithm in linear algebra
 
Daa chapter11
Daa chapter11Daa chapter11
Daa chapter11
 
Chp-1 Quick Review of basic concepts.pdf
Chp-1 Quick Review of basic concepts.pdfChp-1 Quick Review of basic concepts.pdf
Chp-1 Quick Review of basic concepts.pdf
 
Numerical Analysis Assignment Help
Numerical Analysis Assignment HelpNumerical Analysis Assignment Help
Numerical Analysis Assignment Help
 
Scientific Computing II Numerical Tools & Algorithms - CEI40 - AGA
Scientific Computing II Numerical Tools & Algorithms - CEI40 - AGAScientific Computing II Numerical Tools & Algorithms - CEI40 - AGA
Scientific Computing II Numerical Tools & Algorithms - CEI40 - AGA
 
Inverse trig functions
Inverse trig functionsInverse trig functions
Inverse trig functions
 
Calculus academic journal (sample)
Calculus academic journal (sample)Calculus academic journal (sample)
Calculus academic journal (sample)
 
26 Computational Geometry
26 Computational Geometry26 Computational Geometry
26 Computational Geometry
 
Robotics_Final_Paper_Folza
Robotics_Final_Paper_FolzaRobotics_Final_Paper_Folza
Robotics_Final_Paper_Folza
 
Design and analysis of ra sort
Design and analysis of ra sortDesign and analysis of ra sort
Design and analysis of ra sort
 
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
 
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
AN EFFICIENT LINE CLIPPING ALGORITHM FOR CIRCULAR WINDOWS USING VECTOR CALCUL...
 
An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...
An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...
An Efficient Line Clipping Algorithm for Circular Windows Using Vector Calcul...
 
Hormann.2001.TPI.pdf
Hormann.2001.TPI.pdfHormann.2001.TPI.pdf
Hormann.2001.TPI.pdf
 

Recently uploaded

AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
Presentation Activity 2. Unit 3 transv.pptx
Presentation Activity 2. Unit 3 transv.pptxPresentation Activity 2. Unit 3 transv.pptx
Presentation Activity 2. Unit 3 transv.pptxRosabel UA
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxVanesaIglesias10
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptshraddhaparab530
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...liera silvan
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...JojoEDelaCruz
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxlancelewisportillo
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationdeepaannamalai16
 

Recently uploaded (20)

AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
Presentation Activity 2. Unit 3 transv.pptx
Presentation Activity 2. Unit 3 transv.pptxPresentation Activity 2. Unit 3 transv.pptx
Presentation Activity 2. Unit 3 transv.pptx
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptx
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.ppt
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentation
 

Atan2

  • 1. Atan2 1 Atan2 In a variety of computer languages, the function atan2 is the arctangent function with two arguments. The purpose of using two arguments instead of one, is to gather information of the signs of the inputs in order to return the appropriate quadrant of the computed angle, which is not possible for the single-argument arctangent function. For any real number (e.g., floating point) arguments x and y not both equal to zero, atan2(y, x) is the angle in radians between the positive x-axis of a plane and the point given by the coordinates (x, y) on it. The angle is positive for counter-clockwise angles (upper half-plane, y > 0), and negative for clockwise angles (lower half-plane, y < 0). The atan2 function was first introduced in computer programming languages, but now it is also common in other fields of science and engineering. It dates back at least as far as the FORTRAN programming language [1] and is currently found in C's math.h standard library, the Java Math library, .NET's System.Math (usable from C#, VB.NET, etc.), the Python math module, the Ruby Math module, and elsewhere. Many scripting languages, such as Perl, include the C-style atan2 function. [2] In mathematical terms, atan2 computes the principal value of the argument function applied to the complex number x+iy. That is, atan2(y, x) = Pr arg(x+iy) = Arg(x+iy). The argument can be changed by 2π (corresponding to a complete turn around the origin) without making any difference to the angle, but to define atan2 uniquely one uses the principal value in the range (−π, π]. That is, −π < atan2(y, x) ≤ π. The atan2 function is useful in many applications involving vectors in Euclidean space, such as finding the direction from one point to another. A principal use is in computer graphics rotations, for converting rotation matrix representations into Euler angles. In some computer programming languages, the order of the parameters is reversed (for example, in some spreadsheets) or a different name is used for the function (for example, Mathematica uses ArcTan[x,y]). On scientific calculators the function can often be calculated as the angle given when (x, y) is converted from rectangular coordinates to polar coordinates. Motivation The one-argument arctangent function can not distinguish between diametrically opposite directions. For example, the anticlockwise angle from the x-axis to the vector (1, 1), calculated in the usual way as arctan(1/1), is π/4 (radians), or 45°. However, the angle between the x-axis and the vector (−1, −1) appears, by the same method, to be arctan(−1/−1), again π/4, even though the answer clearly should be −3π/4, or −135°. The atan2 function takes into account the signs of both vector components, and places the angle in the correct quadrant. Thus, atan2(1, 1) = π/4 and atan2(−1, −1) = −3π/4. Additionally, the ordinary arctangent method breaks down when required to produce an angle of ±π/2 (or ±90°). For example, an attempt to find the angle between the x-axis and the vector (0, 1) requires evaluation of arctan(1/0), which fails on division by zero. In contrast, atan2(1, 0) gives the correct answer of π/2. When calculations are performed manually, the necessary quadrant corrections and exception handling can be done by inspection, but in computer programs it is extremely useful to have a single function that always gives an unambiguous correct result.
  • 2. Atan2 2 Definition and computation In terms of the standard arctan function, whose range is (−π/2, π/2), it can be expressed as follows: Notes: • This produces results in the range (−π, π], which can be mapped to [0, 2π) by adding 2π to negative results. •• Traditionally, atan2(0, 0) is undefined. • The C function atan2, and most other computer implementations, are designed to reduce the effort of transforming cartesian to polar coordinates and so always define atan2(0, 0). On implementations without signed zero, or when given positive zero arguments, it is normally defined as 0. It will always return a value in the range [−π, π] rather than raising an error or returning a NaN (Not a Number). • Systems supporting symbolic mathematics normally return an undefined value for atan2(0,0) or otherwise signal that an abnormal condition has arisen. • For systems implementing signed zero, infinities, or Not a Number (for example, IEEE floating point), it is common to implement reasonable extensions which may extend the range of values produced to include −π and −0. These also may return NaN or raise an exception when given a NaN argument. • For systems implementing signed zero (for example, IEEE floating point), atan2(-0, x), x < 0 returns the value −π. atan2(+0, x), x < 0 still returns +π. The free math library FDLIBM (Freely Distributable LIBM) available from netlib has source code showing how it implements atan2 including handling the various IEEE exceptional values. For systems without a hardware multiplier the function atan2 can be implemented in a numerically reliable manner by the CORDIC method. Thus implementations of atan(y) will probably choose to compute atan2(y,1). The following expression derived from the tangent half-angle formula can also be used to define atan2. This expression may be more suited for symbolic use than the definition above. However it is unsuitable for floating point computational use as it is undefined for y = 0, x < 0 and may overflow near these regions. The formula gives an NaN or raises an error for atan2(0, 0), but this is not an issue since atan2(0, 0) is not defined. A variant of the last formula is sometimes used in high precision computation. This avoids overflow but is always undefined when y = 0:
  • 3. Atan2 3 Variations and notation • In Common Lisp, where optional arguments exist, the atan function allows one to optionally supply the x coordinate: (atan y x). [3] • In Mathematica, the form ArcTan[x, y] is used where the one parameter form supplies the normal arctangent. Mathematica classifies ArcTan[0, 0] as an indeterminate expression. • In Microsoft Excel, the atan2 function has the two arguments reversed. [4] OpenOffice.org Calc also reverses the arguments, as does the Google Spreadsheets <atan2 function. [5] • In the Intel Architecture assembler code, atan2 is known as the FPATAN (floating-point partial arctangent) instruction. [6] It can deal with infinities and results lie in the closed interval [−π, π], e.g. atan2(∞, x) = +π. Particularly, FPATAN is defined when both arguments are zero: atan2(+0, +0) = +0 atan2(+0, −0) = +π atan2(−0, +0) = −0 atan2(−0, −0) = −π This definition is related to the concept of signed zero, i.e. • On most TI graphing calculators (excluding the TI-85 and TI-86), the equivalent function is called R►Pθ and has the arguments reversed. • In mathematical writings other than source code, such as in books and articles, the notations Arctan [7] and Tan -1[8] have been utilized; these are uppercase variants of the regular arctan and tan -1 . This usage is consistent with the complex argument notation, such that Atan(y, x) = Arg(x+iy).
  • 4. Atan2 4 Illustrations atan2 round a circle The diagram alongside shows values of atan2 at selected points on the unit circle. The values, in radians, are shown inside the circle. The diagram uses the standard mathematical convention that angles increase anticlockwise (counterclockwise), and zero is to the right. Note that the order of arguments is reversed; the function atan2(y, x) computes the angle corresponding to the point (x, y). The diagram below shows values of atan2 for points on the unit circle. On the x-axis is the complex angle of the points, starting from 0 ( point (1,0) ) and going anticlockwise (counterclockwise), through points: •• (0, 1) with complex angle π/2 (in radians), • (−1, 0) with complex angle π, • (0, −1) with complex angle 3π/2, to (1, 0) with complex angle 0 = (2nπ mod 2π). On this diagram one can clearly see the discontinuity of the atan2 function. [9] The diagrams below show 3D view of respectively atan2(y, x) and arctan(y/x) over a region of the plane. Note that for atan2, rays emanating from the origin have constant values, but for atan lines passing through the origin have constant values. For x > 0, the two diagrams give identical values.
  • 5. Atan2 5 Derivative As the function atan2 is a function of two variables, it has two partial derivatives. At points where these derivatives exist, atan2 is, except for a constant, equal to arctan(y/x). hence: for Informally representing the function atan2 as the angle function (which is only defined up to a constant) yields the following formula for the total derivative: While the function atan2 is discontinuous along the negative y-axis, reflecting the fact that angle cannot be continuously defined, this derivative is continuously defined except at the origin, reflecting the fact that infinitesimal (and indeed local) changes in angle can be defined everywhere except the origin. Integrating this derivative along a path gives the total change in angle over the path, and integrating over a closed loop gives the winding number. In the language of differential geometry, this derivative is a one-form, and it is closed (its derivative is zero) but not exact (it is not the derivative of a 0-form, i.e., a function), and in fact it generates the first de Rham cohomology of the punctured plane. This is the most basic example of such a form, and it is fundamental in differential geometry. The partial derivatives of atan2 do not contain trigonometric functions, making it particularly useful in many applications (e.g. embedded systems) where trigonometric functions can be expensive to evaluate.Wikipedia:Please clarify
  • 6. Atan2 6 References [2] The Linux Programmer's Manual (http://linux.die.net/man/3/atan2) says: "The atan2() function calculates the arc tangent of the two variables y and x. It is similar to calculating the arc tangent of y / x, except that the signs of both arguments are used to determine the quadrant of the result." [6] IA-32 Intel Architecture Software Developer’s Manual. Volume 2A: Instruction Set Reference, A-M, 2004. [7] http://books.google.com/books?id=2LIMMD9FVXkC&pg=PA234&dq=four+quadrant+inverse+tangent+mathematical+notation& hl=en&sa=X&ei=Q2Y4UaGTAcmzyAHsooCoBw&ved=0CDgQ6AEwAg#v=onepage& q=four%20quadrant%20inverse%20tangent%20mathematical%20notation&f=false [8] http://books.google.com/books?id=7nNjaH9B0_0C&pg=PA345&dq=four+quadrant+inverse+tangent+mathematical+notation& hl=en&sa=X&ei=Q2Y4UaGTAcmzyAHsooCoBw&ved=0CDIQ6AEwAQ#v=onepage& q=four%20quadrant%20inverse%20tangent%20mathematical%20notation&f=false [9] Computation of the external argument by Wolf Jung (http://www.mndynamics.com/indexp.html) External links • Java 1.6 SE JavaDoc (http://java.sun.com/javase/6/docs/api/java/lang/Math.html#atan2(double, double)) • atan2 (http://everything2.com/index.pl?node_id=1008481) at Everything2 • PicBasic Pro solution (http://www.picbasic.co.uk/forum/showthread.php?p=70269#post70269) atan2 for a PIC18F Other implementations/code for atan2 • Bearing Between Two Points (http://mathforum.org/library/drmath/view/55417.html) • Arctan and Polar Coordinates (http://mathforum.org/library/drmath/view/54114.html) • What's 'Arccos'? (http://mathforum.org/library/drmath/view/54172.html)
  • 7. Article Sources and Contributors 7 Article Sources and Contributors Atan2  Source: http://en.wikipedia.org/w/index.php?oldid=568349161  Contributors: 1exec1, 2620:0:1000:1502:6E3B:E5FF:FE1A:AFFC, Adam majewski, Anthony Appleyard, Apatterno, Arichnad, Armando, Army1987, ArnoldReinhold, Avraham, Balabiot, Basawala, Ben pcc, Betacommand, Bob K, CALR, CBM, Cheesefondue, Chowbok, CompuChip, Cooperised, Csc14us, DVdm, Daimanta, Davidhorman, Dcoetzee, Dhollm, Diegoaac, Dmcq, Drilnoth, Fgnievinski, Gandalf61, Gerbrant, GregorB, Hgilbert, Ian Vaughan, InverseHypercube, James Skinsale, Jfmantis, John Vandenberg, JohnOwens, Jvohn, KSmrq, Keenan Pepper, Kenyon, KlappCK, Kpengboy, Kri, Kuashio, Lukas Mach, MarkSweep, Maulattu, Mdd4696, Michael Hardy, Michel BUZE, Monsterman222, Mwarren us, Nbarth, Netheril96, NevemTeve, Nijdam, PAR, PreviousDeclaration, Quelt42, Quietbritishjim, Qwfp, R27182818, RahulWaghamare, Raise exception, Rgfibe, Rjamisolajr, Rjgodoy, Rumping, Simetrical, SimonP, Slawekb, Slithymatt, Stevenj, Superm401, Thonord, Tobias Bergemann, Unbitwise, Utopianheaven, V1adis1av, Vadmium, Yuzisee, 谢弘, 102 anonymous edits Image Sources, Licenses and Contributors File:Atan2 60.svg  Source: http://en.wikipedia.org/w/index.php?title=File:Atan2_60.svg  License: Creative Commons Attribution-Sharealike 3.0  Contributors: Dmcq File:Atan2-discontinuity.svg  Source: http://en.wikipedia.org/w/index.php?title=File:Atan2-discontinuity.svg  License: Creative Commons Attribution-Sharealike 3.0  Contributors: Atan2.PNG: Adam majewski derivative work: Kpengboy (talk) Image:Atan2Diagram.png  Source: http://en.wikipedia.org/w/index.php?title=File:Atan2Diagram.png  License: Public Domain  Contributors: Self. Image:AtanDiagram.png  Source: http://en.wikipedia.org/w/index.php?title=File:AtanDiagram.png  License: Public Domain  Contributors: Self. License Creative Commons Attribution-Share Alike 3.0 Unported //creativecommons.org/licenses/by-sa/3.0/