Matlab  |  Mathcad  |  Maple  |  Mathematica  |  Statistica  |  Другие пакеты Поиск по сайту
Internet-класс  |  Примеры  |  Методики  |  Банк задач  |  Консультации & Форум  |  Download  |  Ссылки  |  Конкурсы
Научно-практический журнал "Exponenta Pro. Математика в приложениях". Вышел 1/2004 номер журнала
 
Типовой расчет по курсу математического анализа на тему "Ряды"
выполнил: Перекрестов Иван
МГТУ им. Баумана, 2003

archive.gif (75 bytes) Архив разработки (5 Кб, Maple 8)

задача 1 ~ задача 2 ~ задача 3 ~ задача 4

ЗАДАЧА 1.

 

Пользуясь известными формулами разложения в степенной ряд функций , разложить данную функцию в ряд по степеням и определить интервал сходимости полученного ряда.

 

Заданная функция

> f(x):=x^2*exp(-x);

Известное разложение

> exp(x)=Sum((x)^(n)/(n)!,n=0..infinity);

Значит, исходную функцию можно представить в виде:

> f(x)=Sum((-x)^(n+2)/(n)!,n=0..infinity);a:=%:

Введём новую переменную m

> n:=m-2;

Тогда разложение исходной функции перепишется в виде:

> a;

Коэффициент степенного ряда:

> 'a[m]'=(-1)^m/(m-2)!,'b[m]'=(1/(m-2)!)^(1/m);

Найдём предел коэффициента (по Т. Коши-Адамара)

> Limit((1/(m-2)!)^(1/m),m=infinity)=

limit((1/(m-2)!)^(1/m),m=infinity);;

Значит, радиус сходимости -

наверх

 

ЗАДАЧА 2.

Найти первые 4-5 членов разложения в ряд Тэйлора частного решения данного диффиренциального уравнения при указанных начальных условиях. н.у.: .

> with(DEtools):

> infolevel[all]:=0:

Решение дифференциального равнения стандартными методами результатов не даёт

> dsolve({diff(y(x),x)=x-y(x)+cos(2*y(x)),y(-4)=0},{y(x)});

> infolevel[all]:=3:#вывод программного решения дифура

Пытаемся решить, разлагая частное решение в ряд

> dsolve({diff(y(x),x)=x-y(x)+cos(2*y(x)),y(-4)=0},{y(x)},type=series);

DEtools/convertsys: converted to first-order system Y'(x) = f(x,Y(x)) namely (with Y' represented by YP)

DEtools/convertsys: correspondence between Y[i] names and original functions:

dsolve/series/ordinary: converted to first-order system Y'(x) = f(x,Y(x)) namely (with Y' represented by YP)

dsolve/series/ordinary: correspondence between Y[i] names and original functions:

dsolve/series/ordinary: vector Y of initial conditions at x0 = 0 [0]

dsolve/series/ordinary: trying Newton iteration

dsolve/series/sysol: latest approx is table([(1)=-3*x])

dsolve/series/sysol: latest approx is table([(1)=-3*x+2*x^2-20/3*x^3])

dsolve/series/sysol: latest approx is table([(1)=-3*x+2*x^2-20/3*x^3+23/3*x^4-25/3*x^5+29/18*x^6])

На основе полученного ряда создаём функцию Y(x)

> Y(x):=convert(op(2,%),polynom):

Проверяем частное решение

> eval(Y(x),x=-4);

> infolevel[all]:=0:

Построим методом изоклин наш дифур

> p:=phaseportrait(D(y)(x)=x-y(x)+cos(2*y(x)),y(x),x=-5..5,[[y(-4)=0]],

linecolor=[BLACK],arrows=medium,color=x-y(x)+cos(2*y(x))):

Построим функцию Y(x)

> Q:=plot(Y(x),x=-4..4,color=BLUE,thickness=3):Q;

Совместим 2 предыдущих графика

> plots[display]({Q,p});

наверх

 

ЗАДАЧА 3.

 

Функцию , заданную в интервале (0, l), разложить в ряд Фурье указанного вида. Построить график данной функции и график суммы полученного ряда.

