Hi,

I have a proposal for a feature and I hope this is the right place to post
this.

The idea is to have a function to map any input angle to the range of [ 0,
2*pi ] or [ - pi, pi ].

There already is a function called 'unwrap' that does the opposite, so I'd
suggest calling this function 'wrap'.

Example usage:
# wrap to range [ 0, 2*pi ]
>>> np.wrap([ -2*pi, -pi, 0, 4*pi ])
[0, pi, 0, 2*pi]

There is some ambiguity regarding what the solution should be for the
extremes. An example would be an input of 4*pi, as both 0 and 2*pi would be
valid mappings.

There has been interest for this topic in the community (see
https://stackoverflow.com/questions/15927755/opposite-of-numpy-unwrap).

Similar functions exist for Matlab (see
https://de.mathworks.com/help/map/ref/wrapto2pi.html). They solved the
ambiguity by mapping "positive multiples of 2*pi map to 2*pi and negative
multiples of 2*pi map to 0." for the 0 to 2*pi case.
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@python.org
https://mail.python.org/mailman/listinfo/numpy-discussion

Reply via email to