FEMM 5

Часть III · Встроенный Python и воспроизводимая автоматизация → § 12 · Язык и безопасная последовательность вычислений

Занятие 12.1

Переменные, списки, словари, циклы и функции на задачах FEMM

Цель и задачи

Цель. Проверить вычислительную логику Python на понятной катушке.

Задачи

  • Использовать переменные, списки, словари, цикл и функцию для инженерной таблицы.
  • Вернуть потокосцепление и энергию для пяти токов, включая нулевой.
Что нужно вспомнить перед началом

Если одно из понятий незнакомо, вернитесь к предыдущему занятию и воспроизведите его численный пример. После этого переходите к новой постановке.

Место занятия в инженерной методике

Подготовительный этап методики · Обеспечение воспроизводимости расчётной последовательности

Инженерный вопрос. Совпадают ли результаты функции и ручной таблицы?

Эти действия входят в подготовку расчёта любого устройства: они устанавливают связь источника, геометрии и наблюдаемой величины. Их результат позволяет выбрать допустимую постановку и способ извлечения будущей характеристики.

Последовательность решения, отчёт и критерии результата

Результат этого этапа — проверенная постановка или воспроизводимая процедура перед серией расчётов.

Последовательность решения

  1. Обосновать постановку и способ измерения. Разделите исходный файл, изменённую копию, актуальное решение и последующую обработку; каждая команда должна обращаться к ожидаемому документу.

  2. Таблица линейной катушки как функция Python. Выполните действия практикума по его исходной таблице. Сопоставьте входы и выходы функции для нескольких токов, включая контрольный случай.

  3. Ответить на вопрос по своим результатам. Повторите выбранную строку по сохранённым входам и проверьте связь числа с файлом и режимом; зафиксируйте причину отказа отдельно.

Что включить в отчёт

Результат этого занятия. Проверенная таблица с единицами и объяснением роли аргументов функции.

Данные именно этого опыта. Сопоставьте входы и выходы функции для нескольких токов, включая контрольный случай.

Оформление наблюдений. Версия входа, режим, команды запуска, файл результата и статус; неудачные строки сохраняйте отдельно с причиной отказа.

Как обосновать результат

Проверка из практикума. Проверить все три строки, тип возвращаемых данных и отношение энергий при удвоении тока.

Независимый контроль. Повторите выбранную строку в новой рабочей папке по сохранённым входам; аналитический self-check проверяет арифметику, а решение FEMM — полевую постановку.

Критерий выполнения. Пять правильных строк; имена единиц указаны; нулевой ток обработан без деления; физический смысл каждой колонки объяснён.

Точность и расхождения. Критерий этого этапа — соответствие исходным данным, топологии, назначениям и процедуре повторного открытия. Численный допуск поля здесь не назначают: поле ещё не является защищаемым результатом. Расхождения размеров и параметров фиксируйте с единицами и происхождением.

Основание сравнения. Опора — контрольный пример и протокол воспроизведения этого занятия. Численный self-check программы и фактическое решение FEMM имеют разное происхождение.

Вывод для устройства

Покажите, как другой исполнитель воспроизведёт параметр устройства и обнаружит сбой без ручного восстановления скрытого состояния.

Границы вывода. Простой эталон проверяет конкретное действие или физический закон; перенос на устройство требует заново согласовать геометрию, материалы, режим и объёмный множитель.

Дополнительный расчётный метод

Параметризация и автоматизация серий расчётов

Алгоритмическая последовательность объединяет параметры, свойства, геометрию, группы и серии расчётов. В курсе эти действия выполняются во встроенном Python FEMM 5 с сохранением точных имён API.

Лабораторные работы по методу: Трансформатор от потокосцеплений до схемы замещения и нагрузочной характеристики; Асинхронный двигатель от поля в зазоре до параметров и механической характеристики; Генератор с постоянными магнитами от конструкции ротора до ЭДС и нагрузочного напряжения; Контрольный опыт: от условия задачи к инженерному выводу; Опыт Эрстеда: момент стрелки, эквивалентный ток и движение; Измерительная рамка: от поля провода к ЭДС; Аналогии полей: проводимость, дуальная сеть и диффузия; Зубцовый момент: пусковая помеха и спектр PM-генератора

