гауссиан IRC в xyz

вопросы строения молекул и квантовой химии
Ответить
Аватара пользователя
amge
Сообщения: 2050
Зарегистрирован: Вт июл 31, 2007 11:42 am

гауссиан IRC в xyz

Сообщение amge » Чт янв 17, 2013 6:17 am

Коллеги!
Не знаете ли программы, способной извлечь геометрии точек IRC из гауссиановского лога в виде конкатенированного xyz (или sdf и т.п.)?

Аватара пользователя
Гесс
Сообщения: 13067
Зарегистрирован: Ср фев 15, 2012 11:19 pm

Re: гауссиан IRC в xyz

Сообщение Гесс » Чт янв 17, 2013 7:12 am

Боюсь что только руки, ну или приспособить скрипт.
Если ничего не наидете - киньте мне аутпут я в свободное время потренируюсь в скриптомарательстве. (У самого IRC аутпутов нет и генерить их лениво)

Аватара пользователя
amge
Сообщения: 2050
Зарегистрирован: Вт июл 31, 2007 11:42 am

Re: гауссиан IRC в xyz

Сообщение amge » Чт янв 17, 2013 12:11 pm

Спасибо за надежду :)

Во вложении log и fchk для инверсии аммиака. Мне показалось, с fchk разобраться проще.
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Аватара пользователя
Гесс
Сообщения: 13067
Зарегистрирован: Ср фев 15, 2012 11:19 pm

Re: гауссиан IRC в xyz

Сообщение Гесс » Чт янв 17, 2013 6:05 pm

Таак. Я начал смотреть структуру аутпута и что из нее надо выцепить.
Тема не обещает быть слишком плодовитой поетому я буду излагать мысли монологом, а когда я сделаю ошибку вы меня поправите.

В fchk координат я не увидел.

В аутпуте 21точка, но ключевои блок Coordinates (Angstroms) встречается 81 раз.
Это происходит из-за того что для ряда точек до конвергенции проходит несколько степов (для большинства 2, но для 8,9,18,19 - не менее 5)
Нам нужна последняя геометрия для каждои точки.
Например по блоку "Calculating another point on the path." происходит 20 прыжков. Но после этой фразы, как я понимаю идет уже первый координатный блок следующеы точки.
Раз после схождения нам не дают блок с сошедшеися геометрией, надо брать последниы блок перед ней.

Пока логично?

Аватара пользователя
Гесс
Сообщения: 13067
Зарегистрирован: Ср фев 15, 2012 11:19 pm

Re: гауссиан IRC в xyz

Сообщение Гесс » Чт янв 17, 2013 6:13 pm

"Calculating another point on the path." неудобен, ибо впервые встречается перед первои точкой (где нет геометрии) и не встречается после последнеы точки второго пути.

Удобнее будет например "NET REACTION COORDINATE UP TO THIS POINT"

Значит нам надо находить блоки "NET REACTION COORDINATE UP TO THIS POINT", но что делать дальше?
Напрашивается вариант "отступить вверх Н строк и выгрызть Х строк". При этом мы предполагаем что расстояние от последнего блока геометрии до строки-маркера постоянно.
Я это не проверял но жопа подсказывает что нет.
Тогда другой вариант - нарезаем аутпут на 21 файл по строке маркеру:
1) от начала до первого маркера
2) от первого маркера до второго
...
20) от предпоследнего маркера до последнего
21) хвост, содержаший информацию которая нам ненужна.

После этого в из каждого фаила леким грепом достаем стоки от последнего маркера Coordinates (Angstroms) вниз.

Полез разбираться как нарезать фаил на куски.

Аватара пользователя
Гесс
Сообщения: 13067
Зарегистрирован: Ср фев 15, 2012 11:19 pm

Re: гауссиан IRC в xyz

Сообщение Гесс » Пт янв 18, 2013 7:25 pm

Создана альфа версия скрипта.
Пока что требует создания вручную фаила со списком атомов.
Имхо уже неслабо облегчает работу.
Будет выложена вечером с подробной инструкцией.

Аватара пользователя
Гесс
Сообщения: 13067
Зарегистрирован: Ср фев 15, 2012 11:19 pm

Re: гауссиан IRC в xyz

Сообщение Гесс » Пт янв 18, 2013 8:49 pm

Amge, can you generate output for any TS with different length of pathway?
Sorry for english, still not at home but have some ideas about improving skript.
Alpha-version perhaps will be later.

Аватара пользователя
Лечащий Врач
Сообщения: 382
Зарегистрирован: Вс окт 26, 2003 2:09 pm
Контактная информация:

Re: гауссиан IRC в xyz

Сообщение Лечащий Врач » Сб янв 19, 2013 2:00 pm

