簡體   English   中英

Python中的符號方程求解器

[英]Symbolic equation solver in python

我想要一個python函數,可以將給定參數的方程組求解。 例如:

 >>>>foo("""\begin{cases}
 & c^2=\frac{1}{\epsilon_0 \cdot \mu_0}\\ 
 & k_E=\frac{1}{4 \cdot \pi \epsilon_0} \\ 
 & \epsilon_0=1+\chi_0
\end{cases}""","\chi_0",("c","\mu_0"))
#outputs:
\frac{c^2 \cdot \mu_0-1}{c^2 \cdot \mu_0}

>>>>foo("""\begin{cases}
 & c^2=\frac{1}{\epsilon_0 \cdot \mu_0}\\ 
 & k_E=\frac{1}{4 \cdot \pi \epsilon_0} \\ 
 & \epsilon_0=1+\chi_0
\end{cases}""","\chi_0",("k_E","\pi"))
#outputs:
\frac{1-k_E \cdot 4 \cdot \pi}{k_E \cdot 4 \cdot \pi}

>>>>foo("A+B+C=D","A",("B","C","D"))
#outputs:
D-B-C

示例函數foo的第一個參數是方程式。 第二個參數是要解決的變量。 第三個參數是可在解決方案中使用的參數的元組。 在示例中,方程組是用LaTeX編寫的,但求解器使用哪種語言並不重要。 我應該使用可導入的模塊嗎?

查看sympy 它被許多項目廣泛地用於符號處理,因此很可能已經涵蓋了

在“ 求解器”部分中,嘗試linsolve([x + y + z - 1, x + y + 2*z - 3 ], (x, y, z)) ,它將求解x。 如果要求解(x,y,z)(y,x,z)替換(x,y,z) (y,x,z) ,依此類推

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM