Previous: Functions and Variables for Command Line, Up: Command Line [Contents][Index]
デフォルト値: false
%edispflagがtrueの時、
Maximaは %eの負の指数乗を商として表示します。
例えば、%e^-xは 1/%e^xと表示されます。
exptdispflagも参照してください。
例:
(%i1) %e^-10;
                               - 10
(%o1)                        %e
(%i2) %edispflag:true$
(%i3) %e^-10;
                               1
(%o3)                         ----
                                10
                              %e
デフォルト値: !
absboxcharは1行より広い式の回りに絶対値記号を描くのに使われる文字です。
例:
(%i1) abs((x^3+1));
                            ! 3    !
(%o1)                       !x  + 1!
displayのようですが、
等式ではなく引数の値だけが表示されます。
これは名前を持たない複雑な引数や引数の値だけに興味があって
名前には興味がない引数に役立ちます。
例:
(%i1) b[1,2]:x-x^2$
(%i2) x:123$
(%i3) disp(x, b[1,2], sin(1.0));
                               123
                                  2
                             x - x
                        .8414709848078965
(%o3)                         done
左辺が未評価のexpr_iで、右辺が式の値の等式を行の中央に表示します。
この関数は、中間結果を表示するのにブロックやfor文の中で役立ちます。
displayの引数は、通常アトムや、添字付き変数、関数コールです。
dispも参照してください。
ldisplay, disp, ldispも参照してください。
例:
(%i1) b[1,2]:x-x^2$
(%i2) x:123$
(%i3) display(x, b[1,2], sin(1.0));
                             x = 123
                                      2
                         b     = x - x
                          1, 2
                  sin(1.0) = .8414709848078965
(%o3)                         done
デフォルト値: true
display2dがfalseの時、
コンソール表示は(2次元)形式ではなく文字列(1次元)形式です。
例:
(%i1) x/(x^2+1);
                               x
(%o1)                        ------
                              2
                             x  + 1
(%i2) display2d:false$
(%i3) x/(x^2+1);
(%o3) x/(x^2+1)
デフォルト値: false
display_format_internalがtrueの時、
式は数学的内部表現を隠すように変換されることなく表示されます。
表示はpartではなくinpartが返すものに対応します。
例:
User     part       inpart
a-b;      a - b     a + (- 1) b
           a            - 1
a/b;       -         a b
           b
                       1/2
sqrt(x);   sqrt(x)    x
          4 X        4
X*4/3;    ---        - X
           3         3
