Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica >

Mathematica セッション

コマンドラインオプションと環境変数

-pwfileMathematica パスワードファイル
-pwpathMathematica パスワードファイルサーチパス
-run起動するMathematica 入力(カーネルのみ)
-initfileMathematica 初期化ファイル
-initpath初期化ファイルサーチパス
-noinit初期化ファイルを使用しない
-mathlinkMathLink を通してのみ通信

Mathematica 実行プログラムの通常のコマンドラインオプション

ノートブックファイルをコマンドラインの引数として用い,Mathematica フロントエンドを起動した場合は,そのノートブックが最初に選択されたノートブックとなる.その他の場合は新たなノートブックが作成される.
Mathematica カーネルおよびフロントエンドは,特定のウィンドウ環境でのみ有効なコマンドラインオプションを付け加えることが可能である.
MATHINITMathematica フロントエンドのコマンドラインオプションの環境変数
MATHKERNELINITMathematica カーネルのコマンドラインオプションの環境変数
MATHEMATICA_BASE$BaseDirectoryの設定
MATHEMATICA_USERBASE$UserBaseDirectoryの設定

環境変数

Mathematica はオペレーティングシステムの環境変数の値を読み,その値をコマンドラインオプションとして用いる.

初期化

Mathematica カーネル起動直後,以下の事項が実行される.
  • ライセンス管理実行.
  • -runオプションでカーネルへ渡されたMathematica コマンドの実行.
  • システム全体のカーネルinit.mによるMathematica コマンドの実行.
  • ユーザ指定の所にあるカーネルinit.mによるMathematica コマンドの実行.
  • Autoloadディレクトリにあるinit.mおよびKernel/init.mのロード.
  • メインループの実行開始.

メインループ

Mathematica セッションはすべて以下のメインループを繰り返し実行する.
  • 入力を読む.
  • すでに定義されている場合,$PreRead関数を入力列に適用.
  • 必要に応じてシンタックスエラーを出力.
  • シンタックスエラーがある場合,$SyntaxHandler関数を適用.
  • $Pre関数が定義されていれば,入力式に適用する.
  • In[n]の割当て.
  • 式の評価.
  • すでに定義されている場合,$Post関数を適用.
  • Out[n]を割り当てて,すべてのフォーマット用のラッパーを除去.
  • すでに定義されている場合,$PrePrint関数を適用.
  • Nullでなければ式を出力.
  • 未完了のすべての中止命令をクリア.
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の実行で,特定のメッセージが式評価中に生成されたかどうかが分かる.$MessageListMessageList[n]は,Mathematica セッションで指定された行の評価中に生成されたすべてのメッセージを記録する.
メッセージはStringFormの最初の引数に使われる文字列として指定される.$MessagePrePrintは文字列に変換される各式に適用される.

終了

Exit[] または Quit[]Mathematica を終了する
$EpilogMathematica が終了する前に評価するシンボル
$IgnoreEOFファイル末尾記号を受け取った時点でインタラクティブなMathematica セッションを終了するかどうか
end.mMathematica が終了したときに読み込むファイル

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 stringstring で指定されたログ形式を使う
-language nameメッセージで使われる言語(デフォルトEnglish
-pwfile file指定された mathpassファイルを使用する(デフォルト値では ./mathpass
-timeout nn 時間経過した中断されているMathematica ジョブの終了を許可する
-restrict file指定された制限ファイルを使用する
-mathidライセンスサーバのMathIDを出力して終了する
-foregroundmathlm がフォアグランドで起動した状態で stdoutに出力する
-installmathlm をWindowsのサービスに加える(Microsoft Windows版のみ)
-uninstallmathlm をWindowsのサービスから削除する(Microsoft Windows版のみ)

mathlmのコマンドラインオプション例

mathlmについてのより詳しい情報は,「ネットワークライセンスのシステム管理」を参照のこと.
monitorlmネットワークライセンスの状況をモニターするプログラム
monitorlm nameライセンスサーバ name のアクティビティをモニターする

ネットワークライセンスの状況のモニター

monitorlmがWebブラウザをスタートできる環境で実行されている場合は,自動的にHTML出力がブラウザに生成される.その他の場合はテキストが生成される.
-file file出力をファイルに書き出す
-format spec指定されたフォーマットで出力を書き出す.フォーマットはtexthtmlcgiのいずれかである
-template file出力のテンプレートとして指定されたファイルを使う

monitorlmのコマンドラインオプション例

Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team