| [ < ] | [ > ] | [ << ] | [上] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
| 32.1 Introduction for Runtime Environment | ||
| 32.2 Interrupts | ||
| 32.3 Functions and Variables for Runtime Environment |
| [ < ] | [ > ] | [ << ] | [上] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
maxima-init.macは、 Maximaがスタートする時自動的にロードされるファイルです。
自分の Maxima環境をカスタマイズするために
maxima-init.macを使うことができます。
maxima-init.macは、もし存在するなら、
関数 file_searchが検索する任意のディレクトリで大丈夫ですが、
通常は maxima_userdirで名付けられたディレクトリの中に置かれます。
以下は maxima-init.macファイルの例です:
setup_autoload ("specfun.mac", ultraspherical, assoc_legendre_p);
showtime:all;
|
この例では、 setup_autoloadはMaximaに
もし関数 (ultraspherical,
assoc_legendre_p)のいずれかがコールされた時まだ定義されていなかったら、
指定されたファイル (specfun.mac)をロードするように命じます。
このように関数をコールする前にファイルをロードすることを覚えておく必要はありません。
文 showtime: allは Maximaに showtime変数を設定することを命じます。
maxima-init.macファイルは他の任意の割り当てや Maxima文を含むことができます。
Categories: Session management
| [ < ] | [ > ] | [ << ] | [上] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
ユーザーは、時間のかかる計算を ^C (control-C)文字で止めることができます。 デフォルトの動作は、計算を止めて、別のユーザープロンプトを印字することでです。 この場合、止められた計算の再開することはできません。
もし
:lisp (setq *debugger-hook* nil) |
を実行することによって、
Lisp変数 *debugger-hook*が nilに設定されているなら、
^Cを受け取ると、Maximaは Lispデバッガに入り、
ユーザーは Lisp環境を検査するためにデバッガを使うことができます。
止められた計算は Lispデバッガの中で、
continueを入力することで、再開することができます。
(計算を完了まで走らせる以外に)
Lispデバッガから Maximaに戻る方法は Lispのバージョンそれぞれで異なります。
Unixシステム上では、 文字^Z (control-Z)は Maximaが完全に止まるようにし、
制御はシェルスクリプトに戻ります。
fgコマンドが Maximaが止められた点から再開するようにします。
Categories: Console interaction
| [ < ] | [ > ] | [ << ] | [上] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
maxima_tempdirは
Maximaが一時的なファイルを生成するディレクトリを指名します。
特に、プロットのための一時ファイルが
maxima_tempdirに生成されます。
maxima_tempdirの初期値は、
もし Maximaが置くことができるならユーザーのホームディレクトリです;
そうでないなら、Maximaは適切なディレクトリについて推量します。
maxima_tempdirはディレクトリを指名する文字列に割り当てられます。
Categories: Global variables
maxima_userdirは、
Maximaが Maximaや Lispファイルを見つけるために検索するディレクトリを指名します。
(Maximaは他のディレクトリも検索します;
file_search_maximaと file_search_lispが完全なリストです。)
maxima_userdirの初期値は、
もし Maximaが置くことができなら
ユーザーのホームディレクトリのサブディレクトリです;
そうでないなら Maximaは適切なディレクトリについて推量します。
maxima_userdirはディレクトリを指名する文字列に割り当てられます。
しかしながら、
maxima_userdirへの割り当ては、自動的には
file_search_maximaと file_search_lispを変えません;
それらの変数は別々に変更しなければいけません。
Categories: Global variables
Maximaの記憶装置とスタックマネージメントの状態の描写を印字します。
roomは同じ名前の Lisp関数をコールします。
room ()は適度の描写を印字します。
room (true)は言葉数の多い描写を印字します。
room (false)は簡潔な描写を印字します。
Categories: Debugging
keywordがシンボル featureの時、
itemがシステムフィーチャのリスト上に追加されます。
sstatus (keyword, item)が実行された後、
status (feature, item)は trueを返します。
もし keywordがシンボル nofeatureなら、
itemはシステムフィーチャのリストから削除されます。
これはパッケージ作者が、搭載したフィーチャの追跡をするのに役に立つかもしれません。
statusも参照してください。
Categories: Programming
feature)feature, item)いくつかのシステム依存のフィーチャの存在と不在についての情報を返す。
status (feature)はシステムフィーチャのリストを返します。
これらは Lispのバージョン、オペレーティングシステムのタイプなどを含みます。
リストは1つの Lispタイプからもう1つに変わるかもしれません。
status (feature, item)は、
もし itemが status (feature)が返す項目のリスト上にあるなら、
trueを返し、そうでないなら falseを返します。
statusは引数 itemをクォートします。
クォート-クォート演算子 ''はクォーテーションに優先されます。
名前がハイフンのように特殊文字を含むフィーチャは、
文字列引数として与えられなければいけません。例えば、
status (feature, "ansi-cl")。
sstatusも参照してください。
変数 featuresは数式に適用されるフィーチャのリストを含みます。
もっと情報を知るには、 featuresと featurepを参照してください。
Categories: Programming
別のプロセスとして commandを実行します。
コマンドは実行のためデフォルトのシェルに渡されます。
systemはオペレーティングシステムすべてではサポートされませんが、
一般に Unixと Unixライクな環境では存在します。
_hist.outは、
xgraphを使ってバーグラフとしてプロットしたい頻度のリストだと仮定します。
(%i1) (with_stdout("_hist.out",
for i:1 thru length(hist) do (
print(i,hist[i]))),
system("xgraph -bar -brw .7 -nl < _hist.out"));
|
プロットをバックグラウンドで( Maximaに制御を戻すように)させるようにし、 終了した後、一次ファルを削除するようにするためには以下のようにします:
system("(xgraph -bar -brw .7 -nl < _hist.out; rm -f _hist.out)&")
|
出力行 %o1, %o2, %o3,
…を計算するために使った時間のリストを秒で返します。
返された時間は内部計算時間の Maximaの概算であって、経過時間ではありません。
timeは出力行変数にだけ適用されます;
他の変数に関して timeは unknownを返します。
Maximaに出力行それぞれに計算時間と経過時間を印字させるには、
showtime: trueを設定してください。
Categories: Debugging
引数なしの timedate()は現在時刻と日付を表す文字列を返します。
文字列は、フォーマット YYYY-MM-DD HH:MM:SS[+|-]ZZ:ZZを持ちます。
ここで、欄は、年、月、日、時、分、秒、時間と分のタイムゾーンオフセットです。
timedate(T)はフォーマット
YYYY-MM-DD HH:MM:SS[+|-]ZZ:ZZの文字列として時刻
Tを返します。
Tは absolute_real_timeが返すような
1990年1月1日の真夜中以来の秒数として解釈されます。
例:
引数なしの timedate()は現在時刻と日付を表す文字列を返します。
(%i1) d : timedate ();
(%o1) 2010-06-08 04:08:09+01:00
(%i2) print ("timedate reports current time", d) $
timedate reports current time 2010-06-08 04:08:09+01:00
|
引数ありの timedateは引数を表す文字列を返します。
(%i1) timedate (0); (%o1) 1900-01-01 01:00:00+01:00 (%i2) timedate (absolute_real_time () - 7*24*3600); (%o2) 2010-06-01 04:19:51+01:00 |
Categories: Time and date functions
協定世界時で1900年1月1日の深夜以来の秒数を返します。 戻り値は整数です。
elapsed_real_timeと elapsed_run_timeも参照してください。
例:
(%i1) absolute_real_time (); (%o1) 3385045277 (%i2) 1900 + absolute_real_time () / (365.25 * 24 * 3600); (%o2) 2007.265612087104 |
Categories: Time and date functions
Maximaがもっとも最近スタートしたか再スタートして以来の (1秒の小数を含む)秒数を返します。 戻り値は浮動小数点数です。
absolute_real_timeと elapsed_run_timeも参照してください。
例:
(%i1) elapsed_real_time (); (%o1) 2.559324 (%i2) expand ((a + b)^500)$ (%i3) elapsed_real_time (); (%o3) 7.552087 |
Categories: Time and date functions
Maximaがもっとも最近スタートしたか再スタートして以来 Maximaが計算に費やした(1秒の小数を含む)秒数の概算を返します。 戻り値は浮動小数点数です。
absolute_real_timeと elapsed_real_timeも参照してください。
例:
(%i1) elapsed_run_time (); (%o1) 0.04 (%i2) expand ((a + b)^500)$ (%i3) elapsed_run_time (); (%o3) 1.26 |
Categories: Time and date functions
| [ << ] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
この文書は市川 雄二によって2014年9月月15日にtexi2html 1.82を用いて生成されました。