std::atan2(std::valarray)

From cppreference.com
 
 
 
 
Defined in header <valarray>
template< class T >
valarray<T> atan2( const valarray<T>& y, const valarray<T>& x );
(1)
template< class T >
valarray<T> atan2( const valarray<T>& y, const T& vx );
(2)
template< class T >
valarray<T> atan2( const T& vy, const valarray<T>& x );
(3)

Computes the inverse tangent of y/x using the signs of arguments to correctly determine quadrant.

1) Computes the inverse tangent of each pair of corresponding values from y and x.

The behavior is undefined if x.size() != y.size().

2) Computes the inverse tangent of vx and each value in the numeric array y.
3) Computes the inverse tangent of vy and each value in the numeric array x.

Contents

[edit] Parameters

x, y - numeric arrays to compute inverse tangent of
vy, vx - values to compute inverse tangent of

[edit] Return value

A numeric array containing the results of computation of inverse tangent.

[edit] Notes

Unqualified function (atan2) is used to perform the computation. If such function is not available, std::atan2 is used due to argument dependent lookup.

The function can be implemented with the return type different from std::valarray. In this case, the replacement type has the following properties:

  • All const member functions of std::valarray are provided.
  • std::valarray, std::slice_array, std::gslice_array, std::mask_array and std::indirect_array can be constructed from the replacement type.
  • All functions accepting a arguments of type const std::valarray& should also accept the replacement type.
  • All functions accepting two arguments of type const std::valarray& should accept every combination of const std::valarray& and the replacement type.
  • The return type does not add more than two levels of template nesting over the most deeply-nested argument type.

[edit] Example

[edit] See also

arc tangent, using signs to determine quadrants
(function)