Решить дифференциальное уравнение аналитически при помощи dsolve
функция, с начальными условиями или без. Чтобы решить систему дифференциальных уравнений, см. Решение системы дифференциальных уравнений.
Решить это дифференциальное уравнение.
Во-первых, представьте y при помощи syms
для создания символьной функции y(t)
.
syms y(t)
Определите уравнение используя ==
и представляют дифференциацию, используя diff
функция.
ode = diff(y,t) == t*y
ode(t) = diff(y(t), t) == t*y(t)
Решить уравнение используя dsolve
.
ySol(t) = dsolve(ode)
ySol(t) = C1*exp(t^2/2)
В предыдущем решении константа C1
появляется, поскольку условие не задано. Решить уравнение с начальным условием y(0) == 2
. dsolve
функция находит значение C1
что удовлетворяет условию.
cond = y(0) == 2; ySol(t) = dsolve(ode,cond)
ySol(t) = 2*exp(t^2/2)
Если dsolve
не может решить ваше уравнение, затем попробуйте решить уравнение численно. См. Решение дифференциального уравнения второго порядка численно.
Решить это нелинейное дифференциальное уравнение с начальным условием. Уравнение имеет несколько решений.
syms y(t) ode = (diff(y,t)+y)^2 == 1; cond = y(0) == 0; ySol(t) = dsolve(ode,cond)
ySol(t) = exp(-t) - 1 1 - exp(-t)
Решить это дифференциальное уравнение второго порядка с двумя начальными условиями.
Задайте уравнение и условия. Второе начальное условие включает первую производную y
. Представьте производную путем создания символьной функции Dy = diff(y)
а затем определите условие используя Dy(0)==0
.
syms y(x) Dy = diff(y); ode = diff(y,x,2) == cos(2*x)-y; cond1 = y(0) == 1; cond2 = Dy(0) == 0;
Решите ode
для y
. Упростите решение, используя simplify
функция.
conds = [cond1 cond2]; ySol(x) = dsolve(ode,conds); ySol = simplify(ySol)
ySol(x) = 1 - (8*sin(x/2)^4)/3
Решить это дифференциальное уравнение третьего порядка с тремя начальными условиями.
Поскольку начальные условия содержат производные первого и второго порядка, создайте две символьные функции Du = diff(u,x)
и D2u = diff(u,x,2)
, для определения начальных условий.
syms u(x) Du = diff(u,x); D2u = diff(u,x,2);
Создайте уравнение и начальные условия и решите его.
ode = diff(u,x,3) == u; cond1 = u(0) == 1; cond2 = Du(0) == -1; cond3 = D2u(0) == pi; conds = [cond1 cond2 cond3]; uSol(x) = dsolve(ode,conds)
uSol(x) = (pi*exp(x))/3 - exp(-x/2)*cos((3^(1/2)*x)/2)*(pi/3 - 1) -... (3^(1/2)*exp(-x/2)*sin((3^(1/2)*x)/2)*(pi + 1))/3
Эта таблица показывает примеры дифференциальных уравнений и их синтаксиса Symbolic Math Toolbox™. Последним примером является дифференциальное уравнение Эйри, решение которого называется функцией Эйри.
Дифференциальное уравнение | MATLAB® Команды |
---|---|
| syms y(t) ode = diff(y)+4*y == exp(-t); cond = y(0) == 1; ySol(t) = dsolve(ode,cond) ySol(t) = exp(-t)/3 + (2*exp(-4*t))/3 |
| syms y(x) ode = 2*x^2*diff(y,x,2)+3*x*diff(y,x)-y == 0; ySol(x) = dsolve(ode) ySol(x) = C2/(3*x) + C3*x^(1/2) |
Уравнение Эйри. | syms y(x) ode = diff(y,x,2) == x*y; ySol(x) = dsolve(ode) ySol(x) = C1*airy(0,x) + C2*airy(2,x) |