#python #numpy #math #natural-logarithm
#python #numpy #математика #натуральный логарифм
Вопрос:
У меня есть следующее уравнение:
import numpy as np
d = (x - y) / np.log((x - z) / (y - z))
Где я пытаюсь найти x
Возможно ли это в numpy
или других библиотеках Python? В этом случае, не могли бы вы, пожалуйста, предоставить пример кода того, как это сделать с этой конкретной проблемой?
Комментарии:
1. Итак, что вы хотите, это иметь x (d, y, z)?
2. Мне нужно переписать уравнение с помощью x = и т.д…
3. Вы можете использовать
sympy
, чтобы найти $ x (d, y, z) $, а затем вычислить его с помощьюnumpy
.4. Когда я пытаюсь вставить x (d, y, z) $ в терминал (даже после установки фиктивных переменных x = 50, y = 40, z = 30) Я получаю ошибку «недопустимый синтаксис» после запуска кода. sympy также был импортирован
Ответ №1:
Я бы, вероятно, использовал только sympy
и их решатель: решатель библиотеки sympy
from sympy import solve, log, exp
from sympy.abc import x,y,z,d
f = (x - y) / log((x - z) / (y - z)) - d
solution = solve(f, x)
И результат, который я получаю, это
[-d*LambertW(-(y - z)*exp(-(y - z)/d)/d) z]
Комментарии:
1. фантастика! работает. спасибо, что познакомили меня с этой библиотекой!