Как найти домен функции в Python, используя sympy - PullRequest
0 голосов
/ 24 апреля 2019

Я работаю над скриптом Python, который принимает математическую функцию в качестве входных данных и выплевывает полезную информацию, чтобы нарисовать кривую для этой функции (касательные, точки пересечения, асимптоту и т. Д.), И первый шаг находит область определения этой функции (когда эта функция действительна, например: 1 / x-2 df =] - ∞, 2 [U] 2, + ∞ [), и мне нужно сделать это с помощью sympy. Ниже внизу указан код WIP

from sympy import *
from fractions import *

x = symbols('x')
f = Function('f')
f = input('type function: ')
fp = diff(f)
sol = solve(f, x)
sol_p = solve(fp, x)
print(f"f(x)={f},f'(x)={fp}")
#print(f"x1={sol[0]},x2={sol[1]},x'={sol_p}")
print(f'{len(sol)}')
psol = {}
limits_at_edges = {}
df = solveset(f, x, domain=S.Reals)

for i in range(1,( len(sol) + 1)):                     # Prints out every item in sol[] after aplying .evalf()
    psol["x" + str(i) ] = sol[i - 1].evalf()
for i in range(1, len(sol) + 1):
    limits_at_edges[f'limit x -> x{i} f(x)'] = limit(f, x, sol[i - 1])

print(f'Solution:{sol}')
print(f'Processes solution:{psol}')
print(f'Derivative solution:{sol_p}')
print(limits_at_edges)
print(f'Domain:{df}')
pprint(f, use_unicode=True)

1 Ответ

0 голосов
/ 28 апреля 2019

Этот вопрос похож на Как узнать, является ли функция непрерывной с sympy?

Это можно сделать, используя continuous_domain, как объяснено здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...