Аппроксимация производных MatLab

2698
0
0

Урок 16. Численные методы Элементарные средства решения СЛУ
Функции для решения систем линейных уравнений с ограничениями
Решение СЛУ с разреженными матрицами
Точное решение, метод наименьших квадратов и сопряженных градиентов
Двунаправленный метод сопряженных градиентов
Устойчивый двунаправленный метод
Метод сопряженных градиентов
Квадратичный метод сопряженных градиентов
Метод минимизации обобщенной невязки
Квазиминимизация невязки - функция qmr
Вычисление нулей функции одной переменной
Минимизация функции одной переменной
Минимизация функции нескольких переменных
Аппроксимация производных
Аппроксимация Лапласиана
Аппроксимация производных конечными разностями
Вычисление градиента функции
Численное интегрирование
Метод трапеций
Численное интегрирование методом квадратур
Работа с полиномами
Умножение и деление полиномов
Вычисление полиномов
Вычисление производной полинома
Решение полиномиальных матричных уравнений
Разложение на простые дроби
Решение обыкновенных дифференциальных уравнений
Решатели ОДУ
Использование решателей систем ОДУ
Описание системы ОДУ
Дескрипторная поддержка параметров решателя
Пакет Partial Differential Equations Toolbox
Что нового мы узнали?

Аппроксимация Лапласиана

Для выполнения аппроксимации Лапласиана в MATLAB используется следующая функция:

del 2(11) — возвращает матрицу L дискретной аппроксимации дифференциального оператора Лапласа, примененного к функции U:

 

Матрица L имеет тот же размер, что и матрица U, и каждый ее элемент равен разности элемента массива U и среднего значения четырех его соседних элементов (для узлов сетки во внутренней области). Для вычислений используется пятиточечная формула аппроксимации Лапласиана.

Другие формы этой функции также возвращают матрицу L, но допускают дополнительные установки:

L = del2(U,h) — использует шаг h для установки расстояния между точками в каждом направлении (h — скалярная величина). По умолчанию h=1;

L = de!2(U,hx,hy) — использует hx и hy для точного определения расстояния между точками. Если hx — скалярная величина, то задается расстояние между точками в направлении оси х, если hx — вектор, то он должен иметь размер. равный числу столбцов- матрицы U , и точно определять координаты точек по оси х. Аналогично если hy — скалярная величина, то задается расстояние между точками в направлении оси у, если hy — вектор, то он должен иметь размер. равный числу строк матрицы U, и точно определять координаты точек по оси у:

L = del2(U,hx.hy,hz....) — если U является многомерным массивом, то расстояния задаются с помощью параметров hx, hy, hz,.... Пример:

» [х.у]= meshgrid(-5:5.-4:4); 

» U =x.*x+y.*y

 U =

41

32

25

20

17

16

17

20

25

32

41

34

25

18

13

10

9

10

13

18

25

34

29

20

13

8

5

4

5

8

13

20

29

26

17

10

5

2

1

2

5

10

17

26

25

16

9

4

1

0

1

4

9

16

25

26

17

10

5

2

1

2

5

10

17

26

29

20

13

8

5

4

5

8

13

20

29

34

41

25

 32

18 

25

13 

20

10

 17

9

 16

10 

17

13

20

18 

25

25 

32

34

41

» V=del2(U)

V =

1

1

1

1   1

1   1   1

1

1

1

1

1

1

1   1

1   1  1

1

1

1

1

1

1

1   1

1  1   1

1

1

1

1

1

1

1   1

1   1   1

1

1

1

1

1

1

1   1

1   1   1

1

1

1

1

1

1

1   1

1   1   1

1

1

1

1

1

1

1   1

1   1  1

1

1

1

1

1

1

1   1

1   1   1 

1


1

1

1

1

1   1

1   1  1

1

1

1

» subplot(1,2,1)

 » surfl(U) 

» subplot(1,2,2) 

» surfl(V)

На рис. 16.1 представлены графики поверхностей U и V.

Рис. 16.1. Графики функций U и V

 

Теги MatLab САПР


    Вы должны авторизоваться, чтобы оставлять комментарии.

    При использовании материалов данного сайта прямая и явная ссылка на сайт radiomaster.ru обязательна. 0.1736 s