Получаемые величины. профиль B и гармоники; зубцовый момент M(\theta ); численная устойчивость углового шага; целостность параметрической геометрии

  1. Выделить исходные параметры и точные единицы.
  2. Построить свойства, геометрию и группы через проверенный Python API.
  3. Сохранить/повторно открыть модель с кириллицей перед серией.
  4. В каждом положении выполнить новый анализ, загрузить именно новое решение и записать режим/число.
  5. Для спектра и момента обосновать период и уточнить дискретизацию.

Страницы источника. PDF 1–30 полностью: 1–4 команды и правила; 5–10 простой зазор; 11–19 параметрическая PM-геометрия; 20–25 зубцовый момент; 26–30 токовые гармоники.

Литература по методу

Теория и вывод формул

Основные конструкции Python изучаются на расчётах катушки при нескольких значениях тока. Переменные, списки и функции получают физическое содержание благодаря явному указанию величин и их единиц.

Соглашения об обозначениях и единицах
  • \(i(t)\), \(u(t)\) — мгновенные значения; \(\widehat I\), \(\widehat U\) — комплексные амплитуды; \(\underline I_{\text{д}}\), \(\underline U_{\text{д}}\) — комплексные действующие значения. Для синусоиды \(\widehat I=\sqrt{2}\,\underline I_{\text{д}}\); действующее значение тока равно \(|\underline I_{\text{д}}|\). Нормировка обязательно учитывается в формулах мощности.
  • \(\Phi=\int_S\mathbf B\cdot\mathrm d\mathbf S\) — поток через ориентированную поверхность; \(\Psi=\sum_k\oint_{C_k}\mathbf A\cdot\mathrm d\mathbf l\) — потокосцепление последовательных витков с согласованными замкнутыми контурами. Только при одинаковом сцепленном потоке каждого витка \(\Psi=N\Phi\). Обе величины измеряются в веберах: число витков безразмерно. Запись «Вб·виток» подчёркивает суммирование.
  • \(\theta_{\text{м}}\), \(\Omega\) (также \(\omega_{\text{мех}}\)) — механические угол и угловая скорость. Для основной гармоники \(\theta_{\text{э}}=p\theta_{\text{м}}\), \(\omega_{\text{э}}=p\Omega\), где \(p\) — число пар полюсов. Геометрический период зубцов задаётся отдельно. В производных по углу используйте радианы.
  • Статическая индуктивность \(L_{\text{ст}}=\Psi/i\) — наклон секущей из начала координат; это определение используется при \(\Psi(0)=0\) и \(i\ne0\). Динамическая индуктивность \(L_{\text{дин}}=\partial\Psi/\partial i\) — наклон касательной (дифференциальная, инкрементальная); положение и остальные токи фиксированы. Для линейной характеристики без смещения обе равны одной индуктивности \(L\). При постоянных магнитах и взаимном возбуждении сначала учитывают ненулевое смещение потокосцепления.
  • Положительные направления, оси и специальные индексы определяются в конкретной задаче. Единицу берите из условия или заголовка таблицы; перед подстановкой в формулу СИ переводите миллиметры в метры, миллигенри в генри и градусы в радианы.
  • Численные результаты обычно показаны с четырьмя значащими цифрами; для сравнения близких значений в таблицах сходимости сохранено больше цифр. Полные значения остаются в исходных расчётных данных. Малые остатки вычисления координат на осях показаны как ноль; малые физические величины сохраняются в показательной записи.
Указатель формул этого занятия
  1. (12.1) · Физическая и вычислительная постановка
  2. (12.2) · Численный пример

Физическая и вычислительная постановка

