- •Оглавление
- •Предисловие
- •Раздел 1. Основные сведения о среде программирования «matlab»
- •Глава 1. Вычисления в командном режиме
- •1.1. Простейшие математические операции в matlab
- •1.2. Переменные
- •1.3. Создание матриц
- •1.4. Доступ к элементам матриц
- •1.5. Операции с матрицами
- •1.6. Ввод, вывод и работа со строками
- •Глава 2. Построение графиков в matlab
- •2.1. Построение графика в виде двумерной линии
- •2.2. Оформление графиков
- •2.3. Построение трехмерных графиков
- •2.4. Построение линий уровня
- •2.5. Построение векторного поля
- •2.6. Отображение нескольких графиков в одном окне
- •Глава 3. Скрипты в matlab и управляющие конструкции
- •3.1. Создание и выполнение скриптов в matlab
- •3.2. Оператор for
- •3.3. Логические операции
- •3.4. Оператор if / elseif / else
- •3.5. Оператор while
- •3.6. Операторы break / continue
- •3.7. Оператор switch
- •3.8. Создание функций
- •Раздел 2. Краткие теоретические сведения и задания Тема 1. Векторный анализ
- •1.1. Элементы векторного анализа
- •Задания
- •Тема 2. Уравнения Максвелла (произвольная и гармоническая временная зависимость, статические, стационарные и квазистационарные поля)
- •2.1. Система уравнений электродинамики – уравнения Максвелла
- •2.2. Граничные условия. Принцип эквивалентности
- •Задания
- •Тема 3. Плоские волны
- •3.1. Явление дисперсии и групповая скорость
- •Задания
- •Тема 4. Граничные задачи, уравнения и методы
- •4.1. К классификации электромагнитных явлений
- •Задания
- •4.2. Метод конечных разностей
- •4.2.1. Конечно-разностная аппроксимация
- •4.2.2. Конечно-разностная аппроксимация уравнений Лапласа и Пуассона
- •4.2.3. Конечно-разностная аппроксимация для граничных узлов
- •Задания
- •Литература
4.2. Метод конечных разностей
Метод конечных разностей (МКР) [5] базируется на решении дифференциальных уравнений в частных производных, представленных в конечно-разностной форме. Метод достаточно универсальный, требует минимальной аналитической подготовки, и легко программируем, однако требует обращения матричных уравнений большого порядка. МКР создаёт промежуточную базу для метода конечных элементов и метода конечных разностей во временной области.
4.2.1. Конечно-разностная аппроксимация
МКР включает следующие основные шаги:
1. Для получения основного уравнения производные в решаемом дифференциальном уравнении выражаются в разностной форме.
2. Область дискретизируется в форе ячеек, содержащих конечное число узлов.
3. Конечно-разностная форма дифференциальных уравнений применяется для каждого узла, тем самым, формируя систему линейных уравнений.
4. Решается система линейных уравнений, и находятся значения неизвестной функции в узлах ячеек.
5. Значения неизвестной функции в узлах ячеек используются для определения характерных параметров устройства (характеристического импеданса, критической длины волны, резонансной частоты и т.п.).
Пусть задана функция – рис. 4.2. Производная функции в точке определяется как
. (4.13)
Рис. 4.2. К разностным формам аппроксимации первой производной.
Выражение (4.13) является точным, однако неудобным для численной реализации, поскольку значения функция могут быть заданы только в дискретных точках. Поэтому аппроксимируем (4.13) в виде:
, (4.14 а)
где - шаг дискретизации, а представление (4.14а) носит название разностная аппроксимация вперёд. Возможно аналогичное представление, называемое разностной аппроксимацией назад
. (4.14 б)
Существует ещё одно возможное представление, называемое центрально разностной аппроксимацией
. (4.15)
Запишем разложение функции в ряд Тейлора в окрестности точки
(4.16)
Используя разностную аппроксимацию вперёд, получаем
(4.17а)
Второе, третье и последующие слагаемые в правой части (3.5) представляют погрешности аппроксимации для . Аналогично для аппроксимации назад
(4.17б)
Складывая (3.5а) с (3.5б) получаем выражение для центрально разностной аппроксимации
(4.17в)
Видно, что погрешность конечно-разностной аппроксимации (4.17а), (4.17б) порядка , а для центрально разностной аппроксимации, которая существенно меньше, поскольку . Эту погрешность называют погрешностью дискретизации.
При решении методом конечных разностей волновых уравнений, уравнений Лапласа, Пуассона необходима конечно-разностная аппроксимация вторых производных . Обратимся к рис. 4.2. и используем разложение в ряд Тейлора (4.16), располагая тремя точками и
,
(4.18а)
то есть погрешность аппроксимации порядка . Аналогично для функции двух переменных
. (4.18б)
4.2.2. Конечно-разностная аппроксимация уравнений Лапласа и Пуассона
Проиллюстрируем процедуру конечно-разностной аппроксимации на примере решения основных двумерных уравнений типа (4.3), (4.5) конечно-разностным методом
. (4.19)
Запишем конечно-разностную аппроксимацию (4.19), используя формулы (4.18) и ориентируясь на рис. 4.3.
(4.20)
Рис. 4.3. Геометрия узлов в квадратной сетке.
Складывая выражения в (4.20), используя уравнение (4.19) и умножая на , получим
(4.21)
Таким образом, мы аппроксимировали значение функции в центральном узле первым слагаемым в (4.21); второе слагаемое – погрешность аппроксимации
. (4.22)
Уравнение (3.10) может быть записано для любого узла анализируемой области как
. (4.23)
Уравнение (4.33) – основное конечно разностное уравнение для решения уравнения Пуассона (Лапласа); его также называют пятиточечной конечно разностной аппроксимацией обсуждаемых уравнений. Записывая (4.33) для каждого узла анализируемой области и преобразуя эти уравнения можно получить совместную систему уравнений относительно значений функции в узлах сетки, решая которую далее найти эти значения.