Иллюстрированный самоучитель по Mathematica 3/4

Дифференциальные уравнения. Решение дифференциальных уравнений в символьном виде.

Дифференциальными принято называть уравнения, в состав которых входят производные функции у(х), представляющей решение уравнения. Дифференциальные уравнения могут быть представлены в различной форме, например в общеизвестной форме Коши:

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 в решении задач динамического моделирования.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.