=================================== 二相分離領域が存在する状態図の計算 ===================================  ここでは Cu-Ni 二元系状態図を例とします。 この系はほぼ全率固溶型の状態図で,液相と FCC_A1 相の二相が現れ,FCC_A1 相は低温で二相分離します。 ここでは主に前の Fe-C 二元系の状態図計算との相違点を中心に説明します。 DATABASE_RETRIEVAL モジュール ==============================  Fe-C 二元系状態図のときには,データベースに "KIT" を使いましたが,今回は "SSOL4" というデータベースを用いてみます。 データベースの変更は ``SWICH_DATABASE`` コマンドを用います。 また、どのようなデータベースが使えるのかを確認するのも ``SWITCH_DATABASE`` コマンドを使います。 .. code-block:: none TDB_KIT: SW [SWITCH_DATABASE] Use one of these databases KIT = KIT version Database for Alloys TCFE1 = TCS Steels/Fe-Alloys Database v1 SSOL4 = SGTE Alloy solution database v4 SSUB3 = SGTE Substance Database v3 : (中 略) PURE5 = SGTE Pure Element Database v5 KP = Kaufman binary database : (中 略) USER = User defined Database DATABASE NAME / KIT /: SSOL4 Current database: SGTE Alloy Solutions Database v4 VA DEFINED FCC_L102 FCC_L12 REJECTED ALNI_B2 A2_BCC2 BCC_B2 REJECTED GAS:G REJECTED IONIC_LIQUID:Y BI2O3_LIQUID:Y CORUNDUM:I REJECTED TDB_SSOL4: ← "TDB_KIT" が "TDB_SSOL4:" に変わっている - - - - - - - - - - - → 短縮形 TDB_KIT: SW SSOL4 これらデータベースの種類やその内容はシステムによって異なります。 一番下にある "USER" は,各ユーザが作成したデータベースを利用する場合に指定します。 では,前章 2.【合金状態図の計算手順】で学んだ方法で熱力学パラメータを取り込みます。 .. code-block:: none TDB_SSOL4: D-SYS CU NI [DEFINE_SYSTEM CU NI] CU NI DEFINED TDB_SSOL4: REJ P /A [REJECT PHASES /ALL] : (中 略) TDB_SSOL4: RES P LIQ FCC-A1 [RESTORE PHASES LIQUID FCC_A1] : (中 略) TDB_SSOL4: GET [GET_DATA] : (中 略) -OK- 次に POLY_3 モジュールへ行きます。 .. code-block:: none TDB_SSOL: GO P-3 [GOTO_MODULE POLY_3] POLY version 3.32 POLY_3: POLY_3 モジュール ==============================  Cu-Ni 二元系では FCC_A1 相が低温部で二相分離します。同一相が二相分離や三相分離と複数の組成に分離する場合に TC では "FCC_A1#1","FCC_A1#2" のように相名の後に "#1","#2" と枝番を付けて区別します。 枝番を省略した場合は "#1" と扱われます。 .. note ::  ver.R 以降の TC でデフォルトの計算方式 "Global Minimization" の設定を外していなければ,すぐに最初の一点計算「3.2.1 Global Minimization を用いる場合」に進んでください。 もしうまく行かない場合や "ver.R" よりも前のバージョンを使っている場合は,「3.2.2 Global Minimization を用いない場合」を参照してください。 Global Minimization を用いている場合 -------------------------------------------------------------------  まずは一点計算を行います。 二相分離する相を含む系を計算する場合は, その相がはっきりと二相分離する領域で一点計算を行ってみることが大切です。 .. code-block:: none POLY_3: S-C P=101325 N=1 T=400 X(NI)=.6  一点計算を行い,結果を見ると Cu 基の FCC_A1#1 相と Ni 基の FCC_A1#2 相とに分離しているかどうかを確認できます。 また ``LIST_EQUILIBRIUM`` コマンドのオプションに ``X`` を指定するとモル分率で表した組成で結果が出力されます。 .. code-block:: none POLY_3: L-E [LIST_EQUILIBRIUM] OUTPUT TO SCREEN OR FILE: / SCREEN /: Options / VWCS /: X Output from POLY_3, equilibrium number = 1, label A0 , database: SSOL4 Conditions: P=1.01325E5, N=1, T=400, X(NI)=0.6 DEGREES OF FREEDOM 0 Temperature 400.00 K ( 126.85 C), Pressure 1.013250E+05 Number of moles of components 1.00000E+00, Mass in grams 6.06324E+01 Total Gibbs energy -1.30298E+04, Enthalpy 3.14505E+03, Volume 6.06324E+01 Component Moles M-Fraction Activity Potential Ref.stat CU 4.0000E-01 4.0000E-01 1.4984E-02 -1.3971E+04 SER NI 6.0000E-01 6.0000E-01 2.4014E-02 -1.2402E+04 SER FCC_A1#2 Status ENTERED Driving force 0.0000E+00 Moles 5.6547E-01, Mass 3.3249E+01, Volume fraction 0.0000E+00 Moles fractions: NI 9.77464E-01 CU 2.25363E-02 FCC_A1#1 Status ENTERED Driving force 0.0000E+00 Moles 4.3453E-01, Mass 2.7383E+01, Volume fraction 0.0000E+00 Mole fractions: CU 8.91206E-01 NI 1.08794E-01 - - - - - - - - - - - → 短縮形 POLY_3: L-E , , X  この例では二相分離した両相とも平衡相となっていますが,これらの相がいつでも平衡相であるとは限りません。 片方あるいは両方とも非平衡状態の場合,目的の相が二相分離しているかどうかを確認するためには ``LIST_EQUILIBRIUM`` コマンドでオプションに ``P`` を指定します。 .. code-block:: none POLY_3: L-E , , P [LIST_EQUILIBRIUM , , P] Output from POLY_3, equilibrium number = 1, label A0 , database: SSOL4 Conditions: P=1.01325E5, N=1, T=400, X(NI)=0.6 DEGREES OF FREEDOM 0 Temperature 400.00 K ( 126.85 C), Pressure 1.013250E+05 Number of moles of components 1.00000E+00, Mass in grams 6.06324E+01 Total Gibbs energy -1.30298E+04, Enthalpy 3.14505E+03, Volume 6.06324E+01 Component Moles M-Fraction Activity Potential Ref.stat CU 4.0000E-01 4.0000E-01 1.4984E-02 -1.3971E+04 SER NI 6.0000E-01 6.0000E-01 2.4014E-02 -1.2402E+04 SER LIQUID Status ENTERED Driving force -2.8393E+00 Moles 0.0000E+00, Mass 0.0000E+00, Volume fraction 0.0000E+00 Moles fractions: CU 9.88105E-01 NI 1.18953E-02 FCC_A1#2 Status ENTERED Driving force 0.0000E+00 Moles 5.6547E-01, Mass 3.3249E+01, Volume fraction 0.0000E+00 Moles fractions: NI 9.77464E-01 CU 2.25363E-02 FCC_A1#1 Status ENTERED Driving force 0.0000E+00 Moles 4.3453E-01, Mass 2.7383E+01, Volume fraction 0.0000E+00 Mole fractions: CU 8.91206E-01 NI 1.08794E-01  この場合は LIQUID 相の Driving Force 値が負で準安定状態のため,最初の ``LIST_EQUILIBRIUM`` コマンドでは表示されていません。 オプション ``P`` は安定でない相の組成や不安定な度合い (Driving Force) などの情報を知ることができます。  この後は「2.4 POLY_3 モジュール」,「2.5 POST サブモジュール」で学んだ方法で計算軸の設定 (``SET_AXIS_VARIABLE``),状態図の計算 (``MAP``),作図 (``POST``) と順に行います。 Global Minimization を用いない場合 -------------------------------------------------------------------  ver.R より前のバージョンや、 ver.R 以降でも Global Minimization の設定を外している場合には,最初の計算の前に FCC_A1 相が二相分離することを TC に教える必要があります。 これには ``ADVANCED_OPTIONS`` コマンドの ``NEW_COMPOSITION_SET`` オプション (ver.R 以前では ``SPECIAL_OPTIONS`` コマンドの ``SET_MISCIBILITY_GAP`` オプション) を使います。  次の操作例は ``ADVANCED_OPTIONS`` コマンドの ``NEW_COMPOSITION_SET`` オプションを用いた場合を示しています。 ``SPECIAL_OPTIONS`` コマンドでのオプションは ``SET_MISCIBILITY_GAP`` となりますが,操作は同じです。 .. code-block:: none POLY_3: A-O [ADVANCED_OPTIONS] Which option? / STEP_AND_MAP /: NEW [NEW_COMPOSITION_SET] Phase with miscibility gap: FCC ← 対象とする相の名前 New highest set number / 2 /: Give for composition set 2 ← FCC#2 相について Major constituent(s) for sublattice 1: / CU NI /: NI ← 第一副格子の主成分の並び(置換型) Major constituent(s) for sublattice 2: / VA /: ← 第二副格子の主成分の並び(侵入型) You must set major constituents in the first "composition set" also Major constituent(s) for sublattice 1: / CU NI /: CU ← FCC_A1#1 相の第一副格子の主成分の並び Major constituent(s) for sublattice 2: / VA /: ← FCC_A1#1 相の第二副格子の主成分の並び (短縮形は二度に分けて入力します。) .. code-block:: none POLY_3: A-O NEW FCC 2 NI : ; You must set major constituents in the first "composition set" also POLY_3: A-O MAJ FCC 1 CU : ; (二つ目の短縮形については後で説明します)  質問項目にある ``New highest set number`` は,考慮する相の分離数を定義するもので,デフォルトとして表示される値は "現在の設定数+1" です。 二成分系での最大分離数は 2 ですが,多成分系ではさらに多くの分離数を考えなければならないことがあります。 続いての質問 ``Major constituent(s) for sublattice`` は,各副格子上の主成分を指定します。 よく分からない場合はとりあえずデフォルトのままでもよいでしょう。 なお,複数の成分を指定するときには .. code-block:: none Major constituent(s) for sublattice 1: / CU /: CU NI のように各成分間はスペースで区切って入力します。  ここで指定を間違ってしまった場合には、 ``ADVANCED_OPTIONS`` コマンドの ``MAJOR_CONSTITUENTS`` オプション (ver.R 以前では ``SPECIAL_OPTIONS`` コマンドの ``SET_MAJOR_CONSTITUENTS`` オプション) で修正します。 また,データベースによってはあらかじめ二相分離することを TC に指示する命令が埋め込まれている場合があります。 その場合も ``ADVANCED_OPTIONS`` コマンドの ``MAJOR_CONSTITUENTS`` オプションを使い,分離する各領域について主成分の指定を変更できます。 次の操作例は ``ADVANCED_OPTIONS`` コマンドの ``MAJOR_CONSTITUENTS`` オプションを用いた場合ですが, ``SPECIAL_OPTIONS`` の ``SET_MAJOR_CONSTITUENTS`` オプションでも同じ操作です。 .. code-block:: none POLY_3: A-O [ADVANCED_OPTIONS] Which option? / STEP_AND_MAP /: M-C [MAJOR_CONSTITUENTS] Phase name: FCC ← 対象とする相の名前 Composition set / 1 /: ← 対象とする相の番号 Major constituent(s) for sublattice 1: / NI /: CU Major constituent(s) for sublattice 2: / VA /: - - - - - - - - - - - → 短縮形 POLY_3: A-O MAJ FCC 1 CU : ; FCC#2 相についても同じように設定します。 POLY_3: A-O [ADVANCED_OPTIONS] Which option? / STEP_AND_MAP /: M-C [MAJOR_CONSTITUENTS] Phase name: FCC Composition set / 1 /: 2 ← FCC#2 相について Major constituent(s) for sublattice 1: / CU /: NI Major constituent(s) for sublattice 2: / VA /: - - - - - - - - - - - → 短縮形 POLY_3: A-O MAJ FCC 1 NI : ;  ただし,相#1,相#2,... は元々同じ相であり,同じ Gibbsエネルギー関数を持つので,計算の途中で分離相の間で主成分が入れ替わっても区別がつきません。 しかし,主成分の入れ替わりは多くの場合あまり気にする必要ありません。  最初の一点計算は,はっきりと二相分離する条件を選んで行うことが重要です。 .. code-block:: none POLY_3: S-C P=101325 N=1 T=400 X(NI)=.6  また ``COMPUTE_EQUILIBRIUM`` コマンドを実行する前に ``SET_ALL_START_VALUES`` コマンドを使って FCC_A1#1,FCC_A1#2 両相の初期組成を積極的に偏らせると計算がスムーズに進み易いです。 .. code-block:: none POLY_3: S-A-S [SET_ALL_START_VALUES] Automatic start values for phase constituents? / N /: Should LIQUID be stable? / N /: Major constituent(s): * ← 現在のままでよいときは " * " とします Should FCC_A1 be stable? / N /: Y ← FCC_A1#1 は安定と仮定 (どれか一つの相は "Y" とします) Major constituent(s) / * /: NONE ← 格子占有率で入力したいときは "NONE" とします Y(FCC_A1,CU) / 1 /: 0 Y(FCC_A1,NI) / 1 /: 1 ← Ni基としている Should FCC_A1#2 be stable? / N /: Major constituent(s): ← デフォルトが表示されないときは "RETURN" で格子占有率の入力となる Y(FCC_A1#2,CU) / 1 /: 1 ← Cu基としている Y(FCC_A1#2,NI) / 1 /: 0  ここで例えば Y(FCC_A1#2,CU) とは FCC_A1#2 相における Cu の格子占有率 (site fraction) のことです。 もし Cu が第二副格子にも入る場合には,"CU#2" と成分名に副格子番号を付けて区別します。 なお "Major constituent(s):" に対しては .. code-block:: none Major constituent(s): CU のように主成分を名前で指示することもできますが,二相分離や次章で説明する規則化を伴う計算の場合は格子占有率で与える方がうまく行きます。 もし格子占有率で与えたいときに .. code-block:: none Major constituent(s) / CU /: のようにデフォルトとして元素名が表示された場合には "NONE" を入力することで格子占有率を受け付ける状態になります。  一度 COMPUTE_EQUILIBRIUM した後で ``SET_START_CONSTITUTION`` コマンドで初期組成を変更することもできます。 .. code-block:: none POLY_3: S-S-C [SET_START_CONSTITUTION] Phase name: FCC ← 対象相は FCC#1 Y(FCC_A1,CU) / 1 /: .01 Y(FCC_A1,NI) / 1 /: .99  一点計算を行い,結果を ``LIST_EQUILIBRIUM`` で確認します。 .. code-block:: none POLY_3: L-E [LIST_EQUILIBRIUM] OUTPUT TO SCREEN OR FILE: / SCREEN /: Options / VWCS /: X Output from POLY_3, equilibrium number = 1, label A0 , database: SSOL4 Conditions: P=1.01325E5, N=1, T=400, X(NI)=0.6 DEGREES OF FREEDOM 0 Temperature 400.00 K ( 126.85 C), Pressure 1.013250E+05 Number of moles of components 1.00000E+00, Mass in grams 6.06324E+01 Total Gibbs energy -1.30298E+04, Enthalpy 3.14505E+03, Volume 6.06324E+01 Component Moles M-Fraction Activity Potential Ref.stat CU 4.0000E-01 4.0000E-01 1.4984E-02 -1.3971E+04 SER NI 6.0000E-01 6.0000E-01 2.4014E-02 -1.2402E+04 SER FCC_A1#2 Status ENTERED Driving force 0.0000E+00 Moles 5.6547E-01, Mass 3.3249E+01, Volume fraction 0.0000E+00 Moles fractions: NI 9.77464E-01 CU 2.25363E-02 FCC_A1#1 Status ENTERED Driving force 0.0000E+00 Moles 4.3453E-01, Mass 2.7383E+01, Volume fraction 0.0000E+00 Mole fractions: CU 8.91206E-01 NI 1.08794E-01 - - - - - - - - - - - → 短縮形 POLY_3: L-E , , X  この例ではオプションに "X" を指定して相の組成をモル分率で表しています。 二相分離していることが確認できれば,後はこれまでの状態図計算と同じ手順を行います。  なお ver.R 以前の TC ではこのまま ``MAP`` コマンドで状態図を計算しても, Cu-Ni 二元系の FCC_A1 単相領域と二相分離領域との境界線 (二相分離線) しか計算されません。 これは 旧バージョンの ``MAP`` コマンドでは一点計算の結果を開始点として相境界を探索し,最初の相境界(点)から連続する相境界線のみを計算するためです。 連続した線として全体を描くことができない状態図の場合は,離れた領域でも新たな開始点として一点計算を行い,再度 ``MAP`` コマンドを行う必要があります。  複数の開始点を設定し,一度の ``MAP`` コマンドで状態図を計算することもできます。 現在の計算結果を開始点として登録するためには ``ADD_INITIAL_EQUILIBRIUM`` コマンドを使います。 .. code-block:: none POLY_3: ADD [ADD_INITIAL_EQUILIBRIUM] Direction / Default /: -1 - - - - - - - - - - - → 短縮形 POLY_3: ADD -1  "Direction" は開始点から相境界の探索をどの方向へ進めるかを指示するものです。 ``SET_AXIS_VARIABLE`` コマンドで設定する軸番号 (1 または 2) に + または - を付けて指示します。 この例では 第一軸を負の方向に探索することを指示しています。 この場合は開始点が二相分離領域内であるので +1 や -1,+2 でも構いません。 なお ``SET_AXIS_VARIABLE`` コマンドによる計算軸の設定は ``ADD_INITIAL_EQUILIBRIUM`` を行った後でも構いません。 追加の開始点として,ここでは液相と FCC 相の平衡が得られる領域をねらって設定条件を変更します。 .. code-block:: none POLY_3: S-C T=1500  このように,設定条件を変える場合,すべての条件を再び入力する必要はありません。 変更する条件のみを設定してください。  一点計算を行い,結果を確認します。 .. code-block:: none POLY_3: L-E , , S [LIST_EQUILIBRIUM] Output from POLY_3, equilibrium number = 1, label A0 , database: SSOL4 Conditions: P=1.01325E5, N=1, T=1500, X(NI)=0.6 DEGREES OF FREEDOM 0 Temperature 1500.00 K ( 1226.85 C), Pressure 1.013250E+05 Number of moles of components 1.00000E+00, Mass in grams 6.06324E+01 Total Gibbs energy -8.70355E+04, Enthalpy 3.87923E+04, Volume 0.00000E+00 Component Moles M-Fraction Activity Potential Ref.stat CU 4.0000E-01 4.0000E-01 8.0479E-04 -8.8860E+04 SER NI 6.0000E-01 6.0000E-01 1.0271E-03 -8.5819E+04 SER FCC_A1#1 Status ENTERED Driving force 0.0000E+00 Moles 1.0000E+00, Mass 6.0632E+01, Volume fraction 0.0000E+00 Mole fractions: NI 6.00000E-01 CU 4.00000E-01 ここでは ``LIST_EQUILIBRIUM`` コマンドでオプションに ``S`` を指定して,平衡相のみを表示させる形式にしています。 液相と FCC 相の二相平衡を期待しましたが,計算結果は FCC_A1 単相です。つまり液相線はこの温度より高温側にあります。 したがって開始点としての登録では温度軸(第二軸)の正の方向を探索するように指示します。 .. code-block:: none POLY_3: ADD [ADD_INITIAL_EQUILIBRIUM] Direction / Default /: +2 - - - - - - - - - - - → 短縮形 POLY_3: ADD +2  続いて「2.4 POLY_3 モジュール」,「2.5 POST サブモジュール」で学んだ手順で状態図の計算と作図を行います。