Если одно из понятий незнакомо, вернитесь к предыдущему занятию и воспроизведите его численный пример. После этого переходите к новой постановке.
Место занятия в инженерной методике
Расчётная лабораторная работа · Согласование комплексного отклика и средней мощности
Инженерный вопрос. Сохраняет ли экспорт действительную, мнимую части и единицы без потери смысла?
Сопротивление, распределение тока, потери и электромагнитное усилие нужны для выбора сечения, контактного пути и последующего расчёта нагрева или механической нагрузки.
Последовательность решения, отчёт и критерии результата
Результат получают из наблюдаемых величин и проверяют в условиях данного практикума.
Последовательность решения
Обосновать постановку и способ измерения. Зафиксируйте частоту, фазовый нуль и амплитудную либо действующую нормировку; отдельно запишите действительную и мнимую части уравнения.
Ответить на вопрос по своим результатам. Проверьте действительную и мнимую части отдельно, затем фазу и мощность; явно сохраните амплитудную либо действующую нормировку.
Что включить в отчёт
Результат этого занятия. Проверенный CSV с раздельными ошибками компонент и средним балансом мощности.
Данные именно этого опыта. Сведите частоту, комплексные напряжение, ток, проводимость и мощность выгруженных строк.
Оформление наблюдений. Частота, \operatorname{Re} и \operatorname{Im} входных и выходных величин, единицы, нормировка и средняя мощность; модуль без фазы недостаточен.
Как обосновать результат
Проверка из практикума. При f\to 0 ёмкостная составляющая исчезает. Фазовый угол и коэффициент 1/2 проверяются отдельно от модуля. Прямое численное сравнение возможно только при совпадении всех исходных данных и постановки.
Независимый контроль. Сопоставьте комплексное уравнение целиком, отдельно баланс активной мощности и допустимый низкочастотный или постоянный предел.
Критерий выполнения. Контроль 1000 Гц даёт 0{,}1+j2{,}22530011\,\mathrm{мкА} и 5 мкВт при \widehat{V}=100\,\mathrm{В}; ошибки реальной и мнимой частей показаны отдельно.
Точность и расхождения. Используйте модуль комплексной разности, а не разность модулей. Для исчезающей компоненты приводите абсолютное расхождение и фиксированный физический масштаб.
Основание сравнения. Опора — комплексные уравнения и определение средней мощности из занятия. Не смешивайте амплитудные и действующие значения и не заменяйте комплексную невязку одной разностью модулей.
Вывод для устройства
Объясните, как фазовый отклик влияет на параметр цепи, реактивную составляющую или потери в исследуемом режиме.
Границы вывода. Эквивалентные слои контакта и идеальные проводники требуют обоснованных свойств. Двумерная активная длина не включает автоматически реальные присоединения и торцевое распределение тока.
Теория и вывод формул
Команды семейства c_i задают проводимости, диэлектрические свойства и условия на выводах; команды co извлекают комплексные поля и интегральные величины. Для постоянного тока и гармонического режима отдельно фиксируются частота и нормировка.
Соглашения об обозначениях и единицах
\(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\). При постоянных магнитах и взаимном возбуждении сначала учитывают ненулевое смещение потокосцепления.
Положительные направления, оси и специальные индексы определяются в конкретной задаче. Единицу берите из условия или заголовка таблицы; перед подстановкой в формулу СИ переводите миллиметры в метры, миллигенри в генри и градусы в радианы.
Численные результаты обычно показаны с четырьмя значащими цифрами; для сравнения близких значений в таблицах сходимости сохранено больше цифр. Полные значения остаются в исходных расчётных данных. Малые остатки вычисления координат на осях показаны как ноль; малые физические величины сохраняются в показательной записи.
Семейство c_i задаёт проводимости, диэлектрические свойства и выводы; co читает комплексные поля и интегральные результаты. DC и гармоника должны иметь отдельные записи частоты и нормировки.
Автоматическая проверка сравнивает действительную и мнимую части, а не только модуль. При переносе мощности в тепловую модель используют среднюю активную величину, сохраняющую знак входящей энергии и выбранную нормировку.
Вывод контрольного соотношения
Вычислите комплексную проводимость прямоугольной области и проверьте среднюю активную мощность.
Электроквазистатическая постановка учитывает проводимость и ток смещения. Индуктивное вытеснение тока требует магнитной модели; это не полный волновой решатель.
Комплексная амплитуда тока равна 10^{-7}+j2{,}2253001109\cdot 10^{-6}\,\mathrm{А}.
Средняя активная мощность равна 5·10⁻⁶ Вт. Для \mathrm{RMS}=100\,\mathrm{В} мощность была бы вдвое больше: 10 мкВт.
Границы применимости. Электроквазистатическая постановка учитывает проводимость и ток смещения. Индуктивное вытеснение тока требует магнитной модели; это не полный волновой решатель.
Связь с опытом в FEMM
Повторите в ci/co три частоты токового эталона; выгрузите V, I, Y, P в CSV с заголовками и единицами.
Сначала вычислите контрольное значение вручную, затем сформулируйте ожидаемый знак и зависимость от одного параметра. Повторите опыт в рабочей копии с изменением только этого параметра. Сохраняйте геометрию, единицы, глубину, материалы, источники и граничные условия вместе с результатом. Успешное завершение решателя означает решение введённой модели, но само по себе не доказывает её соответствие устройству.
Проверка и границы вывода
Контроль 1000 Гц даёт 0{,}1+j2{,}22530011\,\mathrm{мкА} и 5 мкВт при \widehat{V}=100\,\mathrm{В}; ошибки реальной и мнимой частей показаны отдельно.
При f\to 0 ёмкостная составляющая исчезает. Фазовый угол и коэффициент 1/2 проверяются отдельно от модуля.
\operatorname{abs}(V\cdot I) не является активной мощностью; требуется сопряжение тока и действительная часть.
Пояснения к официальному руководству
Подробности, которые следует учитывать при настройке и проверке модели. Все учебные пояснения.
Семейство команды определяет физику и стадию: mi/mo — магнитное поле, ei/eo — электростатика, hi/ho — тепло, ci/co — токопроводимость; i относится к исходной модели, o — к решению. newdocument/create используют номера 0,1,2,3 соответственно. Названия команд содержат только одно подчёркивание после префикса: старые расширенные написания с дополнительными подчёркиваниями не поддерживаются.
Первый выбор скрипта определяет физический модуль нового документа. После него используйте согласованную пару префиксов mi/mo, ei/eo, hi/ho или ci/co.
Таблица М.Н.41. Коды newdocument и create
doctype
Физический модуль
0
Магнитное поле
1
Электростатика
2
Теплопроводность
3
Протекание тока
При нескольких документах контролируйте setfocus и gettitle. После изменения исходной модели старое окно решения само по себе не доказывает актуальности результатов: сохраните модель, выполните analyze, затем loadsolution. createmesh возвращает число элементов; analyze умеет обновлять сетку без отдельного предварительного createmesh.
addsegment/addarc связывают ближайшие уже существующие узлы, а drawline/drawarc/drawrectangle создают нужные узлы. Поэтому одинаковые координаты аргументов не делают эти две группы взаимозаменяемыми. Метка области должна лежать в нужной замкнутой области и получить уже определённое свойство материала.
Один и тот же набор кодов используется в перемещении, копировании, масштабировании и отражении для четырёх препроцессоров. Передаваемый editaction делает выбор типа объектов явным; при его отсутствии используется текущий режим.
Таблица М.Н.40. Тип объектов в преобразованиях геометрии
editaction
Объекты
0
Узлы
1
Отрезки
2
Метки областей
3
Дуги
4
Группы
Круглые скобки вокруг необязательного editaction в PDF обозначают необязательность аргумента, а не буквальный синтаксис вызова Python.
Выбор объектов — часть состояния модели. selectgroup очищает прежний выбор и переводит редактор в режим группы. selectcircle/selectrectangle без editmode используют текущий режим; в этих функциях число 4 означает все классы. В преобразованиях editaction=4 означает групповое редактирование. После команд выбора проверяйте, какие объекты будут сдвинуты, скопированы или удалены.
В setblockprop направление намагничивания допускает строковую формулу. theta — полярный угол центра элемента в градусах, R — расстояние от начала координат; координаты обозначаются x/y в плоской и r/z в осесимметричной модели. Число витков имеет знак. automesh для области, elementsize ребра и maxsegdeg дуги управляют разными ограничениями сетки.
Глобальный smartmesh(0/1) переопределяет настройки документов на время сессии; smartmesh(-1) возвращает управление документным mi/ei/hi/ci_smartmesh. У makeABC все недостающие параметры могут выбираться автоматически. Для исследования сходимости и границы явно фиксируйте значения, чтобы изменение геометрии незаметно не изменило внешнюю область.
Проверьте на своей модели
Перед преобразованием проверьте setfocus/gettitle, выбранную группу и editaction.
Сравните результат addsegment без узлов и drawline на отдельной учебной копии.
Запишите параметры Smart Mesh, внешний радиус и число оболочек вместе с числом элементов.
Число propnum выбирает поле конкретного типа свойства. Один и тот же номер в mi_modifymaterial и hi_modifyboundprop относится к разным физическим величинам. В справочнике приведены отдельные таблицы для материалов, границ, точек, магнитных цепей и проводников четырёх модулей; используйте таблицу выбранной команды, а не общий список номеров.
Вызов ci_modifymaterial(name, propnum, value) меняет одно поле существующего свойства. Строка 0 переименовывает запись; остальные строки задают числовой параметр. Номер поля не является кодом типа границы.
Таблица М.Н.28. Коды свойств ci_modifymaterial
propnum
Поле
Смысл и единицы
0
BlockName
Имя материала
1
ox
Проводимость по x или r, См/м
2
oy
Проводимость по y или z, См/м
3
ex
Относительная диэлектрическая проницаемость по x или r; 1
4
ey
Относительная диэлектрическая проницаемость по y или z; 1
5
ltx
Тангенс диэлектрических потерь по x или r; 1
6
lty
Тангенс диэлектрических потерь по y или z; 1
Вызов ci_modifyboundprop(name, propnum, value) меняет одно поле существующего свойства. Строка 0 переименовывает запись; остальные строки задают числовой параметр. Номер поля не является кодом типа границы.
Вызов ci_modifypointprop(name, propnum, value) меняет одно поле существующего свойства. Строка 0 переименовывает запись; остальные строки задают числовой параметр. Номер поля не является кодом типа границы.
Таблица М.Н.30. Коды свойств ci_modifypointprop
propnum
Поле
Смысл и единицы
0
PointName
Имя точечного свойства
1
Vp
Заданный потенциал узла, В
2
qp
Линейная плотность точечного токового источника, А/м
Вызов ci_modifyconductorprop(name, propnum, value) меняет одно поле существующего свойства. Строка 0 переименовывает запись; остальные строки задают числовой параметр. Номер поля не является кодом типа границы.
Таблица М.Н.31. Коды свойств ci_modifyconductorprop
propnum
Поле
Смысл и единицы
0
ConductorName
Имя проводника
1
Vc
Потенциал проводника, В
2
qc
Полный ток проводника, А
3
ConductorType
0 — заданный полный ток; 1 — заданный потенциал
Неиспользуемые коэффициенты конкретного типа границы задаются нулём. В mi_addboundprop код BdryFormat=6/7 означает периодический/антипериодический воздушный зазор, а ia/oa — углы его внутренней и внешней сторон. У тепловой границы свои коды: температура, поток, конвекция, излучение, периодичность и антипериодичность. Если TinfRad опущен, используется Tinf.
Магнитные материалы используют МСм/м для проводимости и МА/м² для заданной плотности тока. Токовый модуль использует См/м и А/м². Ошибка в приставке даёт множитель миллион даже при безошибочном выполнении Python. Тепловая объёмная теплоёмкость kt задаётся в МДж/(м³·К), а источник q_v — в Вт/м³.
В магнитном окне и API присутствует приставка «мега». Та же числовая величина в токовом модуле с единицей См/м означала бы другую проводимость.
Обозначения и единицы
S — сименс (См); MA — мегаампер; mm — миллиметр.
Условия применения. Это пересчёт единиц ввода, а не доказательство нормировки всех возвращаемых полей API.
Равенство проводимости дано в тексте p_{34}; эквивалентность А/мм² и МА/м² раскрывает две записи J в p_{102} и p_{104}.
Точечный источник и терминальный проводник различны: qp электрического/теплового/токового точечного свойства задан на единицу длины, а qc проводника — полный заряд, мощность или ток. Магнитный точечный ток j в mi_addpointprop задаётся в амперах. Суммарные результаты модели дополнительно зависят от глубины плоской постановки или осесимметричного объёма.
Изменение материала через modifymaterial не заменяет проверку его физической модели. Для mi_addmaterial руководство допускает опускать хвост аргументов; важные \mu, H_c, \sigma, шихтовку и параметры провода задавайте явно. Числовой код LamType не означает, что измеренные потери уже подтверждены этой эквивалентной моделью.
Таблица Р.43.1. Коды свойств и физические единицы API
Параметры
Единицы и смысл
mi_addmaterial: J, Cduct
МА/м²; МСм/м
mi_addmaterial: Lam_d, WireD
мм независимо от единицы координат
mi_addmaterial: H_c
А/м
ci_addmaterial: ox,oy
См/м
hi_addmaterial: kt
МДж/(м³·К)
ei/hi/ci_addpointprop: qp
Кл/м; Вт/м; А/м соответственно
ei/hi/ci_addconductorprop: qc
Кл; Вт; А соответственно
getprobleminfo: depth, length unit
Обе длины возвращаются в метрах
getelement: координаты, площадь
Единицы геометрии; квадрат единицы геометрии
Проверьте на своей модели
До запуска укажите единицы каждого источника и проводимости; отдельно проверьте приставки М и отсутствие приставки.
По таблице конкретной modify-команды найдите propnum и проверьте обновлённое свойство.
Сопоставьте ток на выводе или тепловой поток с интегральным балансом модели.
У сетки есть два разных числа строк: Nn узлов и Ne треугольников. Вводные абзацы PDF описывают готовые numpy-массивы внутри FEMM и плоскую передачу через IPC с восстановлением формы обёрткой. Нативная проверка 16.10.2026 подтвердила массивы координат и полей, но обнаружила важное отличие getallelements: вместо документированной Ne×7 матрицы текущая сборка возвращает кортеж из четырёх массивов. Поэтому сначала проверяйте фактический контейнер, а не назначайте ему форму по краткой таблице.
На четырёх сохранённых решениях магнитного, электростатического, теплового и токового модулей получено: connectivity — Ne×3 int32, centroids — Ne×2 float64, areas — Ne float64, groups — Ne int32. Это четыре члена tuple в таком порядке. Первая тройка connectivity совпала с первыми полями getelement(1), а координаты getallnodes()[0] — с getnode(1). Передать np.int32 аргументом getallelements нельзя: в проверенной сборке команда принимает ноль аргументов. Эта проверка внутреннего Python не устанавливает форму ответа внешнего IPC.
Нумерация узлов API начинается с 1, а индексация массива Python и matplotlib — с 0. В элементной строке первые три поля являются номерами узлов; следующие два — координатами центра, затем идут площадь и группа. При переводе в matplotlib вычитайте 1 только из номеров узлов. Храните индексы как int32: int16 переполняется после 32767 и может превратить корректную сетку в набор отрицательных индексов.
Вычитать единицу требуется только из номеров узлов треугольника. Координаты, площадь и группа сохраняют свои значения.
Обозначения и единицы
N_n — число узлов; i_{\mathrm{FEMM}} — номер API от 1; i_{\mathrm{Python}} — индекс массива от 0. Все три величины целочисленные и безразмерные.
Условия применения. Для связности используйте int32. Знаковый int16 ограничен диапазоном −32768…32767 и может молча переполниться.
Формула выделяет математический смысл вычитания 1 из трёх индексов в примере matplotlib. Контейнер getallelements в проверенной сборке отличается от описания PDF; это отдельно разобрано в разделе.
Потенциалы V в электростатике и токопроводимости, а также T в теплопроводности возвращаются по узлам. Их производные D, J, F возвращаются по элементам и не сглаживаются. Магнитный mo_getalla согласно стр.115 выдаёт A в центрах элементов; это принципиальное исключение, которое нельзя соединить с массивом узлов как равнодлинные данные.
Для узлового графика A пример руководства получает координаты mo_getnode(k), затем A через mo_getpointvalues(x,y)[0]. Для крупной серии заранее выделяйте массивы и заполняйте их, а не накапливайте списки Python-чисел. Сроки выполнения примера в руководстве относятся к его модели и компьютеру; их нельзя обещать для произвольной сетки.
В гармонической магнитной и токовой постановке фазовые величины могут быть комплексными. Перед построением рисунка выберите \operatorname{Re}, \operatorname{Im}, модуль или фазу как отдельный шаг обработки. Смешение узлового потенциала, элементного поля и сглаженного точечного запроса может создать ошибку анализа даже при внешне одинаковом изображении.
Таблица Р.44.1. Узлы, элементы и пакетное чтение поля
Запрос
Форма и расположение
*_getallnodes
Nn×2: координаты всех узлов
*_getallelements в PDF
Ne×7: n_{1},n_{2},n_{3},xc,yc,area,group
*_getallelements в проверенной сборке
tuple: connectivity Ne×3; centroids Ne×2; areas Ne; groups Ne
mo_getallb / mo_getalla
Ne×2: B; Ne: A в центрах элементов
eo_getalld / eo_getallv
Ne×2: D; Nn: узловой V
ho_getallf / ho_getallt
Ne×2: F; Nn: узловой T
co_getallj / co_getallv
Ne×2: J; Nn: узловой V
mo_getallgapb / mo_getallgapa
npts×2: B_r,B_{\theta }; npts: A; по умолчанию npts=360
mo_getallgapharmonics
Nh×6: acc,acs,brc,brs,btc,bts для каждой гармоники
Проверьте на своей модели
Проверьте размеры всех массивов по numnodes/numelements, прежде чем объединять столбцы.
Подтвердите, что каждая тройка индексов после вычитания 1 лежит в диапазоне 0…Nn−1.
Для mo_getalla укажите расположение значений по элементам; для ho_getallt — по узлам.
Возвраты интегралов, гармоники зазора и ориентация контура
Перед интегралом очищайте старый контур или выбор областей и создавайте новый явно. Числовой type выбирает физическую операцию в конкретном модуле: одинаковое число не переносится из mo в eo/ho/co. Например, код 2 у mo_blockintegral означает энергию, у eo/ho_blockintegral — объём, а у co_blockintegral — полную мощность.
Перед вызовом co_lineintegral выберите нужный документ результата и найдите код именно этой команды. Заново задайте контур и его направление: таблица связывает числовой type с физической величиной, а не с номером строки меню другого модуля.
Таблица М.Н.32. Результаты и коды co_lineintegral
Код
Величина
Единица / смысл
0
Интеграл E\cdot t
В
1
Поток J\cdot n
Полный ток, А; средняя нормальная плотность, А/м²
2
Геометрия контура
Длина, м; площадь поверхности, м²
3
Средний потенциал на контуре
В
4
Сила тензора напряжений
Н; компоненты силы
5
Момент тензора напряжений
Н·м
J — полный ток проводимости и смещения. При гармонической постановке возвращаемые величины могут быть комплексными.
Перед вызовом co_blockintegral выберите нужный документ результата и найдите код именно этой команды. Очистите прежнее выделение, выберите области интегрирования и затем запишите код вместе с результатом и единицей.
Таблица М.Н.33. Результаты и коды co_blockintegral
Код
Величина
Единица / смысл
0
Активная мощность
Вт
1
Реактивная мощность
вар
2
Полная мощность (Apparent Power)
ВА; интерпретацию комплексного результата проверяйте по контракту сборки
Момент взвешенного тензора напряжений, постоянная составляющая
Н·м
11
Момент взвешенного тензора напряжений, 2\omega
Н·м
В PDF сказано, что возвращаемое значение может быть комплексным. Не заменяйте код 2 автоматически произведением модулей U и I: сохраняйте исходный комплексный результат и его принятую фазорную нормировку.
Перед вызовом co_getpointvalues выберите нужный документ результата и найдите код именно этой команды. Здесь приведён порядок всех возвращаемых полей; физическую точку и единицы координат задают до запроса. Позиции таблицы начинаются с 1, индексы Python — с 0.
Таблица М.Н.34. Результаты и коды co_getpointvalues
Позиция
Символ
Величина
Единица / нормировка
1
V
Потенциал
В
2
Jx
Полная плотность тока по x или r
А/м²
3
Jy
Полная плотность тока по y или z
А/м²
4
Kx
Комплексная эффективная проводимость по x или r
См/м
5
Ky
Комплексная эффективная проводимость по y или z
См/м
6
Ex
Электрическое поле по x или r
В/м
7
Ey
Электрическое поле по y или z
В/м
8
ex
Диэлектрическая проницаемость по x или r
Абсолютная/относительная нормировка таблицей не уточнена
9
ey
Диэлектрическая проницаемость по y или z
Абсолютная/относительная нормировка таблицей не уточнена
10
Jdx
Плотность тока смещения по x или r
А/м²
11
Jdy
Плотность тока смещения по y или z
А/м²
12
ox
Проводимость по x или r; в исходнике ошибочно permittivity
См/м; семантика поля требует проверки на эталоне
13
oy
Проводимость по y или z; в исходнике ошибочно permittivity
См/м; семантика поля требует проверки на эталоне
14
Jcx
Плотность тока проводимости по x или r
А/м²
15
Jcy
Плотность тока проводимости по y или z
А/м²
Порядок всех 15 полей сохранён. Позиция 1 соответствует Python-индексу 0.
Описание ox/oy в PDF повторяет permittivity; обозначения материала ci_addmaterial и разделение J_c/J_d указывают на проводимость. Курс отмечает исправление явно; отдельная нативная проверка всех этих 15 полей ранее не заявлялась.
Перед вызовом co_makeplot выберите нужный документ результата и найдите код именно этой команды. Сначала постройте контур; PlotType выбирает величину вдоль него. Координата X графика — расстояние по пути, число отсчётов не уточняет сетку.
Таблица М.Н.35. Результаты и коды co_makeplot
Код
Величина
Единица / смысл
0
V
В
1
|J|
А/м²
2
J\cdot n
А/м²
3
J\cdot t
А/м²
4
|E|
В/м
5
E\cdot n
В/м
6
E\cdot t
В/м
7
|J_c|
А/м²
8
J_c\cdot n
А/м²
9
J_c\cdot t
А/м²
10
|J_d|
А/м²
11
J_d\cdot n
А/м²
12
J_d\cdot t
А/м²
J_c и J_d — ток проводимости и ток смещения. Комплексные компоненты складываются до взятия модуля: сумма модулей обычно не равна модулю полного тока.
Перед вызовом co_showdensityplot выберите нужный документ результата и найдите код именно этой команды. Код выбирает смысл цветовой шкалы. При сравнении вариантов фиксируйте одинаковую величину и границы шкалы.
Таблица М.Н.36. Результаты и коды co_showdensityplot
Код
Величина
Единица / смысл
0
|V|
В
1
|Re(V)|
В
2
|Im(V)|
В
3
|J|
А/м²
4
|Re(J)|
А/м²
5
|Im(J)|
А/м²
6
|E|
В/м
7
|Re(E)|
В/м
8
|Im(E)|
В/м
Вертикальные черты в исходнике сохранены: речь о модуле выбранной действительной или мнимой составляющей. Эта цветовая карта сама по себе не показывает её знак.
Перед вызовом co_showvectorplot выберите нужный документ результата и найдите код именно этой команды. Код выбирает физический вектор и его комплексную составляющую; масштаб стрелок задаётся отдельно и не меняет решение.
Таблица М.Н.37. Результаты и коды co_showvectorplot
Код
Величина
Единица / смысл
0
Векторы выключены
—
1
Re(J)
А/м²
2
Re(E)
В/м
3
Im(J)
А/м²
4
Im(E)
В/м
5
Re(J) и Im(J)
А/м²
6
Re(E) и Im(E)
В/м
scalefactor задаёт только длину стрелок на экране. При 1 максимальная величина соответствует длине стрелки, равной шагу координатной сетки; это не физическое изменение поля.
Различайте количество физических величин и конкретный тип Python-контейнера. Документация часто пишет «один результат», не устанавливая скаляр или одноэлементный кортеж. Ранее выполненный нативный эталон курса подтвердил кортеж для eo_blockintegral(0) в своём режиме; это не проверка всех других кодов. Перед массовой выгрузкой исследуйте repr/type нужного ответа на малой модели.
Обе команды возвращают четыре величины в одинаковом порядке. Используйте глубину и масштаб единицы в метрах, чтобы связать координаты модели с физическими интегралами; частоту нельзя принимать за геометрическую глубину.
Таблица М.Н.10. Порядок mo_getprobleminfo и co_getprobleminfo
Позиция
Величина
Значение / единица
1
Тип задачи
0 — плоская; 1 — осесимметричная
2
Частота
Гц
3
Глубина плоской задачи
м
4
Масштаб единицы длины геометрии
м на одну единицу координат
Таблицы на обеих страницах совпадают по порядку четырёх результатов. Позиция 1 в Python имеет индекс 0. Для eo/ho возвращаются только три значения: тип, глубина в метрах, масштаб единицы в метрах (без частоты).
mo_lineintegral может возвращать среднее и полный интеграл, либо компоненты постоянной и удвоенной по частоте силы. Члены 2\omega имеют смысл при ненулевой частоте. Текст упоминает взаимодействие постоянного и малого переменного поля в режиме дифференциальной проницаемости, но таблица не задаёт дополнительные индексы 1\omega: не добавляйте их в распаковку по предположению.
Контурный bendcontour требует не менее двух точек, угла от -180^\circ до +180{}^\circ и положительного anglestep. При менее чем двух точках операция игнорируется. Ориентация n/t задаётся направлением обхода; при смене направления отдельно проверяются знаки потока, напряжения и температурной разности.
У mo_gapintegral коды 0/2/3/5 возвращают одну величину момента или энергии, а 1/4/6 — две компоненты силы F_x,F_y. mo_getgapharmonics без n сообщает максимальный доступный порядок; с n даёт шесть коэффициентов. Угол в API задаётся в градусах, тогда как math.cos/math.sin принимают радианы.
Проверка описания и границы подтверждённого поведения
Для каждого вызова сверяйте имя, порядок аргументов, числовые коды опций и форму ответа. Сначала выполните небольшой контрольный расчёт с известной величиной; затем используйте команду в серии.
Справочник содержит 556 нативных имён команд. Выбирайте команду по физическому модулю и стадии расчёта; для интегралов заранее задайте нужные области или ориентированный контур. Сопоставляйте размерность и форму ответа с выбранной операцией.
eo_blockintegral(0) возвращает одноэлементный кортеж; извлеките его компоненту перед скалярными вычислениями. Для тепловой задачи проверяйте знак G по профилю температуры и закону Фурье. У getall-вызовов проверяйте форму массивов и индексацию связности. Для работы с CSV и регулярными выражениями используйте csv и re.split. mo_lineintegral(2) возвращает длину контура и площадь соответствующей поверхности.
Таблица Р.51.1. Аргументы и формы ответа команд FEMM 5
Команда и страницы руководства
Правило применения
csv, re.split; стр.92–95
Используйте csv для табличных данных и re.split для разделения строк по регулярному выражению.
getallelements, стр.114–115/128/142/157
getallelements возвращает кортеж из четырёх массивов; связность использует индексы узлов, начинающиеся с 1.
mi_probdef, стр.99; moverotate
Передавайте аргументы внутри скобок; editaction задавайте отдельным аргументом.
mo_lineintegral(2), стр.107
Результат содержит пару: длина контура и площадь соответствующей поверхности.
eo_blockintegral, стр.124
Для силы используйте код 5; код 4 не является этой операцией.
ho_lineintegral, стр.137
Для теплового потока используйте код 1; код 2 относится к геометрии контура.
ho_makeplot, стр.138
Выбирайте тепловые величины T/F/G: температуру, поток и компоненты температурного градиента.
ho_selectconductor, стр.139
Выбирается тепловой проводник; ho_blockintegral не вычисляет механическую силу.
ho_showcontourplot, стр.141
Изолинии относятся к температуре T; имена аргументов границ диапазона — lower_V и upper_V.
co_getpointvalues, стр.152
Смысл и единицы ox/oy сверяйте с материальными параметрами и контрольной токовой задачей; не подставляйте их как магнитную проницаемость.
co_showcontourplot, стр.155
Передавайте type внутри списка аргументов co_showcontourplot.
Проверьте на своей модели
Укажите команду, её аргументы, ожидаемую форму результата и единицы.
Проверьте каждый используемый код интеграла на подходящем контрольном примере.
Сопоставьте численный результат с физическим эталоном, а не только с отсутствием ошибки выполнения.
Комплексная амплитуда тока равна 10^{-7}+j2{,}2253001109\cdot 10^{-6}\,\mathrm{А}.
Средняя активная мощность равна 5·10⁻⁶ Вт. Для \mathrm{RMS}=100\,\mathrm{В} мощность была бы вдвое больше: 10 мкВт.
Ответ:\widehat I=0{,}1+j2{,}2253001109\,\mathrm{мкА}; P_{\mathrm{average}}=5 мкВт при амплитуде 100 В.
Проверка: При f\to 0 ёмкостная составляющая исчезает. Фазовый угол и коэффициент 1/2 проверяются отдельно от модуля. Значения получены аналитически и сами по себе не подтверждают выполнения полевого расчёта FEMM.
Практикум в FEMM 5
Повторите в ci/co три частоты токового эталона; выгрузите V, I, Y, P в CSV с заголовками и единицами.
Создайте Current Flow Problem для серии 100, 1000 и 10000 Гц; прямоугольник 10 × 10 мм, Depth=100.
Для одной неизменной геометрии и свойств явно задайте список частот [100, 1000, 10000] Гц. В каждой итерации меняйте только частоту, сохраняйте отдельную модель, выполняйте новый анализ и загрузку решения, затем записывайте V, Re(I), Im(I), Re(Y), Im(Y) и среднюю мощность с единицами. Сопоставьте каждую строку с формулой проводимости из теории. Это учебная электроквазистатическая серия с постоянными заданными свойствами; индуктивное вытеснение и частотная дисперсия материала в ней не заявляются.
На торцах задайте комплексные потенциалы 100+0j и 0; сохраните амплитудную нормировку в протоколе.
Получите комплексные токи выводов и сопоставьте действительную и мнимую части с YV. Пересчитайте мощность через 0.5\cdot \operatorname{Re}(V\cdot \operatorname{conj}(I)) в принятом направлении входящего тока.
Ожидаемый результат.\widehat I=0{,}1+j2{,}2253001109\,\mathrm{мкА}; P_{\mathrm{average}}=5 мкВт при амплитуде 100 В. Для FEMM сравнение действительно только при совпадении идеализации и граничных условий.
Как проверить. При f\to 0 ёмкостная составляющая исчезает. Фазовый угол и коэффициент 1/2 проверяются отдельно от модуля. Прямое численное сравнение возможно только при совпадении всех исходных данных и постановки.
Обработка и анализ результатов
Сохраняет ли экспорт действительную, мнимую части и единицы без потери смысла?
Сведите частоту, комплексные напряжение, ток, проводимость и мощность выгруженных строк.
Проверьте действительную и мнимую части отдельно, затем фазу и мощность; явно сохраните амплитудную либо действующую нормировку.
С чем сравнить. Опора — комплексные уравнения и определение средней мощности из занятия. Не смешивайте амплитудные и действующие значения и не заменяйте комплексную невязку одной разностью модулей.
Итог работы. Проверенный CSV с раздельными ошибками компонент и средним балансом мощности.
Вычисляется Y = (\sigma + j\omega \varepsilon _{0}\varepsilon _r)S/L для однородной области при соглашении \exp (j\omega t). Напряжение и ток являются комплексными амплитудами, поэтому средняя активная мощность равна Re(V·conj(I))/2; при использовании действующих значений множитель 1/2 убирают. Ожидаются I = 10^{-7} + j\cdot 2{,}2253001109\cdot 10^{-6} А и P = 5\cdot 10^{-6} Вт. Этот аналитический эталон не запускает FEMM и не описывает индуктивное вытеснение тока или потери в неидеальном диэлектрике.
Python · встроенный MicroPython FEMM 5
"""Контрольный вычислительный фрагмент.Среда: встроенный MicroPython FEMM 5.Аналитический учебный пример; полевой решатель не вызывается.Параметры, единицы величин и порядок вывода пояснены по стадиям."""# Цель: аналитически найти проводимость, ток и среднюю активную мощность.# Однородная плоская область; проводимость и диэлектрическая проницаемость# постоянны. Комплексные величины — амплитуды при зависимости exp(jωt).# Вход задан в СИ; выход: Re(I) [А], Im(I) [А], средняя мощность P [Вт].importmath# 1. Исходные данные: площадь и длина определяют геометрический множитель S/L.eps0_f_m=8.8541878128e-12eps_r=4.0sigma_s_m=1e-8f_hz=1000.0area_m2=0.001length_m=0.01V=complex(100.0,0.0)# Амплитуда напряжения, В; это не действующее значение.# 2. Активная и ёмкостная составляющие полной проводимости, См.geometry_m=area_m2/length_momega_rad_s=2.0*math.pi*f_hzconductance_s=sigma_s_m*geometry_msusceptance_s=omega_rad_s*eps0_f_m*eps_r*geometry_mY=complex(conductance_s,susceptance_s)I=Y*V# 3. При амплитудных фазорах P = Re(V·conj(I))/2.# Модуль V·I не является активной мощностью; для RMS множитель 1/2 отсутствует.P=0.5*(V*I.conjugate()).realassertabs(P-5e-6)<1e-15print("I_re_A",I.real,"I_im_A",I.imag,"P_W",P)# Нативные ci/co здесь не вызываются. Модель не учитывает индуктивный# скин-эффект, краевое поле, дисперсию и диэлектрические потери материала.
Расчётные исследования по теме
Изучите физическую постановку, выполните программу во встроенном Python FEMM 5 и проверьте результаты по сохранённым моделям и независимым критериям.
Наведённое напряжение соседней жилы зависит от её нагрузки. Идеально заземлённая жила, разомкнутая жила и жила с большим сопротивлением могут иметь существенно разные потенциалы в одном и том же поперечном сечении кабеля. Работа связывает полевую матрицу комплексных проводимостей с простым внешним электрическим узлом и затем проверяет найденное напряжение новым полевым решением.
Задача отделяет две электрические характеристики кабеля: продольное сопротивление металлических проводников и поперечную утечку через изоляцию. Здесь рассчитывается только вторая величина. Потенциал внутреннего электрода равен 1 В, внешнего — нулю; ток проходит радиально через слабопроводящий диэлектрик. Удельная проводимость столь мала, что при единичном напряжении ток всего кабеля имеет порядок десятков микроампер.
Круглая плёнка радиуса 200 мм и толщины 0.1 мм. Четыре соосные позиции с шагом 10 мм: токовые контакты x=±15 мм, измерительные точки x=±5 мм. Радиус токовых контактов 0.2 мм.
Коаксиальные электроды радиусами 2 и 10 мм, высота чувствительной части 100 мм. Жидкость занимает 20, 50 или 80 мм снизу. Расчёт осесимметричный: горизонтальная координата r, вертикальная z.
Однородный резистивный прямоугольник 100 × 60 мм, толщина 0.1 мм. Два режима питания последовательно измеряют координаты идеальной точки касания (30,42) мм.
Полусферический электрод радиуса 0.1 м лежит в однородном полупространстве грунта. Внешняя эквипотенциальная полусфера имеет радиус 10 м. Удельное сопротивление грунта 100 Ом м; электрод 100 В, удалённая граница 0 В. Модель осесимметричная.
Два соосных медных цилиндра длиной по 20 мм соединены ступенью: радиусы 5 и 1 мм. Ток идёт вдоль оси, боковые поверхности изолированы, напряжение между торцами 10 мВ.
Снимки интерфейса FEMM показывают геометрию, настройки и работу с результатами в FEMM 5. Откройте изображение, чтобы рассмотреть подписи и значения в полном размере.
Рабочая область модели «Электрическая наводка в кабеле и нагрузка соседней жилы». Нативный препроцессор FEMM 5. Открыть в полном размереСохранённое решение «Электрическая наводка в кабеле и нагрузка соседней жилы». Модуль комплексного потенциала |V|, В, в изоляции трёхжильного кабеля при гармоническом возбуждении. Открыть в полном размереРабочая область модели «Ток утечки коаксиальной линии». Нативный препроцессор FEMM 5. Открыть в полном размереСохранённое решение «Ток утечки коаксиальной линии». Карта модуля потенциала |V|, В, в слабопроводящей коаксиальной изоляции; стационарная утечка. Открыть в полном размереРабочая область модели «Проводимость анизотропной плёнки». Нативный препроцессор FEMM 5. Открыть в полном размереСохранённое решение «Проводимость анизотропной плёнки». Модуль потенциала |V|, В, и эквипотенциали ортотропной проводящей плёнки при постоянном токе. Открыть в полном размереРабочая область модели «Резистивный датчик положения: холостой отсчёт». Нативный препроцессор FEMM 5. Открыть в полном размереСохранённое решение «Резистивный датчик положения: холостой отсчёт». Карта модуля потенциала |V|, В, вдоль резистивного датчика положения; стационарное питание 1 В. Открыть в полном размереУвеличенная область токовых контактов четырёхзондовой модели: контакты радиусом 0,2 мм расположены при x = ±15 мм. Два потенциальных зонда задаются точками считывания решения, без отдельных проводящих областей. Внешняя граница плёнки за кадром; подписи скрыты. Открыть в полном размереСохранённое решение «Четырёхзондовое измерение поверхностного сопротивления». Модуль потенциала |V|, В, возле токовых контактов четырёхзондового измерения. Увеличенная область плёнки; внешняя граница за кадром. Открыть в полном размереРабочая область модели «Кондуктометрический датчик уровня жидкости». Нативный препроцессор FEMM 5. Открыть в полном размереСохранённое решение «Кондуктометрический датчик уровня жидкости». Модуль потенциала |V|, В, в осесимметричном резистивном уровнемере; стационарное питание 1 В. Эквипотенциали скрыты для читаемости узкого разреза. Открыть в полном размереРабочая область модели «Определение координат резистивного сенсорного экрана». Нативный препроцессор FEMM 5. Открыть в полном размереСохранённое решение «Определение координат резистивного сенсорного экрана». Модуль потенциала |V|, В, в одном координатном режиме резистивной сенсорной панели; питание 1 В. Открыть в полном размереУвеличенный меридиональный разрез полусферического заземлителя радиусом 100 мм в однородном грунте. Дуги 200, 500 и 1000 мм задают области сетки; удалённая граница 10 м за кадром. Открыть в полном размереСохранённое решение «Полусферический заземлитель и потенциал поверхности грунта». Модуль потенциала |V|, В, и эквипотенциали грунта при стационарном растекании тока с полусферического электрода. Увеличенная область; удалённая граница за кадром. Открыть в полном размереРабочая область модели «Растекание тока в осесимметричном ступенчатом токоподводе». Нативный препроцессор FEMM 5. Открыть в полном размереСохранённое решение «Растекание тока в осесимметричном ступенчатом токоподводе». Модуль плотности тока |J|, А/м², в увеличенном переходе от тонкого стержня к широкому токоподводу. Шкала отображения 0–5·10⁷ А/м²; эквипотенциали скрыты. Торцы модели за кадром. Открыть в полном размере
Самостоятельная работа
Повторите в ci/co три частоты токового эталона; выгрузите V, I, Y, P в CSV с заголовками и единицами. Сопоставьте исходный и изменённый режимы, сохраните исходные файлы, результаты и объяснение различия.
Критерий выполнения: Контроль 1000 Гц даёт 0{,}1+j2{,}22530011\,\mathrm{мкА} и 5 мкВт при \widehat{V}=100\,\mathrm{В}; ошибки реальной и мнимой частей показаны отдельно.
Пояснения и типичные ошибкиКак сохранить комплексное число в переносимой таблице?
Записать отдельные \operatorname{Re} и \operatorname{Im} с общей единицей, частотой и нормировкой.
Какое контрольное число и единица проверяют этот опыт?
\widehat I=0{,}1+j2{,}2253001109\,\mathrm{мкА}; P_{\mathrm{average}}=5 мкВт при амплитуде 100 В.
При каких предположениях получена приведённая формула?
Электроквазистатическая постановка учитывает проводимость и ток смещения. Индуктивное вытеснение тока требует магнитной модели; это не полный волновой решатель.
На что обратить внимание
\operatorname{abs}(V\cdot I) не является активной мощностью; требуется сопряжение тока и действительная часть.
Электроквазистатическая постановка учитывает проводимость и ток смещения. Индуктивное вытеснение тока требует магнитной модели; это не полный волновой решатель.