Дипломы, курсовые, рефераты, контрольные...
Срочная помощь в учёбе

Решение уравнений в частных производных с помощью Matlab

РефератПомощь в написанииУзнать стоимостьмоей работы

Функция plot обеспечивает вывод результатов вычислений в виде графиков функций одной переменной. Первым аргументом функции plot является вектор, определяющий значения по оси абсцисс, а вторым — вектор, определяющий значения по оси ординат. Таких пар аргументов в функции plot может быть несколько. Соответственно в этом случае в графическом окне будет выведено несколько графиков, как в приведенном… Читать ещё >

Решение уравнений в частных производных с помощью Matlab (реферат, курсовая, диплом, контрольная)

Численное решение граничной задачи для дифференциального уравнения 2-го порядка методом конечных разностей.

Уравнение Пуассона относится к уравнениям эллиптического типа и в одномерном случае имеет вид.

(2.1).

(2.1).

где — координата;

Решение уравнений в частных производных с помощью Matlab.

— искомая функция;

Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.

 — некоторые непрерывные функции координаты.

Решение уравнений в частных производных с помощью Matlab.

Решим одномерное уравнение Пуассона для случая, которое при этом принимает вид.

Решение уравнений в частных производных с помощью Matlab.

. (2.2).

Зададим на отрезке равномерную координатную сетку с шагом :

Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.

. (2.3).

Граничные условия первого рода (условия Дирихле) для рассматриваемой задачи могут быть представлены в виде.

(2.4).

(2.4).

(2.5).

(2.5).

где , — координаты граничных точек ;

Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.

 — некоторые константы.

Граничные условия второго рода (условия Неймана) для рассматриваемой задачи могут быть представлены в виде.

(2.6).

(2.6).

. (2.7).

Проводя дискретизацию граничных условий Дирихле на равномерной координатной сетке (2.3) с использованием метода конечных разностей, получим.

(2.8).

(2.8).

(2.9).

(2.9).

где, — значения функции в точках, соответственно.

Решение уравнений в частных производных с помощью Matlab.

Проводя дискретизацию граничных условий Неймана на сетке (2.3), получим.

Решение уравнений в частных производных с помощью Matlab.
(2.10).

(2.10).

Решение уравнений в частных производных с помощью Matlab.

. (2.11).

Проводя дискретизацию уравнения (2.2) для внутренних точек сетки, получим.

(2.12).

(2.12).

Решение уравнений в частных производных с помощью Matlab.

где , — значения функций, в точке сетки с координатой .

Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.

Таким образом, в результате дискретизации получим систему линейных алгебраических уравнений размерностью, содержащую уравнения вида (2.12) для внутренних точек области и уравнения (2.8) или (2.10) и (2.9) или (2.11) для двух граничных точек.

Приведем один из вариантов m-файла для численного решения уравнения (2.2) с граничными условиями (2.4) — (2.7) на координатной сетке (2.3). Текст m-файла см. в приложении A.

При запуске m-файла на выполнение в оперативной памяти компьютера могут храниться результаты предыдущих вычислений, причем имена переменных и массивов, значения которых хранятся в оперативной памяти, в принципе могут совпасть с именами переменных или матриц запускаемого m-файла, что при определенном стечении обстоятельств может привести к неверному результату производимых вычислений. Это возможно, поскольку все переменные и массивы, используемые в m-файлах, по умолчанию являются глобальными. Во избежание данных нежелательных моментов, первые три команды m-файла производят очистку оперативной памяти от результатов предыдущих вычислений, закрывают все графические окна (если таковые были ранее открыты) и очищают экран от ранее выведенной информации.

В данном варианте программы предусмотрен ввод исходных данных с клавиатуры с помощью функции input. Данная функция выводит на экран строку символов, являющуюся ее входным аргументом, позволяет пользователю ввести с клавиатуры произвольный набор символов и после нажатия клавиши записывает введенные символы в специальную переменную, о которой упоминалось выше. Далее в m-файле предусмотрен оператор присвоения значения переменной другой переменной с определенным именем.

Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.
Решение уравнений в частных производных с помощью Matlab.

Функция правой части уравнения Пуассона задается в данном варианте символьно, а затем преобразуется в вектор значений в соответствии с вектором координатной сетки. Решение системы линейных алгебраических уравнений (СЛАУ), заданной матрицей коэффициентов и вектором свободных членов и полученной в результате дискретизации уравнения Пуассона на равномерной координатной сетке, производится путем деления вектора-строки на транспонированную матрицу. Операция транспонирования матрицы обозначается символом апострофа после имени матрицы.

Функция plot обеспечивает вывод результатов вычислений в виде графиков функций одной переменной. Первым аргументом функции plot является вектор, определяющий значения по оси абсцисс, а вторым — вектор, определяющий значения по оси ординат. Таких пар аргументов в функции plot может быть несколько. Соответственно в этом случае в графическом окне будет выведено несколько графиков, как в приведенном примере. Кроме того, функция plot может содержать (и в приведенном примере содержит) дополнительные аргументы, управляющие цветом, символьным сопровождением и шириной линий графиков.

Решение уравнений в частных производных с помощью Matlab.

Функции, позволяют вывести на экран наименования осей координат. Функция grid позволяет включить или отключить отображение координатной сетки на графике (при помощи параметров on и off соответственно).

Решение уравнений в частных производных с помощью Matlab.

Например, при запуске m-файла и вводе исходных данных.

x0=0;

xn=5;

n=60;

f='2*sin (x.^2)+cos (x.^2)';

v1=1;

g1=0;

v2=1;

g2= -0.5;

на экране в отдельных графических окнах появятся график функции правой части уравнения Пуассона (рисунки 2.1) и график искомой функции (рисунок 2.2). Точками на графиках будет отображаться координатная сетка.

График функции правой части уравнения (2.2).

Рисунок 2.1 График функции правой части уравнения (2.2).

График искомой функции уравнения (2.2).

Рисунок 2.2 График искомой функции уравнения (2.2).

Показать весь текст
Заполнить форму текущей работой