VI. Дифференциальные уравнения. Ряды.

Лабораторная работа 6.

VI. Дифференциальные уравнения. Ряды.

1. Ряды и произведения.

2. Аналитическое решение дифференциальных уравнений.

3. Численное решение дифференциальных уравнений.

§1. Ряды и произведения

Вычисление суммы ряда и произведений.

Конечные и бесконечные суммы VI. Дифференциальные уравнения. Ряды. - student2.ru вычисляются командой прямого исполнения sum и отложенного исполнения Sum. Аргументы этих команд одинаковые: sum(expr, n=a..b), где expr – выражение, зависящее от индекса суммирования, a..b – пределы индекса суммирования, указывающие, что суммировать следует от n=a до n=b.

Если требуется вычислить сумму бесконечного ряда, то в качестве верхнего предела вводится infinity.

Аналогичным образом вычисляются произведения VI. Дифференциальные уравнения. Ряды. - student2.ru командами прямого product(P(n),n=a..b) и отложенного действий Product P(n),n=a..b).

Задание 1.1.

1. Найти полную и N-частичную суммы ряда, общий член которого равен: an= VI. Дифференциальные уравнения. Ряды. - student2.ru .

> restart: a[n]:=1/((3*n-2)*(3*n+1));

an:= VI. Дифференциальные уравнения. Ряды. - student2.ru

> S[N]:=Sum(a[n], n=1..N)=sum(a[n], n=1..N);

VI. Дифференциальные уравнения. Ряды. - student2.ru

> S:=limit(rhs(S[N]), N=+infinity);

VI. Дифференциальные уравнения. Ряды. - student2.ru

2. К какой функции сходится степенной ряд: VI. Дифференциальные уравнения. Ряды. - student2.ru ?

> Sum((-1)^(n+1)*n^2*x^n, n=1..infinity)=

sum((-1)^(n+1)*n^2*x^n, n=1..infinity);

VI. Дифференциальные уравнения. Ряды. - student2.ru .

3. Найти сумму степенного ряда VI. Дифференциальные уравнения. Ряды. - student2.ru .

> Sum((1+x)^n/((n+1)*n!), n=0..infinity)=

sum((1+x)^n/((n+1)*n!), n=0..infinity);

VI. Дифференциальные уравнения. Ряды. - student2.ru

4. Вычислить бесконечное произведение: VI. Дифференциальные уравнения. Ряды. - student2.ru

> Product(2/n,n=1..infinity)=

product(2/n, n=1..infinity);

VI. Дифференциальные уравнения. Ряды. - student2.ru

5.Вычислить произведение: VI. Дифференциальные уравнения. Ряды. - student2.ru

> Product( k^2, k=1..4 )= product( k^2, k=1..4 );

VI. Дифференциальные уравнения. Ряды. - student2.ru

Разложение функции в степенной ряд и ряд Тейлора.

Разложение функции f(x) в степенной ряд в окрестности точки а

VI. Дифференциальные уравнения. Ряды. - student2.ru

осуществляется командой series(f(x), x=a, n), где а – точка, в окрестности которой производится разложение, n – число членов ряда.

Аналогичного действия команда taylor(f(x), x=a, n) раскладывает функции f(x) в окрестности точки x=a до порядка n-1 по формуле Тейлора.

Команды series и taylor выдают результат, имеющий тип series. Для того, чтобы иметь возможность дальнейшей работы с полученным разложением, его следует преобразовать в полином с помощью команды convert(%,polynom).

Функцию многих переменных f(x1,…,xn) можно разложить в ряд Тейлора по набору переменных (x1,…,xn) в окрестности точки (a1,…,an) до порядка n с помощью команды mtaylor(f(x), [x1,…,xn], n). Эта команда находится в стандартной библиотеке, поэтому перед использованием должна быть вызвана readlib(mtaylor).

Задание 1.2.

1. Разложить в степенной ряд VI. Дифференциальные уравнения. Ряды. - student2.ru в окрестности х0=0, удерживая 5 первых членов.

> f(x)=series(exp(-x)*sqrt(x+1), x=0, 5);

VI. Дифференциальные уравнения. Ряды. - student2.ru

2. Построить на одном рисунке графики интеграла ошибок VI. Дифференциальные уравнения. Ряды. - student2.ru и его разложения в ряд Тейлора в окрестности нуля.

>taylor(erf(x),x,8): p:=convert(%,polynom);

VI. Дифференциальные уравнения. Ряды. - student2.ru

>plot({erf(x),p},x=-2..2,thickness=[2,2],

linestyle=[1,3], color=[red,green]);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Пунктирной линей изображен график ряда Тейлора, а сплошной – самой функции.

