Научная статья на тему 'РОЛЬ МЕЖПЛАТФОРМЕННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПОДДЕРЖКИ МОДЕЛИРОВАНИЯ В МАТЕРИАЛОВЕДЕНИИ'

РОЛЬ МЕЖПЛАТФОРМЕННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПОДДЕРЖКИ МОДЕЛИРОВАНИЯ В МАТЕРИАЛОВЕДЕНИИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
24
10
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАТЕРИАЛОВЕДЕНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Евстигнеев Александр Викторович, Смирнов Владимир Алексеевич

Целесообразностью постановки численных экспериментов в задачах материаловедения обусловлена необходимость разработки и развития соответствующего программного обеспечения. В настоящей работе обсуждаются ключевые моменты, подлежащие учету на стадии проектирования и реализации, в т.ч. - компромисс между затратами времени на разработку и сопровождение. Обозначена роль межплатформенного программного обеспечения.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Евстигнеев Александр Викторович, Смирнов Владимир Алексеевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

STATUS OF MIDDLEWARE IN SIMULATION SOFTWARE DEVELOPMENT FOR MATERIAL SCIENCE

Effectiveness of numerical experiments in material science dictates necessity to design and develop scientific software. In the present work we have briefly discussed key aspects that must be taken into account during such processes. Trade-off between time required for initial development and further maintenance is designated; role of the middleware is denoted.

Текст научной работы на тему «РОЛЬ МЕЖПЛАТФОРМЕННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПОДДЕРЖКИ МОДЕЛИРОВАНИЯ В МАТЕРИАЛОВЕДЕНИИ»

Национальная ассоциация ученых (НАУ) # IV (9), 2015 / ТЕХНИЧЕСКИЕ НАУКИ

99

Список литературы

1. Моделирование динамики перемещения груза в компьютерном тренажере погрузочно-разгрузоч-ного устройства/ Е.В. Долгова, Р.А. Файзрахманов, Д.С. Курушин и др. // Вестник Московского государственного областного университета. Серия: Физика-математика, 2012, № 2, С. 57-64.

2. Моделирование огибания препятствий мобильным роботом/ Д.С. Курушин, Е.В. Долгова, Р.А. Файзрахманов //Информационно-измерительные и управляющие системы. 2014. Т. 12. № 9, с. 58-61.

3. Принципы организации работ с применением

мобильного робота / Курушин, Е.В. Долгова, Р.А. Файзрахманов // Научное обозрение, 2014, №7, 219-221

4. Принципы построения онтологии мобильного робота/ Е.В. Долгова Д.С. Курушин //Научное обозрение, 2014, №7, 253-256

5. Программно-аппаратный модуль колесного робота / Е. В. Долгова, В. В. Зубов // Вестник Пермского государственного технического университета. Электротехника, информационные технологии, системы управления. — 2010.— № 4.— С. 108-114.

РОЛЬ МЕЖПЛАТФОРМЕННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПОДДЕРЖКИ

МОДЕЛИРОВАНИЯ В МАТЕРИАЛОВЕДЕНИИ

Евстигнеев Александр Викторович

Аспирант, Московский государственный строительный университет, г. Москва

Смирнов Владимир Алексеевич

кандидат техн. наук, доцент, Московский государственный строительный университет, г. Москва

STATUS OF MIDDLEWARE IN SIMULATION SOFTWARE DEVELOPMENT FOR MATERIAL SCIENCE Evstigneev Alexandr Viktorovich, postgraduate, Moscow State University of Civil Engineering, Moscow Smirnov Vladimir Alexeevich, Candidate of Science, assistant professor, Moscow State University of Civil Engineering, Moscow АННОТАЦИЯ

Целесообразностью постановки численных экспериментов в задачах материаловедения обусловлена необходимость разработки и развития соответствующего программного обеспечения. В настоящей работе обсуждаются ключевые моменты, подлежащие учету на стадии проектирования и реализации, в т.ч. - компромисс между затратами времени на разработку и сопровождение. Обозначена роль межплатформенного программного обеспечения.

ABSTRACT

Effectiveness of numerical experiments in material science dictates necessity to design and develop scientific software. In the present work we have briefly discussed key aspects that must be taken into account during such processes. Trade-off between time required for initial development and further maintenance is designated; role of the middleware is denoted.

Ключевые слова: численный эксперимент; межплатформенное программное обеспечение; материаловедение.

Keywords: simulation; middleware; material science.

Для современного материаловедения, как и науки в целом, характерно широкое использование математического моделирования и численного эксперимента. Такое положение в первую очередь обусловлено двумя факторами:

- возможностью выполнения многовариантных исследований, в ходе которых в качестве входных переменных допустимо выбрать величины, недоступные для варьирования в натурных исследованиях;

- потенциальным сокращением затрат времени и материальных ресурсов на выполнение исследований.

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

формирование целостной классификации инструментальных (программных) средств моделирования, применение которых целесообразно в практике строительного материаловедения. Одной из подобных работ является; в этой работе критерий пространственного масштаба рассмотрен в совокупности с критериями гетерогенности и доминирующего взаимодействия в системе. Предложена классификация, которая может быть основой для систематического анализа доступных моделей, методов и программных средств моделирования структурообразования строительных композитов; выделены пространственные уровни, соответствующие принятой классификации структурных уровней композита по критерию доминирующего взаимодействия. Было показано, что, несмотря на наличие большого числа программных средств, реализующих алгоритмы численного моделирования для наиболее распространенных в исследовательской практике моделей материала - от алгоритмов квантовой химии до метода частиц, задача программной реализации новых моделей в материаловедении сохраняет актуальность.

1GG

Национальная ассоциация ученых (НАУ) # IV (9), 2G15/ ТЕХНИЧЕСКИЕ НАУКИ