Расчётная программа объединяет описание исходных данных и последовательность выполняемых над ними операций. Число 0.12 приобретает физический смысл лишь после указания величины и единицы, поэтому выбор системы единиц предшествует именованию переменных: current_a, linkage_wb, inductance_h. В коде используется десятичная точка, а в русском тексте и подписях результатов — запятая. Список представляет упорядоченный набор значений, словарь связывает значения с именами параметров, а функция оформляет отдельное содержательное преобразование данных.

В линейной катушке без постоянных магнитов потокосцепление пропорционально току. Энергия получается интегрированием потокосцепления по току и равна коэнергии. Этот пример удобен для проверки языка: неизвестный полевой результат ещё не нужен. Цикл должен проходить по всем заданным значениям, а функция — возвращать число, которое можно проверить независимо. При нулевом токе запрещено вычислять индуктивность делением нулевого потокосцепления на ток; используйте известную линейную модель или производную.

\Psi=LI,\qquad W=W^{\prime}=\frac{LI^2}{2}
(12.1)
L — индуктивность, Гн; I — ток, А; \Psi — потокосцепление, Вб; энергия измеряется в Дж. Число витков безразмерно.

Порядок проверки результата

Численный пример ниже является аналитическим учебным эталоном. Его значения вычислены по указанным формулам; они не обозначают результат решения новой модели методом конечных элементов. Практикум связывает эталон с полевой задачей: сначала воспроизведите уже проверенный результат ручного расчёта, затем измените только один исследуемый параметр. Именно такое сравнение позволяет отделить ошибку программы от влияния геометрии, сетки и физического приближения. Сохраните исходную модель, рабочую копию и таблицу с заголовками величин. В подписи каждой величины укажите единицу, положительное направление и способ получения; для гармонических величин дополнительно укажите амплитудную нормировку. Если условие задачи не выполнено, остановите серию и сохраните причину отказа вместе с последним корректным состоянием.

Пояснение программы

Словарь parameters хранит индуктивность катушки, список currents_a — значения тока. Функция coil_state возвращает потокосцепление и энергию поля с указанными единицами. Отрицательная индуктивность приводит к отказу до вычисления. Цикл перебирает все режимы и выводит три величины в порядке, пояснённом в комментарии. Команда print показывает результат в консоли; запись результатов в файл рассматривается в следующем занятии.

От физического закона к проверяемой функции

Первый алгоритм работает с известной линейной катушкой и не вызывает полевой решатель. Все входы выражены в единицах СИ.

  1. Функция получает индуктивность и ток, проверяет допустимость параметров, затем возвращает потокосцепление и энергию. Возвращаемые числа должны сопровождаться известным порядком и единицами.

  2. Проверьте три независимых свойства: нулевой ток даёт нулевые результаты; смена знака тока меняет знак потокосцепления; энергия сохраняется при смене знака.

  3. Цикл только применяет функцию к списку состояний. Изменение длины списка не должно менять физические формулы или значения уже рассчитанных состояний.

Таблица 12.1. Обозначения и единицы
ВеличинаФизический смыслЕдиница СИ
IТок обмотки; в статике постоянныйА
LИндуктивность при явно указанной линеаризацииГн
\PsiПотокосцепление обмоткиВб
WМагнитная энергияДж

Границы применимости. Проверка аналитической функции подтверждает владение данными и арифметикой. Она не подтверждает исполнение FEMM и не считается полевой валидацией.

Пояснения к официальному руководству

Подробности, которые следует учитывать при настройке и проверке модели. Все учебные пояснения.

Формулы и таблицы руководства к этому занятию

MicroPython, поиск модулей и библиотечные ограничения

Встроенный интерпретатор FEMM 5 основан на MicroPython. Совпадение имени numpy или scipy с пакетом настольного Python не гарантирует совпадения всего API. Сценарий может использовать числовые и комплексные данные, строки %, str.format и f-строки; FEMM дополнительно разрешает форматировать комплексное число через %g, %e и %f.