3.Разложить VI. Дифференциальные уравнения. Ряды. - student2.ru в ряд Тейлора в окрестности точки (0, 0) до 6-ого порядка.

>readlib(mtaylor):

> f=mtaylor(sin(x^2+y^2), [x=0,y=0], 7);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Задание 1.3.

1. Разложить в ряд Фурье функцию f(x)=x/2 с периодом 2p на интервале [0; 2p], удерживая 6 членов ряда. Построить на одном рисунке графики функции и ее n-частичной суммы ряда Фурье.

Сначала полностью наберите процедуру fourierseries, предложенную выше в теоретической части.

>f:=x/2:x1:=0:x2:=2*Pi:

>fr:=fourierseries(f,x,x1,x2,6);

VI. Дифференциальные уравнения. Ряды. - student2.ru

>plot({fr,f}, x=x1..x2, color=[blue,black],

thickness=2, linestyle=[3,1]);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Пунктирной линией изображен график n-частичной суммы ряда Фурье, а сплошной – самой функции. По виду n-частичной суммы ряда Фурье в данном примере легко установить общий вид этого ряда:

VI. Дифференциальные уравнения. Ряды. - student2.ru .

2. Разложить несколько раз в ряд Фурье функцию VI. Дифференциальные уравнения. Ряды. - student2.ru с периодом 2p на интервале [p;-p], удерживая 2, 4 и 8 членов ряда. Построить на одном рисунке графики функции и ее n-частичных сумм ряда Фурье.

>f:=exp(-x);x1:=-Pi;x2:=Pi:

>fr1:=fourierseries(f,x,x1,x2,2):

>fr2:=fourierseries(f,x,x1,x2,4):

>fr3:=fourierseries(f,x,x1,x2,8):

>plot({f,fr1,fr2,fr3},x=x1..x2,color=[black, blue, green, red], thickness=2, linestyle= [1,3,2,2]);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Сплошной линией изображен график функции, пунктирными – графики n-частичных сумм ряда Фурье. Видно, что чем больше слагаемых ряда удерживать, тем ближе расположен график суммы ряда к графику самой функции.

§2. Аналитическое решение дифференциальных уравнений

Задание 2.1.

1. Найти общее решение дифференциального уравнения y'+ycosx=sinxcosx.

> restart;

> de:=diff(y(x),x)+y(x)*cos(x)=sin(x)*cos(x);

de:= VI. Дифференциальные уравнения. Ряды. - student2.ru

> dsolve(de,y(x));

VI. Дифференциальные уравнения. Ряды. - student2.ru 1

Итак, решение искомого уравнения есть функция VI. Дифференциальные уравнения. Ряды. - student2.ru 1.

Замечание: при записи решения диффреренциального уравнения в Maple в строке вывода произвольная постоянная обозначена как _С1.

2. Найти общее решение дифференциального уравнения второго порядка y''-2y'+y=sinx+e-x.

> restart;

>deq:=diff(y(x),x$2)-2*diff(y(x),x)+y(x)

=sin(x)+exp(-x);

deq:= VI. Дифференциальные уравнения. Ряды. - student2.ru

> dsolve(deq,y(x));

VI. Дифференциальные уравнения. Ряды. - student2.ru

Замечание: так как исходное уравнение было второго порядка, то полученное решение содержит две произвольные константы, которые в Maple обычно обознаются как _С1 и _С2. Первые два слагаемых представляют собой общее решение соответствующего однородного дифференциального уравнения, а вторые два – частное решение неоднородного дифференциального уравнения.

3. Найти общее решение дифференциального уравнения порядка y''+k2y=sin(qx) в двух случаях: q¹k и q=k (резонанс).

> restart; de:=diff(y(x),x$2)+k^2*y(x)=sin(q*x);

dsolve(de,y(x));

VI. Дифференциальные уравнения. Ряды. - student2.ru

VI. Дифференциальные уравнения. Ряды. - student2.ru

Теперь найдем решение в случае резонанса. Для этого перед вызовом команды dsolve следует приравнять q=k.

> q:=k: dsolve(de,y(x));

VI. Дифференциальные уравнения. Ряды. - student2.ru

Замечание: в обоих случаях частное решение неоднородного уравнения и общее решение, содержащее произвольные постоянные, выводятся отдельными слагаемыми.

Задание 2.2.

Найти фундаментальную систему решений дифференциального уравнения: y(4)+2y''+y=0.

> de:=diff(y(x),x$4)+2*diff(y(x),x$2)+y(x)=0;

de:=VI. Дифференциальные уравнения. Ряды. - student2.ru

