MgCO3酸に対する溶解度を計算で求めます。Mg2+とCO32-を実際に反応させると、生成条件により、炭酸塩、塩基性炭酸塩など様々な組成の沈殿が生成しますが、ここではMgCO3・3H2Oが生成するものとして、その溶解度を求めます。

MgCO33H2Oの溶解度積:
 Kspc = [Mg][CO3]
 log Kspc =4.67
Mg(OH)2(
無定形)の溶解度積:
 Kspo = [Mg][OH]^2
 log Kspo =9.2
MgOH+
の生成定数:
 βo = [MgOH]/([Mg][OH])
 logβo = 2.58
MgCO3
の生成定数:
 βc = [MgCO3
(aq)]/([Mg][CO3])
 logβc = 2.88
Mg(HCO3)+
の生成定数:
 βh = [MgHCO3]/([Mg][HCO3])
   logβh = 0.95
CO2
の酸解離定数:
 K1 = [H][HCO3]/[CO2] , pK1 = 6.35
 K2 = [H][CO3]/[HCO3] , pK2 = 10.33
   

<<MgCO3の酸に対する溶解度の計算>>
<ソルバーによるMgCO3の溶解度>
MgCO3
を酸に溶解したときの溶解度を、エクセルのソルバー機能を用いて用いて求めます。酸としてはMg(II)と錯体を作らない1価の強酸(HX)を用います(たとえば、過塩素酸)。活量係数はすべて1とし、またCO2の気相との平衡は考えないこととします。   

ソルバーの計算では、溶液の最終的なpH(=log[H])を与件とし、HXの必要濃度CX mol/Lを変数としました。もし計算の結果CXが負の値となったときは-CXを強塩基濃度と考えます。   

pHを与件とすると、各化学種は次にように表せます。
[H] = 10^-pH
[OH] = Kw/[H]
[Mg] = Kspc/[CO3]
[MgOH] =
β0[Mg][OH]
[MgCO3] =
βc[Mg][CO3]
[MgHCO3] =
βh[Mg][HCO3]
[CO3] = 10^-pCO3
[HCO3] = [H][CO3]/K2
[CO2] = [H][HCO3]/K1
[X] = CX
また、計算に必要な関係式は次の通りです。
Q = [H][OH]2[Mg][MgOH][MgHCO3]2[CO3][HCO3][X] = 0
[Mg'] = [Mg][MgOH][MgCO3][MgHCO3] (S)
[CO3'] = [MgCO3][MgHCO3][CO3][HCO3][CO2]
ここではMgCO3をこれとは無関係な酸に溶かしたときの溶解度(S)を求めようとしているので(つまり、他に共通イオン源はないので)
[Mg'] = [CO3']
が成立します。   

与えたpHごとに次のパラメータ設定に従ってソルバーを実施します。
・ソルバーのパラメータ設定
  ・目的セル:電荷バランス、Q = 0
  ・変数セル:Cx , pCO3

  ・制約条件:R = [Mg'][CO3'] = 0   

なお、Mg(OH)2の沈殿生成の有無を確認する必要があります。イオン積B=[Mg][OH]2Mg(OH)2(無定形)の溶解度積Kspoを越えたときは、そこで計算を中止しました。   

計算結果(抜粋)-に示し、pHと溶解度(S)の関係を-に示します。またpHと溶液中の化学種濃度の関係(pH-logC)-3に示します。         

-
2021-10-03-fig1

-
2021-10-03-fig2

-

2021-10-03-fig3

-1、図-2から明らかなように、MgCO3の溶解度はpHの上昇とともに小さくなります。たとえばpH8.8以下のとき0.05 mol/LMgCO3溶液は沈殿を生じないことが分かります。

また-から、Mgに関する化学種は、pH7.5より低いとMgHCO3+が優勢であり、pH7.59.3ではMg2+が優勢、9.3を超えるとMgCO3が優勢となることがわかります。   

<計算式によるMgCO3の溶解度>
酸または塩基に対するMgCO3の溶解度は、ソルバーを用いなくても、
[Mg'] = [Mg]
[MgOH][MgCO3][MgHCO3]
[CO3'] =
[MgCO3][MgHCO3][CO3][HCO3][CO2]
[Mg'] =
[CO3']
から直接計算することも可能です。
[Mg]
[MgOH][MgCO3][MgHCO3] =
[MgCO3][MgHCO3][CO3][HCO3][CO2]
[Mg](1+βo[OH]) = [CO3](1+[H]/K2+[H]^2/(K2K1))
(Ksp/[CO3])(1
+βo[OH]) = [CO3](1+[H]/K2+[H]^2/(K2K1))
[CO3]^2 = (Ksp(1
+βo[OH])/(1+[H]/K2+[H]^2/(K2K1))

したがって、pHが与えられれば[CO3]が分かり、その結果他の化学種もすべて分かります。
[H] = 10^-pH
[OH] = Kw/[H]
[CO3] = {(Ksp(1+βo[OH])/(1+[H]/K2+[H]^2/(K2K1))}
[Mg] = Ksp/[CO3]
[MgOH] =
β0[Mg][OH]
[MgCO3] =
βc[Mg][CO3]
[MgHCO3] =
βh[Mg][HCO3]
[HCO3] = [H][CO3]/K2
[CO2
(aq)] = [H][HCO3]/K1   

計算結果を-に示します。pHに対する溶解度(S)の値-1と一致します(当然!)。   

-
2021-10-03-fig4

<<Pco2 atmCO2ガスと平衡にある水に対するMgCO3の溶解度>>
これまでは気相のCO2との平衡を考えない場合について考えましたが、ここからはPCO2 atmCO2ガスと平衡にある水に対する溶解度を求めます。
CO2(gas)
CO2(aq) 
KH = [CO2(aq)]/PCO2 = 10^-1.46
なので、
[CO2(aq)] = KH
×PCO2 (mol/L)
[HCO3] = [H][CO2(aq)]/K1
[CO3] = [H][HCO3]/K2
これらの関係を用いて、ソルバーを実行します。活量係数はすべて1とします。
・ソルバーのパラメータ設定
  ・目的セル:電荷バランス、Q = 0
  ・変数セル:pH

計算結果を-に示します。水に対する溶解度は、PCO2 = 1 atm, 25℃で0.28 mol/Lとなりました。実測値は20℃で0.31 mol/L, 30℃で0.25 mol/L(化学便覧)なので、計算値は実測値と良い一致を示しています。   

-
2021-10-03-fig5

今回の考察はイオン強度の影響を無視しているので、蓋然的です。もう少し厳密に計算しようとすれば、この影響を考慮する必要があります。