exprをパーツ毎に一行ずつ使って表示します。
すなわち、最初にexprの演算子が表示され、
それぞれの項が別々に表示されます。
もしexprが他の方法で表示するには大きすぎるなら、
これは役に立ちます。
例えば、もしP1, P2, ...が非常に大きな式なら、
P1 + P2 + ...を一度に表示しようとする場合、
表示プログラムは保存の空き領域を使い尽くすかもしれません。
しかしながら、
dispterms (P1 + P2 + ...)は、
P1を表示し、その下にP2を表示し、という具合です。
disptermsを使わない時、
もし指数式がA^Bのように表示するには広すぎるなら、
それはexpt (A, B)
(もしくはA^^Bの場合、ncexpt (A, B))のように現れます。
もし指数式がa^bのように表示するには広すぎるなら、
expt (a, b)
(もしくは、a^^bの場合、ncexpt (a, b)
のように現れます。
exptやncexptは入力では認識されません。
デフォルト値: true
exptdispflagがtrueの時、
Maximaは式を商を使って負の指数の式を表示します。
例:
(%i1) exptdispflag:true;
(%o1)                         true
(%i2) 10^-x;
                                1
(%o2)                          ---
                                 x
                               10
(%i3) exptdispflag:false;
(%o3)                         false
(%i4) 10^-x;
                                - x
(%o4)                         10
関数grindは
コンソールにMaximaへの入力に適した形でexprを印刷します。
grindはいつもdoneを返します。
exprが関数名やマクロ名の時、
grindは、名前だけでなく関数やマクロ定義を出力します。
stringも参照してください。
それは出力を印刷する代わりに文字列を返します。
grindは
stringの出力より若干読みやすい方法で
式を印刷しようとします。
変数grindがtrueの時、
stringやstringoutの出力は
grindのそれと同じフォーマットです;
そうでなければ、それらの関数の出力を特別にフォーマットしようとはしません。
変数grindのデフォルト値はfalseです。
grindは playbackの引数としても指定できます。
grindが存在する時、
playbackは grind関数と同じフォーマットで入力式を印刷します。
そうでなければ、入力式を特にフォーマットしようとはしません。
grindは引数を評価します。
例:
(%i1) aa + 1729;
(%o1)                       aa + 1729
(%i2) grind (%);
aa+1729$
(%o2)                         done
(%i3) [aa, 1729, aa + 1729];
(%o3)                 [aa, 1729, aa + 1729]
(%i4) grind (%);
[aa,1729,aa+1729]$
(%o4)                         done
(%i5) matrix ([aa, 17], [29, bb]);
                           [ aa  17 ]
(%o5)                      [        ]
                           [ 29  bb ]
(%i6) grind (%);
matrix([aa,17],[29,bb])$
(%o6)                         done
(%i7) set (aa, 17, 29, bb);
(%o7)                   {17, 29, aa, bb}
(%i8) grind (%);
{17,29,aa,bb}$
(%o8)                         done
(%i9) exp (aa / (bb + 17)^29);
                                aa
                            -----------
                                     29
                            (bb + 17)
(%o9)                     %e
(%i10) grind (%);
%e^(aa/(bb+17)^29)$
(%o10)                        done
(%i11) expr: expand ((aa + bb)^10);
         10           9        2   8         3   7         4   6
(%o11) bb   + 10 aa bb  + 45 aa  bb  + 120 aa  bb  + 210 aa  bb
         5   5         6   4         7   3        8   2
 + 252 aa  bb  + 210 aa  bb  + 120 aa  bb  + 45 aa  bb
        9        10
 + 10 aa  bb + aa
(%i12) grind (expr);
bb^10+10*aa*bb^9+45*aa^2*bb^8+120*aa^3*bb^7+210*aa^4*bb^6
     +252*aa^5*bb^5+210*aa^6*bb^4+120*aa^7*bb^3+45*aa^8*bb^2
     +10*aa^9*bb+aa^10$
(%o12)                        done
(%i13) string (expr);
(%o13) bb^10+10*aa*bb^9+45*aa^2*bb^8+120*aa^3*bb^7+210*aa^4*bb^6\
+252*aa^5*bb^5+210*aa^6*bb^4+120*aa^7*bb^3+45*aa^8*bb^2+10*aa^9*\
bb+aa^10
(%i14) cholesky (A):= block ([n : length (A), L : copymatrix (A),
  p : makelist (0, i, 1, length (A))], for i thru n do
  for j : i thru n do
  (x : L[i, j], x : x - sum (L[j, k] * L[i, k], k, 1, i - 1),
  if i = j then p[i] : 1 / sqrt(x) else L[j, i] : x * p[i]),
  for i thru n do L[i, i] : 1 / p[i],
  for i thru n do for j : i + 1 thru n do L[i, j] : 0, L)$
(%i15) grind (cholesky);
cholesky(A):=block(
         [n:length(A),L:copymatrix(A),
          p:makelist(0,i,1,length(A))],
         for i thru n do
             (for j from i thru n do
                  (x:L[i,j],x:x-sum(L[j,k]*L[i,k],k,1,i-1),
                   if i = j then p[i]:1/sqrt(x)
                       else L[j,i]:x*p[i])),
         for i thru n do L[i,i]:1/p[i],
         for i thru n do (for j from i+1 thru n do L[i,j]:0),L)$
(%o15)                        done
(%i16) string (fundef (cholesky));
(%o16) cholesky(A):=block([n:length(A),L:copymatrix(A),p:makelis\
t(0,i,1,length(A))],for i thru n do (for j from i thru n do (x:L\
[i,j],x:x-sum(L[j,k]*L[i,k],k,1,i-1),if i = j then p[i]:1/sqrt(x\
) else L[j,i]:x*p[i])),for i thru n do L[i,i]:1/p[i],for i thru \
n do (for j from i+1 thru n do L[i,j]:0),L)
デフォルト値: 10
ibaseは Maximaが読む整数の基数です。
ibaseは2から(十進数で)36までの任意の整数を割り当てられます。
ibaseが10よりも大きい時、
数値は十進数字0から9に加えて、
ibaseディジットに必要なアルファベットA, B, C, …で構成されます。
最初のディジットが0から9の時だけ文字はディジットとして解釈されます。
大文字小文字は区別されません。
許容される最も大きな基数36の数値は0から9までとAからZまでから構成されます。
ibaseの値がいくつでも、
整数が小数点で終了する時は基数10として解釈されます。
obaseも参照してください。
例:
ibase less than 10.
(%i1) ibase : 2 $ (%i2) obase; (%o2) 10 (%i3) 1111111111111111; (%o3) 65535
10より大きなibase。
最初のディジットが0から9までの時だけ文字はディジットとして解釈されます。
(%i1) ibase : 16 $ (%i2) obase; (%o2) 10 (%i3) 1000; (%o3) 4096 (%i4) abcd; (%o4) abcd (%i5) symbolp (abcd); (%o5) true (%i6) 0abcd; (%o6) 43981 (%i7) symbolp (0abcd); (%o7) false
整数が小数点で終了する時、基数10として解釈されます。
(%i1) ibase : 36 $ (%i2) obase; (%o2) 10 (%i3) 1234; (%o3) 49360 (%i4) 1234.; (%o4) 1234
式expr_1, ..., expr_nをコンソールに印刷出力として表示します。
ldispは
引数それぞれに中間式ラベルを割り当て、ラベルのリストを返します。
disp, display, ldisplayも参照してください。
例:
(%i1) e: (a+b)^3;
                                   3
(%o1)                       (b + a)
(%i2) f: expand (e);
                     3        2      2      3
(%o2)               b  + 3 a b  + 3 a  b + a
(%i3) ldisp (e, f);
                                   3
(%t3)                       (b + a)
                     3        2      2      3
(%t4)               b  + 3 a b  + 3 a  b + a
(%o4)                      [%t3, %t4]
(%i4) %t3;
                                   3
(%o4)                       (b + a)
(%i5) %t4;
                     3        2      2      3
(%o5)               b  + 3 a b  + 3 a  b + a
式expr_1, ..., expr_nをコンソールに印刷出力として表示します。
式それぞれは、
lhsがldisplayの引数の1つで、rhsがその値の、
形式lhs = rhsの等式として表示されます。
典型的には引数それぞれは変数です。
ldispは式それぞれに中間式ラベルを割り当て、ラベルのリストを返します。
例:
(%i1) e: (a+b)^3;
                                   3
(%o1)                       (b + a)
(%i2) f: expand (e);
                     3        2      2      3
(%o2)               b  + 3 a b  + 3 a  b + a
(%i3) ldisplay (e, f);
                                     3
(%t3)                     e = (b + a)
                       3        2      2      3
(%t4)             f = b  + 3 a b  + 3 a  b + a
(%o4)                      [%t3, %t4]
(%i4) %t3;
                                     3
(%o4)                     e = (b + a)
(%i5) %t4;
                       3        2      2      3
(%o5)             f = b  + 3 a b  + 3 a  b + a
デフォルト値: 79
linelはコンソールディスプレイの仮定された(文字単位の)幅です。
linelはユーザーによって任意の値に割り当てられます。
非常に小さい値や非常に大きな値は実用的ではありませんが。
エラーメッセージやdescribeの出力のように、
Maximaの組み込み関数が表示するテキストはlinelの影響を受けません。
デフォルト値: false
lispdispがtrueの時、
Lispシンボルはクエスチョンマーク?を先頭文字として表示されます。
そうでなければ、Lispシンボルは先頭文字を持ちません。
例:
(%i1) lispdisp: false$ (%i2) ?foo + ?bar; (%o2) foo + bar (%i3) lispdisp: true$ (%i4) ?foo + ?bar; (%o4) ?foo + ?bar
デフォルト値: true
negsumdispflagがtrueの時、
x - yは - y + xでなくx - yと表示されます。
falseに設定すると、
2つの式の違いに関する表示での特殊なチェックがされないようになります。
1つの応用は、例えば、a + %i*bとa - %i*bを同じ表示にすることです。
デフォルト値: 10
obaseはMaximaが表示する整数の基数です。
obaseは2から(十進数で)36までの任意の整数を割り当てられます。
obaseが10よりも大きい時、
数値は十進数字0から9に加えて、
必要な大文字アルファベットA, B, C, ...で構成されます。
もし先頭ディジットがそうでなければ文字なら、0ディジットが先頭に表示されます。
許容される最も大きな基数36の数値は0から9までとAからZまでから構成されます。
ibaseも参照してください。
例:
(%i1) obase : 2; (%o1) 10 (%i2) 2^8 - 1; (%o10) 11111111 (%i3) obase : 8; (%o3) 10 (%i4) 8^8 - 1; (%o4) 77777777 (%i5) obase : 16; (%o5) 10 (%i6) 16^8 - 1; (%o6) 0FFFFFFFF (%i7) obase : 36; (%o7) 10 (%i8) 36^8 - 1; (%o8) 0ZZZZZZZZ
デフォルト値: false
pfeformatがtrueの時、
整数の比は斜線(スラッシュ)文字で表示され、
整数分母nは掛け算項1/nとして先に表示されます。
(%i1) pfeformat: false$
(%i2) 2^16/7^3;
                              65536
(%o2)                         -----
                               343
(%i3) (a+b)/8;
                              b + a
(%o3)                         -----
                                8
(%i4) pfeformat: true$ 
(%i5) 2^16/7^3;
(%o5)                       65536/343
(%i6) (a+b)/8;
(%o6)                      1/8 (b + a)
デフォルト値: false
powerdispがtrueの時、
べきを増やす順に項を使って和が表示されます。
例えば、
多項式は切り詰められたべき級数として表示され、
最初に定数項最後に最高次項となります。
デフォルトでは和の項はべきを減らす順に表示されます。
expr_1, …, expr_nを1つ1つ、左から右へ評価し、 コンソールディスプレイの左端から表示します。
printが返す値は最後の引数の値です。
printは中間式ラベルを生成しません。
display, disp, ldisplay, ldispも参照してください。
これらの関数は一行ずつ1つの式を表示しますが、
printは一行に2つ以上の式を表示しようとします。
ファイルの中身を表示するには printfileを参照してください。
例:
(%i1) r: print ("(a+b)^3 is", expand ((a+b)^3), "log (a^10/b) is",
      radcan (log (a^10/b)))$
            3        2      2      3
(a+b)^3 is b  + 3 a b  + 3 a  b + a  log (a^10/b) is 
                                              10 log(a) - log(b) 
(%i2) r;
(%o2)                  10 log(a) - log(b)
(%i3) disp ("(a+b)^3 is", expand ((a+b)^3), "log (a^10/b) is",
      radcan (log (a^10/b)))$
                           (a+b)^3 is
                     3        2      2      3
                    b  + 3 a b  + 3 a  b + a
                         log (a^10/b) is
                       10 log(a) - log(b)
デフォルト値: true
sqrtdispflagがfalseの時、
sqrtを指数1/2で表示するようにします。
デフォルト値: false
stardispがtrueの時
掛け算はオペランドの間のアスタリスク*で表示されます。
デフォルト値: false
ttyoffがtrueの時、
出力式は表示されません。
出力式は計算され、ラベルに割り当てられます。
labelsを参照してください。
エラーメッセージやdescribeの出力のように、組み込みMaxima関数によって出力されたテキストは ttyoffの影響を受けません。
Previous: Functions and Variables for Command Line, Up: Command Line [Contents][Index]