Кв.хим. программа GAMESS и основанные на ней
- В этой теме 16 ответов, 9 участников, последнее обновление 14 лет, 4 месяца назад сделано
telezh.

Квантовохимическая программа GAMESS(US), PC GAMESS и GAMESS-UK
Название: The General Atomic and Molecular Electronic Structure System
Автор: Группа Марка Гордона, Лаборатория Ames, Гос.университет штата Иова (GAMESS(US));
Грановский Александр, Лаборатория химической кибернетики МГУ (PC GAMESS, основана на GAMESS(US));
CFS, ltd. (GAMESS-UK, основана на GAMESS(US));
Условия распространения: бесплатная (требуется регистрация на сайте) (GAMESS(US) и PC GAMESS);
требуется лицензия (GAMESS-UK)
ОС: Linux, Windows, Max OS X, … (GAMESS); Windows, Linux (PC GAMESS); Linux, Windows, Mac OS X, … (GAMESS-UK);
Основные методы расчёта: HF, DFT, MP, … (GAMESS(US)); HF, DFT, MP, … (PC GAMESS); HF, DFT, MP, … (GAMESS-UK);
Последняя известная версия: от 27 марта 2007, 32- и 64-бит (GAMESS(US));
версия 7.1, 32- и 64-бит (PC GAMESS); версия 7.0 (GAMESS-UK)
Страница загрузки: GAMESS(US), PC GAMESS, GAMESS-UK.
Описание: Многофункциональная квантовохимическая программа. Основной упор сделан на … расчёты.
Ссылки на статьи:
GAMESS(US):
1. "General Atomic and Molecular Electronic Structure System" M.W.Schmidt, K.K.Baldridge, J.A.Boatz,
S.T.Elbert, M.S.Gordon, J.H.Jensen, S.Koseki, N.Matsunaga, K.A.Nguyen, S.Su, T.L.Windus, M.Dupuis,
J.A.Montgomery J. Comput. Chem., 14, 1347-1363(1993).
2. "Advances in electronic structure theory: GAMESS a decade later" M.S.Gordon, M.W.Schmidt. pp. 1167-1189,
in "Theory and Applications of Computational Chemistry: the first forty years" C.E.Dykstra, G.Frenking, K.S.Kim,
G.E.Scuseria (editors), Elsevier, Amsterdam, 2005.
PC GAMESS:
1. A. A. Granovsky, PC GAMESS version 7.1, http://classic.chem.msu.su/gran/gamess/index.html.
2. A. V. Nemukhin, B. L. Grigorenko, A. A. Granovsky. Molecular modeling by using the PC GAMESS program:
From diatomic molecules to enzymes, Moscow University Chemistry Bulletin. 2004, Vol. 45, No. 2, P. 75.
GAMESS-UK:
1. M.F. Guest, I. J. Bush, H.J.J. van Dam, P. Sherwood, J.M.H. Thomas, J.H. van Lenthe, R.W.A Havenith,
J. Kendrick, "The GAMESS-UK electronic structure package: algorithms, developments and applications",
Molecular Physics, Vol. 103, No. 6-8, 20 March-20 April 2005, 719-747.
GAMESS в Интернете:
1.-.
Визуализаторы (
):
1. ChemCraft;
2. ViewMol3D;
3. GaussView;
4. Molden;
5. PMViewMol;
6. Mask;
7. MacMolPlt;
8. … .
Вопрос: в каких единицах указывается энергия (Energy) в выходном файле Gamess? эВ, Хартри, КДж/моль и т.п.?

Обычно полную энергию (Energy) удобно указывать (и поэтому её указывают) в Хартри (т.е. в атомных единицах энергии).
Тт.!
Как в PC Gamess считать профиль (или поверхность) реакции (potential energy surface)? Статьи посмотрел, там результаты хорошие уж больно, но как это делать — непонятно. Сайт с документацией (http://classic.chem.msu.su/) не работает почему-то. Что писать в inp-файле, чтобы он по определенному параметру считал (длине связи или углу)?
Сайт с документацией заработал 🙂 Вот пример входного файла:
$CONTRL RUNTYP=rsurface NZVAR=18 COORD=ZMT mplevl=2 $END
$SYSTEM TIMLIM=500 MEMORY=30000000 $END
$BASIS GBASIS=tzv ndfunc=1 $END
! To freeze coord # 12 during constrained optimization
$statpt opttol=1d-5 nstep=1000 IFREEZ(1)=12 $end
! To scan along coord # 12
$surf ndisp1=33 disp1=3.75 vect1(12)=1 orig1=0 $end
$DATA
CH3-CH3
C1
C
C 1 r1
h 1 r2 2 a1
h 1 r2 2 a1 3 d1
h 1 r2 2 a1 3 d2
h 2 r2 1 a1 4 dx
h 2 r2 1 a1 6 d1
h 2 r2 1 a1 6 d2
r1=1.54
r2=1.09
a1=109
d1=120
d2=-120
dx=0
$END
$ZMAT IZMAT(1)=
1, 2, 1,
1, 3, 1,
2, 3, 1, 2,
1, 4, 1,
2, 4, 1, 2,
3, 4, 1, 2, 3,
1, 5, 1,
2, 5, 1, 2,
3, 5, 1, 2, 3,
1, 6, 2,
2, 6, 2, 1,
3, 6, 2, 1, 4,
1, 7, 2,
2, 7, 2, 1,
3, 7, 2, 1, 6,
1, 8, 2,
2, 8, 2, 1,
3, 8, 2, 1, 6,
$END
At the end of the output, you'll find the tables with relaxed PES curve.
ENERGY DELTA MAP(S) (W.R. TO THE LOWEST FOUND)
————————————
ICOORD1, | ENERGY
COORD1 | DELTA
—————+———————
1 ( 0.00000)| 0.0048607787
2 ( 3.75000)| 0.0048076271
3 ( 7.50000)| 0.0046512997
4 ( 11.25000)| 0.0044006116
5 ( 15.00000)| 0.0040690494
6 ( 18.75000)| 0.0036733200
7 ( 22.50000)| 0.0032319901
8 ( 26.25000)| 0.0027642359
9 ( 30.00000)| 0.0022889516
10 ( 33.75000)| 0.0018240699
11 ( 37.50000)| 0.0013860863
12 ( 41.25000)| 0.0009897255
13 ( 45.00000)| 0.0006477219
14 ( 48.75000)| 0.0003706143
15 ( 52.50000)| 0.0001667135
16 ( 56.25000)| 0.0000419571
17 ( 60.00000)| 0.0000000000
18 ( 63.75000)| 0.0000419492
19 ( 67.50000)| 0.0001667268
20 ( 71.25000)| 0.0003706748
21 ( 75.00000)| 0.0006479067
22 ( 78.75000)| 0.0009901676
23 ( 82.50000)| 0.0013869550
24 ( 86.25000)| 0.0018255374
25 ( 90.00000)| 0.0022911254
26 ( 93.75000)| 0.0027670879
27 ( 97.50000)| 0.0032353052
28 ( 101.25000)| 0.0036767116
29 ( 105.00000)| 0.0040720127
30 ( 108.75000)| 0.0044027392
31 ( 112.50000)| 0.0046524219
32 ( 116.25000)| 0.0048079360
33 ( 120.00000)| 0.0048607787
Т.о. необходимо:
1) в группе $statpt прописать сканируемую (замораживаемую) координату IFREEZ(1)=…, так как подпрограмма rsurface представляет собой ряд последовательных оптимизаций с одной замороженной координатой;
2) в группе $surf указываются следующие параметры:
ndisp1=… — общее число точек на PES;
disp1=… — шаг изменения координаты при переходе от одной точки на PES к другой (Ангстремы, градусы);
vect1(…)=1 — указывается та же координата, которую заморозили в группе $statpt. Она же является вектором смещения при движении по PES;
orig1=0 или orig1=1 — указывает программе, с какого конца PES стартовать, если orig1=0 — сканирование начнется с той координаты, которую Вы заморозили вначале.
ENERGY DELTA MAP(S) (W.R. TO THE LOWEST FOUND)
————————————
ICOORD1, | ENERGY
COORD1 | DELTA
—————+———————
1 ( 0.00000)| 0.0048607787
2 ( 3.75000)| 0.0048076271
3 ( 7.50000)| 0.0046512997
4 ( 11.25000)| 0.0044006116
5 ( 15.00000)| 0.0040690494
6 ( 18.75000)| 0.0036733200
7 ( 22.50000)| 0.0032319901
8 ( 26.25000)| 0.0027642359
9 ( 30.00000)| 0.0022889516
10 ( 33.75000)| 0.0018240699
11 ( 37.50000)| 0.0013860863
12 ( 41.25000)| 0.0009897255
13 ( 45.00000)| 0.0006477219
14 ( 48.75000)| 0.0003706143
15 ( 52.50000)| 0.0001667135
16 ( 56.25000)| 0.0000419571
17 ( 60.00000)| 0.0000000000
18 ( 63.75000)| 0.0000419492
19 ( 67.50000)| 0.0001667268
20 ( 71.25000)| 0.0003706748
21 ( 75.00000)| 0.0006479067
22 ( 78.75000)| 0.0009901676
23 ( 82.50000)| 0.0013869550
24 ( 86.25000)| 0.0018255374
25 ( 90.00000)| 0.0022911254
26 ( 93.75000)| 0.0027670879
27 ( 97.50000)| 0.0032353052
28 ( 101.25000)| 0.0036767116
29 ( 105.00000)| 0.0040720127
30 ( 108.75000)| 0.0044027392
31 ( 112.50000)| 0.0046524219
32 ( 116.25000)| 0.0048079360
33 ( 120.00000)| 0.0048607787
Попробовал в универе. Считает минут 20 на 3м пне с 512 МБ оперативки. Пришел домой, опробовал (пень 4й 2ГГц с 256 МБ). Считает 2 минуты и выдает:
————————————
ICOORD1, | ENERGY
COORD1 | DELTA
—————+———————
1 ( 0.00000)| 5.3315090935
2 ( 3.75000)| 5.5801255538
3 ( 7.50000)| 5.4369296427
4 ( 11.25000)| 5.2688268339
5 ( 15.00000)| 5.0935055996
6 ( 18.75000)| 4.9152352914
7 ( 22.50000)| 4.7355155004
8 ( 26.25000)| 4.5549717251
9 ( 30.00000)| 4.3739151725
10 ( 33.75000)| 4.1925180253
11 ( 37.50000)| 4.0109456852
12 ( 41.25000)| 3.8291374985
13 ( 45.00000)| 3.6471958836
14 ( 48.75000)| 3.4651558153
15 ( 52.50000)| 3.2830388248
16 ( 56.25000)| 3.1008604189
17 ( 60.00000)| 2.9186321135
18 ( 63.75000)| 2.7363628137
19 ( 67.50000)| 2.5540593950
20 ( 71.25000)| 2.3717272614
21 ( 75.00000)| 2.1893707315
22 ( 78.75000)| 2.0069933197
23 ( 82.50000)| 1.8245978528
24 ( 86.25000)| 1.6421867646
25 ( 90.00000)| 1.4597618699
26 ( 93.75000)| 1.2773249110
27 ( 97.50000)| 1.0948773450
28 ( 101.25000)| 0.9124202669
29 ( 105.00000)| 0.7299307319
30 ( 108.75000)| 0.5474573980
31 ( 112.50000)| 0.3649776500
32 ( 116.25000)| 0.1824915588
33 ( 120.00000)| 0.0000000000
Здесь что-то явно не так!) Может, ему оперативной памяти маловато, или еще какая беда приключилась?
У меня тоже вопрос по этой поверхности энергии по 2 координатам. Я заморозил 2 координаты и в входном файле такая приписка.
$surf
vect1(28)=1
ndisp1=20
disp1=0.1
vect1(34)=2
ndisp2=20
disp2=0.1
И у меня почему-то координата 34 прибавляет по 0.2 ангстрема… с чем это может быть связано?
все, разобрался.
Здраствуйте! У меня вопрос: как в Gamess с помощью ключа IFrees заморозить сразу 2 координаты?
просто написав их через запятую например так ifreez(1)=4,7
Здравствуйте!
Обращаюсь к вам с таким вопросом. Я пыталась поставить разложение энергии взаимодействия по методу Морокумы и Китауры (программа GAMESS, система — два ароматических кольца). Для пробных систем (димер воды и димер бензола) все более менее получается, если число базисных функций меньше 200. При увеличении числа базисных функций (больше 200) программа почему-то начинает считать не энергию взаимодействия, а энергию комплекса в целом. У меня довольно большие системы, а брать базис 3-21G смысла нет. Скажите, пожалуйста, действительно ли в GAMESS при таком расчете есть ограничение на число базисных функций или моя ошибка в чем-то другом? И если есть, то можно ли это ограничение как-то обойти?
Извините, если мой вопрос не в тему. Я первый раз на этом форуме.
С уважением,
Ольга
Здравствуйте, помогите пожа-а-алуйста разобраться, как работает в программе FireFly функция, которая только-только появилась, называется ISC
(InterStateCrossingminimum energy crossing point)
— поиск минимума на поверхности пересечения!
И если она работает, то можно ли найти с ее помощью точку пересечения двух кривых, описывающих перенос электрона с кластера на молекулу в газовой фазе?
Заранее благодарна, Людмила
В общем ранее для запуска PC GAMESS на 4 ядрах я использовал скрипт, подобный этому:
export P4_RSHCOMMAND=ssh
for arg in $@
do
dos2unix $arg.dat
mv -T $arg.dat input
ssh -t -t $HOSTNAME /calc/g1/pcgamess -o $arg.gms /calc/g1 /calc/g2 /calc/g3 /calc/g4 -p4pg procgrp &
tail --retry -F $arg.gms --pid=$!
Дальнейшая часть скрипта к его работе отношения не имеет и безжалостно отрезана.
Он зарекомендовал себя хорошей работой, но однажды, будучи переделан под одноядерную работу, затем был, вроде бы, возвращен к исходному виду, но работать на 4 ядрах не хочет… Структура папок не менялась. Все дело происходит под opensuse 10.3 x64. Прошу помочь с советом, но не предлагать использовать smp-gampa или что-нибудь еще хуже.
Он зарекомендовал себя хорошей работой, но однажды, будучи переделан под одноядерную работу, затем был, вроде бы, возвращен к исходному виду, но работать на 4 ядрах не хочет… Структура папок не менялась. Все дело происходит под opensuse 10.3 x64. Прошу помочь с советом, но не предлагать использовать smp-gampa или что-нибудь еще хуже.
Файл procgrp не испортился?
Совсем испортился 🙂 Точнее его просто нет. Если не сложно, поделитесь им, пожалуйста.
Для ответа в этой теме необходимо авторизоваться.