Численные методы для физиков
  • NeutrinoHit
  • Карта курса
  • Курс
  • Слайды
  • EN

Численные методы для физиков

NeutrinoHit Карта курса
NeutrinoHit

Курс лекций · русский и английский языки · в подготовке

Численные методы для физиков

Курс о том, как физик решает задачи, которые не берутся аналитически. Лекция — одна физическая задача; нужные методы вводятся тогда, когда задача без них не решается. Язык — Python с Numba. Один семестр (январь–май): 17 лекций по 1.5 часа для бакалавров, семинары, общие задачи и ноутбуки.

Авторы: Кирилл Базаров, Дмитрий Наумов. Другие курсы и материалы собраны на NeutrinoHit.

Материалы курса

Слайды RU

Программа курса с описанием лекций; слайды появятся по мере готовности.

Открыть

Книга

Книга к курсу готовится.

Задачи

Общие задачи к лекциям — готовятся.

Открыть

English

Numerical Methods for Physicists: slides and exercises — in preparation.

Slides

Ноутбуки и апплеты

Вычислительные примеры к лекциям — готовятся.

Литература

Учебники и справочные материалы — готовятся.

Лекции

01 · RU

Python, NumPy и Numba

Случайное блуждание и число π методом Монте-Карло: рабочая среда, массивы NumPy, точность чисел, генератор случайных чисел, Numba.

Открыть лекцию Ноутбук Задачи
02 · готовится

Корни и квадратуры

03 · готовится

Обыкновенные дифференциальные уравнения: маятник

04 · готовится

Собственные задачи: нормальные моды

05 · готовится

Хаос и синхронизация

06 · готовится

Электростатика: уравнение Пуассона и мультиполи

07 · готовится

Диффузия и случайные силы

08 · готовится

Волны и телеграфное уравнение

09 · готовится

Фурье-анализ и FFT

10 · готовится

Стационарная квантовая механика

11 · готовится

Квантовая эволюция и осцилляции нейтрино

12 · готовится

Интерполяция и аппроксимация

13 · готовится

Монте-Карло в статистической физике: модель Изинга

14 · готовится

Обратные задачи: спектр реакторных антинейтрино и SVD

15 · готовится

Гидродинамика: ударные волны и вихри

16 · готовится

Уравнение переноса: от Больцмана к свету в воде

17 · готовится

Машинное обучение для дифференциальных уравнений

План курса

Согласованный план авторов — К. Базарова (КБ) и Д. В. Наумова (ДН), версия от 18.10.2026.

Курс читается один семестр (январь–май): 17 лекций по 1.5 часа и семинары; лекции записываются. Слушатели — бакалавры; квантовая механика знакома, опыт численных методов небольшой. Язык — Python (NumPy, Numba).

Как устроен курс

Лекция — одна физическая задача. Сначала решается то, что решается точно (эталон); затем вводится численный метод, проверяется на эталоне и применяется там, где аналитики нет. Методы идут от простого к сложному: корни и квадратуры, обыкновенные дифференциальные уравнения, собственные задачи, уравнения в частных производных, — но каждый появляется вместе с задачей, которая его требует. Сначала показываем, где метод работает, потом — где и почему он ошибается.

Сквозные нити:

  1. Аналитика как эталон. Численный результат проверяется на задаче с известным ответом до применения там, где ответа нет.
  2. Один инструмент — много задач. Приём, введённый в одной лекции, возвращается в других.
  3. Цена против точности. Для каждого метода: порядок точности, условие устойчивости, вычислительная цена, тест сходимости.

Как работают авторы

Лекции авторы пишут вместе: у каждой лекции есть ведущий автор, который её читает, второй автор проверяет, дополняет и исправляет. ДН ведёт 6 лекций, КБ — 11 лекций и семинары.

