123びぼーろく;maxima メモ : リストの大きさを調べる

何かを計算させた時、解がいくつか出ることがある。
その解を別の関係に代入した時の結果をリストで書こうとするとき、for 文を使うと楽。

ところが、どうして良いのか分からなかったので、そのメモ。


まず、ある関数f(x)の解を求める。

Sol:solve(f(x),x);

この時、Solにはいくつかの解がリストで収まっている。
これを別の関数g(x)に代入し、その答えを別のリストに代入するときには、さっきも言ったけどfor 文を使うと便利。
だけど、for文ではリストの個数が分からないと使えないので、予めリストの個数を調べておいてから書くと良い。リストの個数はlength()で調べる。

L:length(x);
for i:1 step 1 thru L do (
                                   G[i]:factor(ev(V,vev[i])),
                                   print("case" , i,"= ", Vvev[i])
                                  );

これでg(x)に代入した結果がリストGに代入される。
ちなみに for文の中でわざわざprintを入れているのは、terminal上で結果を確認したいため。
確認がいらない場合には必要ない。

0 件のコメント:

コメントを投稿

758びぼーろく; 有名人と同じ名前

 だと苦労しそうだなと思った。理論物理をやっていると、Eulerと名の付くものはすべて18世紀の大数学者だと思ってしまうが、別のオイラーさんもいるらしい。 最近共同研究者にせっつかれて慌てて色々調べているとEuler-Heisenberg Lagrangianに出くわした。このE...