Линии тока и силовые линии

Линия тока — это маршрут частицы, которая в каждой точке движется туда, куда показывает поле.

Линия тока (силовая линия) — кривая, касательная к которой в каждой точке совпадает с вектором поля $\vec F$.

Уравнение линии тока

Если поле — это скорость течения, то линия тока — траектория щепки, брошенной в поток. Условие «касательная коллинеарна полю» записывают так:

$$\frac{dx}{P} = \frac{dy}{Q} = \frac{dz}{R}$$

Это система дифференциальных уравнений. Аналитически она решается редко, зато численно — легко: шагаем маленькими шажками вдоль вектора поля.

Метод Эйлера

Простейший численный интегратор: из точки $\vec r$ делаем шаг по направлению поля.

$$\vec r_{k+1} = \vec r_k + \Delta t\,\vec F(\vec r_k)$$

Трассируем линию тока вращения

import math

# Поле вращения F = (-y, x): линии тока — окружности
def field(x, y):
    return (-y, x)

x, y = 1.0, 0.0
dt = 0.01
steps = int(2*math.pi / dt)   # один оборот
for _ in range(steps):
    fx, fy = field(x, y)
    x += dt * fx
    y += dt * fy

print("Старт:  (1.000, 0.000)")
print("Финиш:  (%.3f, %.3f)" % (x, y))
print("Радиус сохранён ~", round(math.hypot(x, y), 3))

Вывод:

Старт:  (1.000, 0.000)
Финиш:  (1.032, -0.004)
Радиус сохранён ~ 1.032

Частица обошла полный круг и вернулась почти в старт — линия тока поля вращения действительно окружность. Радиус чуть подрос (1.0 → 1.032): это накопленная погрешность метода Эйлера, о которой ниже.

Как работает под капотом

Метод Эйлера накапливает ошибку: для поля вращения он чуть «раздувает» радиус, потому что идёт по хорде, а не по дуге. Уменьшив $dt$, мы уменьшим ошибку. Существуют точнее интеграторы (Рунге-Кутты), но для иллюстрации Эйлера достаточно — он наглядно показывает, что значит «двигаться вдоль поля».

Частые ошибки

  • Путать линию тока с линией уровня — это разные объекты (одна вдоль поля, другая поперёк градиента).
  • Брать большой шаг $dt$ — траектория уедет от истинной.
  • Думать, что линии тока пересекаются. В обычной точке через неё проходит ровно одна линия.

Итог

  • Линия тока касается поля в каждой точке — это путь частицы.
  • Уравнение: $dx/P = dy/Q = dz/R$.
  • Численно строится методом Эйлера: шаг вдоль вектора поля.
Проверьте себя
1. Линия тока векторного поля — это кривая, которая…
Aперпендикулярна полю в каждой точке
Bкасается вектора поля в каждой точке
Cсовпадает с линией уровня
Dвсегда прямая
2. Метод Эйлера для построения линии тока делает шаг…
Aпротив поля
Bвдоль вектора поля: r += dt·F(r)
Cперпендикулярно полю
Dслучайной длины