Дивергенция ∇·F: источники и стоки
Дивергенция отвечает на вопрос: рождается поле в этой точке или утекает в неё?
Дивергенция $\nabla \cdot \vec F = \dfrac{\partial P}{\partial x} + \dfrac{\partial Q}{\partial y} + \dfrac{\partial R}{\partial z}$ — скаляр, измеряющий «расширение» поля в точке.
Источник, сток, ничего
Представьте поле как течение жидкости. Дивергенция в точке — это разница между тем, сколько вытекает и втекает в крошечный объём вокруг неё:
- $\nabla \cdot \vec F \gt 0$ — источник: поле «бьёт ключом» (вытекает больше).
- $\nabla \cdot \vec F \lt 0$ — сток: поле «всасывается».
- $\nabla \cdot \vec F = 0$ — поле несжимаемо (сколько втекло, столько вытекло).
Дивергенция — это формальное скалярное произведение оператора $\nabla$ на поле $\vec F$, отсюда запись $\nabla \cdot \vec F$. Результат — скаляр.
Считаем дивергенцию численно
def divergence(field, p, h=1e-6):
x, y = p
P = lambda x, y: field(x, y)[0]
Q = lambda x, y: field(x, y)[1]
dPdx = (P(x+h, y) - P(x-h, y)) / (2*h)
dQdy = (Q(x, y+h) - Q(x, y-h)) / (2*h)
return dPdx + dQdy
# Радиальное поле F = (x, y) — источник
radial = lambda x, y: (x, y)
print("div радиального =", round(divergence(radial, (1, 1)), 4))
# Поле вращения F = (-y, x) — без источника
rotor = lambda x, y: (-y, x)
print("div вращения =", round(divergence(rotor, (1, 1)), 4))Вывод:
div радиального = 2.0 div вращения = 0.0
Радиальное поле $(x,y)$ «разбегается» из начала — дивергенция положительна. Поле вращения $(-y,x)$ только крутится, ничего не рождает — дивергенция ноль.
Как работает под капотом
Дивергенция — это плотность потока: позже мы увидим (теорема Гаусса-Остроградского), что интеграл дивергенции по объёму равен полному потоку через границу. То есть локальная мера «расширения» суммируется в глобальный «сколько вытекло наружу». Радиальное поле имеет дивергенцию $2$ всюду в 2D, потому что $\partial x/\partial x + \partial y/\partial y = 1 + 1 = 2$.
Частые ошибки
- Думать, что дивергенция — вектор. Это скаляр (в отличие от ротора).
- Считать поле вращения имеющим источник — у него дивергенция ноль.
- Путать знак: положительная дивергенция — источник, отрицательная — сток.
Итог
- $\nabla \cdot \vec F$ — скаляр, мера источника/стока в точке.
- $\gt 0$ источник, $\lt 0$ сток, $= 0$ несжимаемо.
- Радиальное поле — источник, поле вращения — нулевая дивергенция.