Боюсь показаться бестактным, но я точно помню, что amge - практикующий (или практиковавший) Perl-программист :) я боюсь, что любой скрипт он все равно перепишет ;)

Поэтому у меня вопрос скорее к Amge: а зачем вам куча xyz-файлов? График по любой координате умеет строить ChemCraft, рисовать movie-тоже... Или это не работает именно для IRC?

[ Post made via iPhone ] Изображение

Аватара пользователя
Лечащий Врач
Сообщения: 382
Зарегистрирован: Вс окт 26, 2003 2:09 pm
Контактная информация:

Re: гауссиан IRC в xyz

Сообщение Лечащий Врач » Сб янв 19, 2013 2:04 pm

Да, и вообще не исключено, что можно просто порезать файл на куски и скормить их open babel.

[ Post made via iPhone ] Изображение

Аватара пользователя
Гесс
Сообщения: 13067
Зарегистрирован: Ср фев 15, 2012 11:19 pm

Re: гауссиан IRC в xyz

Сообщение Гесс » Сб янв 19, 2013 5:36 pm

Я не знал что Amge программист.
Думаю такие фаилы удобны для делания анимации.
Фаил прилагаю.
Чтобы запихнуть на форум пришлось дать фаилу расширение тхт. Его рекомендую убрать.
Запускается с двумя величинами: именем фаила без расширения и числом атомов в молекуле
Например:
./IRCB NH3 4
Что делает каждая строка написано в коментарии под ней. Писал под себя, то есть как для людей в скриптах не понимаюших.

Должно работать с любым числом атомов и разной длиной путей. На фаилах кроме аммиака не тестилось.
Кто потестит - пишите, я IRC пока не люблю.
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Аватара пользователя
amge
Сообщения: 2050
Зарегистрирован: Вт июл 31, 2007 11:42 am

Re: гауссиан IRC в xyz

Сообщение amge » Вс янв 20, 2013 10:49 am

Лечащий Врач писал(а):Поэтому у меня вопрос скорее к Amge: а зачем вам куча xyz-файлов? График по любой координате умеет строить ChemCraft, рисовать movie-тоже... Или это не работает именно для IRC?
Гесс правильно предположил, xyz-файлы из IRC действительно нужны, чтобы их анимировать. Я недавно связался с Henry Rzepa, у которого в блоге куча анимаций, и он пожаловался, что не умеет соединять несколько ветвей IRC, чтобы получались плавные, без рывков анимации. А у меня как раз есть скрипты для этого, но проблема была в том, чтобы извлечь в подходящем формате точки IRC из гауссиановских расчетов.

ChemCraft'ом я не пользуюсь, но сейчас (в очередной раз :)) скачал и вижу, что он понимает IRC гауссиана. Спасибо за наводку! С помощью этой программы действительно довольно легко можно сделать и анимацию, и график. Но все же ручной работы будет довольно много. Оказывается, ChemCraft не включает в IRC начальную точку, которая (как правило) переходное состояние. Кроме того, ветви "туда" и "обратно" обе идут сверху вниз (как и в log-файле), а для анимации ветвь "туда" нужна снизу вверх. Так что проблема остается, хотя острота ее уже гораздо меньше.

Аватара пользователя
amge
Сообщения: 2050
Зарегистрирован: Вт июл 31, 2007 11:42 am

Re: гауссиан IRC в xyz

Сообщение amge » Вс янв 20, 2013 10:51 am

Гесс, спасибо Вам за труд. Парсер на bash - это круто! Я вам напишу в личку.

Аватара пользователя
sanya1024
Сообщения: 1672
Зарегистрирован: Чт янв 20, 2011 3:24 pm

Re: гауссиан IRC в xyz

Сообщение sanya1024 » Вс янв 20, 2013 4:30 pm

amge писал(а):ChemCraft'ом я не пользуюсь, но сейчас (в очередной раз :)) скачал и вижу, что он понимает IRC гауссиана. Спасибо за наводку! С помощью этой программы действительно довольно легко можно сделать и анимацию, и график. Но все же ручной работы будет довольно много. Оказывается, ChemCraft не включает в IRC начальную точку, которая (как правило) переходное состояние. Кроме того, ветви "туда" и "обратно" обе идут сверху вниз (как и в log-файле), а для анимации ветвь "туда" нужна снизу вверх. Так что проблема остается, хотя острота ее уже гораздо меньше.
Напишите об этой проблеме авторам ChemCraft-а. Они как раз сейчас работают над новой версией (я им писала осенью, когда заметила в текущей версии серьезные баги).
Вот и вся моя работа. Стеречь ребят над пропастью во ржи. (Дж. Д. Сэлинджер)

Ответить

Вернуться в «квантовая химия и моделирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 63 гостя