Python – función matemática.ulp(x)

ULP significa “Unidad en el Último Lugar”. math.ulp() se introduce en la versión 3.9.0 de python, devuelve el valor del bit menos significativo del float x. En análisis numérico e informática, la unidad de menor precisión (ULP) o unidad en último lugar es el espacio entre números de punto flotante.

Nota:

  • Si el argumento es NaN (no un número), la salida es NaN.
  • Si la entrada x es negativa, la salida es ulp(-x).
  • Si la entrada x es infinito positivo, la salida es inf.
  • Si la entrada es cero, el flotante representable desnormalizado positivo más pequeño es la salida (más pequeño que el flotante normalizado positivo mínimo, sys.float_info.min).
  • Si el valor de entrada x es el valor flotante positivo más grande representable, el valor del bit menos significativo de x es la salida, de modo que el primer valor flotante más pequeño que x es x – ulp(x).
  • De lo contrario, si el valor de entrada x es un número finito positivo, el valor del bit menos significativo de x es la salida, de modo que el primer flotante mayor que x es x + ulp(x).

Sintaxis: matemáticas.ulp(x)

Parámetro:

x: float cuyo ulp se devuelve

Devolver:

Devuelve el valor del bit menos significativo del float x.

Ejemplo: para mostrar el funcionamiento del método math.ulp(x).

Python3

# python program to explain
# math.ulp(x) for different values of x
import math
import sys
 
# when x is NaN
x = float('nan')
print(math.ulp(x))
 
# when x is positive infinity
x = float('inf')
print(math.ulp(x))
 
# when x is negative infinity
print(math.ulp(-x))
 
# when x = 0
x = 0.0
print(math.ulp(x))
 
# when x is maximum representable float
x = sys.float_info.max
print(math.ulp(x))
 
# x is a positive finite number
x = 5
print(math.ulp(x))
 
# when x is a negative number
x = -5
print(math.ulp(x))

Producción:

nan
inf
inf
5e-324
1.99584030953472e+292
8.881784197001252e-16
8.881784197001252e-16

Publicación traducida automáticamente

Artículo escrito por MuskanKalra1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *