方程式の計算を簡素化するライブラリまたは手法はありますか?
次の 2 つの例を見てください。
F = B * { [ a * b * sumOf (A / B ''' for all i ''' ) ] / [ sumOf(c * d * j) ] }
どこ:
F = i から j までのコスト
B、a、b、c、d、j はすべて [ [zone_i, zone_j, cost_of_i_to_j], [..]] の形式のベクトルです。
これにより、ベクトル F [ [1,2, F_1_2], ..., [i,j, F_i_j] ] が生成されます。
T_ij = [ P_i * A_i * F_i_j] / [ SumOf [ Aj * F_i_j ] // j = 1 ~ j = n ]
どこ:
n はゾーンの数です
T = ベクトル [ [1, 2, A_1_2, P_1_2], ..., [i, j, A_i_j, P_i_j] ]
F = ベクトル [1, 2, F_1_2], ..., [i, j, F_i_j]
したがって、P_i はすべての j のすべての P_i_j の合計になり、Aj はすべての i のすべての P_j の合計になります
何を探しているのかわかりませんが、おそらくこれらの方程式または複数の乗算とベクトル間の積を処理するメソッドのパーサーでしょうか?
A_jなど、いくつかの要因を計算するには、これを使用します
from collections import defaultdict
A_j_dict = defaultdict(float)
for A_item in TG: A_j_dict[A_item[1]] += A_item[3]
これは問題なく機能しますが、変数やパラメーターを追加したい場合には、ブルート フォース/ハッキング手法であり、維持できないと感じています。お勧めの数式パーサーはありますか?
補足:これらの方程式は、移動のモデル化に使用されます。現在、私はこれらの方程式の多くを解くために Excel を使用しています。そして、そのプロセスは気が遠くなるようなものだと思います。私は、データベース (postgres) から直接データを取得し、結果をデータベースに出力する Python に移行したいと考えています。すべてが理解されています。方程式自体の評価に苦労しています。
ありがとう :)