[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14 その他


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.1 ctrl

ctrl("switch"[,obj])

:: 環境設定

return

設定されている値

switch

スイッチ名

obj

パラメタ

参照

cputime, tstart, tstop, output, pari, setbprec, setprec, eval, deval.

ChangeLog


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.2 debug

debug

:: デバッグモードに入る.

[1] debug;
(debug) quit
0
[2] 

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.3 error

error(message)

:: プログラム中で強制的にエラーを発生させる.

message

文字列

% cat mod3
def mod3(A) {
        if ( type(A) >= 2 )
                error("invalid argument");
        else
                return A % 3;
}
end$
% asir
[0] load("mod3");
1
[3] mod3(5);
2
[4] mod3(x);
invalid argument
stopped in mod3 at line 3 in file "./mod3"
3                       error("invalid argument");
(debug) print A
A = x
(debug) quit
return to toplevel
[4] 
参照

debug.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.4 help

help(["function"])

:: 函数の説明を表示する.

return

0

function

函数名


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.5 time

time()

:: セッション開始から現在までの CPU 時間および GC 時間を表示する

return

リスト

[72] T0=time();
[2.390885,0.484358,46560,9.157768]
[73] G=hgr(katsura(4),[u4,u3,u2,u1,u0],2)$
[74] T1=time();
[8.968048,7.705907,1514833,63.359717]
[75] ["CPU",T1[0]-T0[0],"GC",T1[1]-T0[1]]; 
[CPU,6.577163,GC,7.221549]
参照

cputime, tstart, tstop, currenttime.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.6 cputime, tstart, tstop

cputime(onoff)

:: 引数が 0 ならば cputime の表示を止める. それ以外ならば表示を行う.

tstart()

:: CPU time 計測開始.

tstop()

:: CPU time 計測終了および表示.

return

0

onoff

フラグ (任意)

[49] tstart$
[50] fctr(x^10-y^10);
[[1,1],[x+y,1],[x^4-y*x^3+y^2*x^2-y^3*x+y^4,1],[x-y,1],
[x^4+y*x^3+y^2*x^2+y^3*x+y^4,1]]
[51] tstop$
80msec + gc : 40msec
参照

time, currenttime, ctrl.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.7 timer

timer(interval,expr,val)

:: 制限時間つきで計算を実行する.

return

結果

interval

制限時間 (秒)

expr

計算する式

val

タイマによる中断時の戻り値

[0] load("cyclic");
1
[10] timer(10,dp_gr_main(cyclic(7),[c0,c1,c2,c3,c4,c5,c6],1,1,0),0);
interval timer expired (VTALRM)
0
[11] 

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.8 currenttime

currenttime()

:: 現在時刻を取得

return

1970年1月1日0時0分0秒からの経過秒数.

[0] currenttime();
1071639228
[1] 

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.9 sleep

sleep(interval)

:: プロセスの実行を停止

return

1

interval

停止時間 (マイクロ秒)

[0] sleep(1000);
1
[1] 

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.10 heap

heap()

:: 現在のヒープの大きさを返す. (単位:バイト)

return

自然数

% asir -adj 16  
[0] load("fctrdata")$
0
[97] cputime(1)$
0msec
[98] heap();
524288
0msec
[99] fctr(Wang[8])$
3.190sec + gc : 3.420sec
[100] heap();
1118208
0msec
[101] quit;
% asir
[0] load("fctrdata")$   
0
[97] cputime(1)$   
0msec
[98] heap();    
827392
0msec
[99] fctr(Wang[8])$
3.000sec + gc : 1.180sec
[100] heap();       
1626112
0msec
[101] quit;
参照

コマンドラインオプション.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.11 version

version()

:: Asir のバージョンを返す.

return

自然数

[0] version();
991214

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.12 shell

shell(command)

:: command をシェルコマンドとして実行する.

return

自然数

command

文字列

[0] shell("ls");
alg           da            katsura       ralg          suit
algt          defs.h        kimura        ratint        test
alpi          edet          kimura3       robot         texput.log
asir.o        fee           mfee          sasa          wang
asir_symtab   gr            mksym         shira         wang_data
base          gr.h          mp            snf1          wt
bgk           help          msubst        solve
chou          hom           p             sp
const         ifplot        proot         strum
cyclic        is            r             sugar
0
[1] 

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.13 map

map(function,arg0,arg1,...)

:: リスト, 配列の各要素に函数を適用する.

return

arg0 と同じ型のオブジェクト

function

函数名

arg0

リスト, ベクトル, 行列

arg1 ...

任意 (残りの引数)

[82] def afo(X) { return X^3; }
[83] map(afo,[1,2,3]);
[1,8,27]

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.14 flist

flist([mname])

:: 現在定義されている函数名を文字列リストとして返す.

mname

モジュール名

return

文字列のリスト

[77] flist();
[defpoly,newalg,mainalg,algtorat,rattoalg,getalg,alg,algv,...]

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.15 delete_history

delete_history([index])

:: ヒストリを消去する.

return

0

index

消去したいヒストリの番号

[0] (x+y+z)^100$
[1] @0;
...
[2] delete_history(0);
[3] @0;
0

[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.16 get_rootdir

get_rootdir()

:: Asir のルートディレクトリ名を取り出す

return

文字列


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.17 getopt

getopt([key])

:: オプションの値を返す.

return

オブジェクト

参照

オプション指定, type.


[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

6.14.18 getenv

getenv(name)

:: 環境変数の値を返す.

return
name

文字列

[0] getenv("HOME");
/home/pcrf/noro

[ << ] [ < ] [?] [ > ] [ >> ]

?????10? 21, 2017?texi2html 5.0????????????