Свободная система математического моделирования Simfor на базе компилятора gfortran (Евгений Алексеев, OSEDUCONF-2020) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) |
||
(не показаны 4 промежуточные версии этого же участника) | |||
;{{SpeakerInfo}}: {{Speaker|Евгений Алексеев}} <blockquote> Система математического моделирования Simfor <ref name='r1'>Алексеев, Евгений Ростиславович; Лутошкин, Денис Александрович; Стародумов, Вячеслав Владимирович. Свободная система математического моделирования simfor на базе компилятора gfortran. Международный научный журнал «Современные информационные технологии и ИТ-образование», [S.l.], v. 15, n. 4, p. 820-827, dec. 2019. ISSN 2411-1473. Доступно на: http://sitito.cs.msu.ru/index.php/SITITO/article/view/585. doi: https://doi.org/10.25559/SITITO.15.201904.820-827</ref> была разработана в рамках выпускных магистерских работ на кафедре «Прикладная математика и информатика» в Вятском Государственном Университете (ВятГУ). </blockquote> {{VideoSection}} {{vimeoembed|408662091|800|450}} {{youtubelink|}} |HV5SEADxZIU}} {{SlidesSection}} [[File:Свободная система математического моделирования Simfor на базе компилятора gfortran (Евгений Алексеев, OSEDUCONF-2020).pdf|left|page=-|300px]] {{----}} == Thesis == Для установки системы на локальный компьютер или вычислительный кластер был написан скрипт, который собирает и добавляет библиотеки параллельных алгоритмов численного анализа и вывода графики в текстовый редактор Emacs, преобразует редактор Emacs в специализированную интегрированную среду разработки. Разработанная система ориентирована на работу с любыми linux-подобными операционными системами. В данный момент прошло тестирование системы на ОС Ubuntu, Mint, Debian. Сейчас проходит адаптация системы под отечественные ОС – BaseAlt, Rosa, Astra. В систему могут быть добавлены необходимы библиотеки на Фортране и С/С++ с открытым исходным кодом. Система доступна на сайте https://www.github.com/MatSysLib. {{----}} [[File:{{#setmainimage:Свободная система математического моделирования Simfor на базе компилятора gfortran (Евгений Алексеев, OSEDUCONF-2020)!.jpg}}|center|640px]] {{LinksSection}} <!-- <blockquote>[©]</blockquote> --> {{vklink|16761849}} {{fblink|2622118461374492}} <references/> [[Категория:OSEDUCONF-2020]] [[Категория:СПО в образовании]] [[Категория:Fortran]] [[Категория:Свободные библиотеки построения графиков]] {{stats|disqus_comments=0|refresh_time=2020-07-19T00:27:302021-08-31T18:19:58.964419020278|vimeo_plays=12|youtube_comments=0|youtube_plays=0}}58}} |
Текущая версия на 12:03, 22 октября 2021
- Докладчик
- Евгений Алексеев
Система математического моделирования Simfor [1] была разработана в рамках выпускных магистерских работ на кафедре «Прикладная математика и информатика» в Вятском Государственном Университете (ВятГУ).
Содержание
Видео
Презентация
Thesis
Как известно, современные задачи моделирования, встречающиеся при решении инженерных задач, проблем биологии и во многих других отраслях человеческой деятельности являются довольно сложными и имеют ряд особенностей:
- сложные дифференциальные уравнения, описывающие физические, технические, биологические и др. процессы;
- при дискретизации дифференциальных уравнений получаются матричные разностные уравнения, содержащие сотни тысяч и даже получающиеся в результате требуют огромного количества вычислений;
- кроме того, разрабатываемое специализированное программное обеспечение использует ряд довольно стандартных алгоритмов (решение огромных систем линейных алгебраических уравнений, операции над матрицами большой размерности (n~10 000 – 1 000 000 ) и т.д.).
Для разработки современных программ математического моделирования программист должен знать предметную область, численные методы ( в том числе и параллельные). Также от разработчика требуется умение разрабатывать высокоэффективные параллельные приложения.
Не всегда просто использовать опыт и коды разработчиков других систем, изложенных в современных научных работах. Ряд современных библиотек, реализующих эффективные параллельные алгоритмы вычислительной математики, являются проприетарными. Разработка ПО для решения задачи математического моделирования является сложной, дорогостоящей, громоздкой и длительной по времени.
Авторам неизвестны свободные универсальные интегрированные среды разработки параллельных приложений, которые бы работали в локальном компьютере и на вычислительном кластере.
В рамках выпускной магистерской работы была поставлена задача разработки системы математического моделирования, которая бы упростила разработку специализированных программ моделирования физических, технологических, биологических, инженерных и др. процессов.
Были сформулированы требования к системе моделирования.
- В основе системы должен лежать язык программирования, который имеет свободный транслятор компилирующего типа;
- Язык программирования должен поддерживать все современные технологии параллельного программирования.
- Свободная библиотека, реализующая основные алгоритмы вычислительной математики.
- Свободная библиотека графического вывод результатов.
- Отладчик, который позволяет отлаживать как последовательные, так и параллельные приложения.
- Универсальная свободная интегрированная среда разработки, позволяющая вести разработку приложений, работающих как на локальном компьютере, так и в вычислительном кластере.
В качестве языка программирования был взят современный язык Фортран. Вся система моделирования построена на базе компилятора gfortran. Были разработаны библиотека графического вывода и параллельная библиотека вычислительной математики. Свободная графическая библиотека на языке Фортран была представлена на тринадцатой конференции «Свободное программное обеспечение в высшей школе» в Переславле-Залесском 26-28 января 2018 года. Одной из особенностей библиотеки является возможность построения графиков при использовании консольных операционных систем. В этом случае библиотека формирует графические изображения в файле.
Ядром системы моделирования является разработанная авторами библиотека численного анализа.
Одним из главных требований к разрабатываемой системе является функционирование среды разработки как на локальном компьютере, так и на кластере. В связи с этим, было принято решение строить систему путём расширения функционала текстового редактора Emacs. В состав редактора был добавлен ряд существующих модулей. Был модифицирован модуль подсветки синтаксиса программы. Кроме того, на языке elisp были написаны следующие функции, превратившие текстовый редактор в полноценную интегрированную среду разработки:
- Функции (compile-cc(), compile-f()) позволяют компилировать код на языках С/С++ и Фортран, кроме того, на базе этих функций написан шаблон, с помощью которого пользователь может изменять функционал функций compile-cc(), compile-f() при необходимости.
- Функции compile-f-lib(), compile-f-plotter() предназначены для добавления в строку компиляции необходимых ключей и подключения библиотек.
- Функция send-from-local() для рассылки исполняемого файла с локального компьютера.
- Функция send-from-claster() для отправки с узла кластера на оставшиеся узлы.
- Функции run-program(), run-plotter(), run-program-cluster() для запуска разрабатываемых приложений на кластере.
Для установки системы на локальный компьютер или вычислительный кластер был написан скрипт, который собирает и добавляет библиотеки параллельных алгоритмов численного анализа и вывода графики в текстовый редактор Emacs, преобразует редактор Emacs в специализированную интегрированную среду разработки.
Разработанная система ориентирована на работу с любыми linux-подобными операционными системами. В данный момент прошло тестирование системы на ОС Ubuntu, Mint, Debian. Сейчас проходит адаптация системы под отечественные ОС – BaseAlt, Rosa, Astra. В систему могут быть добавлены необходимы библиотеки на Фортране и С/С++ с открытым исходным кодом. Система доступна на сайте https://www.github.com/MatSysLib.
Примечания и ссылки
- ↑ Алексеев, Евгений Ростиславович; Лутошкин, Денис Александрович; Стародумов, Вячеслав Владимирович. Свободная система математического моделирования simfor на базе компилятора gfortran. Международный научный журнал «Современные информационные технологии и ИТ-образование», [S.l.], v. 15, n. 4, p. 820-827, dec. 2019. ISSN 2411-1473. Доступно на: http://sitito.cs.msu.ru/index.php/SITITO/article/view/585. doi: https://doi.org/10.25559/SITITO.15.201904.820-827
Plays:70 Comments:0