> dsolve(de, y(x), output=basis);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Решение задачи Коши или краевой задачи.

Команда dsolve может найти решение задачи Коши или краевой задачи, если помимо дифференциального уравнения задать начальные или краевые условия для неизвестной функции. Для обозначения производных в начальных или краевых условиях используется дифференциальный оператор VI. Дифференциальные уравнения. Ряды. - student2.ru , например, условие y''(0)=2 следует записать в виде VI. Дифференциальные уравнения. Ряды. - student2.ru , или условие y'(1)=0: VI. Дифференциальные уравнения. Ряды. - student2.ru . Напомним, что производная n-го порядка записывается в виде VI. Дифференциальные уравнения. Ряды. - student2.ru .

Задание 2.3.

1. Найти решение задачи Коши: y(4)+y''=2cosx, y(0)=-2, y'(0)=1, y''(0)=0, y'''(0)=0.

> de:=diff(y(x),x$4)+diff(y(x),x$2)=2*cos(x);

VI. Дифференциальные уравнения. Ряды. - student2.ru

> cond:=y(0)=-2, D(y)(0)=1, (D@@2)(y)(0)=0,

(D@@3)(y)(0)=0;

cond:=y(0)=-2, D(y)(0)=1, (D(2))(y)(0)=0, (D(3))(y)(0)=0

> dsolve({de,cond},y(x));

y(x)=-2cos(x)-xsin(x)+х

2. Найти решение краевой задачи: VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru . Построить график решения.

> restart; de:=diff(y(x),x$2)+y(x)=2*x-Pi;

de:= VI. Дифференциальные уравнения. Ряды. - student2.ru

> cond:=y(0)=0,y(Pi/2)=0;

VI. Дифференциальные уравнения. Ряды. - student2.ru VI. Дифференциальные уравнения. Ряды. - student2.ru

> dsolve({de,cond},y(x));

y(x)=2x-p+pcos(x)

Замечание: для построения графика решения предварительно следует отделить правую часть полученного выражения.

> y1:=rhs(%):plot(y1,x=-10..20,thickness=2);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Задание 2.4.

Найти решение системы дифференциальных уравнений:

VI. Дифференциальные уравнения. Ряды. - student2.ru

> sys:=diff(x(t),t)=-4*x(t)-2*y(t)+2/(exp(t)-1),

diff(y(t),t)=6*x(t)+3*y(t)-3/(exp(t)-1):

> dsolve({sys},{x(t),y(t)});

VI. Дифференциальные уравнения. Ряды. - student2.ru

Найдены две функции x(t) и y(t), которые зависят от двух произвольных постоянных _С1 и _С2.

Задание 2.5.

1. Найти решение задачи Коши: VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru в виде степенного ряда с точностью до 5-го порядка.

>restart; Order:=5:

> dsolve({diff(y(x),x)=y(x)+x*exp(y(x)),

y(0)=0}, y(x), type=series);

VI. Дифференциальные уравнения. Ряды. - student2.ru

В полученном решении слагаемое VI. Дифференциальные уравнения. Ряды. - student2.ru означает, что точность разложения была до 5-го порядка.

2. Найти общее решение дифференциального уравнения y''(х)-y3(х)=еcosx, в виде разложения в степенной ряд до 4-го порядка. Найти разложение при начальных условиях: y(0)=1, y'(0)=0.

>restart; Order:=4: de:=diff(y(x),x$2)-

y(x)^3=exp(-x)*cos(x):

>f:=dsolve(de,y(x),series);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Замечание: в полученном разложении запись D(y)(0) обозначает производную в нуле: y'(0). Для нахождения частого решения осталось задать начальные условия:

>y(0):=1: D(y)(0):=0:f;

VI. Дифференциальные уравнения. Ряды. - student2.ru

3. Найти приближенное решение в виде степенного ряда до 6-го порядка и точное решение задачи Коши: VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru . Построить на одном рисунке графики точного и приближенного решений.

> restart; Order:=6:

> de:=diff(y(x),x$3)-diff(y(x),x)=

3*(2-x^2)*sin(x);

de:= VI. Дифференциальные уравнения. Ряды. - student2.ru

> cond:=y(0)=1, D(y)(0)=1, (D@@2)(y)(0)=1;

cond:=y(0)=1, D(y)(0)=1, D(2)(y)(0)=1

> dsolve({de,cond},y(x));

y(x)= VI. Дифференциальные уравнения. Ряды. - student2.ru

> y1:=rhs(%):

> dsolve({de,cond},y(x), series);

y(x)= VI. Дифференциальные уравнения. Ряды. - student2.ru

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