Поиск пользовательского модуля начинается с текущего каталога, затем проходит python рядом с исполняемыми файлами и личный каталог FEMM/python. Рабочий каталог автоматически меняется при открытии сценария через интерфейс. Собственные модули храните в личном каталоге с неповторяющимися именами: каталог установки заменяется при обновлении. Переносимые дополнения для встроенного интерпретатора должны быть совместимым чистым Python; расширение CPython на C туда просто скопировать нельзя.

Выберите строку своей операционной системы и создайте личный каталог для собственных модулей. Это третье место в порядке поиска; путь рядом с установленной программой принадлежит поставке FEMM.

Таблица М.Н.1. Личные каталоги модулей Python
СистемаКаталог
Windows%APPDATA%/FEMM/python
macOS~/Library/Application Support/FEMM/python
Linux, FreeBSD~/.local/share/FEMM/python; при заданном XDG_DATA_HOME — $XDG_DATA_HOME/FEMM/python
  • Обратные косые черты Windows здесь заменены прямыми для переносимых строк Python. Личный каталог пользователь создаёт сам.
  • Общий порядок поиска: текущий рабочий каталог → python рядом с программой → личный python. Не храните свои модули в каталоге поставки: обновление заменяет его содержимое.

Случайные числа в начале работы получают начальное состояние по часам. При сравнении параметрических серий задавайте random.seed. Для времени различайте локальные localtime/mktime и UTC gmtime; time.time использует эпоху 1970 и дробные секунды. time.sleep оставляет интерфейс отзывчивым.

Регулярные выражения в актуальном перечне руководства включают split, findall, finditer, sub, subn, fullmatch и escape, но не поддерживают флаги re.IGNORECASE и подобные, просмотр вперёд/назад и именованные группы. datetime не содержит базы часовых поясов; применяйте фиксированное смещение и strftime. Формат даты внутри f-строки и локализованные названия месяцев/дней не гарантируются.

В PDF сохранены противоречивые старые абзацы: стр.92 описывает csv и re.split, а стр.94–95 отрицает их наличие. Проверка установленной сборки 16.10.2026 подтвердила csv.reader(["a,b"]) и re.split(",", "a,b"). Это малая проверка этих вызовов, а не полная проверка библиотек; для другой поставки сохраните собственный результат вместе с версией.

Таблица Р.39.1. MicroPython, поиск модулей и библиотечные ограничения
ПлатформаЛичный каталог модулей
Windows%APPDATA%/FEMM/python
macOS~/Library/Application Support/FEMM/python
Linux, FreeBSD~/.local/share/FEMM/python; при заданном XDG_DATA_HOME — $XDG_DATA_HOME/FEMM/python
Таблица Р.39.2. MicroPython, поиск модулей и библиотечные ограничения
Документированные группы модулейЧто проверять при использовании
numpy, scipy (ulab); math, cmathМассивы, линейная алгебра, действительная и комплексная математика
os, os.path, sys, time, datetimeПути, окружение сценария, время и ограничения календарных форматов
json, re, csvСериализация и синтаксис; учитывать отмеченное противоречие PDF
random, binascii, hashlib, base64Воспроизводимость seed, кодирование, SHA-256
glob, shutil, tempfileПоиск и операции с файлами; glob возвращает несортированный список
itertools, functools, operator, copyГруппировки, ключи сортировки, независимые копии параметров
contextlib, traceback, types, logging, textwrapКонтекстные менеджеры, диагностика и оформление сообщений
pathlib, stat, string, pprint, bisect, heapq, pickle, abc, inspect, argparseБиблиотечные подмножества; в string нет Template и Formatter
collections, struct, array, io, errno, gcКонтейнеры, двоичные структуры, потоки, ошибки и память
matplotlib, xlsxwriter, zipfile, pandasПеренаправляются во внешний CPython; требуют подходящего внешнего окружения

