Go to the first, previous, next, last section, table of contents.


m_rtostr

m_rtostr(t)
:: t をなるべく Mathematica の理解可能な文字列に変える.
return
文字列
t
オブジェクト
[259] m_rtostr([1,2,3]);
{1,2,3}
[260] m_rtostr([[1,x,x^2],[1,y,y^2]]);
{{1,x,x^2},{1,y,y^2}}

もう一つ例をあげよう. 次の関数 m_Inverse(M)ox_math をよんで行列 M の逆行列を計算する関数である. m_Inverse(M) は次のように r_tostr(M) を用いて asir の行列を Mathematica 形式に変換してから ox_execute_string で Mathematica に逆行列を計算 させている.

def m_Inverse(M) {
  P = 0;
  A = m_rtostr(M);
  ox_execute_string(P,"Inverse["+A+"]");
  B = ox_pop_cmo(B);
  C = m_tree_to_string(B);
  return(eval_str(C));
}

[269] M=[[1,x,x^2],[1,y,y^2],[1,z,z^2]];
[[1,x,x^2],[1,y,y^2],[1,z,z^2]]
[270] A=m_Inverse(M)$
[271] red(A[0][0]);
(z*y)/(x^2+(-y-z)*x+z*y)
参照
ox_execute_string, ToExpression(Mathematica), m_tree_to_string


Go to the first, previous, next, last section, table of contents.