- •Моделирование электромагнитных полей с помощью программы ELCUT
- •Краткая информация о программе ELCUT
- •Лабораторная работа № 1. Моделирование в ELCUT электростатического поля расчет емкости двухпроводной линии в заземленном экране
- •Лабораторная работа № 2. Моделирование в ELCUT постоянного магнитного поля и расчет индуктивности кругового контура с сердечником
- •Моделирование электромагнитных полей c помощью программы FlexPDE
- •Краткая информация о программе FlexPDE
- •Лабораторная работа № 3. Моделирование в FlexPDE переменного электрического поля трехфазной линии электропередачи
- •Моделирование электромагнитных полей c помощью PDE Toolbox вычислительной среды MATLAB
- •Краткая информация о пакете PDE Toolbox вычислительной среды MATLAB
- •Лабораторная работа № 4. Анализ точности численного расчета постоянного магнитного поля двухпроводной линии
- •Технология расчета электромагнитных полей численными методами
- •Лабораторная работа № 5. Технология расчета электростатического поля силового кабеля методом конечных разностей
- •Лабораторная работа № 6. Технология расчета стационарного электрического поля и сопротивления заземлителя методом конечных элементов
- •Моделирование электрических цепей с помощью инструмента для моделирования систем Simulink
- •Краткая информация об инструменте Simulink
- •Лабораторная работа № 7. Моделирование линейных электрических цепей при помощи Simulink
- •Лабораторная работа № 8. Моделирование нелинейных электрических цепей при помощи Simulink
- •Технология машинного расчета электрических цепей
- •Лабораторная работа № 9. Технология машинного расчета электрических цепей методом узловых потенциалов: поэлементное формирование узловых уравнений
- •Лабораторная работа № 10. Технология машинного расчета электрических цепей методом узловых потенциалов: использование матрицы соединений, метод простой итерации
- •Лабораторная работа № 11. Технология оценки корректности Т-списка электрической цепи
- •Примеры применения машинного расчета электрических цепей
- •Лабораторная работа № 12. Применение машинного расчета электрических цепей на рынке электроэнергии
- •Литература
Моделирование электромагнитных полей c помощью программы FlexPDE
Краткая информация о программе FlexPDE
FlexPDE – программа, предназначенная для построения сценарных моделей решения дифференциальных уравнений методом конечных элементов, и специализирующаяся на моделировании векторных полей, включая электромагнитные. FlexPDE по сценарию, написанному пользователем, производит операции, необходимые для того, чтобы преобразовать описание системы дифференциальных уравнений в частных производных в модель для расчета методом конечных элементов, найти решение для этой системы и представить результаты в графической форме. Модели могут быть одномерными, двухмерными и трехмерными. Студенческая версия свободно скачивается с официального сайта программы http://www.pdesolutions.com, обладает таким же функционалом, как и промышленная версия, но имеет ограничения: пять дифференциальных уравнений и 100, 800 или 1600 узлов сетки для одномерных, двухмерных и трехмерных задач соответственно.
FlexPDE не ограничивает пользователя заранее заданным списком прикладных задач или видов уравнений. Выбор вида дифференциальных уравнений в частных производных полностью зависит от пользователя. Язык сценария позволяет пользователю описывать в естественном формате математический аппарат его системы дифференциальных уравнений в частных производных и структуру области решений в целом. Например, в сценарии имеется раздел EQUATIONS (УРАВНЕНИЯ), в котором уравнение Лапласа можно представить как Div(grad(u)) = 0
Аналогично, в сценарии имеется раздел BOUNDARIES (ГРАНИЧНЫЕ УСЛОВИЯ), в котором геометрические границы двумерной области решений описываются по кривой периметра, Start(x1,y1) line to (x2,y1) to (x2,y2) to (x1,y2) to finish. Следующее описание дается для версии FlexPDE 6.
Составление сценария расчета
Сценарий описания задачи представляет собой текстовый файл. Содержание этого файла представляет собой ряд разделов, каждый из которых идентифицируется при помощи заголовка. Чаще всего используются следующие разделы: TITLE – заголовок программы, COORDINATES, VARIABLES, SELECT, DEFINITIONS, EQUATIONS, BOUNDARIES, PLOTS, SUMMARY, END – обозначает конец программы.
В любом месте скрипта в фигурных скобках {} и после восклицательного знака ! можно оставлять комментарии. Более подробно о некоторых секциях можно прочитать ниже. С полной спецификацией используемых команд можно ознакомиться в руководстве пользователя.
COORDINATES
Описывает систему координат (декартову, цилиндрическую или сферическую). Двухмерная и трехмерная декартовы системы координат описываются командами: cartesian1, cartesian2, cartesian3.
VARIABLES
Данный раздел используется задания переменных задачи. Для моделирования электрического поля используется электрический потенциал. Для моделирования магнитного поля используется магнитный векторный потенциал.
SELECT
Данный раздел предназначен для задания параметров сетки, точности решения задачи и т.п.
DEFINITIONS
10
Это раздел задания вспомогательных переменных и определений задачи. В роли определений выступает задание параметров материалов, констант, функций и т.д. При наборе определений следует учесть, что некоторые имена зарезервированы (например, нельзя использовать букву t, поскольку она зарезервирована как переменная времени). Все выражения, используемые в данной секции, являются вспомогательными к основным уравнениям, которые описываются в следующей секции. Примеры выражений приведены в таблицах 1-3.
Таблица 1
Определение |
Пример |
|
|
Eps_metal=1e6 |
|
Относительная диэлектрическая |
Eps_diel = 88 |
|
проницаемость εrε0 материалов и сред |
Eps_air=1 |
|
|
Eps0 = 8.854e-12 |
|
Относительная магнитная |
mu = 1 |
|
проницаемость μμ0 |
|
|
Параметры расчетной области, |
r_provod = 0.02 |
|
R = 0,10 |
||
геометрические размеры модели |
||
R0 = 10*R |
||
|
||
Данные о заданных токах, зарядах, |
U_provod = 500 |
|
напряжений и т.п. |
I = 1 |
|
|
S=800e-6 |
|
|
J = I/S |
Таблица 2. Вспомогательные формулы расчета физических величин электрического поля
|
|
Определение |
Пример |
|
|
|
Ex=-dx(U) |
|
Напряженность электрического поля |
Ey=-dy(U) |
|
|
Eabs=sqrt(Ex^2+Ey^2) |
||
|
|
|
|
|
|
|
E = -grad(U) |
|
Энергия электрического поля |
W = integral(0.5*eps*eps0*E^2) |
|
|
Электрический заряд. |
|
|
|
Следует учесть, что из теоремы |
Q = eps*eps0*sintegral(normal(grad(U)), |
|
|
'ребро или область1', 'ребро или |
||
|
Остроградского-Гаусса следует, что |
||
|
область2',…) |
||
|
|
|
|
|
|
|
|
|
Электрическая емкость. |
|
|
|
Следует учесть, что конденсатор |
C = q/(U1-U0) |
|
|
накапливает энергию |
C = 2*W/(U1-U0)^2 |
|
|
W = CU2/2=qU/2=q2/(2C) |
|
Таблица 3. Вспомогательные формулы расчета физических величин магнитного поля
Определение |
|
Пример |
|
|
B = curl(Ax,Ay,0) |
Индукция магнитного поля |
|
Bxx= -dz(Ay) |
|
Byy= dz(Ax) { "By" is a reserved word. } |
|
|
|
|
|
|
Bzz= dx(Ay)-dy(Ax) |
Энергия магнитного поля |
|
W = integral(0.5*mu*m0*B^2) |
Потокосцепление, магнитный поток |
|
F = sintegral(B, 'имя ребра или области |
|
1', 'имя ребра или области 2',…) |
|
|
|
|
|
11 |
|
Индуктивность. |
|
Следует учесть, что катушка |
L = F/I |
индуктивности накапливает энергию |
L = 2*W/I^2 |
W = LI2/2 |
|
Кроме того, в разделе определений можно вычислить физические величины по заранее известным формулам для дальнейшего сравнения результата численного решения с теорией. Например, известно, что электрическая емкость плоского конденсатора вычисляется по формуле С = εrε0S/d, где εr – относительная диэлектрическая проницаемость, S – площадь пластин, d – расстояние между ними. После построения модели плоского конденсатора и численного расчета электростатического поля программа сравнит емкость идеального и реального конденсатора.
EQUATIONS
В данном разделе записываются основным уравнения в частных производных для каждой переменной. Например, для электростатического поля это уравнение Лапласа, оно будет выглядеть:
div( eps * grad( v)) = 0.
Для магнитного поля также можно записать уравнение Лапласа:
Ax: div(grad(Ax)/mu) = 0 Ay: div(grad(Ay)/mu) = 0
Здесь запись Ax и Ay требуется для указания соответствия уравнения переменной.
BOUNDARIES
Раздел предназначен для задания геометрии и граничных условий. Каждый блок (область) задачи начинается с команды REGION N ‘Имя области (латиницей)’, где N – порядковый номер области. Далее регион описывается точкой, отрезками от точки до точки, дугами и другими более сложными объектами (таблица 4).
Таблица 4. Геометрические объекты
Объект |
Пример |
Точка |
NODE POINT (x, y) |
Прямоугольник, полигон |
LINE TO (x1,y1) TO (x2,y2) TO (x3,y3) TO CLOSE |
Дуга, окружность, эллипс |
ARC TO (x1,y1) to (x2,y2) |
|
ARC ( RADIUS = R ) to (x,y) |
|
ARC ( CENTER = x1,y1 ) to (x2,y2) |
|
ARC ( CENTER = x1,y1 ) ANGLE=angle_degrees |
|
|
Например, следующий сценарий описывает модель, представленную на рис. 1:
DEFINITIONS
eps = 1 { значение по умолчанию} BOUNDARIES
REGION 1 'domain'{ расчетная (основная) область задачи } START(0,0) LINE TO (10,0) TO (10,10) TO (0,10) TO CLOSE
REGION 2
eps = 2 { иное значение для двух областей ниже }
START 'box1' (1,1) LINE TO (2,1) TO (2,2) TO (1,2) TO CLOSE START 'box3' (5,5) LINE TO (6,5) TO (6,6) TO (5,6) TO CLOSE
REGION 3 { используется по умолчанию }
START 'box2' (3,3) LINE TO (4,3) TO (4,4) TO (3,4) TO CLOSE
12
Рис. 1. Геометрическая модель
Проверить геометрию модели можно с помощью кнопки Domain Review Граничные условия задаются для контуров (ребер) и точек геометрической модели.
Команды для указания граничных условий представлены в таблице 5.
Таблица 5. |
Граничные условия |
|
Граничное условие |
Пример |
|
Условие Дирихле (задание потенциала) |
VALUE (U) = 220 |
|
Условие для потока переменной сквозь |
NATURAL (U) = 01 |
|
границу, в частности условие Неймана |
LOAD (U) = expression |
|
(задание производной n ). |
|
|
|
|
|
Скачкообразное |
изменение переменной, |
CONTACT (U) = EDS |
например задание ЭДС |
|
Граничные условия указываются перед командами LINE и ARC: BOUNDARIES
REGION 1 START(0,0)
VALUE(u) = 0 LINE TO (1,0) { значение на нижней границе } NATURAL(u)=0 LINE TO (1,1) { значение на правой границе } VALUE(u)=0 LINE TO (0,1) { значение на верхней границе }
NATURAL(u)=0 LINE TO CLOSE { значение на левой границе }
REGION 2
NODE POINT (0.5, 0.5) POINT VALUE(u)=250
С команды FEATURE (аналогично команде REGION) начинается описание набора линий и дуг, не являющихся частью модели и предназначенных для последующих расчетов. Формат команды следующий: FEATURE START(0,0) LINE TO(10,10)
TIME
Если переменные зависят от времени, то указывается раздел TIME, в котором указываются период времени, в течение которого проводится расчет. Например, следующим образом: TIME 0 TO 1
1 Однородное условие Неймана устанавливается по умолчанию для всех контуров (ребер).
13
PLOTS
Раздел предназначен для вывода графических результатов. Возможные варианты графики представлены в таблице 6.
Таблица 6. Графики
График |
Пример |
Эквипотенциальные линии |
CONTOUR(U) |
|
REPORT(C) as "Емкость (Ф)"1 |
|
CONTOUR(U) painted |
|
CONTOUR(Ax, Ay) painted |
|
CONTOUR (U) as 'Потенциал около проводника' |
|
ZOOM(x0, y0, Δx, Δy) |
|
|
Картина векторного поля |
VECTOR(E) as 'Напряженность электрического |
|
поля' |
Зависимость физической величины |
ELEVATION(U) as 'Потенциал от стены до |
вдоль какого-либо пути |
проводника' from (x0, y0) to (x1, y1) |
|
ELEVATION(U) on 'box2' |
Трехмерный график |
SURFACE(U) |
Если переменные зависят от времени, то перед построением графиков сразу после команды PLOTS указываются моменты времени, для которых будут строиться графики в следующем формате: FOR t = начальный момент BY шаг TO конечный момент.
Построение графиков зависимости физических величин от времени в конкретных точках осуществляется в дополнительном разделе HISTORIES командами history(u) at (x1,y1) (x2,y2).
SUMMARY
Раздел описывает представление результатов расчета в текстовом виде. Для этого используется команда REPORT. Например:
SUMMARY
REPORT(C) as "Емкость (Ф)" REPORT(C0) as "Емкость в теории (Ф)" REPORT(W) as "Энергия"
Система обозначений
Программа принимает стандартные команды расчета функций sqrt(), sin(), cos(), max(), min() и т.п. Обрабатываются команды для работы с векторами и комплексными числами. Поскольку программа работает с векторными полями, имеются команды для работы с векторами. Вектор может быть указан либо своей переменной (например, E), либо собран из составляющих Ex,Ey, может быть задан командой vector(Ex,Ey,Ez) (см. таблицу 7.
Таблица 7. Работа с векторами
Описание |
Команда |
|
Длина вектора |
MAGNITUDE ( vector ) |
|
MAGNITUDE ( argx, argy {, argz } ) |
||
|
||
Векторное произведение векторов |
CROSS (vector1, vector2) |
|
Скалярное произведение векторов |
DOT (vector1, vector2) |
|
Нормальная и тангенциальная |
NORMAL ( vector ) |
|
составляющие вектора к поверхности |
NORMAL ( argx, argy {, argz} ) |
|
границы (используется в разделе |
TANGENTIAL(vector) |
|
BOUNDARIES и тех местах, где имеется |
TANGENTIAL ( argx, argy {, argz } ) |
1 Следует отметить, что кириллица не поддерживается. Рекомендуется использовать латиницу.
14