np.arange(1,-1,-1)
yields
array([1, 0])
as expected.
np.arange(1,-1,-0.5)
Out[8]: array([ 1. , 0.5, 0. , -0.5]
Again all fine.
np.arange(1,-1,-0.2)
Out[10]:
array([1.00000000e+00, 8.00000000e-01, 6.00000000e-01,
4.00000000e-01, 2.00000000e-01, 2.22044605e-16,
-2.00000000e-01, -4.00000000e-01, -6.00000000e-01,
-8.00000000e-01])
What happened to the element that should be zero?
Same thing happens with
np.arange(1,-1,-0.1)
Out[11]:
array([1.00000000e+00, 9.00000000e-01, 8.00000000e-01,
7.00000000e-01, 6.00000000e-01, 5.00000000e-01,
4.00000000e-01, 3.00000000e-01, 2.00000000e-01,
1.00000000e-01, 2.22044605e-16, -1.00000000e-01,
-2.00000000e-01, -3.00000000e-01, -4.00000000e-01,
-5.00000000e-01, -6.00000000e-01, -7.00000000e-01,
-8.00000000e-01, -9.00000000e-01])
This is definitely not desirable but is it expected behaviour?