numpy.real_if_close
- 
numpy.real_if_close(a, tol=100)[source] - 
If input is complex with all imaginary parts close to zero, return real parts.
“Close to zero” is defined as
tol* (machine epsilon of the type fora).- Parameters
 - 
- 
aarray_like - 
Input array.
 - 
tolfloat - 
Tolerance in machine epsilons for the complex part of the elements in the array.
 
 - 
 - Returns
 - 
- 
outndarray - 
If
ais real, the type ofais used for the output. Ifahas complex elements, the returned type is float. 
 - 
 
See also
- 
real, imag,angle 
Notes
Machine epsilon varies from machine to machine and between data types but Python floats on most platforms have a machine epsilon equal to 2.2204460492503131e-16. You can use ‘np.finfo(float).eps’ to print out the machine epsilon for floats.
Examples
>>> np.finfo(float).eps 2.2204460492503131e-16 # may vary
>>> np.real_if_close([2.1 + 4e-14j, 5.2 + 3e-15j], tol=1000) array([2.1, 5.2]) >>> np.real_if_close([2.1 + 4e-13j, 5.2 + 3e-15j], tol=1000) array([2.1+4.e-13j, 5.2 + 3e-15j])
 
    © 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
    https://numpy.org/doc/1.21/reference/generated/numpy.real_if_close.html