====================================== モデル二元系の状態図計算 ======================================  モデル二元系の状態図計算のためには仮想的元素 A, B の定義,相 L および α の定義,A-B 二元系の L 相および α相のエネルギーを記述するのに必要な 6 個の熱力学パラメータ :math:`G_A^L, G_B^L, G_A^α, G_B^α, L^L, L^α` の入力が必要である。 これらの作業は GIBBS_ENERGY_SYSTEM モジュールで行う。  用いるコマンドは以下のものである。あ | 仮想的元素 A, B の定義 : ENTER_ELEMENT, AMEND_ELEMENT_DATA | 相 L および α の定義 : ENTER_PHASE | 熱力学パラメータの追加 : ENTER_PARAMETER 元素の定義 ===============  仮想的な元素として A と ( B はホウ素として実在するためここでは ) X を定義する。 .. code-block:: none GES: E-EL [ENTER_ELEMENT] ELEMENT NAME: A X ← 英字 2文字以内で,最初は大文字 一度に複数入力してよい - - - - - - - - - - - → 短縮形 GES: E-EL A X  続いて,各成分の基準とする相を定義する。 ここでは A, X 共 ALPHA 相とする。実在する成分では室温 ( 298.15 K ) において安定な状態を基準相とする。 成分 A についての例を次に示す。 .. code-block:: none GES: A-E-D [AMEND_ELEMENT_DATA] ELEMENT NAME: A NEW STABLE ELEMENT REFERENCE /UNKNOWN/: ALPHA NEW ATOMIC MASS /0/: 1 ← 仮想成分なので,適当な正の値を用いる NEW H(298.15)-H(0) /0/: NEW S(298.15) /0/: Default element reference state symbol index /1/: - - - - - - - - - - - → 短縮形 GES: A-E-D A ALPHA 1 0 0 , , 相の定義 (マニュアル「8.3.3. 新しい相を追加する」参照) ========================================================  A-X 二元系における LIQ 相 ( L 相) と ALPHA 相を定義する。LIQ の例は次の通り。 .. code-block:: none GES: E-PH [ENTER_PHASE] NAME OF PHASE: LIQ ← 英字で始まり,英字,数字および "_"(下線) から成る文字列 TYPE CODE: ← 通常は [RETURN] でよい NUMBER OF SUBLATTICES /1/: ← 考慮する副格子数 NAME OF CONSTITUENT: A X ← 格子を占める成分の並び NAME OF CONSTITUENT: ← 最後は [RETURN] または ";"(セミコロン) WILL YOU ADD CONSTITUENTS LATER /NO/: ← 通常は [RETURN] DO YOU WANT A LIST OF POSSIBLE PARAMETERS /NO/: Y G(LIQ,A;0)-G(ALPHA,A;0) ← "Y" とすると,計算に必要なパラメータのリストが表示される G(LIQ,A,X;0) つまり,表示された数のパラメータを登録する必要がある G(LIQ,X;0)-G(ALPHA,X;0) 2つ目の G(LIQ,A,X;0) は L(LIQ,A,X;0) と同じ - - - - - - - - - - - → 短縮形 GES: E-PH LIQ , , ,A X; , , Y 3. 熱力学パラメータの追加 ===========================  (マニュアル「8.3.4. データベースにないパラメータを追加したり,修正する」参照)  :math:`G_A^L -G_A^α = R ( 2340-T )` の入力例を次に示す :math:`(T_A^m = 2340 K )` 。 ガス定数 R ( 8.31451 J/mol/K ) は GIBBS_ENERGY_SYSTEMモジュール内部で定義されている。 .. code-block:: none GES: E-PA [ENTER_PARAMETER] PARAMETER: G(LIQ,A;0) ← 追加するパラメータ名 G(LIQ,A;0)-G(ALPHA,A;0) ← 確認の表示 (この例では基準状態との差で入力) LOW TEMPERATURE LIMIT /298.15/: ← パラメータ関数の下限温度 FUNCTION: 2340*R-R*T; ← 関数入力 R(2340-T) の例 (括弧は外しておく)。 最後に ";" HIGH TEMPERATURE LIMIT /6000/: ← パラメータ関数の上限温度 ANY MORE RANGES /N/: ← 別の温度範囲での関数があるときは "Y" - - - - - - - - - - - → 短縮形 GES: E-PA G(LIQ,A;0), ,2340*R-R*T; , , ,  なお,値がゼロの G(ALPHA,A;0) つまり :math:`G_A^α` は入力しなくてよい( :math:`G_B^α` も )。  :math:`L^L = 0.5*R*2340` の入力例は次の通り。 数値の部分は予め 1170*R と計算しておく。 .. code-block:: none GES: E-PA [ENTER_PARAMETER] PARAMETER: L(LIQ,A,X;0) ← 追加するパラメータ名 L(LIQ,A,X;0) ← 確認の表示 LOW TEMPERATURE LIMIT /298.15/: ← パラメータ関数の下限温度 FUNCTION: 1170*R; ← 関数入力  0.5*R*2340 の例 ( 0.5*2340 は計算しておく)。 最後に ";" HIGH TEMPERATURE LIMIT /6000/: ← パラメータ関数の上限温度 ANY MORE RANGES /N/: - - - - - - - - - - - → 短縮形 GES: E-PA L(LIQ,A,X;0), , 1170*R; , , ,  同様にして,すべてのパラメータを入力する。  なお、既に登録したパラメータの一部を修正するためとしては ``AMEND_PARAMETER`` コマンドがある。 このコマンドの編集モードでは、修正するために必要な最低限の機能を備えた簡易ライン・エディタで作業する(マニュアル「8.3.4. データベースにないパラメータを追加したり、修正する」参照)。 数文字程度の修正・変更の場合は、一部を書き換える ``AMEND_PARAMETER`` コマンドの方が効率よく作業できる。 しかし、初心者には使い難いと思うので、全部を書き換える ``ENTER_PARAMETER`` コマンドを用いる方がよいでしょう。 まとめ =====================  モデル二元系の状態図計算の課題を実行するコマンドの流れをまとめると以下のようになります。  なお、この課題では STEP_1 から STEP_4 くらいまでは TCMマクロファイル化しても有効ですが、STEP_5 から STEP_7は合金系(:math:`L^L` と :math:`L^α` の組合せ)によって手順や入力データが異なってくるため、(かなり高度なテクニックを使いこなせれば別ですが) マクロファイルを用いることは必ずしも効率よくすることにはならないでしょう。 .. image:: image/model-bin/all_steps.jpg :scale: 35% :align: center