Диссертация (786409), страница 12
Текст из файла (страница 12)
Он может быть общий для всех потенциалов или иметь расширение для нового потенциала. Реализация такого класса имеет вид: Вычислительное ядро на ОРУ объявляется шаблонной функцией, которая принимает любой потенциал: 2.5 Технология разработки программного обеспечения Процесс программирования алгоритмов молекулярно-динамического моделирования на графических картах разбивается на три этапа: выбор основы проекта, добавление основного функционала, добавление внешнего функционала. На первом этапе выбирается шаблон С1Д)А, который соответствует поставленной задаче.
Производитель ХУП)1А предоставил широкий набор шаблонов; выбор одного из них обеспечит длительную поддержку и полную совместимость с аппаратным обеспечением и операционными системами. На втором этапе в проект включается основной функционал. Рекомендуется включать процедуры и дополнительные файлы так, чтобы они собирались линковщиком базового проекта.
На третьем этапе в проект добавляется дополнительный функционал на уровне кода или совместимых модулей. Описанный процесс можно представить на схеме (рис. 2.15). СЦОА рапгыез зсмргц (Мапоопз) нлн Мааеае (онпз) . Эапусз про(риммы " ' ммгм.*. м 1 Сисгемв наслгц (Э пг огсгемауправпения ' ' ' 1 ремйзвци» Слова 11 1 1. Орепос Погенциап взаимодеасгвнп ГрафинасаиавыВод .::.;... Иипуэпы(ыеалеммпы Еиа знмзЯД , 1раоглт', зоэффицйеизое З 1 1 .'фунзционвльныв злеменгы нслоль)рврмге зоолзинаг И -'1,~:С. Синема зраненнпданныз ''.,; Друлгеснсгемы визуализации '-Хр)ление амрдиназц ~ , ''ФУНИРМНГНМНЬМИПЕ(ааигм ' н мц мае ыыс н ,:, ДРугие пролгаммные зомплвзсы система звиуззи данныи:: Рвмгег сил ,Ямы ] ЯЯ(г()(Я [с м 1 Врпзизазиромние (Я .м . Я ~~ с:::е.':::л с яа:ы 1 ГЛЭ ап: Рисунок 2Л5.
Схема процесса разработки взаимодействующих компонент программы Архитектура разработанного программного комплекса содержит модули СВОА, ОрепИ, системы ввода-вывода баз данных, системы создания, редактирования 77 структур, системы эволюции. Структуры нанообразцов могут создаваться изначально, могут редактироваться в процессе моделирования, могут загружаться из базы данных. Координаты записываются в переменные, состоящие из 4 компонентов: 3 пространственных составляющих и массы атома. Атомы имеют координаты в пространстве и не требуют дополнительных сведений по связям.
Связи между атомами визуально не отображаются. Связность двух атомов определятся за счет параметров межчастичного потенциала. Такой подход удобен как для хранения данных, так и для исключения ошибок моделирования. В качестве примера приведена технология создания программы молекулярно- динамического моделирования наноструктур; на первом этапе за основу проекта берется шаблон С1Л)А рагбс1ез, предоставляющий базовый набор инструментов моделирования многочастичного взаимодействия. На втором этапе в проект добавляется функционал геометрического построения, межатомного взаимодействия, выделения памяти, создания списков соседних частиц, отображения структур. На третьем этапе добавлятеся код модуля генерации начального распределения в основной проект.
Проект целиком собирается в рамках базового компоновщика. 2.6 Визуализация вычислений в реальном времени Одна из компонент программных комплексов молекулярно-динамического моделирования осуществляет анимацию и вывод на экран. Известные системы, такие как 1.АММРБ и ХАМР, реализуют вычислительный блок отдельно от графического отображения. В рамках предлагаемой технологии разработки программ отображение результатов и процесса моделирования добавляется на втором этапе. Реализацию алгоритмов отрисовки и систему взаимодействия данных необходимо заложить в процессе проектирования, так как переменные используются во всех процедурах комплекса. Это принципиальное решение — хранить данные в подходящих структурах, чтобы их вывести на экран, а также чтобы была возможность работы на различных вычислительных машинах.
Визуализация моделирования важна, поэтому одна из задач реализации алгоритмов молекулярно-динамического моделирования — это 30 отображение. В наноинженерии принципиально именно трехмерное отображение структур, что дает первоначальное представление о правильности моделирования. Программные комплексы работают в разных операционных системах. Научные программы и программы для физического моделирования в основном работают под Ьзппх системами.
Программы для графического отображения данных в основном работают под %тдозз з системами. Поэтому актуальна задача визуализировать полученные данные расчетных программ. Основным инструментом, который позволяет отображать графику под Ь|пих и Жзпйоззз, является ОрепОЬ. Чаще всего программы сначала сохраняют данные в файлы на диске и затем считывают их и отображают на экране. Такой процесс может занимать несколько дней. В разработанной программе за счет получения данных в памяти графической карты результаты могут выводиться на экран в реальном времени. Для вывода на экран также используется система ОрепСгЬ.
Для сравнения на рисунках представлены различные образцы наноструктур — в программе огайо, УМ0 и в разработанной программе. $В "-' ' " . ''ееэзке~аь-', » ' -', 'ФФ Рисунок 2яб. Вна фуллерена в отпо, умП, разработанной программе 79 и ммпа„тему, - Ййа Рисунок 2.17. Внд флуорофуллерена в от11о, УМВ, разработанной программе И "за'ийэ~девс-,.-'Фййй Рисунок 2.18. Вид листа графена в от11о, УМВ, разработанной программе и ', '.
'' ''.эензчюаь~е';: ';еФВ Рисунок 2.19. Вид нанотрбуки (9,0) в от11о, УМВ, разработанной программе 'И .: ' ' ФО:На.~о.Фу ' .- Знай Рисунок 2.20. Вид цепной передачи в от)1о, УМВ, разработанной программе 80 Рисунок 221. Нид фуллерена, катяшегося по листу графена в очно, УМП, разработанной программе Архитектура разработанной программы (рис. 2.22) для работы с ЗТУ графикой состоит из данных, содержащих координаты атомов, наборов компонент ОрепОЕ для отображения и изменения сцены и главного цикла отрисовки, который совпадает с главным циклом вычислений.
Таким образом, данные моделирования наноструктур отображаются на экране в момент поступления данных. В этом программа имеет преимущества перед всеми указанными выше комплексами. Модуль визуализации Графический':айвод , [ЯЕ м пЯ~~: Консбльный вывод .....,.1.. :; система ОрепОЬ Отосбраженигегпротсгттранства паверат сдвиг масатабирпваиие текст меню Визуагпьнйе элементы Рисунок 2.22.
Архитектура подсистемы визуализации процессов моделирования Формат хранения данных Рго1е1пз ьза1а Вазез 1601 имеет широкое распространение, поэтому положительной стороной работы программы является отображение таких данных. База поддерживается многими исследователями из разных 81 областей науки. Структура данных позволяет хранить миллионы атомов. Большинство программ моделирования и отображения поддерживют формат рйЬ. Атомы нумеруются по порядку, номер атома не несет информационной составляющей.
Ячеистая модель пространства и списки соседних атомов основываются на координатах. В файле данных атом маркируется символом из периодической таблицы элементов. В программе символ элемента заменяется на массу. Каждому элементу задается цвет для отображения. Цвет может заменяться на градиентную расцветку для отображения температуры. Элементу задан радиус в ан гетр ем ах в с о ответе вин с физическими характеристиками. Атомы имеют массы и трехмерные координаты, на экран выводится их проекция в перспективе. Проекцию можно поворачивать, двигать, масштабировать манипулятором типа «мышь», Пространство ограничено кубическим боксом.
Поворот проекции происходит относительно центра окна программы вместе с боксом. Разработанный программный комплекс позволяет отображать процесс молекулярно-динамического моделирования на персональном компьютере при наличии графической видеокарты от МУ101А. Фазовый переход листа графе на можно наблюдать в молекулярно- динамическом процессе, так как потенциал Бреннера позволяет моделировать стуруктуру вещества во всем диапазоне температур. Фазовые переходы играют важную роль в формировании граней вещества. Рисунок 2,23. Значения потенциальной энергии в зависимости от температуры На рисунке видно 3 фазовых перехода при температурах Т~=2260К, Т2=2750К и Т;=3520К.