File: //usr/local/lib/python3.10/dist-packages/numpy/core/__pycache__/getlimits.cpython-310.pyc
o
���g e �
@ sj d Z ddgZddlZddlmZ ddlmZ dd lmZ dd
lm Z
ddlmZmZm
Z
ddlmZmZmZmZ d
d� Zdd� ZG dd� d�Ze
je
je
je
je
je
jiZdZe
jee
j de�!d�d�e
jee
j"de�!d�d�e
j#ee
j$de�!d�d�e
j%ee
j&de�!d�d�iZ'i Z(dd� Z)i Z*dd � Z+d!d"� Z,d#d$� Z-ed%�G d&d� d��Z.ed%�G d'd� d��Z/dS )(zJMachine limits for Float32 and Float64 and (long double) if available...
�finfo�iinfo� N� )�
set_module� )�MachAr)�numeric)�numerictypes)�array�inf�NaN)�log10�exp2� nextafter�isnanc C � | j dkr| �� } d| _| S )zfix rank-0 --> rank-1r )r )�ndim�copy�shape��a� r �?/usr/local/lib/python3.10/dist-packages/numpy/core/getlimits.py�_fr0 �
r c C r )zfix rank > 0 --> rank-0r r )�sizer r r r r r �_fr1 r r c @ sN e Zd ZdZdd�dd�Zedd� �Zedd � �Zd
d� Zdd
� Z dd� Z
dS )�
MachArLikez$ Object to simulate MachAr instance N)�smallest_subnormalc K s4 t | | _|| _| jd | _|s t| �d�| �d�| jd�| _n|| _| �|� | _| _| �|�| _ | �|� | _
| _| �|�| _| �|� | _
| _| jd |�| _| j�|� tt| j� �| _| �| �d�| j �| _| �| j�| _| �| j �| _| �| j�| _| �| j
�| _| �| j�| _| �| j�| _d S )N�titler r ��dtype�itype�
)�_MACHAR_PARAMS�params�ftyper r �_smallest_subnormal�_float_to_float�epsilon�eps�epsneg�xmax�huge�xmin�smallest_normal�tiny�ibeta�__dict__�update�intr
� precision�_float_conv�
resolution�
_float_to_str�_str_eps�_str_epsneg� _str_xmin� _str_xmax�_str_resolution�_str_smallest_normal) �selfr&