|
pri
Usage: pri [-np=N] input.in [input1.in ...]
Dependencies: perl, Priroda
Прежде всего отредактируйте значения переменных в начале скрипта.
Опции:
-h help
-help подробный help
-np=N Запускать на N ядрах (по умолчанию на одном)
-log Печать будет не на консоль, а в log-файл
Скрипт для последовательных запусков квантово-химической программы Природа.
Последовательность запусков определяется строкой после task= в группе $control
input-файла. Строка состоит из последовательности задач, разделенных знаком +,
и не должна содержать пробелов. После каждой задачи могут быть в круглых скобках
уточнения вида (метод/фунционал/базис).
Примеры (b1 и L22 -- "легкий" и "тяжелый" базисы):
task=optimize+hessian+nmr(L22)
task=hessian(b1)+optimize(b1)+optimize
task=hessian(b1)+saddle+hessian+irc
Не нужно указывать названия output-файлов, input-файлы можно задавать по маске.
На основании названия input-файла определяется имя и расширение output-файла.
Если input-файл кончается на '.in' или '.inp', то расширения у output-файла не
будет. В противном случае именем будет полное название input-файла,
расширением -- '.out'. Между именем и расширением будет суффикс, свой для каждой
задачи в соответствии со следующей таблицей
Optimize => Opt dipole => D energy => E gradient => G
hessian => H irc0 => IRC0 irc1 => IRC1 nmr => NMR
optimize => O saddle => TS scan => SCAN
Суффиксы в этой таблице можно отредактировать в тексте скрипта.
Суффикс, совпадающий с одним из предыдущих, будет инкрементироваться.
В основном задачи совпадают с таковыми для самой "Природы". Исключения:
irc -- это irc0+irc1 (task=irc, back=0 для irc0, back=1 для irc1)
TS -- это синоним saddle (task=optimize, saddle=1)
Optimize -- оптимизация с рестартами, см. ниже
В отличие от "Природы" регистр символов важен.
Если задача указана без уточнения (в круглых скобках), то метод/фунционал/базис
берутся из input-файла (или умолчаемые "Природы"). Уточнения м.б. вида
(метод/фунционал/базис) либо (фунционал/базис) либо (базис). Если методу не
нужен фунционал, то (метод//базис). Базис -- это файл базиса. Если он с полным
путем, то д.б. в двойных кавычках. Если не нужны разные базисные наборы для
разных атомов, удобно использовать файлы с короткими именами, по названию
базисного набора, помещенные в специальную директорию (см. начало скрипта).
См. о базисах http://limor1.nioch.nsc.ru/priroda.html
Некоторые особенности:
--Всегда используется последняя оптимизированная геометрия.
--Перед irc и saddle д.б. посчитан hessian и в нем д.б. мнимая частота
(или в input-файле д.б. группа с $Energy).
--Предварительно посчитанный hessian использется и для optimize за исключением
случая, когда он уже не актуален, типа hessian(b1)+optimize(b1)+optimize (для
второго optimize).
--Планируется сделать особую обработку некоторых полезных сочетаний:
scan+saddle, scan+nmr, irc+nmr.
На консоль скрипт печатает название input-файла и строку задач для него и
для каждой задачи метод/фунционал/базис, команду запуска расчета "Природой" и
краткую информацию о памяти/времени счета.
Особый случай оптимизации геометрии -- Optimize (optimize с заглавной буквы).
Делает следующее.
--Включает запись файла векторов (если save= в группе $control не было
задано в явном виде, этот файл потом удаляется).
--Если за заданное количество циклов (iterations= в группе $scf) градиент SCF
остается слишком большим ( SCF is far from convergence) и Природа вылетает,
то она перезапускается с текущей геометрией и последними векторами (read=1 в
группе $guess). Говорят, в сложных случаях помогает умеренное кол-во циклов
(iterations=10) с последующим перезапуском.
--Если оптимизация геометрии не сходится за заданное количество шагов
(steps= в группе $optimize, 50 by default), то перестартовывает Природу
с последней геометрией. Это полезно, когда оптимизация не сходится даже
за 300 шагов, "зацикливаясь" около некоторой геометрии.
Все output'ы Природы после перезапусков разделяются строкой из решеток и
записываются в один файл с суффиксом Opt. На консоль скрипт печатает
циклы SCF, градиенты оптимизации геометрии и некоторую информацию о своих
действиях. Также на консоль попадают сообщения Природы в stderr, если их не
перенаправить.
Последняя модификация: Fri Mar 5 16:12:22 2010
Download
Source
|