2014-01-25 1 views
1

У меня есть набор из 4 ФДЭ:как решить первый порядок системы ФДЭ в Matlab

du/dt + A(u) * du/dx = Q(u) 

, где, у является матрицей и содержит:

u=[u1;u2;u3;u4] 

и A - это матрица 4 * 4. Q - 4 * 1. A и Q являются функциями u = [u1; u2; u3; u4].

Но мои вопросы:

  1. Как я могу решить выше уравнения в MATLAB?
  2. Если я решил это PDE функции Matlab, могу ли я преобразовать его в простую функцию, которая не используется из готовых функций Matlab?
  3. Есть ли способ, который я рассчитать A и Q явно. Я имею в виду, что каждый раз в я вычисляю A и Q по данным предыдущего шага времени и поместил новое значение в уравнение, которое вызывает более быстрый запуск программы?

ответ

0

PDE требуют конечных разностей, конечных элементов, граничных элементов и т. Д. Вы также можете превратить их в ODE с помощью таких преобразований, как Laplace, Fourier и т. Д. Решите те, которые используют функции ODE, а затем преобразуют обратно. Ни один из них не является тривиальным.

Ваше уравнение представляет собой нелинейное уравнение переходной диффузии. Это параболический PDE.

Уравнение, которое вы указали, имеет дополнительную трудность быть нелинейным, поскольку как матрица A, так и вектор Q являются функциями независимой переменной q. Вам придется начать с линеаризации ваших уравнений. Решите для приращений u, а не u.

После того, как вы это сделали, дискретизируйте термин du/dx, используя конечные различия, конечные элементы или граничные элементы. Вы должны начать с взвешенной остаточной интегральной формулировки.

Вы почти закончили: рядом с интеграцией w.r.t. используя метод по вашему выбору.

Это не тривиально.

Google нашел это: возможно, это поможет вам.

http://www.mathworks.com/matlabcentral/fileexchange/3710-nonlinear-diffusion-toolbox

+0

Мой вопрос заключается в том, что какая функция в Matlab может решить множество первого порядка PDE.I не сделал это в справке Matlab. – user2987710

+0

PDE требуют конечных разностей, конечных элементов, граничных элементов и т. Д. Вы также можете превратить их в ODE с помощью таких преобразований, как Laplace, Fourier и т. Д. Решите те, которые используют функции ODE, а затем преобразуют обратно. Ни один из них не является тривиальным. – duffymo