【问题标题】:How to find a region of acceptability in sympy?如何在 sympy 中找到可接受的区域?
【发布时间】:2020-09-20 21:48:57
【问题描述】:

首先,对“可接受区域”的机器翻译感到抱歉,我不确定这是否正是我的意思。 “可接受区域”必须告诉我f(x) 存在的位置。

我正在使用sumpy 编写一个脚本,该脚本将为我提供完整的f(x) 分析: f(x)=0d/dxf(x)=0、“可接受区域”等

sympy中的哪个函数是我正在搜索的以及如何正确使用它?

【问题讨论】:

  • 你的意思是要找到不包括任何奇点的函数域?
  • 是的,我想这是我需要的

标签: python python-3.x sympy symbolic-math algebra


【解决方案1】:

sympy 中有一个名为 singularities 的函数,它试图识别给定符号中表达式的奇点集:

In [21]: from sympy import *                                                                                                                   

In [22]: x = Symbol('x', complex=True)                                                                                                                       

In [23]: expr = x**2 / ((1 - x) * (2 + x**2))                                                                                                  

In [24]: expr                                                                                                                                  
Out[24]: 
        2       
       x        
────────────────
        ⎛ 2    ⎞
(1 - x)⋅⎝x  + 2⎠

In [25]: singularities(expr, x)                                                                                                                
Out[25]: {1, -√2⋅ⅈ, √2⋅ⅈ}

如果函数的更广泛领域应该是实数,那么您可以使用集合减法从实数集中移除这些奇点:

In [26]: Reals - singularities(expr, x)                                                                                                        
Out[26]: (-∞, 1) ∪ (1, ∞)

您还可以将其转换为x 上的关系:

In [27]: (Reals - singularities(expr, x)).as_relational(x)                                                                                     
Out[27]: x ≠ 1

【讨论】:

  • 谢谢,这正是我所需要的,很抱歉这么久没有确认您的回答。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-05-27
  • 1970-01-01
  • 2011-12-18
  • 1970-01-01
  • 2012-12-20
  • 1970-01-01
  • 2016-02-17
相关资源
最近更新 更多