Векторные операции
Суммирование сдваиванием
Нахождение суммы элементов массива сдваиванием
Нахождение частных сумм элементов массива сдваиванием
Равномерная норма вектора, вещественная версия, последовательно-параллельный вариант
Скалярное произведение векторов, вещественная версия, последовательно-параллельный вариант
Последовательно-параллельный метод суммирования
Матрично-векторные операции
Умножение плотной матрицы на вектор
Умножение плотной неособенной матрицы на вектор (последовательный вещественный вариант)
Матричные операции
Умножение плотных матриц
Перемножение плотных неособенных матриц (последовательный вещественный вариант)
- Метод Штрассена
Разложения матриц
Треугольные разложения
Метод Гаусса (нахождение LU-разложения)
LU-разложение методом Гаусса без перестановок
LU-разложение методом Гаусса
Компактная схема метода Гаусса и её модификации
- Компактная схема метода Гаусса для плотной матрицы
Компактная схема метода Гаусса для трёхдиагональной матрицы и её модификации
Компактная схема метода Гаусса для трёхдиагональной матрицы, последовательный вариант
Алгоритм сдваивания Стоуна для LU-разложения трёхдиагональной матрицы
Последовательно-параллельный алгоритм для LU-разложения трёхдиагональной матрицы
LU-разложение методом Гаусса с перестановками
LU-разложение методом Гаусса с выбором ведущего элемента по столбцу
LU-разложение методом Гаусса с выбором ведущего элемента по строке
LU-разложение методом Гаусса с выбором ведущего элемента по главной диагонали
LU-разложение методом Гаусса с выбором ведущего элемента по всей матрице
Метод Холецкого (нахождение симметричного треугольного разложения)
Разложение Холецкого (метод квадратного корня) базовый точечный вещественный вариант для плотной симметричной положительно-определённой матрицы
- Известные треугольные разложения для матриц специального вида
Унитарно-треугольные разложения
QR-разложения плотных неособенных матриц
Метод Гивенса (вращений) QR-разложения матрицы
Метод Гивенса (вращений) QR-разложения квадратной матрицы (вещественный точечный вариант)
Метод Хаусхолдера (отражений) QR-разложения матрицы
Метод Хаусхолдера (отражений) QR-разложения квадратной матрицы, вещественный точечный вариант
Метод ортогонализации
Классический метод ортогонализации
Метод ортогонализации с переортогонализацией
Метод треугольного разложения матрицы Грама
Методы QR-разложения плотных хессенберговых матриц
Метод Гивенса (вращений) QR-разложения хессенберговой матрицы (вещественный вариант)
Метод Хаусхолдера (отражений) QR-разложения хессенберговой матрицы (вещественный вариант)
- Подобные разложения
- Подобные разложения на унитарные и хессенберговы матрицы
Метод Хаусхолдера (отражений) приведения матрицы к хессенберговой (почти треугольной) форме
Классический точечный метод Хаусхолдера (отражений) приведения матрицы к хессенберговой (почти треугольной) форме
- Метод Гивенса (вращений) приведения матрицы к хессенберговой (почти треугольной) форме
- Классический точечный метод Гивенса (вращений) приведения матрицы к хессенберговой (почти треугольной) форме
- Симметричные разложения на унитарные и трёхдиагональные матрицы
- Метод Хаусхолдера (отражений) приведения к трёхдиагональному виду
Метод Хаусхолдера (отражений) для приведения симметричных матриц к трёхдиагональному виду
Метод Хаусхолдера (отражений) для приведения комплексных эрмитовых матриц к трёхдиагональному симметричному виду
- Метод Гивенса (вращений) приведения матрицы к трёхдиагональной форме
Спектральное разложение (нахождение собственных значений и векторов)
- Неподобные унитарные разложения
- Неподобные разложения на унитарные и двухдиагональные матрицы
Метод Хаусхолдера (отражений) приведения матрицы к двухдиагональной форме
- Метод Гивенса (вращений) приведения матрицы к двухдиагональной форме
- Разложения на унитарные и диагональные матрицы
Сингулярное разложение (нахождение сингулярных значений и векторов)
- Методы нахождения сингулярных чисел двухдиагональных матриц
- Алгоритм dqds нахождения сингулярных чисел двухдиагональной матрицы
Итерация алгоритма dqds
- Решение систем линейных уравнений
- Прямые методы решения СЛАУ
Linpack benchmark
- Методы решения СЛАУ с матрицами специального вида
- Методы решения СЛАУ с треугольными матрицами
Прямая подстановка (вещественный вариант)
Обратная подстановка (вещественный вариант)
- Методы решения СЛАУ с двудиагональными матрицами
- Прямая и обратная подстановка в СЛАУ с двухдиагональной матрицей
Метод сдваивания Стоуна для решения двудиагональных СЛАУ
- Последовательно-параллельный вариант обратной подстановки
Методы решения СЛАУ с трёхдиагональными матрицами
- Методы, основанные на стандартном LU-разложении матрицы
Прогонка
Прогонка, точечный вариант
Классическая монотонная прогонка, повторный вариант
Метод сдваивания Стоуна
Алгоритм сдваивания Стоуна для LU-разложения трёхдиагональной матрицы
Метод сдваивания Стоуна для решения двудиагональных СЛАУ
Последовательно-параллельный вариант решения трёхдиагональной СЛАУ с LU-разложением и обратными подстановками
- Другие методы
- Метод редукции
- Полный метод редукции
- Повторный метод редукции для новой правой части
- Встречная прогонка
Встречная прогонка, точечный вариант
Повторная встречная прогонка, точечный вариант
- Метод циклической редукции
Полный метод циклической редукции
- Повторный метод циклической редукции для новой правой части
- Метод окаймления
- Методы решения СЛАУ с блочно-треугольными матрицами
- Блочная прямая подстановка (вещественный вариант)
- Блочная обратная подстановка (вещественный вариант)
- Методы решения СЛАУ с блочно-двухдиагональными матрицами
- Прямая и обратная подстановка в СЛАУ с блочно-двухдиагональной матрицей
- Метод сдваивания Стоуна для решения блочно-двухдиагональных СЛАУ
- Блочный последовательно-параллельный вариант обратной подстановки для решения блочно-двухдиагональных СЛАУ
- Методы решения СЛАУ с блочно-трёхдиагональными матрицами
- Методы, основанные на стандартном LU-разложении матрицы
Блочная прогонка
- Блочный последовательно-параллельный вариант решения с LU-разложением и обратными подстановками
- Другие методы
Встречная прогонка, блочный вариант
- Блочный метод циклической редукции
- Блочный метод окаймления
- Решения СЛАУ с матрицами специального вида, имеющими известные обратные матрицы
- Итерационные методы решения СЛАУ
High Performance Conjugate Gradient (HPCG) benchmark
Стабилизированный метод бисопряженных градиентов (BiCGStab)
Алгоритм_Качмажа
- Решение систем нелинейных уравнений
- Метод Ньютона
Решения спектральных задач
Спектральное разложение (нахождение собственных значений и векторов)
QR-алгоритм
QR-алгоритм, используемый в SCALAPACK
Классический точечный метод Хаусхолдера (отражений) приведения матрицы к хессенберговой (почти треугольной) форме
QR-алгоритм для хессенберговой матрицы, используемый в SCALAPACK
QR-алгоритм для симметричных матриц, используемый в SCALAPACK
Метод Хаусхолдера (отражений) для приведения симметричных матриц к трёхдиагональному виду
- QR-алгоритм для симметричных трёхдиагональных матриц, используемый в SCALAPACK
QR-алгоритм для комплексных эрмитовых матриц, используемый в SCALAPACK
Метод Хаусхолдера (отражений) для приведения комплексных эрмитовых матриц к трёхдиагональному симметричному виду
- QR-алгоритм для симметричных трёхдиагональных матриц, используемый в SCALAPACK
Метод Якоби (вращений) для решения спектральной задачи у симметричных матриц
Классический метод Якоби (вращений) для симметричных матриц с выбором по всей матрице
Метод Якоби (вращений) для симметричных матриц с циклическим исключением
Метод Якоби (вращений) для симметричных матриц с циклическим исключением и барьерами
- Метод Ланцоша
Алгоритм Ланцоша для точной арифметики (без переортогонализации)
- Частичная спектральная задача
- Метод бисекций
Сингулярное разложение (нахождение сингулярных значений и векторов)
Метод Якоби (вращений) для нахождения сингулярных значений неособенных матриц
- Метод Якоби (вращений) для нахождения сингулярных значений с циклическим перебором
- Метод Якоби для нахождения сингулярных значений со специальным подбором вращений
- QR-алгоритм в приложении к сингулярному разложению
Тесты производительности компьютеров
High Performance Conjugate Gradient (HPCG) benchmark
Linpack benchmark
- Преобразование Фурье
- Быстрое преобразование Фурье
Быстрое преобразование Фурье для степеней двойки
Алгебра многочленов
Схема Горнера, вещественная версия, последовательный вариант
Численные методы интегрирования
Квадратурные формулы
Квадратурные (кубатурные) методы численного интегрирования по отрезку (многомерному кубу)
- Метод прямоугольников
- Метод трапеций
- Метод парабол (метод Симпсона)
- Метод Гаусса
Алгоритмы на графах
- Обход графа
Поиск в ширину (BFS)
Поиск в глубину (DFS)
Поиск кратчайшего пути от одной вершины (SSSP)
Поиск в ширину (BFS) (для невзвешенных графов)
Алгоритм Дейкстры
Алгоритм Беллмана-Форда
Алгоритм Δ-шагания
Поиск кратчайшего пути для всех пар вершин (APSP)
Алгоритм Джонсона
Алгоритм Флойда-Уоршелла
Поиск транзитивного замыкания орграфа
Алгоритм Пурдома
Определение диаметра графа
Построение минимального остовного дерева (MST)
Алгоритм Борувки
Алгоритм Крускала
Алгоритм Прима
Алгоритм GHS
Поиск изоморфных подграфов
Алгоритм Ульмана
Алгоритм VF2
Связность в графах
Алгоритм Шилоаха-Вишкина поиска компонент связности
Система непересекающихся множеств
Алгоритм Тарьяна поиска компонент сильной связности
Алгоритм DCSC поиска компонент сильной связности
Алгоритм Тарьяна поиска компонент двусвязности
Алгоритм Тарьяна-Вишкина поиска компонент двусвязности
Алгоритм Тарьяна поиска «мостов» в графе
Определение вершинной связности графа
Алгоритм Габова определения рёберной связности графа
Поиск максимального потока в транспортной сети
Алгоритм Форда-Фалкерсона
Алгоритм проталкивания предпотока
Поиск потока минимальной стоимости в транспортной сети
Задача о назначениях
Венгерский алгоритм
Алгоритм аукциона
Алгоритм Гопкрофта-Карпа
- Вычисление betweenness centrality
Алгоритмы поиска
- Линейный поиск - находит элемент в любом списке, O(n)
- Двоичный поиск - находит элемент в отсортированном списке, O(\log(n))
Алгоритмы сортировки
- Сортировка с помощью двоичного дерева
- Сортировка пузырьком
- Сортировка слиянием (последовательный и параллельный варианты)
Вычислительная геометрия
- Поиск диаметра множества точек
- Построение выпуклой оболочки набора точек
- Триангуляция Делоне
- Диаграмма Вороного
- Принадлежность точки многоугольнику
- Пересечения выпуклых многоугольников - трудоёмкость O(n_1 + n_2)
- Пересечение звёздных многоугольников - трудоёмкость O(n_1 \cdot n_2)
Компьютерная графика
- Алгоритмы построения отрезка - алгоритмы для аппроксимации отрезка на дискретной графической поверхности
- Алгоритм определения видимых частей трёхмерной сцены
- Трассировка лучей - рендеринг реалистичных изображений
- Глобальное освещение - рассматривает прямое освещение и отражение от других объектов
Криптографические алгоритмы
Метод встречи посередине
Нейронные сети
- Распознование образов
- Распознование текста
- Распознование речи
- Распознование лиц
Алгоритмы оптимизации
- Линейное программирование
- Симплекс-метод
- Метод ветвей и границ
- Генетические алгоритмы
- Муравьиные алгоритмы
- Комбинированные алгоритмы
Стохастическое двойственное динамическое программирование (SDDP)
Алгоритмы машинного обучения
Алгоритм k средних (k-means)
Алгоритмы теории игр
Алгоритмы моделирования квантовых систем
- Алгоритмы моделирования квантовых вычислений
Однокубитное преобразование вектора-состояния
Двухкубитное преобразование вектора-состояния
- Моделирование квантового преобразования Фурье
Алгоритмы решения уравнений математической физики
Уравнение Пуассона, решение дискретным преобразованием Фурье
Другие алгоритмы