radf
Программа для расчета функций радиального (ФРР) и радиально-углового распределения (ФРУР).
Использование
mm_radf -i МАСКА -s ЧИСЛО,ЧИСЛО -c X,Y,Z -at ФОРМАТ -o ФАЙЛ [ -r ЧИСЛО,ЧИСЛО ] [ -rs ЧИСЛО ] [ -a ЧИСЛО,ЧИСЛО ] [ -as ЧИСЛО ] [ -m ] [ -l ФАЙЛ ] [ -q ] [ -h ]
Параметры
-i МАСКА – маска снимков траектории
-s ЧИСЛО,ЧИСЛО – первый и последний шаги траектории
-c X,Y,Z – размер элементарной ячейки, А
-at ФОРМАТ – численные типы атомов между которыми строится функция. Формат "1-2" или "1,2,3,-4,5,6" (автоматически включит расчет функции радиального распределения между центрами масс).
-o ФАЙЛ – генерируемый файл
-r ЧИСЛО,ЧИСЛО – минимальный и максимальный радиус, А. По умолчанию 2.0 и 15.0
-rs ЧИСЛО – шаг изменения радиуса, А. По умолчанию 0.2
-a ЧИСЛО,ЧИСЛО – минимальный и максимальный угол, град. По умолчанию 0.0 и 90.0
-as ЧИСЛО – шаг изменения угла, град. Эта опция включит расчет функции радиально-углового распределения
-m – печать в виде матрицы
-l ФАЙЛ – запись лога в указанный файл
-q – не выводить сообщения в STDOUT
-h – показать эту справку и выйти
Форматы файлов
Генерируемый файл (*.dat)
- В заголовке указывается название программы и ее версия, например "radf ::: V.1.1.0". Пустая строка.
- Блок конфигурации "CONFIGURATION … END". Печать лога (LOG=1), не выводить сообщения в STDOUT (QUIET=1), матричный вывод (MATRIX=1), файлов (MASK=mask), первый (FIRST=1) и последний (LAST=1) шаги траектории, размер ячейки (CELL=1.0000,2.0000,3.0000), тип расчета (MODE=0) (0 – для функции радиального распределения, 1 – для функции радиального распределения для центров масс, 2 – для функции радиально-углового распределения), радиальные критерии (R_MIN=0.100) (R_MAX=0.100) (R_STEP=0.100), угловые критерии для функции радиально-углового распределения (ANG_MIN=0.10) (ANG_MAX=0.10) (ANG_STEP=0.10), типы атомов (ATOM=1-2) или (ATOM=1,2,3-4,5,6). Пустая строка.
- Блок результатов "SUMMARY STATISTIC … ------------------------------------------------". После указания блока, если отключен матричный вывод, следует разметка таблицы (2 строки).
Формат таблицы для функций радиального распределения (матричный вывод отключен)
0001.0000 2.0000e-01 000000003 04.000000
Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, объем сегмента (10 символов, 4 десятичной части), пробел, число молекул в данном сегменте (9 символов), функция радиального распределения (9 символов, 6 десятичной части).
Формат таблицы для функций радиального распределения (матричный вывод включен)
0001.0000 04.000000
Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, функция радиального распределения (9 символов, 6 десятичной части).
Формат таблицы для функций радиально-углового распределения (матричный вывод отключен)
0001.0000 000005.00 2.0000e-01 000000003 04.000000
Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, угол (9 символов, 2 десятичной части), пробел, объем сегмента (10 символов, 4 десятичной части), пробел, число молекул в данном сегменте (9 символов), функция радиально-углового распределения (9 символов, 6 десятичной части).
Формат таблицы для функций радиально-углового распределения (матричный вывод включен). В заголовке указывается угол (9 символов, 2 десятичной части)
0001.0000 04.000000 …
Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, функция радиально-углового распределения (9 символов, 6 десятичной части) через пробелы, соответствующие данному углу.
- Конец таблицы.
Работа приложенияn
- Чтение заголовков исходных файлов, установка начальных переменных.
- Пошаговое чтение исходных файлов. Установка переменных.
Расчет количества пар молекул, находящихся в различных взаимных конфигурациях.
- Печать результата в файл.
Функция радиального распределения рассчитывается по формуле:
RDF(r) = (1 / norm) * sum(d(r_n-r), n),
norm(r) = (4*PI*r^2*dr) * ro * N * N_step,
где d(r_n-r) – дельта-функция, r – радиус сферы, n – номер молекулы, dr – шаг изменения радиуса, ro – число молекул в единице объема, N – число молекул, N_step – число шагов траектории.
Функция радиально-углового распределения рассчитывается по формуле:
RADF(r, fi) = (1 / norm) * sum(sum(d(r_n-r)*d(fi_n-fi), n), n),
norm(r, fi) = (4*PI*r^2*sin(fi)*dr*dfi) * ro * N * N_step,
где d(r_n-r) и d(fi_n-fi) – дельта-функции, r – радиус сферы, fi – угол, n – номер молекулы, dr – шаг изменения радиуса, dfi – шаг изменения угла, ro – число молекул в единице объема, N – число молекул, N_step – число шагов траектории.
Работа с графическим интерфейсом
- Перейти во вкладку "ФРУР". Указать рабочую директорию.
- Указать маску траекторных файлов.
- Указать первый и последний шаги траектории.
- Указать размер ячейки в А.
- Указать генерируемый файл.
- Указать искомые атомы.
- Указать радиальные параметры функции в А. При необходимости указать угловые параметры функции в градусах.
- При необходимости указать печать в виде матрицы, файл лога и генерацию графика.
- Запустить приложение.