Задайте плотность тока или взимайте плотность за электромагнитную модель
electromagneticSource(___,
задает текущую плотность, или взимайте плотность за заданную область геометрии. Используйте этот синтаксис с любым из входных параметров от предыдущих синтаксисов.RegionType
,RegionID
)
возвращает электромагнитный исходный объект.emagSource
= electromagneticSource(___)
Задайте плотность тока на целой геометрии для магнитостатического анализа.
emagmodel = createpde('electromagnetic','magnetostatic'); importGeometry(emagmodel,'PlateHoleSolid.stl'); electromagneticSource(emagmodel,'CurrentDensity',[0;0;10])
ans = ElectromagneticSourceAssignment with properties: RegionType: 'Cell' RegionID: 1 ChargeDensity: [] CurrentDensity: [3x1 double]
Задайте плотность заряда на отдельных поверхностях в электростатическом анализе.
Создайте электромагнитную модель для электростатического анализа.
emagmodel = createpde('electromagnetic','electrostatic');
Создайте 2D геометрию с двумя поверхностями. Во-первых, импортируйте и постройте 2D геометрию, представляющую пластину отверстием.
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 = @(location,~)0.3.*sqrt(location.x.^2 + location.y.^2);
electromagneticSource(emagmodel,'ChargeDensity',rho)
ans = ElectromagneticSourceAssignment with properties: RegionType: 'Face' RegionID: 1 ChargeDensity: @(location,~)0.3.*sqrt(location.x.^2+location.y.^2) CurrentDensity: []
emagmodel
— Электромагнитная модельElectromagneticModel
объектЭлектромагнитная модель в виде ElectromagneticModel
объект. Модель содержит геометрию, mesh, электромагнитные свойства материала, электромагнитные источники и граничные условия.
Пример: emagmodel = createpde('electromagnetic','electrostatic')
J
— Плотность токаПлотность тока в виде вещественного числа, вектор-столбца 3 элементов для 3-D модели или указателя на функцию. Используйте указатель на функцию, чтобы задать плотность тока, которая зависит от координат.
Выходным параметром, возвращенным указателем на функцию, должен быть 1
- NumPoints
вектор для 2D проблемы и 3
- NumPoints
для 3-D проблемы. Здесь NumPoints
число точек.
Для получения дополнительной информации смотрите Больше О.
Типы данных: double |
function_handle
rho
— Заряжайте плотностьЗаряжайте плотность в виде вещественного числа или указателя на функцию. Используйте указатель на функцию, чтобы задать плотность заряда, которая зависит от координат. Для получения дополнительной информации смотрите Больше О.
Типы данных: double |
function_handle
RegionType
— Геометрический тип области'Face'
для 2D модели | 'Cell'
для 3-D моделиГеометрический тип области в виде 'Face'
для 2D модели или 'Cell'
для 3-D модели.
Типы данных: char |
string
RegionID
RegionID ID области в виде вектора из положительных целых чисел. Найдите поверхность или ячейку IDs при помощи pdegplot
с 'FaceLabels'
или 'CellLabels'
набор аргумента значения имени к 'on'
.
Пример: electromagneticSource(emagmodel,'CurrentDensity',10,'Face',1:3)
Типы данных: double
emagSource
— Обработайте к электромагнитному источникуElectromagneticSourceAssignment
объектОбработайте к электромагнитному источнику, возвращенному как ElectromagneticSourceAssignment
объект. Для получения дополнительной информации смотрите ElectromagneticSourceAssignment Properties.
В Partial Differential Equation Toolbox™ используйте указатель на функцию, чтобы задать эти электромагнитные параметры, когда они будут зависеть от координат:
Относительная проницаемость материала
Относительная проницаемость материала
Заряжайте плотность как источник
Плотность тока как источник
Напряжение за пределами
Магнитный потенциал за пределами
Например, используйте указатели на функцию, чтобы задать относительную проницаемость, плотность заряда и напряжение за пределами для этой модели.
electromagneticProperties(emagmodel, ... 'RelativePermittivity', ... @myfunPermittivity) electromagneticSource(emagmodel, ... 'ChargeDensity',@myfunCharge, ... 'Face',2) electromagneticBC(emagmodel, ... 'Voltage',@myfunBC, ... 'Edge',2)
Функция должна иметь форму:
function emagVal = myfun(location,~)
Решатель вычисляет и заполняет данные в location
массив структур и передачи эти данные к вашей функции. Можно задать функцию так, чтобы ее выход зависел от этих данных. Можно использовать любое имя вместо location
. Чтобы использовать дополнительные аргументы в вашей функции, перенесите свою функцию (который берет дополнительные аргументы) с анонимной функцией, которая берет только location
аргумент. Например:
emagVal = @(location,~) myfunWithAdditionalArgs(location,arg1,arg2...) electromagneticBC(model,'Edge',3,'Voltage',emagVal)
Если вы вызываете electromagneticBC
с Vectorized
установите на 'on'
, затем местоположение может содержать несколько точек оценки. Если вы не устанавливаете Vectorized
или используйте Vectorized
off
, затем решатели передают всего одну точку оценки в каждом вызове.
location
данные являются структурой, содержащей эти поля:
location.x
— X-координата точки или точек
location.y
— Y-координата точки или точек
location.z
— Для 3-D или осесимметричной геометрии, z-координаты точки или точек
location.r
— Для осесимметричной геометрии, r-координаты точки или точек
Электромагнитные свойства материала (относительная проницаемость или относительная проницаемость) и электромагнитный источник (плотность заряда или плотность тока) получают эти данные из решателя:
location.x
, location.y
, location.z
, location.r
ID субдомена
Граничные условия (напряжение или магнитный потенциал на контуре) получают эти данные из решателя:
location.x
, location.y
, location.z
, location.r
location.nx
, location.ny
, location.nz
, location.nr
Для непостоянной относительной проницаемости, относительной проницаемости и плотности заряда, выходной параметр, возвращенный указателем на функцию, должен иметь размер 1
- Np
, где Np = numel(location.x)
число точек.
Для непостоянной плотности тока и магнитного потенциала на контуре, выходной параметр, возвращенный указателем на функцию, должен иметь размер 1
- Np
для 2D проблемы и 3
- Np
для 3-D проблемы.
ElectromagneticModel
| Свойства ElectromagneticSourceAssignment | createpde
| electromagneticProperties
| electromagneticBC
| solve
| assembleFEMatrices
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.