Скажем, я хотел бы решить параметр c limit: в следующем примере alpha > 0
является параметром.
import sympy as sp
x = sp.symbols("x", real=True)
alpha = sp.symbols("alpha", real=True, positive=True, nonzero=True)
expr = (x * sp.exp(x) - sp.exp(2 * sp.sqrt(1 + x**2))) / (sp.exp(alpha * x) + x** alpha)
sp.limit(expr, x, sp.oo)
Если я выполню код, я получу результат -oo
, что, возможно, неверно.
Если бы я вычислял этот предел вручную, я бы посмотрел на числитель и пришел к выводу, что exp(2 * sp.sqrt(1 + x**2))
имеет тот же порядок exp(2*x)
, который доминирует x * exp(x)
. Точно так же, глядя на знаменатель, я бы сказал, что exp(alpha * x)
доминирует над термином x**alpha
.
Поэтому я могу вычислить предел функции -exp((2 - alpha) * x)
. Правильный результат будет следующим:
-oo for 0 < alpha < 2
-1 for alpha = 2
0 for alpha > 2
Существует ли простой способ добиться этого результата с помощью sympy?