# numpy.MachAr#

class numpy.MachAr(float_conv=<class 'float'>, int_conv=<class 'int'>, float_to_float=<class 'float'>, float_to_str=<function MachAr.<lambda>>, title='Python floating point number')[source]#

Diagnosing machine parameters.

Parameters
float_convfunction, optional

Function that converts an integer or integer array to a float or float array. Default is `float`.

int_convfunction, optional

Function that converts a float or float array to an integer or integer array. Default is `int`.

float_to_floatfunction, optional

Function that converts a float array to float. Default is `float`. Note that this does not seem to do anything useful in the current implementation.

float_to_strfunction, optional

Function that converts a single float to a string. Default is `lambda v:'%24.16e' %v`.

titlestr, optional

Title that is printed in the string representation of `MachAr`.

`finfo`

Machine limits for floating point types.

`iinfo`

Machine limits for integer types.

References

1

Press, Teukolsky, Vetterling and Flannery, “Numerical Recipes in C++,” 2nd ed, Cambridge University Press, 2002, p. 31.

Attributes
ibetaint

Radix in which numbers are represented.

itint

Number of base-ibeta digits in the floating point mantissa M.

machepint

Exponent of the smallest (most negative) power of ibeta that, added to 1.0, gives something different from 1.0

epsfloat

Floating-point number `beta**machep` (floating point precision)

negepint

Exponent of the smallest power of ibeta that, subtracted from 1.0, gives something different from 1.0.

epsnegfloat

Floating-point number `beta**negep`.

iexpint

Number of bits in the exponent (including its sign and bias).

minexpint

Smallest (most negative) power of ibeta consistent with there being no leading zeros in the mantissa.

xminfloat

Floating-point number `beta**minexp` (the smallest [in magnitude] positive floating point number with full precision).

maxexpint

Smallest (positive) power of ibeta that causes overflow.

xmaxfloat

`(1-epsneg) * beta**maxexp` (the largest [in magnitude] usable floating value).

irndint

In `range(6)`, information on what kind of rounding is done in addition, and on how underflow is handled.

ngrdint

Number of ‘guard digits’ used when truncating the product of two mantissas to fit the representation.

epsilonfloat

Same as eps.

tinyfloat

An alias for smallest_normal, kept for backwards compatibility.

hugefloat

Same as xmax.

precisionfloat

`- int(-log10(eps))`

resolutionfloat

`- 10**(-precision)`

smallest_normalfloat

The smallest positive floating point number with 1 as leading bit in the mantissa following IEEE-754. Same as xmin.

smallest_subnormalfloat

The smallest positive floating point number with 0 as leading bit in the mantissa following IEEE-754.