Привет, Хабр!
В геометрической алгебре достаточно абстрактно введен дифференциал, здесь предлагается наглядный численный метод — выразить дифференциал через ориентированный объём и геометрическое произведение.
Это даёт возможность интерполировать значения функции вне сетки и отдельно учитывать параллельную и ортогональную составляющие приращения.
Написана статья с целью собрать мнения специалистов о достоинствах и недостатках такого подхода. В общем буду рад комментариям.
1. Обозначения
Δ — конечные приращения на сетке (шаги Δx,Δy,Δz и разности функции fΔxf,Δyf,Δzf).
δ — изменяемые приращения для произвольной точки в окрестности узла.
σ1,σ2,σ3 — орты осей в матричном представлении (матрицы Паули):
Умножение с точкой ⋅ — матричное (геометрическое).
Умножение с крестиком × — векторное.I=σ1⋅σ2⋅σ3 — псевдоскаляр (аналог мнимой единицы в ГА).
Вектор в таком базисе записывается как
Обратите внимание: σ3 соответствует оси — x, σ2 — y, σ1 — z. Так сделано по мотивам моей предыдущей статьи Давайте объединим линейную и геометрическую алгебры. На простом примере. Часть 1. В разделе "6. Базис Клиффорда для матриц 2х2" можно видеть, что расположение осей несколько иное, чем в декартовых координатах. Так же такое расположение еще делает привычнее некоторые представления, напишу как нибудь.
2. Ориентированный объём и вектор конечных разностей
Ориентированный объём, образованный площадями граней ячейки и смещениями δx,δy,δz:
Разделив на объём ячейки Δv=ΔxΔyΔz, получим относительный ориентированный объём:

Вектор конечных разностей (Аналог градиента, но без нормировки на шаги. Знак умножения буду пропускать, так как уже объяснил его смысл, и вообще геометрическое произведение пишется без знака):
3. Скалярное и обобщённое приращения
Скалярное приращение (классический дифференциал, аппроксимированный конечными разностями) — это скалярная часть геометрического произведения δV′ и Δ(f):
При
это выражение стремится к обычному дифференциалу df.
Полное геометрическое произведение даёт обобщённый дифференциал — сумму скалярной и бивекторной частей:
Бивекторная часть δf⊥ равна нулю тогда и только тогда, когда вектор относительного объёма δV′ параллелен вектору конечных разностей Δ(f) — то есть когда смещение (δx,δy,δz) коллинеарно градиенту. Когда бивекторная часть не равна нулю происходит следующее:
Бивекторная часть кодирует нормаль к плоскости перемноженных векторов. Плоскость в которой расположены компоненты диффенциала. Так же она кодирует объект в этой плоскости, ортогональный вектору на который происходит проецирование.
Скалярная часть ортогональна бивекторной части и нормали к плоскости.
Вместе они образуют аналог комплексного числа в этой плоскости.
4. Зачем это нужно
Интерполяция вне сетки. Зная в узле сетки значения Δxf,Δyf,Δzf (например, из численного решения), можно вычислить приращение δgfдля любого смещения (δx,δy,δz) в окрестности узла. Никакой дополнительной сетки не требуется.
Разделение параллельной и ортогональной составляющих. Скалярная часть δf∥ — классическое изменение вдоль направления смещения. Бивекторная часть δf⊥ — мера того, насколько смещение отклоняется от градиента.
Выделение траекторий, где обобщённый дифференциал совпадает с классическим. Если потребовать δf⊥=0, получим условия коллинеарности, которые задают прямые, параллельные Δ(f). Вдоль таких траекторий δgf=δf∥.
5. Пример применения
Пусть в узле сетки (0,0,0)(0,0,0) известны:
Это соответствует частным производным: 2,3,4.
Требуется найти значение функции в точке (δx,δy,δz)=(0.02,0.03,0.04) — внутри ячейки.
Вычисляем скалярное приращение:
Вычисляем бивекторную часть (коэффициенты при σ3,σ2,σ1):
Здесь смещение оказалось точно параллельным вектору конечных разностей, поэтому бивекторная часть обнулилась. Обобщённый дифференциал совпал с классическим: δgf=0.29
Если взять смещение (δx,δy,δz)=(0.03,0.02,0.04), то:
Скалярное приращение:
Бивекторные коэффициенты:
Бивекторная часть не равна нулю — смещение не параллельно градиенту. Полное приращение δgf будет содержать как скалярную, так и бивекторную компоненту, что позволяет оценить степень «неградиентности» направления.
6. Итог
Предложен способ выразить обобщённый дифференциал через конечные разности и геометрическое произведение.
Формулы работают непосредственно с сеточными данными и позволяют интерполировать значения функции в произвольную точку.
Бивекторная часть даёт дополнительную информацию — меру отклонения направления смещения от градиента.
Для вычислений достаточно скалярных арифметических операций, матрицы не требуются (если не считать исходного определения σ).
Такой подход может быть полезен в численных методах, особенно при адаптивных сетках и когда нужно оценивать изменение функции вдоль произвольных направлений без перестроения аппроксимации.
Пишите ваши комментарии!