Формула Стокса 🌪️
Три урока назад ты научился связывать циркуляцию плоского векторного поля по замкнутому контуру с двойным интегралом от ротора по области внутри этого контура — формулой Грина. В прошлом уроке ты сделал следующий шаг: связал поток поля через замкнутую поверхность с тройным интегралом от дивергенции по объёму внутри неё — формулой Остроградского-Гаусса. Сегодня мы закрываем этот сюжет формулой, которая на первый взгляд кажется просто «трёхмерной версией формулы Грина», но на самом деле оказывается куда более тонкой вещью: формулой Стокса. Она связывает циркуляцию поля по произвольному пространственному контуру с потоком ротора через любую поверхность, натянутую на этот контур, — даже если эта поверхность не плоская, не единственная и сама изгибается самым причудливым образом.
Представь себе мыльную плёнку, натянутую на проволочный каркас произвольной формы — скажем, на изогнутое кольцо, которое ты только что вынул из мыльного раствора. Плёнка может принимать множество разных форм в зависимости от того, как её толкнуть: она может быть почти плоской, может выгнуться пузырём в одну сторону или в другую, может закрутиться сложным образом — но её край всегда один и тот же, тот самый проволочный контур. Формула Стокса утверждает поразительную вещь: если через эту плёнку «просвечивает» векторное поле, то суммарный поток его завихренности (ротора) сквозь плёнку абсолютно не зависит от того, как именно плёнка изогнута — важен только контур её края. Это и есть настоящая сила теоремы: локальная характеристика поля (ротор в каждой точке) полностью определяет глобальную характеристику контура (циркуляцию по нему), независимо от бесконечного множества возможных поверхностей-посредников.
Сегодняшний урок — это одновременно и новая теорема, и подведение итогов. Мы разберём точную формулировку формулы Стокса, покажем, что формула Грина — это её частный плоский случай, а формула Остроградского-Гаусса — её ближайшая родственница по духу, и соберём все три теоремы в единую логическую цепочку: интеграл по границе области равен интегралу от подходящей производной по её внутренности. Эта идея старше самих формул Грина, Стокса и Гаусса — она восходит ещё к формуле Ньютона-Лейбница, — и она же, спустя полтора века развития математики, легла в основу того, как современные нейросети учатся обрабатывать данные на графах и многообразиях, а не только на решётках пикселей. Если тебя интересует ML на глубоком уровне, а не только как «чёрный ящик» из библиотек, этот урок — один из важнейших мостов к пониманию geometric deep learning.
И раз уж этот урок завершает целую главу об интегральных теоремах поля — формулу Грина, формулу Остроградского-Гаусса и теперь формулу Стокса, — имеет смысл сразу держать в голове главный вопрос всей главы: почему вообще оказывается, что «то, что происходит на границе», всегда можно выразить через «то, что происходит внутри»? Ответ на этот вопрос, который мы постепенно соберём по частям, — это, по сути, один из самых глубоких фактов всей математики.
История: откуда это взялось?
Формула, которую сегодня называют именем Джорджа Габриеля Стокса, имеет на удивление запутанную историю авторства. Сам Стокс, ирландско-английский физик и математик, профессор Кембриджа, действительно первым опубликовал эту теорему — но не в виде статьи с доказательством, а в виде экзаменационного вопроса для студентов на конкурсе «Приз Смита» в 1854 году. Задача звучала примерно так: «докажите указанное соотношение между интегралом по замкнутой кривой и интегралом по поверхности» — и студентам предлагалось самим разобраться, почему это верно. Сам Стокс, судя по сохранившейся переписке, узнал об этой формуле годом раньше от своего друга и коллеги — будущего лорда Кельвина, Уильяма Томсона, который упомянул её в письме как любопытный факт из своих исследований по электродинамике. Получается, что теорема Стокса была, строго говоря, открыта не Стоксом, а Кельвином, но обессмертил её в математическом обиходе именно Стокс — своим экзаменационным билетом, который стал настолько знаменитым, что несколько поколений кембриджских студентов потратили немало сил на его доказательство.
Более широкий контекст этой истории — стремительное развитие теории электромагнитного поля в середине XIX века. Майкл Фарадей экспериментально обнаружил, что меняющееся магнитное поле порождает электрическое, и наоборот, — но у него не было математического аппарата, чтобы записать эту связь точно. Джеймс Клерк Максвелл, работая над своей знаменитой системой уравнений электромагнетизма, остро нуждался именно в инструменте, который связывает «закрученность» поля в каждой точке пространства с суммарным эффектом обхода замкнутого контура, — и формула Стокса оказалась ровно таким инструментом. Закон электромагнитной индукции Фарадея в его современной дифференциальной форме, $\nabla\times\vec E=-\dfrac{\partial\vec B}{\partial t}$, — это прямое следствие интегрального закона индукции, переписанного через формулу Стокса. Без этой теоремы уравнения Максвелла в привычном тебе виде попросту не существовали бы.
Стоит отдельно отметить и то, что формула Стокса — лишь один из трёх «сиблингов» одной большой идеи. Формулу Грина для плоскости независимо от Грина позже передоказывали и обобщали многие математики XIX века, а Михаил Остроградский вывел свою формулу для потока через замкнутую поверхность ещё в 1826 году — задолго до экзаменационного билета Стокса 1854 года. То, что все три формулы оказались частными случаями одной и той же более общей закономерности, стало понятно далеко не сразу — потребовалось развитие внешнего исчисления дифференциальных форм в начале XX века (работы Эли Картана и других), чтобы увидеть их как проявления одной-единственной обобщённой теоремы. Мы коснёмся этой связи в третьем разделе урока, но не будем строго определять дифференциальные формы — этого вполне достаточно для интуитивного понимания на уровне классического анализа.
Точная формулировка теоремы Стокса
Интуиция: обруч под водой и закрученность потока
Давай разберёмся с формулой на самом наглядном образе. Представь, что ты держишь под водой проволочный обруч произвольной формы — не обязательно круглый, можно даже слегка изогнутый или волнистый. Вода течёт вокруг тебя с разной скоростью в разных точках, где-то закручиваясь мелкими вихрями, где-то двигаясь почти прямолинейно. Есть два принципиально разных способа измерить, насколько сильно вода «вращает» твой обруч.
Первый способ — встать снаружи и посмотреть, насколько сильно суммарный поток воды толкает обруч по кругу, обходя его край: это циркуляция поля вдоль контура обруча, $\oint_L\vec F\cdot d\vec r$. Второй способ — представить, что на обруч натянута мыльная плёнка (произвольной формы, хоть плоская, хоть выпуклая пузырём), и посчитать, сколько «микровихрей» воды просачивается сквозь эту плёнку в каждой её точке, просуммировав их по всей площади: это поток ротора через поверхность, $\iint_S(\nabla\times\vec F)\cdot d\vec S$. Формула Стокса утверждает, что оба способа дают абсолютно одинаковый числовой результат, вне зависимости от того, какую именно форму приняла мыльная плёнка — лишь бы её край совпадал с исходным обручем.
Определение
Теорема (формула Стокса). Пусть $S$ — гладкая (или кусочно-гладкая) ориентированная поверхность в пространстве с краем $L=\partial S$ — кусочно-гладким замкнутым контуром, ориентация которого согласована с ориентацией поверхности $S$ по правилу правой руки (если четыре пальца правой руки указывают направление обхода контура, большой палец указывает направление нормали $\vec n$ к поверхности). Пусть $\vec F=(P,Q,R)$ — векторное поле, непрерывно дифференцируемое в некоторой окрестности поверхности $S$. Тогда
$$\oint_L\vec F\cdot d\vec r=\iint_S(\nabla\times\vec F)\cdot\vec n\,dS=\iint_S(\nabla\times\vec F)\cdot d\vec S$$где $\nabla\times\vec F=\operatorname{rot}\vec F$ — ротор поля, вычисляемый как
$$\operatorname{rot}\vec F=\left(\frac{\partial R}{\partial y}-\frac{\partial Q}{\partial z},\ \frac{\partial P}{\partial z}-\frac{\partial R}{\partial x},\ \frac{\partial Q}{\partial x}-\frac{\partial P}{\partial y}\right)$$В координатной записи формула Стокса выглядит так:
$$\oint_L P\,dx+Q\,dy+R\,dz=\iint_S\left(\frac{\partial R}{\partial y}-\frac{\partial Q}{\partial z}\right)dy\,dz+\left(\frac{\partial P}{\partial z}-\frac{\partial R}{\partial x}\right)dz\,dx+\left(\frac{\partial Q}{\partial x}-\frac{\partial P}{\partial y}\right)dx\,dy$$
Ключевая деталь, которую легко упустить: результат не зависит от того, какую именно поверхность $S$ ты выберешь, лишь бы её край совпадал с заданным контуром $L$. Это резко отличает формулу Стокса от «просто» ещё одной формулы для вычисления интеграла — она даёт тебе свободу выбора поверхности, и разумный выбор (максимально плоской, максимально симметричной поверхности) часто превращает страшный на вид криволинейный интеграл в элементарное вычисление.
Разбор примеров
Пример 1 (лёгкий). Вычислить циркуляцию поля $\vec F=(-y,x,0)$ вдоль окружности $x^2+y^2=1$, $z=0$ (обход против часовой стрелки, если смотреть с положительной полуоси $z$), используя формулу Стокса с поверхностью — диском $x^2+y^2\le1$ в той же плоскости $z=0$.
Находим ротор: $\operatorname{rot}\vec F=\left(\dfrac{\partial0}{\partial y}-\dfrac{\partial x}{\partial z},\ \dfrac{\partial(-y)}{\partial z}-\dfrac{\partial0}{\partial x},\ \dfrac{\partial x}{\partial x}-\dfrac{\partial(-y)}{\partial y}\right)=(0,0,1-(-1))=(0,0,2)$.
Нормаль диска, согласованная с обходом контура против часовой стрелки при взгляде сверху, — это $\vec n=(0,0,1)$. Поток:
$$\iint_S(0,0,2)\cdot(0,0,1)\,dS=2\cdot(\text{площадь диска})=2\cdot\pi\cdot1^2=2\pi$$Проверим напрямую: $x=\cos t$, $y=\sin t$, $t\in[0,2\pi]$, $d\vec r=(-\sin t,\cos t,0)\,dt$, $\vec F=(-\sin t,\cos t,0)$.
$$\oint_L\vec F\cdot d\vec r=\int_0^{2\pi}(\sin^2t+\cos^2t)\,dt=\int_0^{2\pi}1\,dt=2\pi$$Ответ: $2\pi$ — оба способа совпадают.
Пример 2 (средний). Для того же поля $\vec F=(-y,x,0)$ и того же контура (единичная окружность в плоскости $z=0$) вычислить поток ротора не через плоский диск, а через верхнюю полусферу $x^2+y^2+z^2=1$, $z\ge0$, чей край — та же самая окружность, и убедиться, что ответ не изменился.
Ротор поля постоянен: $\operatorname{rot}\vec F=(0,0,2)$. Для постоянного поля вида $(0,0,c)$ поток через любую поверхность, однозначно проецирующуюся на плоскость $xy$ (без «складок» вдоль вертикали, что верно для полусферы), равен $c$, умноженному на площадь этой проекции — а проекция полусферы на плоскость $xy$ — это тот же самый единичный диск. Значит:
$$\iint_S(0,0,2)\cdot\vec n\,dS=2\cdot(\text{площадь проекции})=2\cdot\pi=2\pi$$Ответ: $2\pi$ — в точности то же значение, что и через плоский диск в примере 1. Это прямая иллюстрация центрального свойства формулы Стокса: результат зависит только от контура, а не от выбранной поверхности-«заплатки».
Пример 3 (сложный, машинное обучение). В пространстве трёх весов модели рассмотрим векторное поле $\vec F=(w_2,\,-w_1,\,w_1w_2)$ — первые две компоненты моделируют вихревую составляющую обновлений (типичный эффект момента, закручивающего траекторию оптимизации вокруг минимума), а третья компонента $w_1w_2$ — простейшую модель «взаимодействия» между двумя группами параметров, характерную для обмена сообщениями между соседними узлами вычислительного графа (то, что в geometric deep learning называют message passing). Контур $L$ — окружность $w_1^2+w_2^2=1$ на уровне $w_3=1$ (обход против часовой стрелки при взгляде со стороны $+w_3$). В качестве поверхности возьмём часть параболоида $w_3=w_1^2+w_2^2$, ограниченную этим контуром (от вершины параболоида в начале координат до контура на высоте $w_3=1$). Найти циркуляцию поля по контуру через поток ротора.
Считаем ротор: $\operatorname{rot}\vec F=\left(\dfrac{\partial(w_1w_2)}{\partial w_2}-\dfrac{\partial(-w_1)}{\partial w_3},\ \dfrac{\partial w_2}{\partial w_3}-\dfrac{\partial(w_1w_2)}{\partial w_1},\ \dfrac{\partial(-w_1)}{\partial w_1}-\dfrac{\partial w_2}{\partial w_2}\right)=(w_1,\,-w_2,\,-2)$.
Параметризуем параболоид как $w_1=u$, $w_2=v$, $w_3=u^2+v^2$ при $u^2+v^2\le1$. Для поверхности вида $w_3=f(u,v)$ с нормалью, направленной «вверх-наружу» (согласованной с контуром на верхнем крае), вектор $\vec n\,dS$ равен $(-f_u,-f_v,1)\,du\,dv=(-2u,-2v,1)\,du\,dv$. На поверхности $\operatorname{rot}\vec F=(u,-v,-2)$. Скалярное произведение:
$$(u,-v,-2)\cdot(-2u,-2v,1)=-2u^2+2v^2-2$$Интегрируем по единичному диску в полярных координатах: слагаемые $-2u^2$ и $2v^2$ по симметрии круга дают одинаковые по модулю вклады ($\iint u^2\,du\,dv=\iint v^2\,du\,dv=\pi/4$), поэтому они взаимно уничтожаются, и остаётся только:
$$\iint_D(-2)\,du\,dv=-2\cdot\pi\cdot1^2=-2\pi$$Проверим напрямую через циркуляцию: $w_1=\cos t$, $w_2=\sin t$, $w_3=1$. $d\vec r=(-\sin t,\cos t,0)\,dt$. $\vec F=(\sin t,-\cos t,\cos t\sin t)$.
$$\vec F\cdot d\vec r=\sin t\cdot(-\sin t)+(-\cos t)\cdot\cos t+0=-\sin^2t-\cos^2t=-1$$$$\oint_L\vec F\cdot d\vec r=\int_0^{2\pi}(-1)\,dt=-2\pi$$Ответ: $-2\pi$ — оба способа совпадают. Содержательный вывод: чисто вихревая часть поля $(w_2,-w_1,0)$ создаёт ненулевую циркуляцию сама по себе, а добавленный «взаимодействующий» член $w_1w_2$ в третьей компоненте влияет на вид ротора (меняет его первые две компоненты), но не меняет итоговую циркуляцию по горизонтальному контуру — потому что в проекции на вертикальную нормаль эти изменения взаимно гасятся симметрией диска.
Почему это важно
Формула Стокса — это утверждение о независимости результата от посредника. В инженерных и физических задачах контур часто задан однозначно (реальный проволочный каркас, реальная граница области), а вот подходящая поверхность для интегрирования ротора выбирается исключительно из соображений удобства вычислений — как в примере 2, где переход от плоского диска к полусфере ничего не меняет в ответе. Эта же логика независимости от посредника — краеугольный камень того, как в geometric deep learning определяют операторы на графах и многообразиях: результат агрегации локальной информации должен корректно определяться границей области агрегации, а не случайным способом, которым эта область была выбрана внутри более крупной структуры.
Формула Грина как частный случай формулы Стокса
Интуиция: сплющиваем поверхность в плоскость
А теперь разберёмся, почему формула Грина, которую ты уже видел раньше, — это не отдельная теорема, а всего лишь частный случай формулы Стокса. Представь себе ту же мыльную плёнку на проволочном каркасе, но теперь сам каркас лежит плашмя на столе, а плёнка совсем не изогнута — она идеально плоская. В этой ситуации нормаль к «поверхности» в каждой точке одна и та же — она смотрит строго вертикально вверх (или вниз, в зависимости от ориентации). Формула Стокса, применённая к такой вырожденной, плоской поверхности, обязана свестись к чему-то более простому — и это «что-то» оказывается ровно формулой Грина.
Определение
Утверждение (формула Грина как частный случай). Пусть плоское векторное поле $\vec F=(P(x,y),Q(x,y),0)$ не зависит от координаты $z$ и не имеет вертикальной компоненты, а область $D$ лежит в плоскости $z=0$ с границей $\partial D$. Возьмём в качестве поверхности $S$ саму плоскую область $D$ с постоянной нормалью $\vec n=(0,0,1)$. Тогда ротор поля равен
$$\operatorname{rot}\vec F=\left(\frac{\partial0}{\partial y}-\frac{\partial Q}{\partial z},\ \frac{\partial P}{\partial z}-\frac{\partial0}{\partial x},\ \frac{\partial Q}{\partial x}-\frac{\partial P}{\partial y}\right)=\left(0,\,0,\,\frac{\partial Q}{\partial x}-\frac{\partial P}{\partial y}\right)$$и формула Стокса $\oint_{\partial D}\vec F\cdot d\vec r=\iint_D(\operatorname{rot}\vec F)\cdot\vec n\,dS$ превращается ровно в формулу Грина:
$$\oint_{\partial D}P\,dx+Q\,dy=\iint_D\left(\frac{\partial Q}{\partial x}-\frac{\partial P}{\partial y}\right)dx\,dy$$
Обрати внимание на два технических момента, которые часто вызывают путаницу. Во-первых, у первых двух компонент ротора автоматически исчезают все слагаемые — просто потому, что $P$ и $Q$ не зависят от $z$, а третья компонента поля тождественно нулевая. Во-вторых, даже если поле $\vec F=(P,Q,R)$ имеет ненулевую третью компоненту $R$, но контур и поверхность выбраны плоскими и горизонтальными, компонента $R$ всё равно не влияет на итоговый результат — потому что на горизонтальном контуре $dz=0$ (третье слагаемое циркуляции обнуляется автоматически), а на горизонтальной поверхности нормаль $(0,0,1)$ «выбирает» из ротора только его третью компоненту, которая, как видно из формулы, вообще не зависит от $R$.
Разбор примеров
Пример 1 (лёгкий). Вычислить циркуляцию поля $\vec F=(y,-x,0)$ вдоль окружности $x^2+y^2=4$ в плоскости $z=0$ (обход против часовой стрелки), убедившись, что формула Стокса и формула Грина дают один и тот же ответ.
Ротор: $\operatorname{rot}\vec F=(0,0,\partial(-x)/\partial x-\partial y/\partial y)=(0,0,-1-1)=(0,0,-2)$. Поток через диск радиуса $2$: $-2\cdot\pi\cdot2^2=-8\pi$.
По формуле Грина: $\partial Q/\partial x-\partial P/\partial y=-1-1=-2$, $\iint_D(-2)\,dA=-2\cdot4\pi=-8\pi$ — то же самое (это и есть один и тот же расчёт, просто записанный на разных языках).
Проверим напрямую: $x=2\cos t$, $y=2\sin t$, $dx=-2\sin t\,dt$, $dy=2\cos t\,dt$.
$$\oint(y\,dx-x\,dy)=\int_0^{2\pi}\bigl[2\sin t\cdot(-2\sin t)-2\cos t\cdot2\cos t\bigr]dt=\int_0^{2\pi}(-4)\,dt=-8\pi$$Ответ: $-8\pi$.
Пример 2 (средний). Показать, что для поля $\vec F=(y,-x,x^2+y^2)$ (с ненулевой третьей компонентой $R=x^2+y^2$) циркуляция вдоль окружности $x^2+y^2=1$, $z=0$ всё равно вычисляется в точности по формуле Грина, несмотря на присутствие $R$.
Ротор: $\operatorname{rot}\vec F=\left(\dfrac{\partial R}{\partial y}-\dfrac{\partial Q}{\partial z},\ \dfrac{\partial P}{\partial z}-\dfrac{\partial R}{\partial x},\ \dfrac{\partial Q}{\partial x}-\dfrac{\partial P}{\partial y}\right)=(2y,\,-2x,\,-1-1)=(2y,-2x,-2)$.
Поток через диск (нормаль $(0,0,1)$): третья компонента ротора не зависит от $x,y$, и именно она «выживает» при скалярном произведении с $(0,0,1)$: $\iint_D(-2)\,dA=-2\cdot\pi\cdot1^2=-2\pi$.
Проверим напрямую: $x=\cos t$, $y=\sin t$, $dz=0$ (поскольку $z\equiv0$ вдоль контура), поэтому слагаемое $R\,dz$ обнуляется целиком, несмотря на то что $R=x^2+y^2=1\ne0$ на самом контуре.
$$\vec F\cdot d\vec r=y\,dx-x\,dy=\sin t\cdot(-\sin t)-\cos t\cdot\cos t=-1,\qquad \oint=\int_0^{2\pi}(-1)\,dt=-2\pi$$Ответ: $-2\pi$ — совпадает, что подтверждает: при плоском горизонтальном контуре третья компонента поля роли не играет, какой бы сложной она ни была.
Пример 3 (сложный, машинное обучение). Функция потерь $L(w_1,w_2)=w_1^2+w_2^2$ имеет минимум в точке $(0,0)$. Реальное поле обновлений оптимизатора не является чистым антиградиентом — к нему добавлена вихревая примесь, характерная, например, для несимметричных эффектов адаптивного шага: $\vec F=(-2w_1-w_2,\,-2w_2+w_1,\,0)$. Проверить формулу Грина (как частный случай формулы Стокса) для циркуляции вдоль окружности радиуса $R$ с центром в минимуме и показать, что весь результат целиком объясняется вихревой примесью.
Ротор: третья компонента равна $\dfrac{\partial Q}{\partial x}-\dfrac{\partial P}{\partial y}=\dfrac{\partial(-2w_2+w_1)}{\partial w_1}-\dfrac{\partial(-2w_1-w_2)}{\partial w_2}=1-(-1)=2$. Поток через диск радиуса $R$: $2\cdot\pi R^2$.
Проверим напрямую: $w_1=R\cos t$, $w_2=R\sin t$, $dw_1=-R\sin t\,dt$, $dw_2=R\cos t\,dt$.
$$\vec F\cdot d\vec r=(-2R\cos t-R\sin t)(-R\sin t)+(-2R\sin t+R\cos t)(R\cos t)$$Раскрываем: первое слагаемое даёт $2R^2\cos t\sin t+R^2\sin^2t$, второе — $-2R^2\sin t\cos t+R^2\cos^2t$. Сумма: $R^2\sin^2t+R^2\cos^2t=R^2$ (перекрёстные слагаемые взаимно уничтожаются). Значит:
$$\oint_L\vec F\cdot d\vec r=\int_0^{2\pi}R^2\,dt=2\pi R^2$$Ответ: $2\pi R^2$ — совпадает с потоком ротора. Если бы поле было чистым антиградиентом $(-2w_1,-2w_2,0)$ без вихревой добавки, его ротор был бы тождественно равен нулю (проверь самостоятельно, это займёт секунду), и циркуляция была бы нулевой независимо от радиуса. Весь ненулевой результат $2\pi R^2$ целиком порождается именно вихревым слагаемым $(-w_2,w_1)$ — формула Грина как частный случай формулы Стокса даёт точный способ количественно измерить эту «закрученность» реального оптимизатора относительно идеального градиентного спуска.
Почему это важно
Понимание того, что формула Грина — это частный, вырожденный (плоский) случай формулы Стокса, снимает необходимость запоминать две отдельные теоремы как независимые факты. Более того, оно объясняет, почему формула Грина вообще работает: не потому, что плоскость как-то особенно устроена, а потому, что любая плоская поверхность — это просто самый простой из бесконечного множества возможных «натяжений» на заданный контур, и формула Стокса работает для каждого из них одинаково.
Единая цепочка трёх теорем: граница против внутренности
Интуиция: одна и та же идея на разных этажах
Давай разберёмся, что объединяет формулу Ньютона-Лейбница из первого курса анализа, формулу Грина, формулу Остроградского-Гаусса и сегодняшнюю формулу Стокса. На первый взгляд это четыре совершенно разных факта — один про отрезки, другой про плоские области, третий про объёмы, четвёртый про поверхности в пространстве. Но если присмотреться к структуре каждой формулы, обнаруживается поразительное единообразие: слева всегда стоит интеграл некоторой величины по границе области, а справа — интеграл от подходящей производной этой величины по внутренности этой же области.
$$\int_a^bf'(x)\,dx=f(b)-f(a)$$Здесь «область» — это отрезок $[a,b]$, а его «граница» — это всего две точки, $a$ и $b$; интеграл по границе вырождается в простую разность значений на её концах.
$$\oint_{\partial D}P\,dx+Q\,dy=\iint_D\left(\frac{\partial Q}{\partial x}-\frac{\partial P}{\partial y}\right)dx\,dy$$Здесь «область» — плоская фигура $D$, её граница — замкнутый контур $\partial D$, а «производная» — это скалярный ротор (плоская завихрённость).
$$\iint_{\partial V}\vec F\cdot\vec n\,dS=\iiint_V(\operatorname{div}\vec F)\,dV$$Здесь «область» — трёхмерное тело $V$, его граница — замкнутая поверхность $\partial V$, а «производная» — дивергенция.
$$\oint_{\partial S}\vec F\cdot d\vec r=\iint_S(\operatorname{rot}\vec F)\cdot\vec n\,dS$$Здесь «область» — сама поверхность $S$ (двумерный объект, вложенный в трёхмерное пространство), её граница — пространственный контур $\partial S$, а «производная» — векторный ротор.
Заметь закономерность в размерностях: формула Ньютона-Лейбница работает с объектом размерности $1$ (отрезок) и его границей размерности $0$ (точки); формула Грина — с объектом размерности $2$ (область на плоскости) и границей размерности $1$ (контур); формула Стокса — снова с объектом размерности $2$ (поверхность, пусть и искривлённая в пространстве) и границей размерности $1$; формула Остроградского-Гаусса — с объектом размерности $3$ (тело) и границей размерности $2$ (поверхность). В каждом случае «производная» повышает степень сложности объекта на единицу: обычная производная функции одной переменной, скалярный ротор для плоских полей, векторный ротор для пространственных полей на поверхности, дивергенция для полей в объёме. Это не случайное совпадение обозначений — это проявление одной и той же обобщённой теоремы Стокса современной дифференциальной геометрии, которая для произвольного гладкого ориентированного многообразия $M$ с краем $\partial M$ и дифференциальной формы $\omega$ утверждает:
$$\int_{\partial M}\omega=\int_M d\omega$$где $d\omega$ — внешняя производная формы $\omega$ (строгое определение этого объекта выходит за рамки курса классического анализа, но интуитивно это единый способ записать одновременно и градиент, и ротор, и дивергенцию как частные проявления одной и той же операции в разных размерностях). Формула Ньютона-Лейбница, формула Грина, формула Остроградского-Гаусса и сегодняшняя формула Стокса — это ровно четыре конкретных воплощения этой одной формулы для многообразий размерности $1$, $2$, $3$ и $2$ (в пространстве) соответственно.
Эта идея — что глобальное поведение на границе целиком определяется локальной, дифференциальной информацией внутри — не осталась достоянием классической математической физики XIX века. Именно она лежит в основе того, как строятся современные архитектуры geometric deep learning — глубокого обучения на графах, сетках и многообразиях (например, обработка 3D-моделей, молекулярных структур или социальных сетей). Свёрточные операторы на таких нерегулярных структурах строятся так, чтобы результат агрегации локальной информации от соседей узла (аналог «производной» в дискретном мире) был согласован с тем, что происходит на границе рассматриваемого фрагмента графа или поверхности, — это прямое дискретное эхо той же самой логики «граница против внутренности», которую ты только что увидел в непрерывном виде.
Определение
Принцип (единство интегральных теорем поля). Формулы Ньютона-Лейбница, Грина, Остроградского-Гаусса и Стокса — это частные случаи одного и того же общего принципа: интеграл некоторой величины по границе области равен интегралу от подходящей локальной производной этой величины по внутренности области. Следствие этого единства: поток ротора любого дифференцируемого векторного поля через замкнутую поверхность (поверхность без края) всегда равен нулю, поскольку тождественно выполняется векторное равенство
$$\operatorname{div}(\operatorname{rot}\vec F)\equiv0$$Это тождество можно интерпретировать двумя эквивалентными способами: как следствие формулы Остроградского-Гаусса, применённой к полю $\operatorname{rot}\vec F$ (поток через $\partial V$ равен $\iiint_V\operatorname{div}(\operatorname{rot}\vec F)\,dV=0$), и как следствие формулы Стокса для «вырожденного» контура нулевой длины (у замкнутой поверхности без края циркуляция по несуществующему краю равна нулю по определению).
Именно это тождество $\operatorname{div}(\operatorname{rot}\vec F)\equiv0$ объясняет, почему формула Стокса вообще корректно определена: если бы поток ротора через разные поверхности с одним и тем же краем отличался, теорема была бы бессмысленной. Но раз $\operatorname{div}(\operatorname{rot}\vec F)=0$, то для любых двух поверхностей $S_1,S_2$ с общим краем $L$ их объединение (с противоположными ориентациями) образует замкнутую поверхность $\partial V$ некоторого объёма $V$, и по формуле Остроградского-Гаусса
$$\iint_{S_1}(\operatorname{rot}\vec F)\cdot\vec n\,dS-\iint_{S_2}(\operatorname{rot}\vec F)\cdot\vec n\,dS=\iiint_V\operatorname{div}(\operatorname{rot}\vec F)\,dV=0$$— то есть потоки обязаны совпадать. Вот и настоящая причина, по которой в примере 2 первого раздела плоский диск и полусфера дали один и тот же ответ: не случайность, а прямое следствие формулы Остроградского-Гаусса, примененной к ротору поля.
Разбор примеров
Пример 1 (лёгкий). Для поля $\vec F=(y^2,z^2,x^2)$ (взятого без особого физического смысла, чтобы продемонстрировать чистую математику) вычислить $\operatorname{div}(\operatorname{rot}\vec F)$ и найти поток ротора через сферу $x^2+y^2+z^2=1$ (замкнутая поверхность).
Ротор: $\operatorname{rot}\vec F=\left(\dfrac{\partial x^2}{\partial y}-\dfrac{\partial z^2}{\partial z},\ \dfrac{\partial y^2}{\partial z}-\dfrac{\partial x^2}{\partial x},\ \dfrac{\partial z^2}{\partial x}-\dfrac{\partial y^2}{\partial y}\right)=(-2z,-2x,-2y)$.
Дивергенция ротора: $\operatorname{div}(\operatorname{rot}\vec F)=\dfrac{\partial(-2z)}{\partial x}+\dfrac{\partial(-2x)}{\partial y}+\dfrac{\partial(-2y)}{\partial z}=0+0+0=0$ — тождественно, как и должно быть для любого поля.
По формуле Остроградского-Гаусса, применённой к полю $\operatorname{rot}\vec F$: поток через замкнутую сферу равен $\iiint_V0\,dV=0$.
Ответ: $0$ — без единого вычисления поверхностного интеграла напрямую.
Пример 2 (средний). Для поля $\vec F=(-y,x,0)$ (то же поле, что в примере 2 первого раздела) убедиться в равенстве потоков через диск и через полусферу не прямым вычислением каждого потока, а через дивергенцию ротора.
Ротор уже найден ранее: $\operatorname{rot}\vec F=(0,0,2)$. Пусть $S_1$ — диск в плоскости $z=0$ с нормалью вверх, $S_2$ — верхняя полусфера с нормалью наружу (вверх), обе с общим краем — единичной окружностью в плоскости $z=0$. Объединение $S_1$ (с обращённой вниз нормалью, то есть $-S_1$) и $S_2$ образует замкнутую поверхность границы полушара $V=\{x^2+y^2+z^2\le1,\,z\ge0\}$.
$$\iint_{S_2}(\operatorname{rot}\vec F)\cdot\vec n\,dS-\iint_{S_1}(\operatorname{rot}\vec F)\cdot\vec n\,dS=\iiint_V\operatorname{div}(0,0,2)\,dV=\iiint_V0\,dV=0$$Ответ: потоки через $S_1$ и $S_2$ обязаны совпадать — что мы и наблюдали напрямую ($2\pi$ в обоих случаях), только теперь понятно, что это не случайность, а прямое следствие формулы Остроградского-Гаусса, применённой к ротору.
Пример 3 (сложный, машинное обучение). Рассмотрим «кубическую ячейку» пространства весов $[0,1]^3$ как модель одного блока параметров трёхслойной сети. Для поля $\vec F=(w_1,w_2,w_3)$ (простейшая модель регуляризации, «стягивающей» веса к нулю пропорционально их величине — аналог L2-регуляризации) вычислить суммарный «отток» через всю границу куба по формуле Остроградского-Гаусса. Отдельно, на одной грани этого куба ($w_3=0$, единичный квадрат в координатах $w_1,w_2$) рассмотрим поле $\vec G=(-w_2,w_1,0)$ (вихревая компонента, например, от недиагонального прекондиционера) и найдём циркуляцию по границе этой грани через формулу Стокса — чтобы увидеть, как обе теоремы работают параллельно на разных уровнях одной и той же геометрической конструкции.
Часть первая (Остроградский-Гаусс на всём кубе). $\operatorname{div}\vec F=\dfrac{\partial w_1}{\partial w_1}+\dfrac{\partial w_2}{\partial w_2}+\dfrac{\partial w_3}{\partial w_3}=1+1+1=3$. Объём куба $[0,1]^3$ равен $1$, поэтому поток через всю границу куба:
$$\iint_{\partial([0,1]^3)}\vec F\cdot\vec n\,dS=\iiint_{[0,1]^3}3\,dV=3\cdot1=3$$Часть вторая (Стокс на одной грани куба). Ротор поля $\vec G=(-w_2,w_1,0)$: третья компонента равна $\dfrac{\partial w_1}{\partial w_1}-\dfrac{\partial(-w_2)}{\partial w_2}=1-(-1)=2$, то есть $\operatorname{rot}\vec G=(0,0,2)$. Поток через квадрат площади $1$ с нормалью $(0,0,1)$: $2\cdot1=2$.
Проверим напрямую, обходя квадрат $[0,1]^2$ против часовой стрелки: на стороне $w_2=0$ ($w_1:0\to1$) вклад $\vec G\cdot d\vec r=w_1\,dw_2=0$ (так как $dw_2=0$); на стороне $w_1=1$ ($w_2:0\to1$) вклад $\int_0^11\,dw_2=1$; на стороне $w_2=1$ ($w_1:1\to0$, параметризуя $w_1=1-t$) вклад тоже даёт $1$; на стороне $w_1=0$ вклад $0$. Сумма: $0+1+1+0=2$.
Ответ: поток через границу всего куба (формула Остроградского-Гаусса) равен $3$; циркуляция по границе одной грани куба (формула Стокса) равна $2$. Эти две величины отвечают на принципиально разные вопросы — суммарный «отток» через объём против локальной «закрученности» на плоском срезе, — но обе выводятся из общей логики «граница против внутренности» и обе избавляют от необходимости честно интегрировать по всей границе или по всему контуру.
Почему это важно
Единая логика трёх теорем — это не просто красивое наблюдение для эрудиции. На практике она означает, что если тебе нужно проверить или доказать какой-то факт про поток или циркуляцию, у тебя всегда есть выбор: работать с громоздким интегралом по границе или с (обычно куда более простым) интегралом от производной по внутренности. Именно эта гибкость выбора — прямой аналог того, зачем в анализе многообразий вообще нужна такая общая формулировка через дифференциальные формы: она единым образом гарантирует, что подобный выбор всегда доступен, вне зависимости от размерности и формы объекта, с которым ты работаешь.
Условия применимости и роль ориентации
Интуиция: лента Мёбиуса и провод под током
Формула Стокса — мощный инструмент, но не универсальный ключ ко всем дверям сразу. Есть как минимум два типа ситуаций, где формула ломается или требует дополнительной аккуратности. Первая — если поверхность вообще нельзя последовательно ориентировать. Возьми полоску бумаги, перекрути один её конец на пол-оборота и склей в кольцо — получится лента Мёбиуса. Попробуй мысленно «покрасить» одну сторону этой ленты синим цветом, двигаясь вдоль неё без отрыва кисти, — ты обнаружишь, что закрасишь обе стороны, не пересекая края. У такой поверхности просто нет согласованного понятия «наружная нормаль» — значит, формула Стокса к ней неприменима в её стандартной форме.
Вторая ситуация тоньше: даже для честной, ориентируемой поверхности формула требует, чтобы поле $\vec F$ было гладким (непрерывно дифференцируемым) во всех точках поверхности, а не только на самом контуре. Если внутри натянутой на контур поверхности прячется особая точка поля (например, поле не определено или разрывно в какой-то внутренней точке), формула Стокса в её стандартном виде даёт неверный ответ — совершенно аналогично тому, как формула Грина ломается для поля с особенностью внутри области (вспомни поле вихря вокруг провода с током из предыдущего урока).
Определение
Условия применимости формулы Стокса. Формула $\oint_{\partial S}\vec F\cdot d\vec r=\iint_S(\operatorname{rot}\vec F)\cdot\vec n\,dS$ справедлива, если выполнены три условия: (1) поверхность $S$ — кусочно-гладкая и ориентируемая (у неё существует непрерывное поле нормалей, не совпадающая с полосой Мёбиуса или иной неориентируемой поверхностью); (2) векторное поле $\vec F$ непрерывно дифференцируемо во всех точках самой поверхности $S$, включая её внутренность, а не только на крае; (3) ориентация края $\partial S$ согласована с ориентацией нормали $\vec n$ по правилу правой руки. При нарушении условия (1) формула не определена в принципе; при нарушении условия (2) формула, применённая к поверхности, содержащей особую точку поля, даёт результат, не совпадающий с прямым вычислением циркуляции; при нарушении условия (3) результат получает противоположный знак.
Отдельно стоит отметить, что формула Стокса работает и для многосвязных (то есть «с дырками») поверхностей — аналогично тому, как формула Грина обобщается на многосвязные плоские области. Правило то же самое: каждая компонента границы (внешняя и все внутренние «дырки») обходится так, чтобы поверхность оставалась слева от направления обхода — то есть внешняя граница обходится в одном направлении, а границы дырок — в противоположном.
Разбор примеров
Пример 1 (лёгкий). Показать эффект смены ориентации: повторить пример 1 из первого раздела (поле $\vec F=(-y,x,0)$, единичная окружность в плоскости $z=0$), но теперь обходя контур по часовой стрелке (при взгляде сверху) вместо против часовой.
Ротор поля прежний: $\operatorname{rot}\vec F=(0,0,2)$. При обходе контура по часовой стрелке согласованная с ним нормаль по правилу правой руки — это $\vec n=(0,0,-1)$ (смотрит вниз). Поток:
$$\iint_S(0,0,2)\cdot(0,0,-1)\,dS=-2\cdot\pi=-2\pi$$Проверим циркуляцию напрямую: $x=\cos(-t)=\cos t$, $y=\sin(-t)=-\sin t$ (обход в обратную сторону эквивалентен смене знака параметра), $d\vec r=(-\sin t,-\cos t,0)\,dt$... проще воспользоваться уже известным свойством криволинейного интеграла второго рода: при смене направления обхода на противоположное интеграл меняет знак. Раз при обходе против часовой стрелки мы получили $2\pi$ (пример 1 первого раздела), то при обходе по часовой стрелке получаем $-2\pi$.
Ответ: $-2\pi$ — знак изменился на противоположный, что подтверждает критическую роль согласованной ориентации.
Пример 2 (средний). Поле $\vec F=\left(\dfrac{-y}{x^2+y^2},\,\dfrac{x}{x^2+y^2},\,0\right)$ (аналог поля вихря вокруг тонкого провода с током вдоль оси $z$) имеет особую точку на всей прямой $x=0,y=0$. Вычислить циркуляцию этого поля вдоль окружности $x^2+y^2=1$, $z=0$ напрямую и показать, что формулу Стокса нельзя применить к плоскому диску, натянутому на этот контур, — несмотря на то что ротор поля равен нулю почти всюду.
Циркуляция напрямую: $x=\cos t$, $y=\sin t$ (так что $x^2+y^2=1$ на контуре), $dx=-\sin t\,dt$, $dy=\cos t\,dt$. $P=-y=-\sin t$, $Q=x=\cos t$.
$$\vec F\cdot d\vec r=(-\sin t)(-\sin t)+\cos t\cdot\cos t=\sin^2t+\cos^2t=1$$$$\oint_L\vec F\cdot d\vec r=\int_0^{2\pi}1\,dt=2\pi$$Теперь проверим ротор в точках, где поле определено (то есть везде, кроме прямой $x=y=0$): прямым дифференцированием (аналогично тому, как это делалось для плоского поля вихря в уроке про формулу Грина) можно показать, что третья компонента ротора тождественно равна нулю всюду, кроме особой точки. Если бы мы формально применили формулу Стокса к плоскому диску $x^2+y^2\le1$, натянутому на контур, мы бы получили $\iint_D0\,dA=0$ — что противоречит честно вычисленному ответу $2\pi$.
Ответ: циркуляция напрямую равна $2\pi$, но формула Стокса неприменима к диску, содержащему особую точку поля внутри себя, — это прямое напоминание, что условие «поле гладко во всех точках поверхности», а не только на её крае, нельзя игнорировать.
Пример 3 (сложный, машинное обучение). Вернёмся к полю из примера 3 второго раздела, $\vec F=(-2w_1-w_2,\,-2w_2+w_1,\,0)$, с циркуляцией $2\pi R^2$ по окружности радиуса $R$ при обходе против часовой стрелки. Покажи, как изменится численная оценка «закрученности» траектории оптимизации, если по ошибке (например, из-за другого соглашения об индексации параметров) контур обходится в противоположном направлении, и объясни, почему это критично для интерпретации результата.
Как было установлено ранее, циркуляция при обходе против часовой стрелки равна $2\pi R^2$ — положительное число, указывающее, что вихревая примесь «раскручивает» траекторию в направлении возрастания угла. При обходе того же контура по часовой стрелке (например, если параметры $w_1,w_2$ переставлены местами из-за иного порядка индексации слоёв) циркуляция автоматически меняет знак:
$$\oint_{L^-}\vec F\cdot d\vec r=-\oint_L\vec F\cdot d\vec r=-2\pi R^2$$Ответ: $-2\pi R^2$ при обратном обходе. Практический вывод: числовая величина циркуляции без указания направления обхода (и, соответственно, ориентации нормали) не несёт однозначного смысла — прежде чем интерпретировать знак «закрученности» динамики оптимизатора как «усиливающей» или «гасящей» некоторый эффект, необходимо зафиксировать единое соглашение об ориентации, точно так же как в физике необходимо заранее зафиксировать, какое направление обхода контура считается положительным.
Почему это важно
Условия применимости формулы Стокса — это не бюрократические формальности, а содержательные ограничения, нарушение которых даёт содержательно неверный, а не просто «немного неточный» ответ. Особенно значимо здесь то, что оба типа проблем — неориентируемость поверхности и особенности поля внутри неё — имеют прямые аналоги в дискретных структурах данных: граф или сетка могут содержать «топологические дефекты», не позволяющие последовательно определить ориентацию (аналог ленты Мёбиуса), а функция на графе может быть не определена или сингулярна в отдельных узлах (аналог особой точки поля) — и в обоих случаях наивное применение свёрточных операторов, вдохновлённых классическими интегральными теоремами, даёт систематически неверные результаты, если эти условия не учтены на этапе проектирования архитектуры.
Практика: 30 заданий
Базовые задания (1–10)
Задание 1: Найти $\operatorname{rot}\vec F$ для поля $\vec F=(xy,\,yz,\,zx)$.
Задание 2: Найти $\operatorname{rot}\vec F$ для поля $\vec F=(x^2,y^2,z^2)$ и определить, потенциально ли оно.
Задание 3: Вычислить циркуляцию поля $\vec F=(-y,x,0)$ вдоль окружности $x^2+y^2=9$, $z=0$ (против часовой стрелки), используя формулу Стокса.
Задание 4: Вычислить поток ротора поля $\vec F=(0,0,x^2+y^2)$ через диск $x^2+y^2\le1$ в плоскости $z=0$ (нормаль $(0,0,1)$), используя формулу Стокса.
Задание 5: Вычислить циркуляцию поля $\vec F=(z,x,y)$ по окружности $x^2+y^2=4$, $z=3$ (против часовой стрелки при взгляде сверху), используя формулу Стокса.
Задание 6: Найти $\operatorname{rot}\vec F$ для поля $\vec F=(e^y,e^z,e^x)$ в точке $(0,0,0)$.
Задание 7: Проверить потенциальность поля $\vec F=(y+z,\,x+z,\,x+y)$, вычислив ротор.
Задание 8: Вычислить циркуляцию поля $\vec F=(y,0,0)$ вдоль единичной окружности $x^2+y^2=1$, $z=0$ (против часовой стрелки), используя формулу Стокса.
Задание 9: Для поля $\vec F=(y^2,z^2,x^2)$ найти поток ротора через произвольную замкнутую поверхность (например, единичную сферу), используя тождество $\operatorname{div}(\operatorname{rot}\vec F)\equiv0$.
Задание 10: Вычислить циркуляцию поля $\vec F=(2xy,x^2,0)$ вдоль границы треугольника с вершинами $(0,0,0)$, $(1,0,0)$, $(0,1,0)$, используя формулу Стокса.
Средние задания (11–20)
Задание 11: Вычислить циркуляцию поля $\vec F=(-y,x,x+y+z)$ по окружности $x^2+y^2=1$, $z=2$ (против часовой стрелки), используя формулу Стокса с диском $x^2+y^2\le1$ в плоскости $z=2$.
Задание 12: Найти циркуляцию поля $\vec F=(y,z,x)$ вдоль окружности $x^2+y^2=4$, $z=0$ (край верхней полусферы $x^2+y^2+z^2=4$, $z\ge0$) через прямое вычисление.
Задание 13: Используя формулу Грина как частный случай формулы Стокса, найти площадь области, ограниченной астроидой $x=\cos^3t$, $y=\sin^3t$, через $\dfrac12\oint(x\,dy-y\,dx)$.
Задание 14: Вычислить циркуляцию поля $\vec F=(x^2-y^2,\,2xy,\,0)$ вдоль границы прямоугольника $[0,2]\times[0,1]$ в плоскости $z=0$, используя формулу Грина.
Задание 15: Вычислить поток ротора поля $\vec F=(y,-x,xz)$ через часть плоскости $x+y+z=1$ в первом октанте (край — треугольник с вершинами $(1,0,0)$, $(0,1,0)$, $(0,0,1)$).
Задание 16 (машинное обучение): Вычислить циркуляцию поля $\vec G=(-w_2,w_1,0)$ (модель шумовой вихревой добавки SGD) вдоль окружности радиуса $2$ в плоскости $w_3=0$, используя формулу Стокса.
Задание 17: Проверить потенциальность поля $\vec F=(2xy+z^2,\,x^2+2yz,\,y^2+2zx)$, вычислив ротор.
Задание 18: Вычислить циркуляцию поля $\vec F=(y^2,z^2,x^2)$ вдоль границы треугольника с вершинами $(0,0,0)$, $(1,0,0)$, $(0,0,1)$ (лежащего в плоскости $y=0$), используя формулу Стокса.
Задание 19 (машинное обучение): Функция потерь $L(w_1,w_2,w_3)=w_1^2+w_2^2+w_3^2$. Эффективное поле оптимизатора с добавкой $\vec F=-\nabla L+(0,0,w_1w_2)=(-2w_1,\,-2w_2,\,-2w_3+w_1w_2)$. Вычислить циркуляцию вдоль окружности $w_1^2+w_2^2=1$, $w_3=0$, используя формулу Стокса.
Задание 20: Используя формулу Грина как частный случай формулы Стокса, вычислить циркуляцию поля $\vec F=(3x^2y,\,x^3+y^2,\,0)$ вдоль эллипса $\dfrac{x^2}4+\dfrac{y^2}9=1$ (против часовой стрелки).
Продвинутые задания (21–30)
Задание 21: Найти циркуляцию поля $\vec F=(-y,x,0)$ вдоль окружности $x^2+y^2=4$, $z=0$ (край параболоида $z=4-x^2-y^2$, $z\ge0$), используя формулу Стокса.
Задание 22: Найти циркуляцию поля $\vec F=(y,-x,z)$ вдоль окружности $x^2+y^2=1$, $z=1$, используя формулу Стокса с поверхностью — частью конуса $z=\sqrt{x^2+y^2}$.
Задание 23 (машинное обучение): Для поля $\vec F=\left(\dfrac{-y}{x^2+y^2},\dfrac{x}{x^2+y^2},0\right)$ (модель седловой точки в ландшафте потерь) вычислить разность циркуляций по внешней окружности радиуса $2$ (против часовой) и внутренней окружности радиуса $1$ (против часовой) в кольце $1\le x^2+y^2\le4$, и связать её с потоком ротора через кольцо.
Задание 24: Вычислить поток ротора поля $\vec F=(xz,yz,xy)$ через верхнюю полусферу $x^2+y^2+z^2=9$, $z\ge0$, используя формулу Стокса.
Задание 25 (машинное обучение): Поле $\vec F=(w_3,w_1,w_2)$ (циклическая перестановка компонент, модель трилинейного взаимодействия трёх слоёв). Вычислить циркуляцию по границе треугольника с вершинами $(1,0,0)$, $(0,1,0)$, $(0,0,1)$.
Задание 26: Вычислить циркуляцию поля $\vec F=(y^2,x^2,z^2)$ вдоль границы полудиска радиуса $2$ в верхней полуплоскости $y\ge0$, $z=0$ (контур из полуокружности и диаметра), используя формулу Грина.
Задание 27 (машинное обучение): Поле $\vec F=(w_2e^{w_3},\,-w_1e^{w_3},\,0)$ (вихрь с экспоненциальной модуляцией по глубине слоя). Найти циркуляцию по окружности $w_1^2+w_2^2=1$ в плоскости $w_3=c$ как функцию от $c$.
Задание 28: Вычислить циркуляцию поля $\vec F=(2xy^3,\,3x^2y^2+z,\,y)$ вдоль границы треугольника с вершинами $(0,0,0)$, $(1,1,0)$, $(1,1,1)$, используя формулу Стокса.
Задание 29 (машинное обучение): Функция потерь $L(w_1,w_2,w_3)=w_1^2-w_2^2+w_3^2$ (седловая точка). Поле оптимизатора $\vec F=-\nabla L+(0,0,w_1^2+w_2^2)=(-2w_1,\,2w_2,\,-2w_3+w_1^2+w_2^2)$. Найти циркуляцию по окружности $w_1^2+w_2^2=1$, $w_3=0$.
Задание 30 (машинное обучение, обобщающее задание): В единичном шаре $w_1^2+w_2^2+w_3^2\le1$ рассмотрим поле $\vec F=(w_2,\,-w_1,\,w_3^2+w_3)$. а) Найти $\operatorname{div}\vec F$ и поток $\vec F$ через сферу по формуле Остроградского-Гаусса. б) Найти $\operatorname{rot}\vec F$ и циркуляцию по экватору $w_1^2+w_2^2=1$, $w_3=0$ через формулу Стокса. в) Проверить, что поток ротора через всю замкнутую сферу равен нулю.
Частые ошибки
Разберём типичные промахи, которые встречаются при первом знакомстве с формулой Стокса.
Первая и самая распространённая ошибка — забыть согласовать ориентацию контура с ориентацией нормали поверхности. Формула Стокса требует не произвольного, а именно правого (по правилу правой руки) соответствия между направлением обхода края и направлением нормали; нарушение этого соответствия даёт ответ с противоположным знаком, а не просто «чуть неверный» результат.
Вторая ошибка — попытаться применить формулу к неориентируемой поверхности вроде ленты Мёбиуса. Формула Стокса в её стандартной форме определена только для поверхностей, у которых существует непрерывное поле нормалей; если такого поля не существует, вопрос о циркуляции по краю через поток ротора попросту не имеет смысла в привычной форме.
Третья ошибка — выбрать поверхность, содержащую внутри себя особую точку поля (там, где поле не определено или разрывно), и всё равно применить формулу Стокса напрямую. Как показано в разобранном примере с полем вихря вокруг оси, это даёт результат, прямо противоречащий честному вычислению циркуляции.
Четвёртая ошибка — перепутать порядок вычитания в компонентах ротора, особенно во второй компоненте: правильная формула $\dfrac{\partial P}{\partial z}-\dfrac{\partial R}{\partial x}$, а не $\dfrac{\partial R}{\partial x}-\dfrac{\partial P}{\partial z}$. Проще всего избежать этой ошибки, вычисляя ротор через формальный определитель с базисными векторами $\vec i,\vec j,\vec k$ в первой строке, операторами частных производных во второй и компонентами поля в третьей — тогда правильные знаки получаются автоматически через разложение определителя.
Пятая ошибка — забыть, что результат циркуляции не зависит от выбора поверхности, натянутой на контур, и потратить силы на честное интегрирование по «естественной», но неудобной поверхности, вместо того чтобы выбрать максимально простую (плоскую, если это возможно) поверхность с тем же краем.
Шестая ошибка, характерная именно для плоских контуров с нетривиальной третьей компонентой поля: забыть, что при плоском горизонтальном контуре компонента $R$ поля вообще не влияет на итоговую циркуляцию (поскольку $dz=0$ на самом контуре и нормаль убивает первые две компоненты ротора), и по ошибке всё же пытаться учитывать вклад $R$ в вычислении.
Главное запомнить
Соберём ключевые идеи сегодняшнего урока в сжатом виде.
-
Формула Стокса связывает циркуляцию векторного поля по замкнутому пространственному контуру с потоком ротора этого поля через любую поверхность, натянутую на этот контур: $\oint_{\partial S}\vec F\cdot d\vec r=\iint_S(\operatorname{rot}\vec F)\cdot\vec n\,dS$.
-
Результат не зависит от конкретного выбора поверхности $S$ — важен только её край $\partial S$; это следствие тождества $\operatorname{div}(\operatorname{rot}\vec F)\equiv0$ и формулы Остроградского-Гаусса.
-
Формула Грина — это частный, плоский случай формулы Стокса: когда поверхность плоская и горизонтальная, ротор сводится к своей третьей компоненте, а компонента поля $R$ перестаёт влиять на результат.
-
Формула Ньютона-Лейбница, формула Грина, формула Остроградского-Гаусса и формула Стокса — это четыре конкретных проявления одной обобщённой теоремы Стокса дифференциальной геометрии: интеграл по границе равен интегралу от производной по внутренности.
-
Ориентация контура и ориентация нормали поверхности должны быть строго согласованы по правилу правой руки; смена одной из них на противоположную меняет знак всего результата.
-
Формула Стокса требует, чтобы поверхность была ориентируемой (не лента Мёбиуса), а поле было гладким во всех точках самой поверхности, а не только на её крае.
-
Поток ротора любого дифференцируемого векторного поля через замкнутую поверхность (без края) всегда равен нулю — прямое следствие тождества $\operatorname{div}(\operatorname{rot}\vec F)\equiv0$.
-
В машинном обучении вихревые добавки к чистому антиградиенту (эффекты момента, адаптивных схем, несимметричных прекондиционеров) создают ненулевую циркуляцию «эффективного поля обновлений», которую формула Стокса позволяет точно посчитать через поток ротора, не обходя контур напрямую.
-
Единая логика «граница определяется внутренностью» лежит в основе построения операторов на графах и многообразиях в geometric deep learning.
Связь с другими темами курса
Формула Стокса — финальное звено цепочки, которую курс выстраивал на протяжении нескольких уроков подряд. Криволинейные интегралы второго рода дали язык для записи циркуляции поля вдоль кривой; теория поля ввела операторы дивергенции и ротора как локальные характеристики «источников» и «вихрей»; формула Грина впервые связала циркуляцию по плоскому контуру с двойным интегралом ротора по области; поверхностные интегралы научили считать поток векторного поля через искривлённую поверхность; формула Остроградского-Гаусса связала поток через замкнутую поверхность с тройным интегралом дивергенции по объёму. Сегодняшняя формула Стокса замыкает эту конструкцию, обобщая формулу Грина на произвольные (не обязательно плоские) поверхности в пространстве и явно демонстрируя, что все три классические теоремы поля — Грина, Остроградского-Гаусса и Стокса — суть частные случаи одного и того же принципа «граница против внутренности», который восходит ещё к формуле Ньютона-Лейбница из самого начала курса анализа. Понимание этой связи — не просто эрудиция: оно означает, что вместо трёх отдельных теорем, каждую из которых нужно помнить и применять независимо, у тебя в голове остаётся одна общая идея с тремя конкретными воплощениями, которые легко узнать по контексту задачи (плоский контур — Грин, замкнутая поверхность — Остроградский-Гаусс, пространственный контур с произвольной натянутой поверхностью — Стокс).
Интересные факты
Несколько дополнительных деталей, которые расширяют картину происходящего.
-
Формула, носящая имя Стокса, была впервые сообщена ему в частном письме Уильямом Томсоном (будущим лордом Кельвином) в 1850 году — то есть, строго говоря, теорема была открыта не Стоксом, а Кельвином; Стокс же превратил её в знаменитый экзаменационный вопрос Кембриджского университета в 1854 году, из-за чего имя закрепилось именно за ним.
-
Закон электромагнитной индукции Фарадея в дифференциальной форме, одно из четырёх уравнений Максвелла — $\nabla\times\vec E=-\partial\vec B/\partial t$ — получается прямым применением формулы Стокса к интегральному закону индукции; без этой теоремы уравнения Максвелла не могли бы существовать в своей привычной компактной форме.
-
В аэродинамике циркуляция скорости воздуха вокруг крыла самолёта, вычисляемая через теорему Кутта-Жуковского, напрямую связана с подъёмной силой крыла — и формула Стокса даёт способ связать эту циркуляцию с распределением завихрённости потока вокруг всего крыла, а не только вдоль одного контура вблизи его поверхности.
-
Современное геометрическое глубокое обучение (geometric deep learning) — направление, изучающее нейросети на графах, сетках (мешах) и многообразиях, например для анализа 3D-моделей, молекул или белковых структур, — во многом опирается на ту же самую логику «граница против внутренности», которую воплощают классические теоремы поля: дискретные операторы свёртки на графах строятся так, чтобы результат агрегации сигналов от соседей узла был согласован с более крупной структурой сети, точно так же как поток ротора через поверхность согласован с циркуляцией по её краю независимо от выбора самой поверхности.
Лайфхаки и полезные трюки
Практические приёмы, которые помогают быстрее и надёжнее работать с формулой Стокса.
-
Прежде чем честно параметризовать натянутую на контур поверхность, всегда спроси себя: а нельзя ли заменить её на более простую (плоскую, если контур допускает это, или сферическую, если поле обладает вращательной симметрией) — формула Стокса гарантирует, что ответ не изменится, а вычисления часто становятся на порядок проще.
-
Если поле имеет вид $(0,0,c)$ с постоянной третьей компонентой, поток через любую поверхность, однозначно проецирующуюся на горизонтальную плоскость, равен $c$, умноженному на площадь этой проекции, — не нужно параметризовать саму поверхность вообще.
-
Проверяй потенциальность поля прежде, чем считать циркуляцию: если $\operatorname{rot}\vec F\equiv0$, циркуляция по любому замкнутому контуру автоматически равна нулю без каких-либо вычислений.
-
Для контуров, лежащих в горизонтальной плоскости, сразу отбрасывай третью компоненту поля $R$ — она не влияет на результат ни через циркуляцию (там $dz=0$), ни через поток (там нормаль $(0,0,\pm1)$ убивает первые две компоненты ротора, а третья компонента ротора не зависит от $R$).
-
Если нужно проверить свой ответ, всегда можно посчитать циркуляцию двумя независимыми способами: напрямую через параметризацию контура и через поток ротора по какой-нибудь удобной поверхности — совпадение результатов надёжно подтверждает отсутствие ошибок в знаках и в вычислении производных.
-
Перед тем как интерпретировать знак результата (например, «поле раскручивает траекторию по часовой или против часовой»), всегда явно фиксируй направление обхода контура и согласованную с ним ориентацию нормали — без этого сам по себе знак циркуляции не несёт однозначного смысла.
Сегодняшний урок завершает большую главу об интегральных теоремах поля, которую курс выстраивал шаг за шагом: от криволинейных интегралов и понятий дивергенции с ротором — через формулу Грина на плоскости и формулу Остроградского-Гаусса в объёме — к формуле Стокса, связавшей циркуляцию по произвольному пространственному контуру с потоком ротора через любую натянутую на него поверхность. Ты увидел, что все эти теоремы — не разрозненный набор формул для запоминания, а конкретные проявления одной и той же глубокой идеи: то, что происходит на границе области, полностью определяется локальной, дифференциальной информацией внутри неё, будь то отрезок числовой оси, плоская фигура, объёмное тело или искривлённая поверхность в пространстве. Эта идея настолько фундаментальна, что пережила почти два века развития математики и физики — от уравнений Максвелла XIX века до архитектур geometric deep learning века XXI, где та же самая логика согласования локального и глобального определяет, как нейросети обучаются работать с данными на графах, сетках и многообразиях, а не только на регулярных решётках изображений. В следующем уроке мы оставим теорию поля позади и перейдём к дифференциальным уравнениям первого порядка — новому большому разделу анализа, который потребует всего того аппарата производных и интегралов, который ты уже уверенно освоил.
Понял тему? Закрепи в боте! 🚀
Попрактикуйся на задачах и получи персональные рекомендации от AI
💪 Начать тренировку