> convert(%,polynom): y2:=rhs(%):

> p1:=plot(y1,x=-3..3,thickness=2,color=black):

> p2:=plot(y2,x=-3..3, linestyle=3,thickness=2,

color=blue):

> with(plots): display(p1,p2);

VI. Дифференциальные уравнения. Ряды. - student2.ru

На этом рисунке видно, что наилучшее приближение точного решения степенным рядом достигается примерно на интервале -1<x<1.

Задание 3.1.

1. Найти численное и приближенное решение в виде степенного ряда до 6-ого порядка задачи Коши: VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru .

Сначала найдем численное решение задачи Коши и построим его график.

> restart; Ordev=6:

> eq:=diff(y(x),x$2)-x*sin(y(x))=sin(2*x):

>cond:=y(0)=0, D(y)(0)=1:

>de:=dsolve({eq,cond},y(x),numeric);

de:=proc(rkf45_x)...end

Замечание: в строке вывода появляется сообщение о том, что при решении использован метод rkf45. Во избежание вывода строк, не несущих полезной информации, рекомендуется отделять промежуточные команды двоеточием. Если необходимо получить значение решения при каком-то фиксированном значении переменной х (заодно будет выведено значение производной решения в этой точке), например, при х=0.5, то следует набрать:

> de(0.5);

VI. Дифференциальные уравнения. Ряды. - student2.ru

>with(plots):

> odeplot(de,[x,y(x)],-10..10,thickness=2);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Теперь найдем приближенное решение задачи Коши в виде степенного ряда и построим графики численного решения и полученного степенного ряда в интервале их наилучшего совпадения.

> dsolve({eq, cond}, y(x), series);

VI. Дифференциальные уравнения. Ряды. - student2.ru

> convert(%, polynom):p:=rhs(%):

> p1:=odeplot(de,[x,y(x)],-2..3, thickness=2,

color=black):

> p2:=plot(p,x=-2..3,thickness=2,linestyle=3,

color=blue):

> display(p1,p2);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Наилучшее приближение решения степенным рядом достигается примерно на интервале -1<x<1 (так же как и в примере 3 задания 1.5).

2. Построить графики решений задачи Коши системы дифференциальных уравнений:

х'(t)=2y(t)sin(t)-х(t)-t,

y'(t)=x(t),

х(0)=1, y(0)=2.

> restart; cond:=x(0)=1,y(0)=2:

> sys:=diff(x(t),t)=2*y(t)*sin(t)-x(t)-t,

diff(y(t),t)=x(t):

> F:=dsolve({sys,cond},[x(t),y(t)],numeric):

> with(plots):

> p1:=odeplot(F,[t,x(t)],-3..7, color=black,

thickness=2,linestyle=3):

> p2:=odeplot(F,[t,y(t)],-3..7,color=green,

thickness=2):

> p3:=textplot([3.5,8,"x(t)"], font=[TIMES,

ITALIC, 12]):

> p4:=textplot([5,13,"y(t)"], font=[TIMES,

ITALIC, 12]):

> display(p1,p2,p3,p4);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Пакет графического представления решений дифференциальных уравнений Detools.

Для численного решения задачи Коши, построения графиков решения и фазовых портретов в Maple имеется специальный пакет DEtools.

Команда DEplot из пакета DEtools строит численными методами графики решения или фазовые портреты. Эта команда аналогична команде odeplot, но более функциональна. Она, в отличие от odeplot, сама производит численное решение дифференциального уравнения. Основные параметры DEplot похожи на параметры odeplot: DEplot(de, vars, range, x=х1..х2, y=у1..у2, cond, ptions), где de - дифференциальное уравнение или система дифференциальных уравнений; vars– список неизвестных функций; range – диапазон измерения независимой переменной; cond – начальные условия; x=х1..х2и y=у1..у2– диапазоны изменения функций; options– дополнительные параметры.

Наиболее часто используемые параметры: linecolor=цвет линии; scene=[x,y]- определяет, какие зависимости выводить на график; iterations=число итераций, необходимое для повышения точности вычислений (по умолчанию это число равно 1); stepsize=число, равное расстоянию между точками на графике, по умолчанию оно равно (x2-x1)/20, этот параметр необходим для вывода более гладкой кривой решения; obsrange=true/false - прерывать или нет вычисления, если график решения выходит за установленный для рисования интервал.