Шаблон лекции (90 минут)

  1. Физическая задача и вопрос, на который нужен ответ.
  2. Аналитическая точка отсчёта: что решается точно и где аналитика заканчивается.
  3. Численный метод: идея, точность, устойчивость, цена.
  4. Код на Python: короткие фрагменты на слайде, остальное — в ноутбуке.
  5. Эксперименты и ловушки.
  6. Итоги и три задачи: аналитический эталон, численный эксперимент, исследовательская задача.

Лекции

В скобках — имя файла лекции (slug).

Подготовка

№ Лекция Физическая задача Методы Ведёт
1 Python, NumPy и Numba (python_numpy_numba) Случайное блуждание (\(\langle x^2\rangle=N\)) и число \(\pi\) методом Монте-Карло: зачем нужны численные методы, что такое численная ошибка и сходимость, как выбирать между точностью и временем. Jupyter, массивы NumPy, срезы и broadcasting, типы данных и точность, генератор случайных чисел с seed, Matplotlib, измерение времени, Numba; Python против Mathematica. ДН

Часть I. Уравнения, матрицы, движение

№ Лекция Физическая задача Методы Ведёт
2 Корни и квадратуры (roots_and_quadratures) Период маятника при большой амплитуде (эллиптический интеграл) и уровни энергии в конечной яме (трансцендентное уравнение): точный ответ известен, и видно, как к нему сходятся численные методы. бисекция, метод Ньютона, секущие; прямоугольники, трапеции, Симпсон, квадратуры Гаусса; порядок сходимости, особенности подынтегральной функции. КБ
3 Обыкновенные дифференциальные уравнения: маятник (pendulum_and_errors) Маятник без приближения малых колебаний; эталон — энергия и период из лекции 2. Сначала метод работает, затем видно, где и почему он ошибается. схемы Эйлера, Рунге–Кутты и Верле, порядок точности и тест сходимости, адаптивный шаг, события (удар, сухое трение), жёсткость и неявный Эйлер. КБ
4 Собственные задачи: нормальные моды (coupled_oscillators) Цепочка из \(N\) масс и фононы; случайные массы приводят к локализации. Предел \(N\to\infty\) даёт волновое уравнение. eigh, спектральное разложение, функции матриц (оператор эволюции), трёхдиагональные матрицы, число обусловленности. КБ
5 Хаос и синхронизация (chaos_double_pendulum) Двойной маятник, ограниченная задача трёх тел, осцилляторы Курамото. Почему «точное» решение хаотической системы невозможно и что тогда считать результатом. адаптивные методы Рунге–Кутты (solve_ivp), показатель Ляпунова, сечение Пуанкаре, параметр порядка, ансамбли траекторий на Numba. КБ

Часть II. Поля, диффузия и волны

№ Лекция Физическая задача Методы Ведёт
6 Электростатика: уравнение Пуассона и мультиполи (electrostatics_poisson) Потенциал проводников в коробке (эталон — конденсатор, ряд Фурье); непроводящая сфера с плотностью заряда \(\sigma(\theta,\varphi)\): поле внутри и снаружи, точное решение через сферические гармоники. разреженные матрицы, LU и Холецкий, итерации Якоби, Зейделя и сопряжённых градиентов, мультипольное разложение, \(Y_{\ell m}\), квадратуры Гаусса–Лежандра. КБ
7 Диффузия и случайные силы (heat_equation) Остывание стержня (эталон — функция Грина), нелинейная и неоднородная среда; броуновская частица под действием случайной силы — продолжение случайного блуждания из лекции 1. явная и неявная схемы, устойчивость фон Неймана, прогонка, Кранк–Николсон, метод прямых, уравнение Ланжевена (схема Эйлера–Маруямы). КБ
8 Волны и телеграфное уравнение (telegraph_and_waves) Струна (эталон — решение Даламбера) и длинная линия с потерями (сигнал Хевисайда): третий тип уравнений после Пуассона и теплопроводности. характеристики, условие Куранта, численная дисперсия, поглощающие границы. ДН
9 Фурье-анализ и FFT (fourier_and_fft) Частоты в зашумлённом сигнале; решение уравнений диффузии и волн в фурье-пространстве; импульсное представление в квантовой механике. FFT, алиасинг, окна, свёртка, спектральные производные. КБ