> f(x):=piecewise(x>-Pi and x<-Pi/2,0,x<Pi and x>-Pi/2,-x);

> points:=plot({[[-Pi,0],[-Pi/2,0]],[[-Pi/2,Pi/2],[Pi,-Pi]]},style=point,axes=none,symbolsize=15,color=black,symbol=circle):

> p1:=plot({[[-Pi,0],[-Pi/2,0]],[[-Pi/2,Pi/2],[Pi,-Pi]]},axes=frame,color=red,title="Исходная функция"):

> plots[display]([p1,points]);

> l:=Pi;

> a[0]=1/l*Int(op(4,f(x)),x=-Pi/2..Pi);

a[0]:=value(op(2,%));

> 'a[n]'=1/l*Int(op(4,f(x))*cos(Pi*n*x/l),x=-Pi/2..Pi);

a[n]:=value(op(2,%));

> 'b[n]'=1/l*Int(op(4,f(x))*sin(Pi*n*x/l),x=-Pi/2..Pi);

b[n]:=combine(value(op(2,%)));

> F:=x->a[0]/2+Sum(a[n]*cos(Pi*n*x/l)+b[n]*sin(Pi*n*x/l),n=1..1000);

> p2:=plot(F(x),x=-4*Pi..4*Pi,axes=frame,discont=true):

> plots[display]([p2],title="Сумма ряда Фурье");

Увеличивая количество членов в сумме на единицу, покажем изменения графика суммы s(x)

> for k from 1 to 25 do

a[k]:=plot(a[0]/2+Sum(a[n]*cos(Pi*n*x/l)+b[n]*sin(Pi*n*x/l),n=1..k),x=-Pi..Pi,

numpoints=200,title=sprintf("Сумма до %d-го члена.",k),titlefont=[TIMES,ROMAN,8],tickmarks=[0,0],axes=normal):od:

> F:=display([a[j]$j=1..25],insequence=true):

> display([F],labels=[``,``]);

наверх

 

ЗАДАЧА 4.

 

Функцию , заданную в интервале (0, l), разложить в ряд Фурье указанного вида. Построить график данной функции и график суммы полученного ряда.

> f(x):=piecewise(x>0 and x<1,3*x-3,x>1 and x<3,0);

> points:=plot({[[0,-3]],[[1,0]],[[3,0]]},style=point,axes=none,symbolsize=15,color=black,symbol=circle):

> p1:=plot(f(x),x=-0..3,style=[line,point],axes=frame,discont=true,title="Исходная функция"):

> plots[display]([p1,points]);

> l:=3;

> a[0]=2/l*Int(op(2,f(x)),x=0..1);

a[0]:=value(op(2,%));

> a[n]=2/l*Int(op(2,f(x))*cos(Pi*n*x/l),x=0..1);

a[n]:=value(op(2,%));

> F:=x->a[0]/2+sum(a[n]*cos(Pi*n*x/l),n=1..100);

> plot(evalf(value(F(x))),x=-12..12,axes=frame,title="Сумма полученного ряда");

Аналогично предыдущему примеру, покажем изменения графика суммы s(x)

> with(plots):

Warning, the name changecoords has been redefined

> for k from 1 to 6 do

a[k]:=plot(a[0]/2+sum(a[n]*cos(Pi*n*x/l),n=1..k),x=0..6,

numpoints=200,title=sprintf("Сумма до %d-го члена.",k),titlefont=[TIMES,ROMAN,8],tickmarks=[0,0],axes=none):od:

> F:=display([a[j]$j=1..6],insequence=true):

> display([F],labels=[``,``]);

наверх

Карта сайта | На первую страницу | Поиск |О проекте |Сотрудничество |
Exponenta Pro | Matlab.ru

Наши баннеры


Copyright © 2000-2003. Компания SoftLine. Все права защищены.

Дата последнего обновления информации на сайте: 11.05.04
Сайт начал работу 1.09.00

Программное обеспечение Microsoft, Macromedia, VERITAS, Novell, Borland, Symantec, Oracle и др.