[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1 函数一覧


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.1 mathematica.start

mathematica.start()

:: Localhost で ox_math を起動する.

return

整数

 
P = mathematica.start()
参照

ox_launch


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.2 mathematica.tree_to_string

mathematica.tree_to_string(t)

:: ox_math の戻す Mathematica の木構造データ tasir 形式に なおす.

return

文字列

t

リスト

 
[267] mathematica.start();
0
[268] ox_execute_string(0,"Expand[(x-1)^2]");
0
[269] A=ox_pop_cmo(0);  
[Plus,1,[Times,-2,x],[Power,x,2]]
[270] mathematica.tree_to_string(A);
(1)+((-2)*(x))+((x)^(2))
[271] eval_str(@);
x^2-2*x+1
 
[259] mathematica.tree_to_string(["List",1,2]);
[1 , 2]
[260] mathematica.tree_to_string(["Plus",2,3]);
(2)+(3)
[261] mathematica.tree_to_string(["Complex",2.3,4.55]);
mathematica.complex(2.3 , 4.55)
[362] mathematica.tree_to_string(["Plus",["Complex",1.2,3.5],1/2]);
(mathematica.complex(1.2 , 3.5))+(1/2)
[380] eval_str(@);
(1.7+3.5*@i)
参照

ox_pop_cmo, eval_str, mathematica.rtomstr


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1.3 mathematica.rtomstr

mathematica.rtomstr(t)

:: t をなるべく Mathematica の理解可能な文字列に変える.

return

文字列

t

オブジェクト

 
[259] mathematica.rtomstr([1,2,3]);
{1,2,3}
[260] mathematica.rtomstr([[1,x,x^2],[1,y,y^2]]);
{{1,x,x^2},{1,y,y^2}}

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

 
def inverse(M) {
  P = 0;
  A = mathematica.rtomstr(M);
  ox_execute_string(P,"Inverse["+A+"]");
  B = ox_pop_cmo(B);
  C = mathematica.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=mathematica.inverse(M)$
[271] red(A[0][0]);
(z*y)/(x^2+(-y-z)*x+z*y)
参照

ox_execute_string, ToExpression(Mathematica), mathematica.tree_to_string


[ < ] [ > ]   [ << ] [ Up ] [ >> ]

This document was generated by Nobuki Takayama on January, 28 2008 using texi2html 1.76.