Проверьте на своей модели

  • Найдите личный каталог модулей на своей платформе и проверьте фактический os.getcwd().
  • Сравните два запуска случайной выборки с одинаковым seed.
  • Проверьте ровно тот режим csv/re, который нужен заданию; не переносите ограничения всей MicroPython-библиотеки на FEMM без проверки.

Источник: [33]. § 3.1 · § 3.2

Встроенные константы и безопасный пересчёт единиц

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

Встроенные электромагнитные константы FEMM

\mu_0=4\pi\cdot10^{-7}\,\mathrm{H/m},\qquad\varepsilon_0=8.8541878188\cdot10^{-12}\,\mathrm{F/m}
(М.Н.16)
Это числовые значения предопределённых имён программы, которые можно вводить и в поля интерфейса. Они позволяют явно задавать размерные выражения.

Обозначения и единицы

  • uo, muo — имена \mu_0, Гн/м; eo — имя \varepsilon_0, Ф/м; pi, Pi, PI — безразмерное число \pi.

Условия применения. Используются внутренние константы рассматриваемой версии FEMM; точность измеренных свойств материала определяется отдельно.

Ненумерованное соотношение из текста руководства; обозначения и условия раскрыты для курса.

Особенно важно отделить длину в метрах от координат документа. mm равен 0.001 метра. При units="millimeters" координата узла 10 задаёт 10 мм, а 10mm передаст числовое значение 0.01 и задаст только 0.01 мм. Для геометрии в миллиметрах используйте x_{\mathrm{mm}}; для геометрии в метрах — x_{\mathrm{mm}}mm. Названия единиц в probdef и множители единиц в выражениях решают разные задачи.

Пример преобразования эрстедов

1000\,\mathrm{Oe}=1000\frac{1000}{4\pi}\,\mathrm{A/m}\approx79577.47\,\mathrm{A/m}
(М.Н.17)
Запись 1000*Oersted в поле напряжённости переводит исходное значение в А/м. Пересчёт единиц нужен до задания материала или сравнения с измерениями.

Обозначения и единицы

  • Oe — эрстед; H — напряжённость поля, А/м в системе СИ.

Условия применения. Имя единицы является числовым множителем в SI-нормировке ожидаемого поля.

Руководство приводит численное равенство 1000*Oersted = 79577.47; промежуточный коэффициент раскрыт для проверки.

Названия единиц допускают заглавную букву и множественное число; пример руководства — inch, inches, Inch, Inches. Для учебного сценария лучше выбрать одно стабильное написание. AWG(n) возвращает диаметр в миллиметрах; результат нужно перевести, если геометрия задана в другой единице.

Числа \mu _{0} и \varepsilon _{0} в таблице — именно значения предопределённых имён документации FEMM, а не заявление о метрологической точности фундаментальных констант. Не заменяйте числовые свойства магнитного материала этими константами: mu_x/mu_y задают относительную проницаемость.

Таблица Р.41.1. Встроенные константы и безопасный пересчёт единиц
ИменаМножитель / единица результата
pi, Pi, PI\pi
uo, muo4\pi \cdot 10^{-7} Гн/м
eo8,854·10⁻¹² Ф/м
meter, inch, cm, mm, um (micron), mil1; 0.0254; 0.01; 0.001; 10⁻⁶; 25.4·10⁻⁶ м
Tesla, mTesla, Gauss, kGauss1; 10⁻³; 10⁻⁴; 0.1 Тл
AmpMeter, kAmpMeter, Oersted, kOersted1; 1000; 1000/(4\pi ); 10^{6}/(4\pi ) А/м
AWG(n)Диаметр провода, мм

Проверьте на своей модели

  • Вычислите координату 10 мм для документов в millimeters и meters и сравните реальные размеры.
  • Пересчитайте 1000 Oersted в А/м и 1 kGauss в Тл.
  • Подпишите, в каких единицах возвращается AWG и вводится WireD.

Источник: [33]. § 3.4

Разобранный численный пример

Вычисленный аналитический эталон

