[英]How to simplify logarithm of exponent in sympy?
當我打字
import sympy as sp
x = sp.Symbol('x')
sp.simplify(sp.log(sp.exp(x)))
我得到
log(e^x)
代替x
。 我知道此功能“沒有保證”。
題。 是否有某種特定的簡化(通過級數展開或其他方式)將指數的對數轉換為恆等函數?
您必須將x
設置為實型,您的代碼才能正常工作:
import sympy as sp
x = sp.Symbol('x', real=True)
print(sp.simplify(sp.log(sp.exp(x))))
輸出: x
。
對於復數x
,此公式的結果並不總是等於x
。 例子在這里 。
如果要強制進行簡化,則expand
會有所幫助,因為它提供了force
關鍵字,該關鍵字基本上為您做出了這樣的假設,而無需將變量聲明為實數。 但是要小心結果-如果不保證這些假設,您將不想使用它。
>>> log(exp(x)).expand(force=True)
x
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.