Последнее может быть проиллюстрировано на примере одного из наиболее распространенных в вычислительной практике методов - метода частиц, лежащего в основе молекулярной динамики - решения системы обыкновенных дифференциальных уравнений классической динамики для контекста, определяемого принятой моделью материала]. Важность метода для теоретико-практических исследований обусловила доступность большого числа программных инструментов, в т.ч. - с открытым исходным кодом. Так, пакеты GROMACS] и LAMMPS могут быть использованы для численных экспериментов с силовыми полями, определяемыми кулонов-ским потенциалом, а также потенциалами Леннард-Джонса и Букингема. В то же время, моделирование микро- и макроструктуры строительных композитов требует введения силовых полей, не являющихся потенциальными; по этой причине требуется или доработка расчетных модулей существующего программного обеспечения (ПО), или разработка авторского ПО.

На первый взгляд, доработка свободного ПО (СПО) является подходом, наилучшим с точки зрения затрат ресурсов. Следующий пример демонстрирует, что подобное утверждение является по меньшей мере спорным: [gromacs-5.0]$ find. -type f | wc -l 4529 [gromacs-5.0]$ find. -type f -name '*.[h|c]' | wc -l 2724 [gromacs-5.0]$ find. -type f -name '*.[h|c]' -exec cat {} \; | wc -l 2250970

Дерево исходного кода пакета GROMACS версии 5.0 содержит 4529 файлов, из которых 2724 - файлы исходного кода. Общий объем исходного кода превышает два миллиона строк. Несмотря на то, что ядро расчетного метода сосредоточено в небольшой части исходного кода, доработка потребует весьма существенных затрат времени на анализ использованных реализаций.

Большой объем исходного кода - не единственное препятствие на пути доработки СПО. Одним из важнейших негативных факторов является то, что большинство свободных пакетов распространяются на условиях лицензий, несовместимых с корпоративными политиками защиты интеллектуальной собственности - лицензий GPLv2 и, в особенности, GPLv3 (эти лицензии часто называют «вирусными»: использование распространяемого на их условиях кода требует, чтобы дериватив также распространялся на условиях GPL).

Решение о разработке авторского расчетного программного обеспечения должно предваряться анализом целого ряда вопросов, лежащих как в технической, так и в юридической плоскости:

- выбором множества целевых программно-аппаратных платформ;

- требованиями к сопровождению и расширению функциональности;

- требованиями к условиям лицензирования. Требования к условиям лицензирования - важнейший юридический вопрос. Если разрабатываемое ПО предполагается распространять на условиях лицензии GPL, то оказывается возможным использование большого числа существующих наработок посредством включения фрагментов исходного кода. Во всех других случаях такое включение не является допустимым (хотя возможность динамической компоновки с модулями, распространяемыми на условиях лицензии GPL, сохраняется).

Решение технических вопросов - компромисс между кратковременными и долговременными затратами ресурсов. Ограничение множества целевых платформ, отказ от последующего переноса на другие аппаратно-программные платформы и вывод об отсутствии целесообразности дальнейшего расширения функциональности позволяют сократить время, необходимое для создания работоспособного программного инструмента. Вместе с этим, практика показывает, что подобные решения в дальнейшем приводят к смене архитектуры ПО и полному рефакторингу исходного кода.

Учет требования портируемости ПО приводит к необходимости решения вопросов, обычно не входящих в сферу интересов разработчиков научного ПО. Абстрактные модели, реализуемые наиболее часто используемыми в вычислительной практике языками высокого уровня (ЯВУ) C и Fortran, не включают не только каких-либо интерактивных средств помимо текстового терминала, но и, что более важно, средств поддержки параллельных вычислений. Но в цепочке «предметник - математик - прикладной программист - системный программист» эффективная работа каждого звена возможна только в том случае, когда соответствующий специалист по меньшей мере осведомлен о средствах, используемых специалистами других уровней.

Таким образом, реализация авторского ПО по необходимости должна опираться на третьесторонние решения: от интерфейсов прикладного программирования платформы (WinAPI, вызовы и расширения POSIX, X Window, OpenGL и др.) до высокоуровневых библиотек поддержки мультипрограммирования (OpenMP, MPI), ввода-вывода и графического интерфейса пользователя (ГИП) - SDL, Allegro, Tcl/Tk, GTK+ 2/3, QT 3/4/5, wxWidgets, FLTK и др. Все многообразие последних принято обозначать термином Middleware (межплатформенное ПО, МПО) - «прослойка» между реализацией востребованных в прикладном ПО алгоритмов и целевой платформой. Изложенное также свидетельствует, что вопрос выбора или реализации МПО лежит не только в сфере обязанностей системного программиста; всем этим, частности, была обусловлена разработка МПО, ориентированного на поддержку мультипрограммирования и ГИП в задачах [1] моделирования структуры и свойств строительных материалов.

Литература

1. Смирнов В.А., Королев Е.В., Евстигнеев А.В. Моделирование и инструментальные средства численного анализа в нанотехнологиии материаловедения: обзор // Нанотехнологии в строительстве. 2Q14. - Том 6, № 5. - С. 34-58.

2. Rapaport D.C. The Art of Molecular Dynamics Simulation. - Cambridge: Cambridge University Press, 2QQ4.

3. Berendsen H.J.C., van der Spoel D., van Drunen R. GROMACS: A message-passing parallel molecular dynamics implementation // Computer Physics Communications, 1995, vol. 91, no 1-3, pp. 43-56.

4. Plimpton S. Fast Parallel Algorithms for Short-Range Molecular Dynamics // Journal of Computational Physics, 1995, vol. 117, pp. 1-19.

i Надоели баннеры? Вы всегда можете отключить рекламу.