Для решения дифференциального уравнения n-ого порядка начальные условия можно задавать в более компактной форме: [x0, y0, y'0, y''0,…], где x0- точка, в которой задаются начальные условия, y0- значение искомой функции в точке x0, y'0, y''0,… - значения производных первой, второй и т.д. до (n-1)-ого порядка.

Задание 3.2.

Нарисовать график решения дифференциального уравнения: y²¢ cosx - y² + p y¢ = y - x ,

VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru в интервале [-2,5; 1,4].

> restart;with(DEtools):

DEplot(cos(x)*diff(y(x),x$3)-diff(y(x),x$2)+Pi*diff(y(x),x)=y(x)-x,y(x),x=-2.5..1.4,[[y(0)=0,D(y)(0)=1,(D@@2)(y)(0)=1]],stepsize=.1,linecolor=black, thickness=2);

VI. Дифференциальные уравнения. Ряды. - student2.ru

Контрольные задания.

При выполнении контрольных заданий студенту необходимо подставить вместо буквенных параметров индивидуальные анкетные характеристики:

VI. Дифференциальные уравнения. Ряды. - student2.ru - число букв в фамилии студента,

VI. Дифференциальные уравнения. Ряды. - student2.ru - число букв в полном имени студента,

VI. Дифференциальные уравнения. Ряды. - student2.ru - число букв в отчестве студента.

В отчете на титульном листе необходимо обязательноуказать, какие анкетные данные использовались при выполнении контрольных заданий (имя, отчество, фамилия).

1. Найти общее решение дифференциального уравнения:

а) VI. Дифференциальные уравнения. Ряды. - student2.ru

б) VI. Дифференциальные уравнения. Ряды. - student2.ru

2. Найти фундаментальную систему решений дифференциального уравнения:

VI. Дифференциальные уравнения. Ряды. - student2.ru

3. Найти решение задачи Коши: VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru

4. Найти решение системы дифференциальных уравнений:

VI. Дифференциальные уравнения. Ряды. - student2.ru

при начальных условиях х(0)=1, х'(0)=0; у(0)=1.

5. Построить график численного решения задачи Коши

а) VI. Дифференциальные уравнения. Ряды. - student2.ru

б) VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru , VI. Дифференциальные уравнения. Ряды. - student2.ru .

6. Построить график численного решения задачи Коши VI. Дифференциальные уравнения. Ряды. - student2.ru на интервале [-1.5; 3], используя команду DEplot.

7. Найти сумму ряда и сумму первых N членов.

а) VI. Дифференциальные уравнения. Ряды. - student2.ru б) VI. Дифференциальные уравнения. Ряды. - student2.ru

8. К какой функции сходится степенной ряд: VI. Дифференциальные уравнения. Ряды. - student2.ru ?

9. Найти сумму степенного ряда VI. Дифференциальные уравнения. Ряды. - student2.ru .

10. Вычислить бесконечное произведение: VI. Дифференциальные уравнения. Ряды. - student2.ru

11. Вычислить произведение с точностью до 0,00001 VI. Дифференциальные уравнения. Ряды. - student2.ru

12. Разложить в степенной ряд VI. Дифференциальные уравнения. Ряды. - student2.ru в окрестности x=0 до 11-ого порядка.

13. Разложить в ряд Тейлора функцию VI. Дифференциальные уравнения. Ряды. - student2.ru до 6 – ого порядка в окрестности точки (0, 0).

Контрольные вопросы.

1. Какая команда позволяет решить дифференциальное уравнение? Опишите ее параметры.

2. С помощью каких операторов обозначается производная в дифференциальном уравнении и в начальных условиях?

3. Какой параметр команды dsolve следует установить, чтобы получить фундаментальную систему дифференциальных уравнений?

4. Какой параметр команды dsolve следует установить, чтобы получить приближенное решение дифференциального уравнения в виде разложения в степенной ряд? Как определяется порядок разложения?

5. Опишите, какие команды нужно ввести, прежде чем построить график приближенного решения, полученного в виде степенного ряда.

6. Какой параметр команды dsolve следует установить, чтобы решить дифференциальное уравнение численно?

7. Как найти значение решения дифференциального уравнения в какой-либо конкретной точке?

8. Какая команда позволяет построить график численно решенного дифференциального уравнения? В каком пакете находится эта команда?

9. Какой пакет предназначен для графического представления и численного решения дифференциального уравнения?

10. В чем отличие команд odeplot и DEplot?

11. Как вычислить сумму или произведение в Maple?

12. Какие команды осуществляют разложение функции в степенные ряды?

Лабораторная работа 6.

VI. Дифференциальные уравнения. Ряды.

1. Ряды и произведения.

2. Аналитическое решение дифференциальных уравнений.

3. Численное решение дифференциальных уравнений.

§1. Ряды и произведения

Наши рекомендации