化学平衡ソルバーをつくりたい (1) 平衡問題の一般的解法
本記事では簡単な例(弱酸の解離)を通じて平衡問題の解き方の一般論を理解することを目的とする。なお、当面の間は溶液のみが存在する系(沈殿や気体が存在しない系)を扱う。
続きを読む化学平衡ソルバーをつくりたい (0) はじめに
主に溶液系の化学平衡を解くソルバーを作りたい*1。例えば以下のような疑問に答えることを目的とする。
- 石灰水(水酸化カルシウムの飽和水溶液)に二酸化炭素を吹き込むと炭酸カルシウムの沈殿が生じ、過剰に吹き込むとやがて沈殿は再溶解する。水の蒸発を無視するとして、生じた炭酸カルシウムを完全に溶解させるためには二酸化炭素の分圧はいくらであれば良いか?
- 0.1 mol/Lの硫酸銅水溶液に濃アンモニア水を加えると、一度沈殿が生じた後溶解し、深青色の液体が得られる。沈殿を完全に溶解させるために必要なアンモニア濃度は?
- ある金属の、アルカリ性で安定した水溶液を得たい。直接溶かそうとしても沈殿が生じてしまう。適当な配位子を適当な濃度で加え、沈殿生成を防ぐことはできないか?
- 複数の金属イオンを含んだ液体から、特定のイオンだけを沈殿させたい。pHや沈殿材を選定してそれが可能かを見繕いたい。
もちろん、実際にこれらの実験を行おうとすると平衡論だけでは片付かず、現実的な時間内で想定した反応が完結するか、すなわち速度論的な問題も考えなければならない。しかしながら、平衡論という厳密な枠組みによって、「何が可能であるか/不可能であるか」について明確な情報が得られるのは有用である。*2
これから何回かの更新で、具体例を用いながら平衡計算を行うために必要な情報を整理する。数値計算を行うため、収束性についても留意する。その後、なるべく一般の問題にできるような実装を進める。高校化学+α程度の知識があることを前提にする。