Mathematica セッション
コマンドラインオプションと環境変数
| -pwfile | Mathematica パスワードファイル |
| -pwpath | Mathematica パスワードファイルサーチパス |
| -run | 起動するMathematica 入力(カーネルのみ) |
| -initfile | Mathematica 初期化ファイル |
| -initpath | 初期化ファイルサーチパス |
| -noinit | 初期化ファイルを使用しない |
| -mathlink | MathLink を通してのみ通信 |
Mathematica 実行プログラムの通常のコマンドラインオプション
ノートブックファイルをコマンドラインの引数として用い,
Mathematica フロントエンドを起動した場合は,そのノートブックが最初に選択されたノートブックとなる.その他の場合は新たなノートブックが作成される.
Mathematica カーネルおよびフロントエンドは,特定のウィンドウ環境でのみ有効なコマンドラインオプションを付け加えることが可能である.
| MATHINIT | Mathematica フロントエンドのコマンドラインオプションの環境変数 |
| MATHKERNELINIT | Mathematica カーネルのコマンドラインオプションの環境変数 |
| MATHEMATICA_BASE | $BaseDirectoryの設定 |
| MATHEMATICA_USERBASE | $UserBaseDirectoryの設定 |
環境変数
Mathematica はオペレーティングシステムの環境変数の値を読み,その値をコマンドラインオプションとして用いる.
初期化
Mathematica カーネル起動直後,以下の事項が実行される.
- -runオプションでカーネルへ渡されたMathematica コマンドの実行.
- システム全体のカーネルinit.mによるMathematica コマンドの実行.
- ユーザ指定の所にあるカーネルinit.mによるMathematica コマンドの実行.
- Autoloadディレクトリにあるinit.mおよびKernel/init.mのロード.
メインループ
Mathematica セッションはすべて以下のメインループを繰り返し実行する.
- $Pre関数が定義されていれば,入力式に適用する.
- Out[n]を割り当てて,すべてのフォーマット用のラッパーを除去.
MathLink を通して
Mathematica を外部プログラムから呼ぶ場合は,通常,上記とは異なる特別のメインループを作成する必要がある.
メッセージ
Mathematica セッション中,メッセージは
Messageへの明示的なコールまたは他の組込み関数実行中に生成される.
| f::name::lang | 特定言語でのメッセージ |
| f::name | デフォルトの言語でのメッセージ |
| General::name | 与えられた名前での一般メッセージ |
メッセージ名
メッセージの言語が指定されていない場合,
$Languageで指定された言語によるメッセージテキストを探す.
f::name が定義されていない場合は
General::name での定義を使用する.それでもメッセージが見付からない場合,
$NewMessageで定義された値が
f および
"name"に適用される.
Quiet[expr]は評価中にメッセージが出力されないようにしたままで
expr を評価する.
Off[message]により特定のメッセージを表示しないようにできる.
Checkの実行で,特定のメッセージが式評価中に生成されたかどうかが分かる.
$MessageListと
MessageList[n]は,
Mathematica セッションで指定された行の評価中に生成されたすべてのメッセージを記録する.
メッセージは
StringFormの最初の引数に使われる文字列として指定される.
$MessagePrePrintは文字列に変換される各式に適用される.
終了
| Exit[] または Quit[] | Mathematica を終了する |
| $Epilog | Mathematica が終了する前に評価するシンボル |
| $IgnoreEOF | ファイル末尾記号を受け取った時点でインタラクティブなMathematica セッションを終了するかどうか |
| end.m | Mathematica が終了したときに読み込むファイル |
Mathematica の終了
Mathematica セッションを終了するにはいくつかの方法がある.
Mathematica をインタラクティブに使っている場合は,入力行に
Exit[]か
Quit[]をタイプすると
Mathematica が終了できる.
ファイルから
Mathematica への入力を取っている場合,ファイルの最後に達した時点で
Mathematica は終了する.
Mathematica をインタラクティブに使っている場合でも,ファイル末尾文字(通常
Ctrl+d)を受け取ると終了する.これで
Mathematica が終了しないようにするには,
$IgnoreEOF=Trueを設定するとよい.
ネットワークライセンス管理
| シングルマシンライセンス | プロセスは常に特定のマシンで起動する必要がある |
| ネットワークライセンス | プロセスはネットワーク上の任意のマシンで起動することができる |
シングルマシンおよびネットワークライセンス
Mathematica は単一マシン上またはネットワークライセンスとして起動設定が可能である.ネットワークライセンスは
mathpassファイル中で
!name で始まる行に示されている.
name とは,ネットワークライセンスのサーバーマシン名である.
ネットワークライセンスは
Mathematica ライセンス管理プログラムである
mathlmで管理されおり,これはサーバマシン上で起動する.このプログラムはネットワークライセンスで
Mathematica が使用されている間は常に作動している必要がある.通常は
mathlmがシステムブートの際,自動的に実行するようセットアップをしてほしい.
| • コマンドラインから直接 .\mathlm とタイプする |
| • Windowsのサービスに mathlm を加える |
Microsoft Windows上でのネットワークライセンスマネージャの起動方法
| • Unixコマンドラインから直接 ./mathlm とタイプする |
| • 中央のシステム起動スクリプトに mathlm を起動する1行を加える |
UnixまたはMacintosh上でのネットワークライセンスマネージャの起動方法
mathlmをコマンドラインから直接起動しなければ,通常はバックグラウンドプロセスとなり,強制終了されるまで連続して作動する.すでに
mathlmプロセスが動作している場合は,別の
mathlmプロセスを起動しようとしても自動的に終了する.
| -logfile file | ライセンスサーバのアクションのログをfile に書く |
| -loglevel n | ログに記録される情報量のレベルを示す(1から4まで) |
| -logformat string | string で指定されたログ形式を使う |
| -language name | メッセージで使われる言語(デフォルトEnglish) |
| -pwfile file | 指定された mathpassファイルを使用する(デフォルト値では ./mathpass) |
| -timeout n | n 時間経過した中断されているMathematica ジョブの終了を許可する |
| -restrict file | 指定された制限ファイルを使用する |
| -mathid | ライセンスサーバのMathIDを出力して終了する |
| -foreground | mathlm がフォアグランドで起動した状態で stdoutに出力する |
| -install | mathlm をWindowsのサービスに加える(Microsoft Windows版のみ) |
| -uninstall | mathlm をWindowsのサービスから削除する(Microsoft Windows版のみ) |
mathlmのコマンドラインオプション例
mathlmについてのより詳しい情報は,
「ネットワークライセンスのシステム管理」を参照のこと.
| monitorlm | ネットワークライセンスの状況をモニターするプログラム |
| monitorlm name | ライセンスサーバ name のアクティビティをモニターする |
ネットワークライセンスの状況のモニター
monitorlmがWebブラウザをスタートできる環境で実行されている場合は,自動的にHTML出力がブラウザに生成される.その他の場合はテキストが生成される.
| -file file | 出力をファイルに書き出す |
| -format spec | 指定されたフォーマットで出力を書き出す.フォーマットはtext,html, cgiのいずれかである |
| -template file | 出力のテンプレートとして指定されたファイルを使う |
monitorlmのコマンドラインオプション例