如果我有一個功能,如f(x) = x/(x+1)
。sympy可以執行符號近似嗎?
在sympy:
LIM˚F爲x - > oo爲1,
LIM˚F爲x - > 0是0
我在尋找一種方法來「象徵性地近似」這樣的情況下,函數,其中x >> 1和x < < 1.是否有sympy要做到這一點,並給結果的方式:
當x < < 1,FG oes to x 當x >> 1時,f變爲1
如果我有一個功能,如f(x) = x/(x+1)
。sympy可以執行符號近似嗎?
在sympy:
LIM˚F爲x - > oo爲1,
LIM˚F爲x - > 0是0
我在尋找一種方法來「象徵性地近似」這樣的情況下,函數,其中x >> 1和x < < 1.是否有sympy要做到這一點,並給結果的方式:
當x < < 1,FG oes to x 當x >> 1時,f變爲1
我不清楚你到底在問什麼。採取象徵性的限制,您可以使用limit
功能
In [5]: limit(x/(x + 1), x, 0)
Out[5]: 0
In [6]: limit(x/(x + 1), x, oo)
Out[6]: 1
至於「近似」的功能,也許你想要的級數展開(大約0和無窮大,分別)
In [7]: (x/(x + 1)).series(x, 0)
Out[7]:
2 3 4 5 ⎛ 6⎞
x - x + x - x + x + O⎝x ⎠
In [8]: (x/(x + 1)).series(x, oo)
Out[8]:
1 1 1 1 1 ⎛1 ⎞
- ── + ── - ── + ── - ─ + 1 + O⎜──; x → ∞⎟
5 4 3 2 x ⎜ 6 ⎟
x x x x ⎝x ⎠
的級數展開式顯示出在0和無限(常數項)處的極限,並且對於接近0或無窮大的函數(分別)是精確近似。
是的,系列是我可以使用的。如果fx = sympify('x /(1 + x)'),則fx.series(x0 = 0,n = 2).removeO()產生x和fx.series(x0 = oo,n = 1)。 removeO()產生1.我沒有意識到低階系列擴張基本上是我正在做的近似。謝謝! – davo
只要讀一下你最後一句話。我認爲'系列'確實是你要找的。 – asmeurer
如果答案幫助您解決了問題,則可以將其標記爲「已接受」。 –