Книги / Языки программирования / C++ / Метапрограммирование шаблонов C++ в задачах математической физики

Метапрограммирование шаблонов C++ в задачах математической физики

Михаил Михайлович Краснов

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

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

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

Заключительная часть книги представляет сеточно-операторный подход к программированию, который объединяет метапрограммирование с численным моделированием. Издание предназначено для математиков-программистов, занимающихся численным моделированием, и студентов старших курсов, желающих углубить знания C++.