- PVSM.RU - https://www.pvsm.ru -
Это — специальная рубрика Нового физтеха ИТМО [1]. Здесь учёные, преподаватели и студенты физико-технического факультета размышляют о науке и трудовых буднях. Михаил Петров [2], Иван Тофтул [3], Ксения Барышникова [4] и Игорь Рожанский [5] рассказывают, как команда физтеха подошла к запуску курса по компьютерному моделированию для студентов бакалавриата.
Физику исторически делили на экспериментальную и теоретическую, но с развитием вычислительных мощностей и упрощением вычислений в целом, появилось направление на стыке — численное моделирование. По сути это «компьютерный» эксперимент, который позволяет разрабатывать сложные физические системы, проверять их жизнеспособность и эффективность еще до трудоемких испытаний на сложном дорогостоящем оборудовании.
К началу третьего курса наши студенты неплохо знают линейную алгебру, дифференциальные исчисления и базовые приёмы численных методов. Далее они подходят ближе к научной работе. Однако реальные задачи в фундаментальной и прикладной науке бывают весьма громоздкие и трудоемкие. Научить видеть те, к которым можно подступиться аналитически, а тем более решать их, чрезвычайно сложно, да и таких задач мало [6] (автор упоминает исследование фундаментального предела скорости звука [7], где ответ удалось уложить в абстракт(!) статьи).
В своем курсе мы сфокусировались на умении решать физические задачи численно. Мы делали упор на использование готовых библиотек и численных пакетов (например, SciPy [8] и COMSOL [9]), которые позволяют быстро получить ответ и приступить к анализу. При таком подходе компьютер берет на себя вычисления, а студент — фокусируется на понимании закономерностей.
На первом этапе подготовки курса мы сформулировали следующие задачи:
Научить студентов готовить математическую модель на основе физической (явно записать уравнения, которые будут решаться), а потом и реализовывать ее на компьютере.
Познакомить их с пакетами физического моделирования на примере COMSOL Multiphysics [10].
Показать, как численные ошибки приводят к ошибкам в физических величинах или даже к неверным физическим результатам.
Они должны быть максимально иллюстративны как с точки зрения численных методов, так и с точки зрения актуальности физической модели. Мы реализовали десять лабораторных работ.
Эпидемия зомби
Инструмент — Python, MATLAB.
Математика — составление и решение систем ДУ, анализ результатов.
Физика — стандартные эпид. модель распространения заболевания вроде SIR [11] и др. (когда мы готовили этот курс, даже не могли предположить, что тема будет столь актуальной).
Значимость — понимание типичных тенденций эпидемий помогает эффективно и ответственно действовать в ситуациях схожими с глобальной пандемией. Аналогичное описание динамики системы ещё встречается, например, в экономике.
Оптический пинцет и темпловой шум
Инструмент — Python, MATLAB.
Математика — решение стохастических динамических уравнений.
Физика — моделирование движения микро- и наночастицы в оптическом пинцете с учетом тепловых шумов.
Значимость — добавление стохастики в систему является распространенным приемом для приближении модельной системы к реалистичной.
Квантовая яма
Инструмент — Python, MATLAB.
Математика — решение задач на собственные значения.
Физика — решение уравнения Шредингера, определение состояний электрона в произвольной квантовой яме.
Значимость — фундаментальная задача квантовой механики с точки зрения численного моделирования.
Сетка сопротивлений Миллера-Абрамса [12]
Инструмент — Python, MATLAB.
Математика — решение систем линейных уравнений.
Физика — элементы теории перколяции, определение проводимости случайной сетки.
Значимость — методы перколяции сейчас используются в биологии, экологии, городском движении, а также для создания высокоемкостных аккумуляторов [раз [13], два [14], три [15]].
Определение уровня Ферми
Инструмент — Python, MATLAB.
Математика — решение алгебраических уравнений, метод Ньютона.
Физика — определение уровня Ферми в полупроводнике с произвольным уровнем легирования.
Значимость — модель расчета одного из ключевых параметров из мира полупроводников. Эта задача актуальна, пока фотонный компьютер [16] не стал настольным.
Планарный волновод
Инструмент — Python, MATLAB.
Математика — решение алгебраических уравнений и задачи на собственные значения.
Физика — определение дисперсионных соотношений мод планарного волновода.
Значимость — изучение волноводных мод на простом примере. Волноводы сейчас встречаются повсеместно [17].
Точечный заряд над проводящей плоскостью
Инструмент — COMSOL Multiphysics.
Математика — первое знакомство с COMSOL.
Физика — простейшая электростатика.
Значимость — знакомство с одним из стандартов численных проверок теор. моделей.
Нормальное падение на границу раздела двух сред
Инструмент — COMSOL Multiphysics.
Математика — моделирование граничных условий.
Физика — прохождение света через границу раздела двух сред.
Значимость — знакомство с одним из стандартов численных проверок теор. моделей.
Распределение тепла у провода с током
Инструмент — COMSOL Multiphysics.
Математика — одновременное использование нескольких пакетов «физики».
Физика — джоулев нагрев и уравнение теплопроводности.
Значимость — бытовые явления с помощью численного моделирования.
Финальный проект — где лучше поставить WiFi роутер / колонки
Инструмент — COMSOL Multiphysics.
Значимость — дать задачу с открытым ответом, проверить полученные знания и навыки.
У нас не было жестких ограничений на выбор языка программирования, IDE и методов решения. Остановились на трёх вариантах:
Python и MATLAB. Языки высокого уровня со множеством готовых библиотек — очевидный выбор. Разумеется, есть альтернативы, которые выигрывают при определенных сценариях. Например, неплохо зарекомендовала себя Julia [18], но популярность вариантов выше и возможность «нагуглить» почти любую проблему, перевесила чашу весов.
COMSOL Multiphysics [19] — один из стандартов численных расчётов в научном сообществе и настоящий «комбайн» по решению комплексных задач методом конечных элементов (FEM [20]). Позволяет совмещать несколько расчётных модулей в одной симуляции — например, электромагнетизм и теплопроводность. Проверка аналитических формул может сравниваться с численной моделью в COMSOL, что является одной из первых стадий перед сравнением с реальным экспериментом. В Новом физтехе ИТМО это один из наиболее часто используемых инструментов. Для обмена опытом проводятся даже COMSOL Days [21].
Для карьеры в науке или индустрии необходимо умение внятно представлять результаты своей работы. Поэтому мы сфокусировались на использовании системы вёрстки, которую давно приняли в научном сообществе. Для оформления предложили следующие рекомендации:
Документ должен быть оформлен в LaTeX.
Содержать аннотацию, теоретическое введение, результаты и выводы, как в научной статье.
Картинки должны отображать суть работы — быть понятными для коллег из смежных областей (для этого необходимы подписи осей, параметров и так далее).
Пример одной из иллюстраций для ЛР №1 — многоступенчатая схема противодействия зомби-апокалипсису (работу выполнил Денис Сахно). Здесь можно увидеть историю эпидемии. Студент не стал описывать области в подписях к рисунку, а явно указал их на самом графике.
Дисперсии электрона в периодическом потенциале (ЛР №3, выполнил Денис Седов). График публикационного качества. Есть понятное описание, ссылки на формулы и основные методы.
Исследование собственных мод плоского волновода (ЛР №6, выполнил Глеб Федорович):
Расчет поля роутера Wi-Fi. Один из финальных проектов (выполнили Руслан Гладков, Никита Устименко, Антон Шубник и Денис Седов). В данной работе студенты представили карты распределения. В процессе группа столкнулась с проблемой — расчет для реальных размеров получался слишком тяжелым, поэтому задачу решали для комнаты сантиметровых размеров.
Мы коротко рассказали о курсе по компьютерному моделированию. К его окончанию студенты учатся больше смотреть на физику решаемых задач, а не закапываться в численные методы, если в этом нет необходимости. На выходе они получают ряд работ публикационного качества. В данном виде программу слушали бакалавры третьего курса в осеннем семестре 2019 года.
Другие материалы у нас на Хабре:
Автор: itmo
Источник [27]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/blog-kompanii-universitet-itmo/361166
Ссылки в тексте:
[1] Нового физтеха ИТМО: https://physics.itmo.ru/ru
[2] Михаил Петров: https://physics.itmo.ru/ru/personality/mikhail_petrov
[3] Иван Тофтул: https://physics.itmo.ru/ru/personality/ivan_toftul
[4] Ксения Барышникова: https://physics.itmo.ru/ru/personality/kseniya_baryshnikova
[5] Игорь Рожанский: https://physics.itmo.ru/ru/personality/igor_rozhanskiy
[6] мало: https://habr.com/ru/post/536430/
[7] фундаментального предела скорости звука: https://advances.sciencemag.org/content/6/41/eabc8662
[8] SciPy: https://www.scipy.org/
[9] COMSOL: http://www.multiphysics.org/
[10] COMSOL Multiphysics: https://en.wikipedia.org/wiki/COMSOL_Multiphysics
[11] SIR: https://en.wikipedia.org/wiki/Compartmental_models_in_epidemiology
[12] Сетка сопротивлений Миллера-Абрамса: https://journals.aps.org/pr/abstract/10.1103/PhysRev.120.745
[13] раз: https://pubs.rsc.org/en/content/articlehtml/2012/nr/c2nr33099g
[14] два: https://pubs.rsc.org/lv/content/articlehtml/2019/ta/c9ta05118j
[15] три: https://iopscience.iop.org/article/10.1149/2.062301jes/meta
[16] фотонный компьютер: https://www.nature.com/articles/d41586-020-03434-7
[17] повсеместно: https://en.wikipedia.org/wiki/Fiber-optic_communication
[18] Julia: https://julialang.org/
[19] COMSOL Multiphysics: https://www.comsol.com/
[20] FEM: https://ru.wikipedia.org/wiki/%2525D0%25259C%2525D0%2525B5%2525D1%252582%2525D0%2525BE%2525D0%2525B4_%2525D0%2525BA%2525D0%2525BE%2525D0%2525BD%2525D0%2525B5%2525D1%252587%2525D0%2525BD%2525D1%25258B%2525D1%252585_%2525D1%25258D%2525D0%2525BB%2525D0%2525B5%2525D0%2525BC%2525D0%2525B5%2525D0%2525BD%2525D1%252582%2525D0%2525BE%2525D0%2525B2
[21] COMSOL Days: https://physics.itmo.ru/en/media/26
[22] The founder’s guide to AngelList: https://habr.com/ru/company/spbifmo/blog/538946/
[23] Первый сезон подкаста «ITMO Research_»: https://habr.com/ru/company/spbifmo/blog/536258/
[24] Startups going global: a guide to Product Hunt: https://habr.com/ru/company/spbifmo/blog/535828/
[25] Говорим о Codeforces с основателем проекта: https://habr.com/ru/company/spbifmo/blog/538918/
[26] PopMech and its ancestors: a foray into the history of tech: https://habr.com/ru/company/spbifmo/blog/522458/
[27] Источник: https://habr.com/ru/post/540116/?utm_source=habrahabr&utm_medium=rss&utm_campaign=540116
Нажмите здесь для печати.