Матричные вычисления в Mathcad

       

График линий уровня решения уравнения Пуассона (продолжение листинга 11 7)



Рисунок 11.18. График линий уровня решения уравнения Пуассона (продолжение листинга 11.7)



Уравнение Пуассона с произвольными граничными условиями

В более сложных случаях, например, для решения краевой задачи с ненулевыми условиями на границах, следует использовать другую встроенную функцию relax, имеющуюся в Mathcad:

  • relax(a,b,c,d,e,F,v,rjac) — матрица решения дифференциального уравнения в частных производных на квадратной области, полученного с помощью алгоритма релаксации для метода сеток:

  •  a,b,c,d,e — квадратные матрицы коэффициентов разностной схемы, аппроксимирующей дифференциальное уравнение;
  •  F — квадратная матрица, задающая правую часть дифференциального уравнения;
  •  v — квадратная матрица граничных условий и начального приближения к решению;
  • rjac — параметр численного алгоритма (спектральный радиус итераций Якоби);


Параметр численного алгоритма характеризует скорость сходимости итераций. Он должен быть числом от о до 1. В матрице граничных условий v необходимо задать только граничные элементы, исходя из значения краевых условий по периметру расчетной области. Прочие (внутренние) элементы этой матрицы служат для задания начального приближения к решению.

Суть алгоритма релаксации сводится к тому, что в ходе итераций происходит проверка уравнений и соответствующая коррекция значений искомой функции в каждой точке. Если начальное приближение выбрано удачно, то можно надеяться, что алгоритм сойдется ("релаксирует") к правильному решению.

ВНИМАНИЕ!

Все матрицы, задающие как коэффициенты разностной схемы а, b, с, d, e, граничные условия v, так и само решение F, должны иметь одинаковый размер (M+1)х(M+1), соответствующий размеру расчетной области. При этом целое число м обязательно должно быть степенью двойки: м=2п.



Решение уравнения Пуассона с тремя источниками разной интенсивности при помощи функции relax приведено в листинге 11.8.



Содержание раздела