Цитата(AndrewN @ Oct 2 2014, 05:08)

Гложет меня обоснованное сомнение, что вы безбожно путаете и упрощаете. Задачи, которые решают методом мол.динамики это статистические задачи, где молекулы абстрагируются шариками, а силы каким-нибудь потенциалом Леннарда-Джонса.
Я безбожно упрощаю. Не хочется пугать электронщика конформационной химией

, тем более что передо мной стояла задача лишь продемонстрировать сам принцип, как можно меньше вникая в детали, поскольку объект у автора темы совершенно иной.
Цитата(AndrewN @ Oct 2 2014, 05:08)

Задачи на конфигурацию и деформации с шариками работать не могут, конфигурация молекулы в основном состоянии определяется ковалентными связями (и не только, если есть, например водородные связи), кроме того, взаимодействие между частями молекулы и между разными молекулами определяется целой гамммой ван-дер-ваальсовых и дисперсионных (лондоновских) сил, диполь-дипольных (мгновенный диполь с наведённым и/или с постоянным диполем, постоянные диполи друг с другом, мгновенные диполи), и ион-дипольных взаимодействий - в растворах например. Дисперсионные силы не имеют классического аналога. Это уж никак не молекулярная динамика.
Несомненно, задачи молекулярной динамики сильно заточены под свойства молекул, которыми объекты автора темы заведомо не обладают, но упрощать задачу, которая уже имеет программную реализацию, несравненно проще, нежели пытаться добавить к чужой программе новые функции.
Чтобы исключить деформацию молекулы, достаточно придать ей жесткий каркас. Например, объект кубической формы можно собрать из атомов углерода, наподобие реально существующих молекул фуллерена/букибола (правильный многогранник). Более того - чтобы не возиться с расстановкой двойных связей, распихивая лишние валентности, можно собрать куб из атомов ... алюминия, который уже трехвалентный. И как бы чудовищно ни были напряжены связи в такой молекуле, программа молекулярной динамики не посмеет ее разрушить, т.к. разрывать межатомные связи ей запрещено (точнее - она этого делать не умеет). Поэтому можно тупо собирать геометрические многогранники из одинаковых атомов той валентности, сколько ребер сходится на вершине. Максимум - 6 ребер на вершину потянет сера, но это скорее излишество, поскольку такой случай среди многогранников встречается редко (я даже не слышала, что такие бывают).
В этом случае весь список сил, которые вы упомянули (ван-дер-ваальсовы, дисперсионные, диполь-дипольные, ион-дипольные и пр.), если они и учитываются моделью, то складываются в какую-то одну равнодействующую силу. А дипольных сил, возможно, и вовсе не будет из-за предельно высокой симметрии и однородности атомного состава. И, поскольку, такая структура предельно проста для компьютерного расчета, то возможно он потянет десятки, а то и сотни таких молекул. Короче говоря, в задаче на укладку требуется лишь способность молекул худо-бедно притягиваться друг другу, тогда как физическая природа силы притяжения нам пофигу.
Цитата(AndrewN @ Oct 2 2014, 06:56)

Более плотная жидкость стекает вниз. Металлическая гайка в сахаре утонет, а кусок рафинада всплывёт - как камешек и деревяшка. Плотности разные.
Это ваше замечание совершенно неуместно, поскольку силы земного притяжения в молекулярной модели отсутствуют, и потому верха и низа здесь нет. Здесь упаковка идет за счет взаимного притяжения частиц, а вовсе не под действием силы тяжести, когда верхние слои давят своим весом на нижние. Так что можно совершенно не беспокоиться о том, что что-то всплывет на поверхность или опустится на дно.
Цитата(AndreyVN @ Oct 2 2014, 09:44)

Сталкивался с обсуждаемой задачей. В молекулярной механике шариками моделируются атомы, а молекула - это конструкция из шариков обтянутая упругой пленкой. Нужно было найти объем такой конструкции, чтобы посчитать работу по образованию полости в растворителе. Дальше можно найти плотность упаковки для кластера связанных молекул. Обе части задачи уходят в дифуры в частных производных, простых решений не имеют. А могут и сложных решений не иметь.
Я чуть ранее объяснила вам, как следует собирать многогранники из атомов. Это предельно просто, поскольку криво собранной конструкции программа немедленно придаст правильную геометрическую форму, выравнивая напряжения во внутренних связях, а их равенство изначально определено симметрией. Поэтому при задании координат, атомы можно располагать на экране где-угодно, лишь бы все валентные связи между ними были указаны без ошибок. А сожмется она в симметричную компактную форму сама на первой же итерации.
Цитата(AndreyVN @ Oct 2 2014, 09:44)

Насколько я понимаю, такая задача на сегодня решается только перебором.
Правильнее это называть итерациями, а не перебором, т.к. полной перебор всевозможных вариантов взаимного расположения был бы здесь неоправданно долог.