Часть III. Квантовая механика

№ Лекция Физическая задача Методы Ведёт
10 Стационарная квантовая механика (schrodinger_stationary) Осциллятор (эталон), ангармонический осциллятор, двойная яма, атом водорода; рассеяние на барьере. гамильтониан как матрица, метод стрельбы, Нумеров, вариационный метод, коэффициент прохождения, сходимость уровней. КБ
11 Квантовая эволюция и осцилляции нейтрино (schrodinger_dynamics_neutrinos) Волновой пакет и туннелирование; осцилляции \(2\nu\) (точное решение) и \(3\nu\) в веществе переменной плотности. Кранк–Николсон и унитарность, split-step с FFT, экспонента матрицы (expm). ДН

Часть IV. Данные и статистическая физика

№ Лекция Физическая задача Методы Ведёт
12 Интерполяция и аппроксимация (interpolation_and_approximation) Восстановить функцию по точкам, когда сама функция известна (эталон), и понять, почему больше узлов — не всегда лучше. полином Лагранжа, феномен Рунге, узлы Чебышёва, сплайны, метод наименьших квадратов, опасность экстраполяции. КБ
13 Монте-Карло в статистической физике: модель Изинга (ising_monte_carlo) Двумерная модель Изинга: фазовый переход, критическая температура и термодинамические величины; эталон — точное решение Онсагера. алгоритм Метрополиса, автокорреляция и ошибки, эффекты конечного размера, теплоёмкость и восприимчивость, ускорение на Numba. КБ
14 Обратные задачи: спектр реакторных антинейтрино и SVD (inverse_problems_svd) Измерен спектр позитронов, нужен спектр антинейтрино: матрица отклика с разрешением детектора и её обращение. сингулярное разложение, число обусловленности, псевдообратная матрица, усечённое SVD и регуляризация Тихонова, обращение свёртки. ДН

Часть V. Течения, перенос и машинное обучение

№ Лекция Физическая задача Методы Ведёт
15 Гидродинамика: ударные волны и вихри (hydrodynamics_shocks) Уравнение Бюргерса (эталон — решение Хопфа–Коула), труба Сода (задача Римана); коротко — вихри Тейлора–Грина. консервативные схемы, конечные объёмы, схема Годунова, ограничители, псевдоспектральный метод. ДН
16 Уравнение переноса: от Больцмана к свету в воде (radiative_transfer) Фотон в мутной среде: баллистика, диффузия (лекция 7), конечная скорость (лекция 8). Пример — свет в озере Байкал и нейтринный телескоп. Монте-Карло для переноса, диффузионное приближение, разложение по угловым моментам (\(P_N\)). ДН
17 Машинное обучение для дифференциальных уравнений (machine_learning_odes) Осциллятор и уравнение теплопроводности с известным решением: что даёт нейросеть и чего она стоит по сравнению с классическими методами. нейросеть как аппроксиматор, физически информированные сети (PINN), сравнение с классическими методами по точности и цене. КБ

LightHit

Пакет LightHit (расчёт переноса света для нейтринного телескопа) — тема лекции 16 и коротких врезок: разложение индикатрисы по полиномам Лежандра (6), диффузионный предел (7), телеграфное уравнение и \(P_1\) (8), POD-базис ливня как малый ранг (14).

Связь с курсом статистики

Методы Монте-Карло, метод наименьших квадратов и коррелированные гауссовы величины разобраны в курсе «Статистический анализ данных». Здесь акцент на численной стороне: модель Изинга (13), аппроксимация (12), регуляризация обратной задачи (14).

Резерв

Метод конечных элементов; нелинейные волны и солитоны (КдФ); космология («замораживание» осталось задачей на жёсткое уравнение); быстрые расчёты и проверка (профилирование, кэш, бюджет ошибок).

© NeutrinoHit

 

Built with Quarto