2017-10-19 85 views
-1
equations = [ 
    Eq(N_bRd, X_c * f_y * A * gamma_M1), 
    Eq(L_c, L * beta), 
    Eq(N_cr, (pi) ** 2 * E_E * i/(beta * L) ** 2), 
    Eq(lamda, sqrt(N_bRd/N_cr)), 
] 
results = solve(equations) 
# results = solve(equations, [m_A,m_D,theta_c,theta_b,delta]) 
results 

我收到以下錯誤與sympy NotAlgebraic:如何計算sympy中的pi power 2?

PI似乎並不當我改變圓周率到3.14它工作得很好,是一個代數元素

+0

您可以請[編輯]您的問題,使您的代碼[mcve]?現在,你沒有告訴我們你從哪裏進口'pi'。從'sympy import pi'中''對我來說工作正常。 – Wrzlprmft

回答

2

普通mathematical constants是本mpmath模塊(sympy依賴性)中所定義:

>>> from mpmath import mp 
>>> mp.pi 
<pi: 3.14159~> 

>>> mp.pi**2 
mpf('9.869604401089358') 

sympydocs

這些常數是實現爲能夠評估任何精度懶惰對象。無論何時將對象用作函數參數或作爲算術運算的操作數,它們都會自動計算出當前的工作精度。