Дифференциальные уравнения. Решение дифференциальных уравнений в символьном виде.
Дифференциальными принято называть уравнения, в состав которых входят производные функции у(х), представляющей решение уравнения. Дифференциальные уравнения могут быть представлены в различной форме, например в общеизвестной форме Коши:
y'(x) = eqn = f(x, y)Несколько дифференциальных уравнений образуют систему дифференциальных уравнений. Решение таких систем также возможно средствами Mathematica и подробно описано в ряде книг по использованию системы. Дифференциальные уравнения и системы дифференциальных уравнений могут быть линейными и нелинейными. Для линейных уравнений обычно существуют решения в аналитическом виде. Нелинейные дифференциальные уравнения в общем случае аналитических решений не имеют, но могут решаться приближенными численными методами.
Дифференциальные уравнения широко используются в практике математических вычислений. Они являются основой при решении задач моделирования – особенно в динамике. Немногие математические системы имеют реализации численных методов решения систем дифференциальных уравнений. Но система Mathematica имеет средства как для символьного, так и для численного решения дифференциальных уравнений и их систем.
Для решения дифференциальных уравнений в символьном виде используются следующие средства:
- DSolve[eqn, y[x], х] – решает дифференциальное уравнение относительно функций у [ х ] с независимой переменной х;
- DSolve[{eqnl, eqn2,…}, {yl [xl,…],…}, {xl,…}]– решает систему дифференциальных уравнений.
У функции DSolve и ее численного варианта NDSolve есть пара опций, на которые следует обратить внимание:
- DSolveConstants – опция к DSolve, определяющая постоянные интегрирования, которые будут использованы в результате;
- StartingStepSize – опция к NDSolve, определяющая величину начального шага.
В решении дифференциальных уравнений встречаются постоянные интегрирования. По умолчанию они обозначаются как С [ i ].
Приведем примеры решения дифференциальных уравнений:
DSolve [Derivative [1] [y] [x] == 2*a*x^3, y[x], x] {{y[x] > ax4/2+C[1]}} DSolve[{y1`[x] == 2 x2, y2`[x] == 3 x}, {y1[x], y2[x]}, x] {{y1[x] > -2x3/3+C[1], y2[x] > 3x2/2+C[2]}} DSo2ve{y`[x] +y[x] == x, y[x], x} {{y[x] - *-1+x + e-xC[1]}} DSolve [y``[x] - y`[x] - 6 y [x] == 0, y [x], x] {{y[x] > | e-4xC[1] + C[2] - Cos[2x] - |sin[2x]}} DSolve [y``[x] + 4 y`[x] == 10 Sin [2 x], y [x], x] {{y[x] > | e-4xC[1] + C[2] - Cos[2x] - |sin[2x]}} DSolve[y`[x] == Sin[Ex], y[x], x] {{y[x] > C[1] +Sinlntegral[ex]}} DSolvefz2 w``[z] +zw`[z] - (z2 + 1)w[z] == 0, w[z], z] {{w[z] > BesselI[1, z] C[1] +BesselK[1, z] C[2] }}Как нетрудно заметить, аналитические решения дифференциальных уравнений могут содержать не только элементарные, но и специальные математические функции, что заметно расширяет возможности применения системы Mathematica в решении задач динамического моделирования.
