В этом примере показано, как решить 2D магнитостатическую модель для ферромагнитной системы координат с H-образной полостью. Эта настройка генерирует универсальное магнитное поле из-за присутствия двух обмоток.
Создайте геометрию, которая состоит из прямоугольной системы координат с H-образной полостью, четыре прямоугольника, представляющие две обмотки и модульный квадрат представление воздушной области вокруг магнита. Задайте все размерности в миллиметрах и используйте значение convfactor = 1000
преобразовывать размерности в метры.
convfactor = 1000;
Создайте H-образную геометрию, чтобы смоделировать полость.
xCoordsCavity = [-425 -125 -125 125 125 425 425 ... 125 125 -125 -125 -425]/convfactor; yCoordsCavity = [-400 -400 -100 -100 -400 -400 ... 400 400 100 100 400 400]/convfactor; RH = [2;12;xCoordsCavity';yCoordsCavity'];
Создайте геометрию, чтобы смоделировать прямоугольную ферромагнитную систему координат.
RS = [3;4;[-525;525;525;-525;-500;-500;500;500]/convfactor]; zeroPad = zeros(numel(RH)-numel(RS),1); RS = [RS;zeroPad];
Создайте конфигурации, чтобы смоделировать обмотки.
RC1 = [3;4;[150;250;250;150;120;120;350;350]/convfactor; zeroPad]; RC2 = [3;4;[-150;-250;-250;-150;120;120;350;350]/convfactor; zeroPad]; RC3 = [3;4;[150;250;250;150;-120;-120;-350;-350]/convfactor; zeroPad]; RC4 = [3;4;[-150;-250;-250;-150;-120;-120;-350;-350]/convfactor; zeroPad];
Создайте геометрию, чтобы смоделировать воздушную область вокруг магнита.
RD = [3;4;[-1000;1000;1000;-1000;-1000; ...
-1000;1000;1000]/convfactor;zeroPad];
Объедините формы в одну матрицу.
gd = [RS,RH,RC1,RC2,RC3,RC4,RD];
Создайте формулу набора и создайте геометрию.
ns = char('RS','RH','RC1','RC2','RC3','RC4','RD'); g = decsg(gd,'(RS+RH+RC1+RC2+RC3+RC4)+RD',ns');
Постройте геометрию с метками поверхности.
figure pdegplot(g,'FaceLabels','on')
Постройте геометрию с метками ребра.
figure pdegplot(g,'EdgeLabels','on')
Создайте магнитостатическую модель и включайте геометрию в модель.
model = createpde('electromagnetic','magnetostatic'); geometryFromEdges(model,g);
Сгенерируйте mesh с прекрасным улучшением в ферромагнитной системе координат.
generateMesh(model,'Hface',{2,0.01},'Hmax',0.1,'Hgrad',2); figure pdemesh(model)
Задайте вакуумное значение проницаемости в системе СИ модулей.
model.VacuumPermeability = 1.2566370614E-6;
Задайте относительную проницаемость 1 для всех областей.
electromagneticProperties(model,'RelativePermeability',1);
Теперь задайте большую относительную проницаемость ферромагнитной системы координат.
electromagneticProperties(model,'RelativePermeability',10000,'Face',2);
Задайте значения плотности тока на верхних и более низких обмотках.
electromagneticSource(model,'CurrentDensity',1E6,'Face',[5,6]); electromagneticSource(model,'CurrentDensity',-1E6,'Face',[4,7]);
Укажите, что магнитный потенциал на наружной поверхности воздушной области 0.
electromagneticBC(model,'Edge',[5,6,13,14],'MagneticPotential',0);
Решите модель.
R = solve(model)
R = MagnetostaticResults with properties: MagneticPotential: [26381x1 double] MagneticField: [1x1 FEStruct] MagneticFluxDensity: [1x1 FEStruct] Mesh: [1x1 FEMesh]
Постройте величину плотности потока.
Bmag = sqrt(R.MagneticFluxDensity.Bx.^2 + ... R.MagneticFluxDensity.By.^2); pdeplot(model,'XYData',Bmag, ... 'FlowData',[R.MagneticFluxDensity.Bx ... R.MagneticFluxDensity.By])
[1] Козловски, A., Р. Райгэл и С. Зурек. "Большой электромагнит DC для полупромышленной термомагнитной обработки нанокристаллической ленты". Транзакции IEEE на Magnetics 50, выпуск 4 (апрель 2014): 1-4. https://ieeexplore.ieee.org/document/6798057.