テキストを解ける方程式に操作する一般的なPythonの方法を探しています。
例えば:
初期化する定数があるかもしれません
e1,e2=0.58,0.62
ma1,ma2=0.85,1.15
mw=0.8
Cpa,Cpw=1.023,4.193
dba,dbr=0.0,25.0
および一連の方程式(ソルバーではなく読みやすさのためにここに記述されています)
Q=e1*ma1*Cpa*(tw1-dba)
Q=ma1*Cpa*(dbs-dba)
Q=mw*Cpw*(tw1-tw2)
Q=e2*ma2*Cpa*(dbr-tw2)
Q=ma2*Cpa*(dbr-dbo)
これは5つの未知数を残すので、おそらくシステムは解決できます。
Q, dbo, dbr, tw1, tw2
実際のシステムは非線形であり、はるかに複雑です。
私はすでにこの簡単な例をscipy、Delphi、Sageで解決しました...だから私は解決の部分を探していません。
方程式はテキストエディタに直接入力され、Pythonプログラムで未知数の配列とエラー関数の配列を取得する必要があります。
y = mysolver.fsolve(f, x)
したがって、上記の例では
x=[Q,dbo,dbr,tw1,tw2]
f=[Q-e1*ma1*Cpa*(tw1-dba), Q-ma1*Cpa*(dbs-dba), Q-mw*Cpw*(tw1-tw2),
Q-e2*ma2*Cpa*(dbr-tw2), Q-ma2*Cpa*(dbr-dbo)]
未知数を抽出してエラー関数を作成する方法がわかりません。
compile.parse()関数を試しましたが、構造化された内訳が表示されるようです。
誰もが最善のアプローチについていくつかのアイデアを与えることができますか?