Дано. Линейная катушка: L = 0{,}12 \,\text{Гн}; токи 0, 2 и 4 \,\text{А}.

  1. При 2 \,\text{А}: \Psi = 0{,}12 \cdot 2 = 0{,}24 \,\text{Вб}; W = 0{,}12 \cdot 2^{2} / 2 = 0{,}24 \,\text{Дж}.

    \Psi=0{,}12\cdot2=0{,}24\ \text{Вб},\quad W=\frac{0{,}12\cdot2^2}{2}=0{,}24\ \text{Дж}
    (12.2)
  2. При 4 \,\text{А}: \Psi = 0{,}48 \,\text{Вб}; W = 0{,}96 \,\text{Дж}. При удвоении тока потокосцепление удваивается, энергия возрастает в четыре раза.

Ответ: Таблица содержит строки (0; 0; 0), (2; 0{,}24; 0{,}24), (4; 0{,}48; 0{,}96).

Проверка: Нулевой ток даёт нулевую энергию; единица \text{Гн} \cdot \text{А}^2 равна Дж.

Практикум в FEMM 5

Таблица линейной катушки как функция Python

Таблица 12.2. Исходные данные практикума
Исходная величинаЗначениеЕдиница
Индуктивность0,12Гн
Токи0; 2; 4А
  1. Откройте встроенную консоль Python FEMM 5 (Python Console). Выполните код построчно, наблюдая значения переменных.
  2. Создайте словарь параметров и список токов. Вынесите вычисление потокосцепления и энергии в одну функцию.
  3. Замените 0{,}12 \,\text{Гн} на 0{,}08 \,\text{Гн} и заранее предскажите отношение результатов. Выполните программу и сравните числа.
  4. Добавьте проверку неотрицательности энергии. Ошибку отрицательной индуктивности оформите как ValueError.
  5. В рабочей копии катушки, подготовленной в графическом интерфейсе выполните три статических опыта с теми же токами. Получите \Psi в Circuit Properties.
  6. Сравните только модель с линейным материалом. Для нелинейного сердечника соотношение квадратов уже не является эталоном.

Ожидаемый результат. Корректная аналитическая таблица; отдельная таблица полевых значений с названием использованной модели.

Как проверить. Проверить все три строки, тип возвращаемых данных и отношение энергий при удвоении тока.

Оценка результата

Совпадают ли результаты функции и ручной таблицы?

  1. Сопоставьте входы и выходы функции для нескольких токов, включая контрольный случай.
  2. Повторите выбранную строку по сохранённым входам и проверьте связь числа с файлом и режимом; зафиксируйте причину отказа отдельно.

С чем сравнить. Опора — контрольный пример и протокол воспроизведения этого занятия. Численный self-check программы и фактическое решение FEMM имеют разное происхождение.

Итог работы. Проверенная таблица с единицами и объяснением роли аргументов функции.

Программа с русскими пояснениями: Список режимов линейной катушки · Порядок запуска

Список режимов линейной катушки

Код выполняется целиком внутри FEMM; это аналитическое упражнение по синтаксису.

Python · встроенный MicroPython FEMM 5
"""Список режимов линейной катушки.

Среда: встроенный MicroPython FEMM 5.
Аналитический учебный пример; полевой решатель не вызывается.
Параметры, единицы величин и порядок вывода пояснены по стадиям.
"""

# Исходные данные: индуктивность в генри; токи в амперах.
# Линейная модель предполагает постоянную индуктивность и отсутствие магнитов.
parameters = {"inductance_h": 0.12}
currents_a = [0.0, 2.0, 4.0]


# Функция возвращает потокосцепление, Вб, и энергию магнитного поля, Дж.
def coil_state(current_a):
    inductance_h = parameters["inductance_h"]
    if inductance_h < 0:
        raise ValueError("Индуктивность должна быть неотрицательной")
    # Потокосцепление равно L·I, энергия равна L·I²/2.
    # При нулевом токе деление на ток не выполняется.
    return inductance_h * current_a, 0.5 * inductance_h * current_a**2


