УДК 541.544:681.3
ПРОГРАММА «ACID-BASE CALCULATOR» ДЛЯ РАСЧЕТА КИСЛОТНО-ОСНОВНЫХ РАВНОВЕСИЙ В ВОДНЫХ РАСТВОРАХ
А. Б. Тессман, А. В. Иванов
(кафедра аналитической химии)
Предложена компьютерная программа «Acid-Base Calculator» для расчета рН и ионной силы в водных растворах, содержащих смеси сильных и слабых кислот и оснований и солей. Программа имеет простой интерфейс и работает в распространенных операционных системах «Windows 95/98/NT». Приведены примеры использования программы.
Одним из наиболее частых, рутинных расчетов, которые проводят химики-аналитики, является расчет кислотно-основных равновесий (вычисление рН в растворах слабых кислот и оснований, в буферных смесях), а также вычисление результатов титрования. В курсе аналитической химии изучение этих вопросов также занимает важное место.
Попытки автоматизировать проведение расчетов кислотно-основных равновесий предпринимались еще в 30-е годы. Исторически первым средством такой автоматизации служили таблицы. Так, в 1933 г. Ф.Б. Клупт и А.Н. Агте (Германская комиссия атомных весов) разработали карманную «Алкали-ацидиметрическую таблицу для вычисления результатов титрования» для лаборантов-аналитиков [1]. Таблица позволяла сразу определить содержание в граммах серной, соляной, азотной, фосфорной, муравьиной, уксусной, щавелевой и молочной кислот; аммиака, гидроксидов, карбонатов, гидрокарбонатов щелочных и некоторых щелочноземельных металлов, исходя из объема 1 М раствора титранта (для титрантов другой концентрации необходимо провести расчет с использованием простой пропорции). В ряде справочников приводятся таблицы, позволяющие подобрать состав ограниченного круга буферных растворов при определенном значении рН [2, 3]. Однако форма таблицы оказалась «негибкой», поскольку составление подобных таблиц для широкого спектра сильных и слабых кислот, оснований и
их смесей превратило бы удобную карманную таблицу в «гроссбух».
На практике современный химик-аналитик, особенно в области биологического анализа, работает со смесями весьма сложного состава с широким диапазоном концентраций компонентов. В этом случае значения рН необходимо находить расчетным путем. Для расчета рН в сложных смесях часто прибегают к серьезным упрощениям (пренебрежение степенью диссоциации слабых кислот или оснований, упрощение уравнений высокой степени до квадратичных или даже до уравнений первой степени) [3].
С другой стороны, ранее в курсе аналитической химии вопросы расчетов равновесий в растворах и расчетов в титриметрии занимали едва ли не основное место. Так, в учебнике «Количественный анализ» 1955 г. [4] кислотно-основным равновесиям посвящено около 30% всего объема издания. В настоящее же время ввиду резко возросшего объема знаний в области аналитической химии удельный вес этого раздела существенно снизился: в учебнике «Analytical Chemistry» 1998 г. [5] он составляет всего 5%. Поэтому необходим переход к иной методологии преподавания кислотно-основных равновесий в курсе аналитической химии, исходя из новой универсальной формы расчета равновесий, созданной в духе времени и основанной на идеях объектно-ориентированного подхода с инкапсуляцией частностей в некое единое в достаточной степени визуальное и интуитивно понятное целое.
Наличие гигантского количества информации в текстовом виде, которое надо постоянно держать в памяти и динамически пользоваться, заставляет искать новые подходы, чтобы сделать форму представления информации наиболее удобной и наглядной для человека. С этой точки зрения табличная форма, хотя и удобна для упрощения расчетов, но не универсальна. В настоящее время в связи с широкой компьютеризацией различных областей химии задача автоматизации расчета кислотно-основных равновесий может быть решена и оформлена в виде «карманного калькулятора» с доступным программным обеспечением, позволяющим максимально ускорить проведение рутинных расчетов без каких-либо упрощений и приближений.
Первые попытки расчета кислотно-основных равновесий с помощью персональных ЭВМ были предприняты в 1989-1990 гг. [6, 7]. Однако интерфейс программы с позиций настоящего времени имел неудобную для пользователя структуру; при этом невозможно было редактировать уже введенные данные и выводить на печать результаты расчета. Программы позволяли рассчитать рН только в системах, содержащих не более трех компонентов [7], а ионная сила в растворе не учитывалась. Нами создана программа «Acid-Base Calculator» для вычисления рН и ионной силы водных растворов кислот и оснований или их смесей, работающая в операционных системах «Windows 95/98/NT».
Экспериментальная часть
В работе использовали персональный компьютер с процессором Pentium-150, жестким диском 1,6 Гбайт, оперативной памятью 80 Мбайт и установленной операционной системой «Windows-98». Программу проверяли также на компьютерах с операционными системами «Windows 95/NT», с процессорами классов 486-Pentium-PentiumII. Программа написана с применением объектно-ориентированного программирования в среде разработки Visual С++ [8, 9].
Обсуждение результатов
Аппаратные требования. Предложенная программа «Acid-Base Calculator» имеет стандартный, интуитивно понятный для пользователя интерфейс (рис. 1); она позволяет заносить в память состав и параметры заданной смеси и выводить результаты расчета в специальное окно редактирования и распечатывать в нужной форме. Программа (собственно exe-файл) занимает на жестком диске 111 Кбайт.
Используемые в программе физико-химические положения. Физико-химическая часть программы «Acid-Base Calculator» включает в себя уравнение электронейтральности раствора, а также уравнения материального баланса по каждому компоненту смеси [10-12]. Состав водного раствора, содержащего смесь слабых кислот, оснований и сильного электролита, задают следующими параметрами: N - число слабых кислот вида H A, N. - число слабых
a na ' b
оснований вида B(OH)n , где na (nb) - число ступеней
b
диссоциации кислоты (основания), p^a (p^b) - отрицательный десятичный логарифм константы диссоциации
кислоты (основания), снд (свон) - концентрация кислоты (основания), с№с1 - концентрация сильного электролита. Систему описывают уравнения материального баланса:
по каждой кислоте X [H n п _ i A ] = c H n
i=0 a "a
nb
X[(HO nb -iB" )] = c, i=0
и уравнение электронейтральности:
по каждому основанию X[(HO nb -iB )]- cB (oh) „,
i=0
N ana _ _
X X (_ i )[H na -iAj ]( _ i )[H na -iAj ] + j=1 i=1
Nbnb + + _ + X X i [(HO)nb _i B'+ ] + [Na + ] + [Cl ] = 0. j=1 i=1
Рис. 1. Главное диалоговое окно программы «Acid-Base Calculator»
n
Математическая часть программы «Acid-Base Calculator» включает метод решения уравнения n-го порядка одной переменной - [H] [13]. В программе использован метод дихотомии.
Интерфейс программы. На рис. 1 представлено главное диалоговое окно после запуска программы. Диалоговое окно оформлено в виде калькулятора (имеет индикатор, отображающий вводимые данные и результаты расчета, а также кнопки для ввода параметров). Первый блок кнопок «cNa» и «cCl» служит для ввода концентрации анионов и катионов всех сильных электролитов, входящих в состав смеси. Второй блок кнопок «Weak Base» служит для ввода числа слабых оснований в смеси («Num»), числа ступеней диссоциации для каждого из слабоосновных компонентов («n_b_c»), значений констант диссоциации («pXj») и концентраций каждого компонента («с»). Параметры по каждому компоненту вводятся пошагово: «n_b_c» - «p—b» - «с», затем для следующего слабоосновного компонента и т.д. Концентрации компонентов можно вводить либо как «0.001» (через разделительную точку), либо как «1e-3». В блоке расположены также 2 кнопки «>>» и «<<» для редактирования заданных констант диссоциации или концентраций компонентов. Блок кнопок «Weak Acid» аналогичен предыдущему: ввод числа слабых кислот в смеси («Num»), числа ступеней диссоциации для каждого из слабокислотных компонентов («n_a_c»), значений констант диссоциации («р— ») и концентраций каждого компонента («с»), для редактирования введенных параметров служат кнопки «>>» и «<<». После ввода параметров всей смеси следует нажать кнопку «Enter» для запуска расчетов. По умолчанию программа одновременно вычисляет значения рН и ионной силы (установлены соответствующие флажки в диалоговом окне), но в зависимости от конкретной задачи можно установить только один из расчетов.
Внизу диалогового окна расположен блок «Results». При последовательном нажатии кнопок «pH=» и «Ionic Strength=» на индикаторе появляются вычисленные значения рН или ионной силы соответственно. Заданные параметры по каждому компоненту смеси и результаты параметра можно вывести в диалоговое окно редактирования «Summary» (рис. 2), а при необходимости перенести их посредством буфера обмена в любой текстовый редактор и затем вывести на печать. На рис. 2 показано содержание диалогового окна редактирования после расчета рН и ионной силы универсальной буферной смеси [3], состоящей из уксусной, фосфорной и борной кислот и №ОН. (Концентрация NaOH выводится в диалоговом окне как cNa.) Для перехода к расчету следующей системы следует нажать кнопку «Reset».
Примеры использования программы «Acid-Base Calculator»
1. Расчет рН универсальной буферной смеси. Универсальная буферная смесь содержит 0,02 М уксусную (рКа 4,76), 0,02 М фосфорную (рКа1 2,15; рКа2 7,21, рКа3 12,30) и 0,02 М борную (рКа1 9,15, "рКа2 12,74, рКа3 13,80) кислоты и 0,01 М №ОН. Измеренное на цифровом рН-метре «TOA Electronics HM-20S» (Япония) с комбинированным
Рис. 2. Диалоговое окно редактирования «Summary» после расчета рН универсальной буферной смеси
электродом значение рН смеси равно 2,48; в справочнике [3] приведено значение 2,50. Значение рН, вычисленное с помощью программы (рис. 2), составляет 2,46 (2,457), что очень хорошо согласуется с экспериментальными результатами. Вычисленное значение ионной силы в смеси равно 0,0135 (рис. 2).
2. Расчет рН биологической буферной смеси. Рассмотрим буферную смесь для изоэлектрофокусирования белков [14], содержащую 10 мМ MES [2-(М-морфолино)-этансульфоновая кислота, pKa 6,4], 10 мМ ACES [М-(2-аце-тамидо)-2-аминоэтансульфоновая кислота, pK 7,3], 10 мМ TES [М-трис(оксиметил)метил-2-аминоэтансульфоновая кислота, pKa 7,9], 10 мМ Tricine [Ы-трис(оксиметил)метил-глицин, pKa 8,6], 10мМ Bicine [М,МФбис(2-оксиэтил)глицин, pKa 8,74] и 5мМ Tau [таурин, 2-аминоэтансульфоновая кислота, pKa 9,7]. Таким образом, в буферной смеси содержится 6 одноосновных аминокислот. Вычисленное по программе значение рН равно 4,17, а приведенное в статье [14] значение рН составляет 4,33. Некоторое различие между рассчитанным и экспериментальным значениями рН связано с тем, что не учтено влияние слабоосновных групп аминокислот в смеси (информация о значениях pKb аминогрупп в данной ссылке отсутствует).
3. Использование программы для градуировки рН-метра. При отсутствии специальных буферных растворов (рН 3,56 и 9,18) для градуировки рН-метра можно самим приготовить буферные растворы из имеющихся компонентов в кислой и щелочной области и, зная точную кон -центрацию компонентов, вычислить их значения рН по программе, а затем настроить рН-метр по буферным растворам до рассчитанных значений.
4. Расчет состава смеси с заданным рН. В ряде случаев исследователю приходится решать «обратную задачу» - рассчитать концентрации компонентов раствора с требуемым значением рН. Такая задача, например, возникает при приготовлении многокомпонентных подвижных фаз в ионообменной хроматографии белков или в хрома-тофокусировании белков, когда необходимо точно создавать требуемое рН подвижной фазы [15, 16]. С помощью программы «Acid-Base Calculator» можно варьировать
концентрации компонентов подвижной фазы до достижения заданного рН (тем более, что «Acid-Base Calculator» позволяет редактировать введенные концентрации без перезапуска программы и без нового ввода данных по рК, числа ступеней диссоциации), и только потом готовить элюент с рассчитанными концентрациями компонентов. С помощью программы рассчитан состав подвижных фаз при образовании «аномальных» участков на профилях внутренних градиентов рН в ионообменной хроматографии [15-17]. В настоящий момент программа подключена в качестве вспомогательной к разрабатываемой компью-
терной базе данных по внутренним градиентам рН в ионообменной хроматографии [16]. Помимо применения для рутинных расчетов рН программу «Acid-Base Calculator» можно использовать в учебном процессе при изучении кислотно-основных равновесий в растворах. Студент при этом должен обладать фундаментальными химическими знаниями, чтобы корректно составлять уравнения материального баланса и грамотно использовать «Acid-Base Calculator». А исследователю программа поможет сэкономить время, требуемое для вычислений.
СПИСОК ЛИТЕРАТУРЫ
1. Клупт Ф.Б., Агте А.Н. Вычисление результатов титрования
(алкали-ацидиметрическая таблица). Л., 1934.
2. Досон Р., Эллиот Д., Эллиот У., Джонс К. Справочник биохи-
мика. М., 1991.
3. Лурье Ю.Ю. Справочник по аналитической химии. М., 1989.
4. Алексеевский Е.В., Гольц Р.К., Мусакин А.П. Количественный
анализ. Л., 1955.
5. Analytical Chemistry. Editor: R.Kellner Weincheim: Wiley-VCH,
1998.
6. Ramette R.W. // J. Chem. Educ. Soft. 1989. 2B. P. 220.
7. Malinowski E.R. // J. Chem. Educ. 1990. 67. P. 502.
8. Петзолд Ч. Программирование для Windows 95. СПб., 1997.
9. Пол И. Объектно-ориентированное программирование с ис-
пользованием С++. Киев, 1995.
10. Гармаш А.В. Кривые титрования для любознательных. М., 1992.
11. Dyrssen D., Jagner D., Wengelin F. Computer calculation of ionic equilibria and titration procedures. Stockholm: Gebers Foerlag AB. 1968.
12. Хартли Ф., Бергес К., Олкок Р. Равновесия в растворах. М.,
1983.
13. Мудров А.Е. Численные методы для ПЭВМ на языках Бейсик, Фортран и Паскаль. Томск, 1991.
14. Prestige R.L., Hearn M.T.W. // Sep.Purif.Methods. 1981. 10. P. 1.
15. Иванов А.В., Тессман А.Б., Нестеренко П.Н., Гармаш А.В. // ЖФХ. 1999. 73. С. 1476.
16. Тессман А.Б. Дис ... канд. хим. наук. М., 2000.
17. Иванов А.В., Тессман А.Б., Нестеренко П.Н., Рунов В.К. // ЖФХ. 2000. 74. С. 1103.
Поступила в редакцию 14.06.00