Рассмотрим следующую задачу:Дан постоянный магнит некоторой формы и нужно получить аналитическое выражение для его магнитного поля B в трёхмерном пространстве.Разберём несколько случаев.Будем считать магнит однородным.
1.Форма магнита прямоугольный параллелепипед(полосовой магнит) размера 2a на 2b на 2c.Поместим начало O декартовой прямоугольной ортогональной системы координат с правой ориентацией базисных векторов(i, j, k ) XOYZ в центр параллелепипеда.Сделаем схематичный рисунок:




2. Цилиндрический магнит(магнит имеет форму цилиндра высоты 2h и радиуса R).Поместим начало O декартовой прямоугольной ортогональной системы координат с правой ориентацией базисных векторов XOYZ в центр цилиндра.Сделаем рисунок:




Теперь напишем на Python код для моделирования и визуализации магнитного поля цилиндрического магнита (код помогала писать нейросеть):
import numpy as np import matplotlib.pyplot as plt from matplotlib import cm # Параметры магнита mu_0 = 4 * np.pi * 1e-7 # Тл·м/А mu = 1.0 # относительная магнитная проницаемость rho = 1.0 # плотность тока (А/м²) v = 1.0 # скорость дрейфа электронов (м/с) R = 0.1 # радиус цилиндра (м) h = 0.2 # высота цилиндра (м) # Константа для расчетов const = mu_0 * mu * rho * v / (4 * np.pi) def calculate_field(r0, z0): # Вспомогательные функции для расчета def I1(r0, z0): integral = 0 for r in np.linspace(0, R, 100): term1 = (z0 - h) * np.log( (np.sqrt((z0 - h)**2 + (R - r0)**2) + R - r0) / (np.sqrt((z0 - h)**2 + r0**2) - r0) ) term2 = np.sqrt((z0 - h)**2 + (R - r0)**2) - np.sqrt((z0 - h)**2 + r0**2) term3 = (z0 + h) * np.log( (np.sqrt((z0 + h)**2 + (R - r0)**2) + R - r0) / (np.sqrt((z0 + h)**2 + r0**2) - r0) ) term4 = np.sqrt((z0 + h)**2 + (R - r0)**2) - np.sqrt((z0 + h)**2 + r0**2) integral += r * (term1 + term2 + term3 + term4) return integral def I2(r0, z0): integral = 0 for r in np.linspace(0, R, 100): term = (r - r0) / np.sqrt((r - r0)**2 + (z0 - h)**2) integral += r * term return integral # Расчет компонент поля Br = const * I1(r0, z0) Bz = const * I2(r0, z0) return Br, Bz # Создание сетки для визуализации r = np.linspace(0, 2*R, 50) z = np.linspace(-2*h, 2*h, 50) R_grid, Z_grid = np.meshgrid(r, z) Br_grid = np.zeros_like(R_grid) Bz_grid = np.zeros_like(Z_grid) for i in range(R_grid.shape[0]): for j in range(R_grid.shape[1]): Br_grid[i,j], Bz_grid[i,j] = calculate_field(R_grid[i,j], Z_grid[i,j]) # Визуализация plt.figure(figsize=(14, 8)) # График радиальной компоненты plt.subplot(121) plt.pcolormesh(R_grid, Z_grid, Br_grid, cmap=cm.coolwarm) plt.colorbar(label='Br (Тл)') plt.title('Радиальная компонента магнитного поля') plt.xlabel('r (м)') plt.ylabel('z (м)') plt.axis('equal') # График осевой компоненты plt.subplot(122) plt.pcolormesh(R_grid, Z_grid, Bz_grid, cmap=cm.coolwarm) plt.colorbar(label='Bz (Тл)') plt.title('Осевая компонента магнитного поля') plt.xlabel('r (м)') plt.ylabel('z (м)') plt.axis('equal') plt.tight_layout() plt.show()
Результат работы программы видно здесь:

Из графиков видна неравномерность распределения магнитного поля в цилиндрическом магните, что можно объяснить сложной зависимостью B(r, z), а также возможными ошибками при забивании сложных аналитических формул в программу. Предоставляю читателям возможность найти их и исправить.
Таким образом, в данной статье получены аналитические выражения для магнитного поля полосового и цилиндрического магнитов, написан код для визуализации полученных результатов.
Список литературы:
Л.Д.Ландау, Е. М. Лифшиц т. II Теория поля ,1967 г.
Слесарев Ю. Н., Малышев Б. В., Борисова А. А., Воронцов А. А. «Математическое моделирование магнитных полей постоянных магнитов цилиндрической формы и эквивалентных им соленоидов» // «Модели, системы, сети в экономике, технике, природе и обществе». — 2016. — № 4 (20). — С. 150–157.
Слесарев Ю. Н., Воронцов А. А. «Исследование магнитных полей постоянных магнитов цилиндрической формы и соленоидов и сравнение полученных результатов» // «XXI век: итоги прошлого и проблемы настоящего плюс». — 2016. — № 6 (34). — С. 110–115.
Черкасова О. А. «Исследование магнитного поля постоянного магнита с помощью компьютерного моделирования» // «Гетеромагнитная микроэлектроника». — 2014. — Вып. 17. — С. 112–120.
Черкасова О. А., Черкасова С. А. «Компьютерное моделирование магнитного поля системы подмагничивания гетеромагнитного устройства» // «ИНЖИНИРИНГ ТЕХНО 2015»: сб. тр. III Междунар. научно-практ. конф. — Саратов: Издательский дом «Райт-Экспо», 2015. — Т. 2. — С. 97–103.
R9A_019
Ну в магнитах ток не течет. Задачку вы решили, как будто течет, КЭД вам в помощь, точно не помню, 4 том ландавшица.
Maximka200 Автор
мы как бы заменяем магнит на эквивалентный соленоид