# Перебираем все заданные режимы; исходные параметры между режимами не меняются.
for current_a in currents_a:
    linkage_wb, energy_j = coil_state(current_a)
    # Порядок вывода: ток, А; потокосцепление, Вб; энергия, Дж.
    print(current_a, linkage_wb, energy_j)

Пошаговая настройка расчётного примера

Откройте отдельную страницу с последовательными действиями, точными параметрами, накопительными файлами этапов и программами с русскими комментариями.

Все расчётные примеры курса

Расчётный образец FEMM 5

Откройте модель, воспроизведите указанный режим и сопоставьте свои измерения с таблицей результатов.

Таблица 12.3. Результаты расчётного образца
ВеличинаРезультатЕдиница
Частота0Гц
Ток цепи Катушка1А
Потокосцепление цепи Катушка95,85 × 10⁻⁶Вб
Энергия поля47,92 × 10⁻⁶Дж
Модуль B в контрольной точке608,5 × 10⁻⁶Тл
Координаты контрольной точки (r, z)0,001; 0мм
Визуализация численных данных FEMM 5: Воздушная катушка. Это экспорт результатов поля, а не снимок окна программы.
Рисунок 12.1. Визуализация численных данных FEMM 5: Воздушная катушка. Это экспорт результатов поля, а не снимок окна программы.

Осесимметричная учебная модель. Независимо проверены изменения сетки и внешнего радиуса; аналитическая модель тонкостенного соленоида служит отдельным приближённым ориентиром.

Ориентиры в интерфейсе
Версия FEMM 5 и дата сборки: окно «О программе».
Рисунок 12.2. Версия FEMM 5 и дата сборки: окно «О программе». Открыть в полном размере
Поле воздушной катушки: осесимметричный магнитостатический эталон FEMM 5.
Рисунок 12.3. Поле воздушной катушки: осесимметричный магнитостатический эталон FEMM 5. Открыть в полном размере
Встроенная Python-консоль FEMM 5: решение малой системы и БПФ внутри приложения.
Рисунок 12.4. Встроенная Python-консоль FEMM 5: решение малой системы и БПФ внутри приложения. Открыть в полном размере
Встроенная консоль FEMM: Переменные, списки, словари, циклы и функции на задачах FEMM. Аналитическая проверка программы занятия. Показана консоль исходной редакции программы, зафиксированной при съёмке. Текущая программа с русскими пояснениями проверена отдельно во встроенном Python FEMM; этот снимок не является новым запуском текущей редакции.
Рисунок 12.5. Встроенная консоль FEMM: Переменные, списки, словари, циклы и функции на задачах FEMM. Аналитическая проверка программы занятия. Показана консоль исходной редакции программы, зафиксированной при съёмке. Текущая программа с русскими пояснениями проверена отдельно во встроенном Python FEMM; этот снимок не является новым запуском текущей редакции. Открыть в полном размере

Самостоятельная работа

Создайте функцию для пяти токов от 0 до 8 \,\text{А} с шагом 2 \,\text{А}. Добавьте суммарную энергию таблицы как упражнение со списком, объяснив, что сумма разных режимов не является энергией одной машины.

Критерий выполнения: Пять правильных строк; имена единиц указаны; нулевой ток обработан без деления; физический смысл каждой колонки объяснён.
Первоисточники и дополнительное чтение по занятию
  1. [33] — 90–94
  2. [81] — Раздел Packages · Локальная копия
Пояснения и типичные ошибки
Почему слово «виток» не вводит новую единицу СИ для \Psi?

Число витков — безразмерный множитель потока; \Psi измеряют в Вб. Запись \text{Вб}\cdot \text{виток} допускается как поясняющая подпись.

Что делает return?

Возвращает результат функции вызывающему коду; print только выводит значение в консоль.

На что обратить внимание

  • Отступы определяют блок цикла и функции: случайный отступ меняет поведение программы.
  • Не складывать числа в разных единицах и не использовать строки вместо числовых параметров.