Задайте плотность тока или плотность заряда для электромагнитной модели
electromagneticSource(___,
задает ток или плотность заряда для заданной геометрической области. Используйте этот синтаксис с любыми входными параметрами из предыдущих синтаксисов.RegionType
,RegionID
)
возвращает объект электромагнитного источника.emagSource
= electromagneticSource(___)
Задайте плотность тока на всей геометрии для магнитостатического анализа.
emagmodel = createpde('electromagnetic','magnetostatic'); importGeometry(emagmodel,'PlateHolePlanar.stl'); electromagneticSource(emagmodel,'CurrentDensity',10)
ans = ElectromagneticSourceAssignment with properties: RegionType: 'Face' RegionID: 1 ChargeDensity: [] CurrentDensity: 10
Задайте плотность заряда на отдельных гранях в электростатическом анализе.
Создайте электромагнитную модель для электростатического анализа.
emagmodel = createpde('electromagnetic','electrostatic');
Создайте 2-D геометрию с двумя гранями. Во-первых, импортируйте и постройте график 2-D геометрии, представляющей пластину с отверстием.
gm = importGeometry(emagmodel,'PlateHolePlanar.stl'); pdegplot(gm,'EdgeLabels','on','FaceLabels','on')
Затем заполните отверстие путем добавления грани и постройте график получившейся геометрии.
gm = addFace(gm,5); pdegplot(gm,'FaceLabels','on')
Значения плотности заряда задаются отдельно для граней 1 и 2.
sc1 = electromagneticSource(emagmodel,'Face',1,'ChargeDensity',0.3)
sc1 = ElectromagneticSourceAssignment with properties: RegionType: 'Face' RegionID: 1 ChargeDensity: 0.3000 CurrentDensity: []
sc2 = electromagneticSource(emagmodel,'Face',2,'ChargeDensity',0.28)
sc2 = ElectromagneticSourceAssignment with properties: RegionType: 'Face' RegionID: 2 ChargeDensity: 0.2800 CurrentDensity: []
Используйте указатель на функцию, чтобы задать плотность заряда, которая зависит от координат.
Создайте электромагнитную модель для электростатического анализа.
emagmodel = createpde('electromagnetic','electrostatic');
Создайте модуль геометрию круга и включите ее в модель.
geometryFromEdges(emagmodel,@circleg);
Задайте плотность заряда как функцию от координат x и y, .
rho = @(region,state)0.3.*sqrt(region.x.^2 + region.y.^2);
electromagneticSource(emagmodel,'ChargeDensity',rho)
ans = ElectromagneticSourceAssignment with properties: RegionType: 'Face' RegionID: 1 ChargeDensity: @(region,state)0.3.*sqrt(region.x.^2+region.y.^2) CurrentDensity: []
emagmodel
- Электромагнитная модельElectromagneticModel
объектЭлектромагнитная модель, заданная как ElectromagneticModel
объект. Модель содержит 2-D геометрию, mesh, электромагнитные свойства материала, электромагнитные источники и граничные условия.
Пример: emagmodel = createpde('electromagnetic','electrostatic')
J
- Плотность токаПлотность тока, заданная как действительное число или указатель на функцию. Используйте указатель на функцию, чтобы задать плотность тока, которая зависит от координат или от решения. Для получения дополнительной информации смотрите Определение неконстантных параметров электромагнитной модели.
Типы данных: double
| function_handle
rho
- Плотность зарядаПлотность заряда, заданная как действительное число или указатель на функцию. Используйте указатель на функцию, чтобы задать плотность заряда, которая зависит от координат или от решения. Для получения дополнительной информации смотрите Определение неконстантных параметров электромагнитной модели.
Типы данных: double
| function_handle
RegionType
- Тип геометрической области'Face'
для модели 2-DТип геометрической области, заданный как 'Face'
.
Типы данных: char
| string
RegionID
- Идентификатор лицаИдентификатор лица, заданный как вектор положительных целых чисел. Найдите идентификаторы лиц при помощи pdegplot
с 'FaceLabels'
значение-имя аргумента установлено в 'on'
.
Пример: electromagneticSource(emagmodel,'CurrentDensity',10,'Face',1:3)
Типы данных: double
emagSource
- Ручка к электромагнитному источникуElectromagneticSourceAssignment
объектРучка к электромагнитному источнику, возвращаемая как ElectromagneticSourceAssignment
объект. Для получения дополнительной информации смотрите Свойства ElectromagneticSourceAssignment.
В Partial Differential Equation Toolbox™ Производными используйте указатель на функцию, чтобы задать эти электромагнитные параметры, когда они зависят от координат или решения:
Относительная диэлектрическая проницаемость материала
Относительная проницаемость материала
Плотность заряда как источник
Плотность тока как источник
Напряжение на контуре
Магнитный потенциал на контуре
Для примера используйте указатели на функцию, чтобы задать относительную диэлектрическую проницаемость, плотность заряда и напряжение в контур для этой модели.
electromagneticProperties(emagmodel, ... 'RelativePermittivity', ... @myfunPermittivity) electromagneticSource(emagmodel, ... 'ChargeDensity',@myfunCharge, ... 'Face',2) electromagneticBC(emagmodel, ... 'Voltage',@myfunBC, ... 'Edge',2)
Функция должна иметь форму:
function emagVal = myfun(location,state)
Решатель передает location
и state
данные для вашей функции:
location
- Структура, содержащая следующие поля:
location.x
- X-координата точки или точки
location.y
- Y-координата точки или точки
location.z
- Для осесимметричной геометрии z-координата точки или точки
location.r
- Для осесимметричной геометрии r-координата точки или точки
state
- структура, содержащая эти поля для нелинейных задач:
state.u
- Электрический или магнитный потенциал в соответствующих точках структуры местоположения
state.ux
- Оценки x-составляющей электрического или магнитного поля в соответствующих точках структуры местоположения
state.uy
- Оценки y-составляющей электрического или магнитного поля в соответствующих точках структуры местоположения
state.uz
- Для осесимметричной геометрии оценки z-составляющей электрического или магнитного поля в соответствующих точках структуры местоположения
state.ur
- Для осесимметричной геометрии оценки r-составляющей электрического или магнитного поля в соответствующих точках структуры местоположения
Электромагнитные свойства материала (относительная проницаемость или относительная проницаемость) и электромагнитный источник (плотность заряда или плотность тока) получают эти данные от решателя:
location.x
, location.y
, location.z
, location.r
Идентификатор поддомена
state.u
, state.ux
, state.uy
, state.uz
, state.ur
Граничные условия (напряжение или магнитный потенциал на контуре) получают эти данные от решателя:
location.x
, location.y
, location.z
, location.r
location.nx
, location.ny
, location.nz
, location.nr
state.u
Если свойства зависят от электрического или магнитного потенциала, убедитесь, что ваша функция возвращает матрицу NaN
правильного размера при state.u
является NaN
. Решатели проверяют, является ли задача нелинейной путем прохождения NaN
значения состояния и поиск возвращенных NaN
значения.
assembleFEMatrices
| createpde
| electromagneticBC
| ElectromagneticModel
| electromagneticProperties
| Свойства ElectromagneticSourceAssignment | solve
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.