Приложение 1
к работе:
ИССЛЕДОВАНИЕ динамических ионообменных
характеристик ионитов, используемых в схемах водоприготовления при
различных составах вод, и разработка алгоритмов и программ их
расчета с применением персональных компьютеров
(VPU_NI.XLS – исходные материалы и фрагменты расчетов в этом файле)
1. Особенности расчета ионообменного процесса покажем на примере равновесного обмена ионов натрия, кальция и водорода на катионите типа КУ-2, регенерируемого соляной кислотой. Примем следующие обозначения для участников событий при контакте порции раствора и слоя ионита (все величины используются в относительных единицах: Сi=Ci/Co, ei=ei/emax, G=G/Emax):
Ch - концентрация ионов водорода в растворе;
Cn - концентрация ионов натрия в растворе;
Cc - концентрация ионов кальция в растворе;
Eh - концентрация ионов водорода в ионите;
En - концентрация ионов натрия в ионите;
Ec - концентрация ионов кальция в ионите;
z - общее содержание ионов в порции раствора в долях от полной обменной емкости слоя.
Введем, также, две константы:
Khn=(Ch/Eh)/(Cn/En)
Khc=(Ch/Eh)*(Ch/Eh)/(Cc/Ec), дополнительные переменные, сохраняющие постоянное значение в процессе единичного контакта "порция-слой" :
qh=Eh+z*Ch
qn=En+z*Cn
qc=Ec+z*Cc и дополнительную переменную:
X=Ch/Eh.
2. Теперь, после небольших преобразований, мы имеем следующую систему уравнений:
Eh=qh/(1+z*X) (1)
En=qn/(1+z*X/Khn) (2)
Ec=qc/(1+z*X*X/Khc) (3)
Eh+En+Ec=1 (4) из которой мы можем определить переменную X, а через нее найти значения равновесных концентраций в ионите и затем в растворе.
3. Переменная X имеет положительный и отрицательный корни - нам нужен корень с положительным значением. В явном виде выражение для X найти сложно и мы используем итерационную формулу, позволяющую найти значение для Х методом последовательных приближений:
X=(-1+(qh+(1+z*X)*(qn/(1+z*X/Khn)+qc/(1+z*X*X/Khc))))/z (5)
4. Итерационная формула достаточна надежна (обеспечивает сходимость по Х), несмотря на ее простоту. Ее, конечно, можно усовершенствовать, но надо иметь ввиду, что любое усложнение формулы увеличивает время для ее расчета. Тем не менее, небольшое усложнение можно предложить, используя очевидное соотношение:
X=(X+dX*X)/(1+dX) (6) где dX некоторая константа, предназначенная для улучшения итерационной сходимости Х, значение которой подбирается численным экспериментом. В большинстве случаев это значение можно принять равным минус 0,4.
Теперь наша усовершенствованная формула может иметь вид:
X=((-1+(qh+(1+z*X)*(qn/(1+z*X/Khn)+
+qc/(1+z*X*X/Khc))))/z+dX*X)/(1+dX); (7)
Однако эта формула мало чем поможет нам если мы не изобретем способ "угадывания" начального значения Х, которое следовало бы подставить в правую часть уравнения при первом обращении к формуле для Х (имеется ввиду первое обращение для каждого очередного контакта "порция-слой"). Если начальное значение выбрано неудачно, то потребуется слишком много итераций, а то и вовсе вычислительный процесс может уйти в сторону поиска отрицательного корня Х.
В качестве начального значения можно, например, брать значение, полученное для предыдущей порции или для предыдущего слоя - читатель, который намерен войти глубоко в эти проблемы сам найдет лучшее решение.
5. При использовании вместо соляной серной кислоты порядок расчетов во многом похожий. Hо Х уже имеет вид
X=Ck/Eh
где Ck означает общую концентрацию свободной и связанной форм кислоты (то, что определяется титрованием как кислотность).
Величина qh также заменяется на
qk=Eh+z*Ck и вводится еще одна переменная
aC=Ch/Ck
В итоге наша итерационная формула примет вид:
X=((-1+(qk+(1+z*X)*(qn/(1+z*X*aC/Khn)+
+qc/(1+z*X*X*aC*aC/Khc))))/z+dX*X)/(1+dX); (8)
Теперь мы уже должны позаботиться об удачном выборе начальных значений не только для Х, но и для переменной aC, которая также переопределяется в процессе итераций, являясь функцией от Ck:
aC=(-(0.5-Ck+0.5*S)/2+
+sqrt((0.5-Ck+0.5*S)*(0.5-Ck+0.5*S)/4+0.5*S*Ck))/Ck (9)
где sqrt - символ квадратного корня,
S - константа диссоциации серной кислоты.