$\newcommand{\W}[1]{ \; #1 \; } \newcommand{\R}[1]{ {\rm #1} } \newcommand{\B}[1]{ {\bf #1} } \newcommand{\D}[2]{ \frac{\partial #1}{\partial #2} } \newcommand{\DD}[3]{ \frac{\partial^2 #1}{\partial #2 \partial #3} } \newcommand{\Dpow}[2]{ \frac{\partial^{#1}}{\partial {#2}^{#1}} } \newcommand{\dpow}[2]{ \frac{ {\rm d}^{#1}}{{\rm d}\, {#2}^{#1}} }$
AD Two Argument Inverse Tangent Function

Syntax
theta = atan2(y, x)

Purpose
Determines an angle $\theta \in [ - \pi , + \pi ]$ such that $$\begin{array}{rcl} \sin ( \theta ) & = & y / \sqrt{ x^2 + y^2 } \\ \cos ( \theta ) & = & x / \sqrt{ x^2 + y^2 } \end{array}$$

y
The argument y has one of the following prototypes       const AD<Base>               &y      const VecAD<Base>::reference &y 
x
The argument x has one of the following prototypes       const AD<Base>               &x      const VecAD<Base>::reference &x 
theta
The result theta has prototype       AD<Base> theta 
Operation Sequence
The AD of Base operation sequence used to calculate theta is independent of x and y .

Example
The file atan2.cpp contains an example and test of this function. It returns true if it succeeds and false otherwise.