next up previous contents
Next: exist Up: リファレンスマニュアル Previous: error

  
eval

【目的】
eval - 多項式,有理多項式,文字列の評価
【形式】
y = eval(p,x)
   (Real|Complex|Polynomial|Rational|Matrix|Array) y;
   Polynomial p;
   (Integer|Real|Complex|Polynomial|Rational|Matrix|Array) x;
  
y = eval(r,x)
   (Real|Complex|Rational|Matrix|Array) y;
   Rational r;
   (Integer|Real|Complex|Polynomial|Rational|Matrix|Array) x;
  
Y = eval(R,x)
   (Matrix|Array) Y;
   (PoMatrix|RaMatrix|PoArray|RaArray) R;
   (Integer|Real|Complex|Polynomial|Rational|Matrix) x;
  
Y = eval(R,x)
   (Matrix|Array) Y;
   (PoMatrix|RaMatrix|PoArray|RaArray) R;
    Array x;
  
y = eval(s)
   (評価結果の型) y;
   String s;
【詳細】
p が(多項式|有理多項式),x が(整数|実数|複素数|多項式|有理多項式| 行列|配列)のとき,eval(p,x)は,多項式 p の変数に x 代入した結果を 返す。 R が(多項式行列|多項式配列|有理多項式行列|有理多項式配列),x が (整数|実数|複素数|多項式|有理多項式|行列) のとき,R の各成分 R(i,j) の変数に x を代入して評価した結果 eval(R(i,j),x) からなる行列を返す。 一方,x が配列のとき,eval(R,X(i,j)) を成分とする配列になる。 s が文字列のとき,eval(s)は,文字列 s をMaTXの式あるいは文として 評価(実行)し,結果を返す。結果は,与えられた文字列 s によって変る。 ただし,この機能は,インタプリタでのみ使用できる。
【例題】
>> s = Polynomial("s");
>> p = s^2 + 2*s + 3;
>> y = eval(p, s+1)
y = s^2 + 4 s + 6
>> R = [[s+1, s+2][s+3, s+4]];
>> A = [[1 2][3 4]];
>> Y = eval(R, A)
=== [Y] : (  4,  4) ===
           (  1)         (  2)         (  3)         (  4)     
(  1)  2.000000E+00  2.000000E+00  3.000000E+00  2.000000E+00
(  2)  3.000000E+00  5.000000E+00  3.000000E+00  6.000000E+00
(  3)  4.000000E+00  2.000000E+00  5.000000E+00  2.000000E+00
(  4)  3.000000E+00  7.000000E+00  3.000000E+00  8.000000E+00
>> Y = eval(R, Array(A))
=== [Y] : (  4,  4) ===
           (  1)         (  2)         (  3)         (  4)     
(  1)  2.000000E+00  3.000000E+00  3.000000E+00  4.000000E+00
(  2)  4.000000E+00  5.000000E+00  5.000000E+00  6.000000E+00
(  3)  4.000000E+00  5.000000E+00  5.000000E+00  6.000000E+00
(  4)  6.000000E+00  7.000000E+00  7.000000E+00  8.000000E+00
【参照】
system(2.233)


Masanobu KOGA 平成11年10月2日