Я пытаюсь вычислить экспоненциальное значение exp с помощью переменной python pint, включающей единицу измерения.
Код: Выделить всё
import pint
var = 0.5 * unit_reg.minute
math.exp(-var)
при этом я получаю сообщение об ошибке: DimensionalityError: невозможно преобразовать «минуту» в «безразмерность».
Это тоже похоже на случай когда я вычисляю это напрямую
Код: Выделить всё
import pint
var = 0.5 * unit_reg.minute
math.e ** -var
а также используйте numpy
Код: Выделить всё
import pint
import numpy as np
var = 0.5 * unit_reg.minute
np.exp(-var)
Возможно, я что-то упускаю. Но есть ли другой способ выполнить вычисления вместо того, чтобы извлекать величину и единицы измерения из переменной и снова объединять их?
При этом способе ошибка размерности отсутствует
Код: Выделить всё
import pint
var = 0.5 * unit_reg.minute
math.exp(-var.magnitude) * var.units
Я предполагаю, что math.exp ожидает безразмерную переменную, как указано в примере 11 в описании pint numpy
Подробнее здесь:
https://stackoverflow.com/questions/790 ... h-pint-uni