class finfo: (source)
finfo(dtype)
Machine limits for floating point types.
See Also
Notes
For developers of NumPy: do not instantiate this at the module level. The initial calculation of these parameters is expensive and negatively impacts import times. These objects are cached, so calling finfo() repeatedly inside your functions is not a problem.
Note that smallest_normal is not actually the smallest positive representable value in a NumPy floating point type. As in the IEEE-754 standard [1], NumPy floating point types make use of subnormal numbers to fill the gap between 0 and smallest_normal. However, subnormal numbers may have significantly reduced precision [2].
This function can also be used for complex data types as well. If used, the output will be the same as the corresponding real float type (e.g. numpy.finfo(numpy.csingle) is the same as numpy.finfo(numpy.single)). However, the output is true for the real and imaginary components.
References
[1] | IEEE Standard for Floating-Point Arithmetic, IEEE Std 754-2008, pp.1-70, 2008, http://www.doi.org/10.1109/IEEESTD.2008.4610935 |
[2] | Wikipedia, "Denormal Numbers", https://en.wikipedia.org/wiki/Denormal_number |
Examples
>>> np.finfo(np.float64).dtype dtype('float64') >>> np.finfo(np.complex64).dtype dtype('float32')
Parameters | |
dtype | Kind of floating point or complex floating point data-type about which to get information. |
Method | __new__ |
Undocumented |
Method | __repr__ |
Undocumented |
Method | __str__ |
Undocumented |
Instance Variable | bits |
The number of bits occupied by the type. |
Instance Variable | dtype |
Returns the dtype for which finfo returns information. For complex input, the returned dtype is the associated float* dtype for its real and complex components. |
Instance Variable | eps |
The difference between 1.0 and the next smallest representable float larger than 1.0. For example, for 64-bit binary floats in the IEEE-754 standard, eps = 2**-52, approximately 2.22e-16. |
Instance Variable | epsneg |
The difference between 1.0 and the next smallest representable float less than 1.0. For example, for 64-bit binary floats in the IEEE-754 standard, epsneg = 2**-53, approximately 1.11e-16. |
Instance Variable | iexp |
The number of bits in the exponent portion of the floating point representation. |
Instance Variable | machep |
The exponent that yields eps . |
Instance Variable | max |
The largest representable number. |
Instance Variable | maxexp |
The smallest positive power of the base (2) that causes overflow. |
Instance Variable | min |
The smallest representable number, typically -max. |
Instance Variable | minexp |
The most negative power of the base (2) consistent with there being no leading 0's in the mantissa. |
Instance Variable | negep |
The exponent that yields epsneg . |
Instance Variable | nexp |
The number of bits in the exponent including its sign and bias. |
Instance Variable | nmant |
The number of bits in the mantissa. |
Instance Variable | precision |
The approximate number of decimal digits to which this kind of float is precise. |
Instance Variable | resolution |
The approximate decimal resolution of this type, i.e., 10**-precision. |
Instance Variable | smallest |
The smallest positive floating point number with 0 as leading bit in the mantissa following IEEE-754. |
Property | machar |
The object which calculated these parameters and holds more detailed information. |
Property | smallest |
Return the value for the smallest normal. |
Property | tiny |
Return the value for tiny, alias of smallest_normal. |
Method | _init |
Undocumented |
Class Variable | _finfo |
Undocumented |
Instance Variable | _machar |
Undocumented |
Instance Variable | _str |
Undocumented |
Instance Variable | _str |
Undocumented |
Instance Variable | _str |
Undocumented |
Instance Variable | _str |
Undocumented |
Instance Variable | _str |
Undocumented |
Instance Variable | _str |
Undocumented |
Instance Variable | _str |
Undocumented |
Returns the dtype for which finfo
returns information. For complex
input, the returned dtype is the associated float* dtype for its
real and complex components.
The difference between 1.0 and the next smallest representable float larger than 1.0. For example, for 64-bit binary floats in the IEEE-754 standard, eps = 2**-52, approximately 2.22e-16.
The difference between 1.0 and the next smallest representable float less than 1.0. For example, for 64-bit binary floats in the IEEE-754 standard, epsneg = 2**-53, approximately 1.11e-16.
The smallest positive floating point number with 0 as leading bit in the mantissa following IEEE-754.
The object which calculated these parameters and holds more detailed information.
Return the value for the smallest normal.
Returns | |
float | smallest_normal - Value for the smallest normal. |
Warns | |
UserWarning | If the calculated value for the smallest normal is requested for double-double. |
Return the value for tiny, alias of smallest_normal.
Returns | |
float | tiny - Value for the smallest normal, alias of smallest_normal. |
Warns | |
UserWarning | If the calculated value for the smallest normal is requested for double-double. |