Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
диссертация мембраны.doc
Скачиваний:
11
Добавлен:
30.05.2015
Размер:
1.64 Mб
Скачать

Глава 4. Формализация предложенного алгоритма в виде независимого программного обеспечения для пк

Современный уровень развития технологий требует от исследователя постоянного использования в повседневной работе достаточно сложных и полифункциональных программных продуктов. С их помощью можно провести расчеты, численное моделирование и обработать результаты экспериментов. При этом возможно, что до момента завершения процесса моделирования необходимо будет использовать несколько программных продуктов. Примечательно, что чем более профессионален исследователь (пользователь) в отношении современных технологий и компьютерного математического моделирования, тем менее адаптированные к человеку программы он использует. В самом деле, наиболее верный и надежный способ компьютерного моделирования — это непосредственное написание программного кода определяющего процедуры работы. Именно таким образом работает множество специализированных программных пакетов, направленных на моделирование сложных систем.

Напротив, экспериментатор стремится получить в руки наиболее адаптированный программный продукт с простым и понятным описанием и дружественным интерфейсом. К сожалению далеко не всегда он получает подобный продукт в свое распоряжение.

Одним из результатов данной работы является не только формулировка, описание и применение некоторого алгоритма оценки движения ионов вблизи поверхности мембраны, но и создание оригинального программного продукта, который может быть использован в условиях исследовательской лаборатории, не оснащенной специальными мощными вычислительными средствами.

4.1. Создание программного продукта на базе предложенного в работе алгоритма с использованием объектно-ориентированной среды разработки Delphi

Принципиальным моментом в создании программы является ее чёткая структурированность по процедурам в соответствии с выбранной задачей. На Рис. 5 представлена принципиальная блок-схема алгоритма формализующего в программном коде предложенный в предыдущих разделах подход. Изначальное задание исходных параметров для моделирования осуществляется пользователем, и, в тоже время, некоторые из них могут определяться разработчиком. Баланс в этом вопросе смещается в одну или другую сторону в зависимости от опытности пользователя. Так, например, если указывается, что в растворе присутствуют ионы натрия и хлора, то для последующего расчета их движения необходимо указать их размер с учетом гидратной оболочки. Если пользователь недостаточно опытен или ему нет необходимости использовать какие-то уточненные данные (будет соответствовать параметру «Simple») то указание ионов позволяет автоматически указать их размеры. В случае же, когда есть

Выбор параметров

Выбор параметров

Выбор времени

Выбор раствора

канала

фильтра

расчета

ионов

Выбор параметров мембраныСоздание массива ионов

Создание геометрии системы

Создание массива неподвижных зарядов

Входные значения

выход из никла

г

Значения токов

Блок расчета электрического поля

Блок расчета движения ионов

Выходные значения

Рис. 5. Общая блок схема программируемого алгоритма на основе разработанного в работе подхода

.необходимость рассмотреть особые случаи или подключить какие-то дополнительные данные, указывающие на другие размеры гидратных оболочек, то пользователь переключается в режим «Advanced» и самостоятельно вводит эти значения.

Дальнейшие расчеты и компьютерные симуляции выполняются автоматически. На Рис. 6 представлена формализация алгоритма для программирования оценки поля внутри рассматриваемой области. Представленный таким образом алгоритм делает возможным избегать излишнего потребления ресурсов вычислительной техники при выполнении процедуры. Далее происходит пошаговое «наращивание» траектории всех частиц с постоянным переопределением поля и увеличением счетчика интервалов времени (Рис. 7). При этом, если частица покинула зону моделирования (отдельный компартмент) она возвращается назад и если это произошло при пересечении полости канала, то счетчик частиц увеличивается на единицу (Рис. 8).

Окончательно величина тока реализуется как суммарное значение компьютерной функции, отнесенное к счетчику времени и это значение записывается в качестве массива, соответствующего результатам компьютерного моделирования.

Принципиальной особенностью использования методов объектно- ориентированной среды Delphi является то, что созданные в ней программные продукты разрабатываются с возможностью реализации весьма удобного для пользователя интерфейса. Это во многом предопределяет успешность конечной реализации процесса моделирования, а также определят практическую значимость ее результатов. Именно этому вопросу будет посвящен следующий раздел данной главы.

for j:= Lo\v( 1C )to High( ]C ) do

if ioj then

begin

if ((IC[i,l]<W_mcm/2+HJn/10 )and( IC[i,l]>-W_mem/2-H_out/10) )or ((lC[j,l]<W_mcni/2+H_in/10 )and( ICQ, 1 ]>-W_mem/2-H_out/l 0 )) then begin

if AngIeCheck( IC[j,l],lC[j,2],IC[j,3],lC[i,I],IC[i,2],lC[i,3] )=True then begin

E[i,I]:= E[i,l]+Kr*qi*1.6E-19*(( IC[i,l]-IC[j,l] )* 1E-9)/

Power( Sqr( (lC[i,l]-lC[j,l] )*lE-9 )+Sqr( (IC[i,2]-IC[j,2] )*IE-9 )+ Sqr( ( IC[i,3]-IC[j,3] )*lE-9 ),3/2 ); E[i,2]:= E[i,2]+Kr*qi*1.6E-19*( ( IC[i,2]-IC[j,2] )*lE-9)/

Power( Sqr( (IC[i,l]-lC|j,l] )*IE-9 )+Sqr( (IC[i,2]-IC[j,2] )*lE-9 )+ Sqr( ( IC[i,3]-IC[j,3] )*lE-9 ),3/2 ); E[i,3]:= E[i,3]+Kr*qi*1.6E-19*( (IC[i,3]-IC[i,3] )*lE-9 )/

Power( Sqr( (IC[i,l]-IC[j,l] )♦ 112-9 )+Sqr( ( IC[i,2]-IC[j,2] )*lE-9)+ Sqr( (IC[i,3]-IC[i,3] )*lE-9 ),3/2 );

end; end else begin

E[i,l]:= E[i,1]+Kr*qi*1.6E-19*((IC[i,l]-IC0,l])ME-9)/

Power( Sqr( ( lC[i,l]-IC[j,l] )*lE-9 )+Sqr( (IC[i,2]-IC[j,2] )*lE-9)+ Sqr( (IC[i,3]-IC[j,3] )*lE-9 ),3/2); E[i,2]:= E[i,2]+Kr*qi*1.6E-19*( ( lC[i,2]-ICQ,2] )*IE-9)/

Power( Sqr( (IC[i,l]-IC0,l] )*lE-9 )+Sqr( (IC[i,2]-IC[j,2] )*lE-9 )+ Sqr( (lC[i,3]-lC[j,3] )*lE-9 ),3/2 ); E[i,3]:= E[i,3]+Kr*qi*I.6E-19*( (IC[i,3]-IC[j,3] )»lE-9)/

Power( Sqr(( lC[i,l]-IC[j,l] )*lE-9 )+Sqr( ( IC[i,2]-lCD',2] )*lE-9 )+ Sqr( ( IC[i,3]-IC[j,3] )*lE-9 ),3/2 );

Рис. 6. Формализация методики расчета электрического поля в виде компьютерной процедуры

Рис. 7. Блок компьютерной симуляции движения ионов в примембранном слое

Рис. 8. Схема подсчета прошедших частиц через канал и блок переопределения координат частиц в системе.