Составители:
Рубрика:
70
Команды
eqn6=y'[x]+y[x]^3==x;
eq6=DSolve[eqn6,y[x],x]
приводят программу в некоторое замешательство. После раздумий “Mathe-
matica
” выдает в качестве «результата» само исходное уравнение:
DSolve[-x-y[x]
3
+y'[x]==0,y[x],x]
Если же в задаче требуется найти численное решение дифференциального
уравнения при заданных начальных условиях, то можно воспользоваться ко-
мандой
NDSolve[eqn,y,{x,xmin,xmax}];,
предназначенной для поиска решения дифференциального уравнения eqn на
интервале
[xmin,xmax]. В нашем примере, для того, чтобы найти реше-
ние уравнения (6) с начальным условием
y (0) = 0 на интервале x∈[0; 1,5],
задаем команду
eq7=NDSolve[{eqn6,y[0]==0},y,{x,0,1.5}]
В результате получаем
{{y → InterpolatingFunction[{{0.,1.5}},<>]}}
Несмотря на странную форму представления полученной функции, с ней на
компьютере можно производить любые операции. Например, вычислим значе-
ние найденной функции в точке
x = 1:
y[x]/.eq7/.x->1
Компьютер дает ответ
{0.519057}
Теперь построим график полученной функции в области x∈[ 0; 1,5] (рис.4).
Plot[y[x]/.eq7,{x,0,1.5}];
Страницы
- « первая
- ‹ предыдущая
- …
- 72
- 73
- 74
- 75
- 76
- …
- следующая ›
- последняя »