Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Архив1 / docx55 / ОТЧЕТ 1

.docx
Скачиваний:
29
Добавлен:
01.08.2013
Размер:
90.62 Кб
Скачать

Министерство образования и науки Российской Федерации

Федеральное агентство по образованию

Пензенский государственный университет

Кафедра «Высшая и прикладная математика»

Отчет о выполнении лабораторной работы №5

по дисциплине:

«Теория приближения функций»

Выполнили ст. гр. 09ЕП1:

Бакурская А.И. Проверила: Кудряшова Н. Ю.

Пенза, 2012

Тема: Разложение функций в ряд по ортогональным многочленам.

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

Постановка задачи: приблизить функцию , разложив ее в ряд Фурье – Чебышева первого и второго рода, а также в ряд Фурье – Лежандра. Исследовать точность и устойчивость разложений, оценить влияние особых точек функции на устойчивость и точность.

Варианты заданий:

Вариант 1.

Модельная задача:

Теоретическая часть

Рассмотрим многочлены Чебышева первого рода

. (1)

Для многочленов (1) справедливо рекуррентное соотношение

. (2)

Многочлены Чебышева (1) ортогональны на сегменте с весовой функцией .

Справедливо соотношение

(3)

Следовательно, ортонормированные многочлены Чебышева первого рода выражаются через многочлены (1) следующим образом:

,

. (4)

Если функция задана на сегменте и интегрируема с весом , то, определяя коэффициенты Фурье – Чебышева

, (5)

этой функции, поставим в соответствие ряд Фурье по многочленам Чебышева первого рода

. (6)

Многочлены Чебышева второго рода определяются формулой

. (7)

Рекуррентное соотношение для многочленов Чебышева второго рода имеет вид

. (8)

Многочлены (6) ортогональны на сегменте с весом . Справедливо соотношение

Следовательно, ортонормированные многочлены Чебышева второго рода выразятся по формуле

. (9)

Пусть на сегменте задана функция , интегрируемая с весом . Тогда, определяя коэффициенты Фурье по формуле

(10)

поставим в соответствие функции ее ряд Фурье по многочленам Чебышева второго рода

. (11)

Многочлены Лежандра определяются формулой Родрига

. (12)

Многочлены Лежандра ортогональны на сегменте с весом . Справедливо соотношение

Следовательно, ортонормированные многочлены Лежандра имеют следующий вид:

. (13)

Если функция интегрируема на сегменте , то можно определить коэффициенты Фурье по многочленам Лежандра

(14)

и поставить этой функции в соответствие ряд Фурье – Лежандра

. (15)

Листинг программы

program Chebishev_Lezhandr;

{$APPTYPE CONSOLE}

uses

SysUtils;

const

a=0+0.1;

b=1-0.1;

k=11;

n=150;

m=200;

var

i,j:integer;

h:extended;

z:array[0..m] of extended;

x,sum_1,sum_2,sum_3:array[0..n] of extended;

function f(x0:real):real;

begin

f:=1/x0;

{f:=(1/x0)*ln(x0); }

{randomize;

f:=1/x0+random*0.0001; }

{randomize;

f:=(1/x0)*ln(x0)+random*0.0001;}

end;

function T_n(x1:extended;n1:integer):extended;

var t0,t1,t:extended; ii:integer;

begin

t0:=1;

t1:=x1;

if n1=0 then t:=1 else

if n1=1 then t:=x1 else

begin

for ii:=2 to n1 do

begin

t:=2*x1*t1-t0;

t0:=t1;t1:=t;

end;

end;

if n1=0 then T_n:=sqrt(1/pi) else

T_n:=sqrt(2/pi)*t;

end;

function U_n(x1:extended;n1:integer):extended;

var u0,u1,u:extended; ii:integer;

begin

u0:=1;

u1:=2*x1;

if n1=0 then u:=1 else

if n1=1 then u:=2*x1 else

begin

for ii:=2 to n1 do

begin

u:=2*x1*u1-u0;

u0:=u1;u1:=u;

end;

end;

U_n:=sqrt(2/pi)*u;

end;

function P_n(x1:extended;n1:integer):extended;

var r0,r1,r:extended;ii:integer;

begin

r0:=1;

r1:=x1;

if n1=0 then r:=1 else

if n1=1 then r:=x1 else

begin

for ii:=2 to n1 do

begin

r:=(2*ii-1)*x1*r1/ii-(ii-1)*r0/ii;

r0:=r1;r1:=r;

end;

end;

P_n:=sqrt((2*n1+1)/2)*r;

end;

function an1(s:integer):real;

var

i1,i2:integer;

p:real;

begin

h:=(b-a)/m;

for i1:=0 to m do

z[i1]:=a+i1*h;

p:=0;

for i2:=0 to m-1 do

p:=p+(f(z[i2])*T_n((2/(b-a))*z[i2]-(b+a)/(b-a),s)/sqrt(-a*b-sqr(z[i2])+z[i2]*(b+a))+f(z[i2+1])*T_n((2/(b-a))*z[i2+1]-(b+a)/(b-a),s)/sqrt(-a*b-sqr(z[i2+1])+z[i2+1]*(b+a)));

an1:=(h/2)*p;

end;

function an2(s:integer):real;

var

i1,i2:integer;

p:real;

begin

h:=(b-a)/m;

for i1:=0 to m do

z[i1]:=a+i1*h;

p:=0;

for i2:=0 to m-1 do

p:=p+(f(z[i2])*U_n((2/(b-a))*z[i2]-(b+a)/(b-a),s)*sqrt(-a*b-sqr(z[i2])+z[i2]*(b+a))+f(z[i2+1])*U_n((2/(b-a))*z[i2+1]-(b+a)/(b-a),s)*sqrt(-a*b-sqr(z[i2+1])+z[i2+1]*(b+a)));

an2:=(4/sqr(b-a))*(h/2)*p;

end;

function anl(s:integer):real;

var

i1,i2:integer;

p:real;

begin

h:=(b-a)/m;

for i1:=0 to m do

z[i1]:=a+i1*h;

p:=0;

for i2:=0 to m-1 do

p:=p+(f(z[i2])*P_n((2/(b-a))*z[i2]-(b+a)/(b-a),s)+f(z[i2+1])*P_n((2/(b-a))*z[i2+1]-(b+a)/(b-a),s));

anl:=(2/(b-a))*(h/2)*p;

end;

begin

{ TODO -oUser -cConsole Main : Insert code here }

for i:=0 to k do

begin

x[i]:=a+i*(b-a)/k;

{writeln('x=',x[i]:6:4);}

end;

for i:=0 to k do

begin

sum_1[i]:=0;

for j:=0 to n do

begin

sum_1[i]:=sum_1[i]+an1(j)*T_n((2/(b-a))*x[i]-(b+a)/(b-a),j);

end;

end;

writeln('Chebishev 1 roda');

writeln(' uzli znach_funkcii summa pogreshnost');

for i:=0 to k do

writeln(x[i]:7:4,' ',f(x[i]):7:6,' ',sum_1[i]:7:6,' ',abs(sum_1[i]-f(x[i])));

writeln;

for i:=0 to k do

begin

sum_2[i]:=0;

for j:=0 to n do

begin

sum_2[i]:=sum_2[i]+an2(j)*U_n((2/(b-a))*x[i]-(b+a)/(b-a),j);

end;

end;

writeln('Chebishev 2 roda');

writeln(' uzli znach_funkcii summa pogreshnost');

for i:=0 to k do

writeln(x[i]:7:4,' ',f(x[i]):7:6,' ',sum_2[i]:7:6,' ',abs(sum_2[i]-f(x[i])));

writeln;

for i:=0 to k do

begin

sum_3[i]:=0;

for j:=0 to n do

begin

sum_3[i]:=sum_3[i]+anl(j)*P_n((2/(b-a))*x[i]-(b+a)/(b-a),j);

end;

end;

writeln('Lezhandr');

writeln(' uzli znach_funkcii summa pogreshnost');

for i:=0 to k do

writeln(x[i]:7:4,' ',f(x[i]):7:6,' ',sum_3[i]:7:6,' ',abs(sum_3[i]-f(x[i])));

writeln;

ReadLn;

end.

Результаты выполнения программы

для модельной задачи

N=50

Chebishev 1 roda

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.451664 4.48336309314557E-0001

-0.7364 -0.736364 -0.737842 1.47815872186413E-0003

-0.5727 -0.572727 -0.563229 9.49840732499437E-0003

-0.4091 -0.409091 -0.416152 7.06103578335825E-0003

-0.2455 -0.245455 -0.243193 2.26149798506463E-0003

-0.0818 -0.081818 -0.077027 4.79138831729652E-0003

0.0818 0.081818 0.077027 4.79138831729642E-0003

0.2455 0.245455 0.243193 2.26149798506466E-0003

0.4091 0.409091 0.416152 7.06103578335821E-0003

0.5727 0.572727 0.563229 9.49840732499437E-0003

0.7364 0.736364 0.737842 1.47815872186404E-0003

0.9000 0.900000 0.451664 4.48336309314557E-0001

Chebishev 2 roda

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.462076 4.37924097862029E-0001

-0.7364 -0.736364 -0.744368 8.00452924841985E-0003

-0.5727 -0.572727 -0.571547 1.18018952530815E-0003

-0.4091 -0.409091 -0.408714 3.76562987249217E-0004

-0.2455 -0.245455 -0.244657 7.97359556876229E-0004

-0.0818 -0.081818 -0.084017 2.19922879877751E-0003

0.0818 0.081818 0.084017 2.19922879877754E-0003

0.2455 0.245455 0.244657 7.97359556876210E-0004

0.4091 0.409091 0.408714 3.76562987249231E-0004

0.5727 0.572727 0.571547 1.18018952530818E-0003

0.7364 0.736364 0.744368 8.00452924841985E-0003

0.9000 0.900000 0.462076 4.37924097862029E-0001

Lezhandr

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.460487 4.39513498025971E-0001

-0.7364 -0.736364 -0.741033 4.66946423306278E-0003

-0.5727 -0.572727 -0.569369 3.35798869176589E-0003

-0.4091 -0.409091 -0.410714 1.62261890939292E-0003

-0.2455 -0.245455 -0.244467 9.87635237457556E-0004

-0.0818 -0.081818 -0.081883 6.53000192731120E-0005

0.0818 0.081818 0.081883 6.53000192730325E-0005

0.2455 0.245455 0.244467 9.87635237457558E-0004

0.4091 0.409091 0.410714 1.62261890939287E-0003

0.5727 0.572727 0.569369 3.35798869176595E-0003

0.7364 0.736364 0.741033 4.66946423306279E-0003

0.9000 0.900000 0.460487 4.39513498025972E-0001

N=100

Chebishev 1 roda

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.450281 4.49719155587433E-0001

-0.7364 -0.736364 -0.742137 5.77326885168565E-0003

-0.5727 -0.572727 -0.568246 4.48159846392832E-0003

-0.4091 -0.409091 -0.405293 3.79839308978636E-0003

-0.2455 -0.245455 -0.244062 1.39262975876690E-0003

-0.0818 -0.081818 -0.085163 3.34461722731785E-0003

0.0818 0.081818 0.085163 3.34461722731793E-0003

0.2455 0.245455 0.244062 1.39262975876693E-0003

0.4091 0.409091 0.405293 3.79839308978639E-0003

0.5727 0.572727 0.568246 4.48159846392829E-0003

0.7364 0.736364 0.742137 5.77326885168557E-0003

0.9000 0.900000 0.450281 4.49719155587433E-0001

Chebishev 2 roda

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.457414 4.42586289479815E-0001

-0.7364 -0.736364 -0.737619 1.25564215140842E-0003

-0.5727 -0.572727 -0.572297 4.30549837155061E-0004

-0.4091 -0.409091 -0.408944 1.46479500688685E-0004

-0.2455 -0.245455 -0.245229 2.25118364563840E-0004

-0.0818 -0.081818 -0.081893 7.43275925272220E-0005

0.0818 0.081818 0.081893 7.43275925272462E-0005

0.2455 0.245455 0.245229 2.25118364563804E-0004

0.4091 0.409091 0.408944 1.46479500688696E-0004

0.5727 0.572727 0.572297 4.30549837155101E-0004

0.7364 0.736364 0.737619 1.25564215140842E-0003

0.9000 0.900000 0.457414 4.42586289479815E-0001

Lezhandr

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.454452 4.45547823865936E-0001

-0.7364 -0.736364 -0.739817 3.45344350034992E-0003

-0.5727 -0.572727 -0.570567 2.16066418303542E-0003

-0.4091 -0.409091 -0.407460 1.63103237187071E-0003

-0.2455 -0.245455 -0.244886 5.69000174535368E-0004

-0.0818 -0.081818 -0.083130 1.31159881022132E-0003

0.0818 0.081818 0.083130 1.31159881022123E-0003

0.2455 0.245455 0.244886 5.69000174535391E-0004

0.4091 0.409091 0.407460 1.63103237187073E-0003

0.5727 0.572727 0.570567 2.16066418303548E-0003

0.7364 0.736364 0.739817 3.45344350034988E-0003

0.9000 0.900000 0.454452 4.45547823865936E-0001

N=150

Chebishev 1 roda

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.454499 4.45500828782203E-0001

-0.7364 -0.736364 -0.736069 2.94545200756367E-0004

-0.5727 -0.572727 -0.572604 1.23450655489110E-0004

-0.4091 -0.409091 -0.409180 8.86896297059069E-0005

-0.2455 -0.245455 -0.245377 7.78111198653586E-0005

-0.0818 -0.081818 -0.081773 4.47436916159448E-0005

0.0818 0.081818 0.081773 4.47436916158641E-0005

0.2455 0.245455 0.245377 7.78111198653791E-0005

0.4091 0.409091 0.409180 8.86896297058679E-0005

0.5727 0.572727 0.572604 1.23450655489087E-0004

0.7364 0.736364 0.736069 2.94545200756429E-0004

0.9000 0.900000 0.454499 4.45500828782203E-0001

Chebishev 2 roda

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.454838 4.45162442837034E-0001

-0.7364 -0.736364 -0.736288 7.56027692685691E-0005

-0.5727 -0.572727 -0.572669 5.83009302639163E-0005

-0.4091 -0.409091 -0.409118 2.73466264746391E-0005

-0.2455 -0.245455 -0.245450 4.31168331860983E-0006

-0.0818 -0.081818 -0.081815 3.60967795290275E-0006

0.0818 0.081818 0.081815 3.60967795287702E-0006

0.2455 0.245455 0.245450 4.31168331857931E-0006

0.4091 0.409091 0.409118 2.73466264746263E-0005

0.5727 0.572727 0.572669 5.83009302639613E-0005

0.7364 0.736364 0.736288 7.56027692685678E-0005

0.9000 0.900000 0.454838 4.45162442837034E-0001

Lezhandr

uzli znach_funkcii summa pogreshnost

-0.9000 -0.900000 -0.454736 4.45264145480989E-0001

-0.7364 -0.736364 -0.736237 1.26886662726105E-0004

-0.5727 -0.572727 -0.572644 8.37163324389996E-0005

-0.4091 -0.409091 -0.409138 4.70461263241108E-0005

-0.2455 -0.245455 -0.245438 1.66433187389671E-0005

-0.0818 -0.081818 -0.081807 1.11333672273758E-0005

0.0818 0.081818 0.081807 1.11333672274513E-0005

0.2455 0.245455 0.245438 1.66433187389986E-0005

0.4091 0.409091 0.409138 4.70461263240819E-0005

0.5727 0.572727 0.572644 8.37163324390722E-0005

0.7364 0.736364 0.736237 1.26886662726149E-0004

0.9000 0.900000 0.454736 4.45264145480990E-0001

1 вариант

N=50 eps=0.1

Chebishev 2 roda

uzli znach_funkcii summa pogreshnost

0.1727 5.789474 5.721168 6.83055535567769E-0002

0.2455 4.074074 4.073916 1.57893120645081E-0004

0.3182 3.142857 3.116982 2.58746642428003E-0002

0.3909 2.558140 2.571996 1.38560210539384E-0002

0.4636 2.156863 2.146570 1.02924645730329E-0002

0.5364 1.864407 1.874367 9.95976904471944E-0003

0.6091 1.641791 1.633931 7.85962686237669E-0003

0.6818 1.466667 1.463903 2.76407307475309E-0003

0.7545 1.325301 1.341977 1.66754419228734E-0002

0.8273 1.208791 1.203492 5.29907471280567E-0003

Lezhandr

uzli znach_funkcii summa pogreshnost

0.1727 5.789474 5.128263 6.61210666660657E-0001

0.2455 4.074074 4.187503 1.13428518613710E-0001

0.3182 3.142857 2.781487 3.61370283967939E-0001

0.3909 2.558140 2.751708 1.93568448155933E-0001

0.4636 2.156863 1.994899 1.61963752893962E-0001

0.5364 1.864407 2.036844 1.72436828293851E-0001

0.6091 1.641791 1.487135 1.54655754724421E-0001

0.6818 1.466667 1.489968 2.33010563751288E-0002

0.7545 1.325301 1.570114 2.44812890694060E-0001

0.8273 1.208791 1.281689 7.28980721464752E-0002

N=100 eps=0.1

Chebishev 2 roda

uzli znach_funkcii summa pogreshnost

0.1727 5.789474 5.528696 2.60777373382289E-0001

0.2455 4.074074 4.074154 7.97815801881320E-0005

0.3182 3.142857 3.128876 1.39812275109927E-0002

0.3909 2.558140 2.479710 7.84290502022884E-0002

0.4636 2.156863 2.090444 6.64184289844027E-0002

0.5364 1.864407 1.817993 4.64138461809291E-0002

0.6091 1.641791 1.598612 4.31794795198776E-0002

0.6818 1.466667 1.401263 6.54038344945684E-0002

0.7545 1.325301 1.394161 6.88594425455146E-0002

0.8273 1.208791 1.123720 8.50714770838616E-0002

Lezhandr

uzli znach_funkcii summa pogreshnost

0.1727 5.789474 4.438856 1.35061785751553E+0000

0.2455 4.074074 4.286136 2.12062299747631E-0001

0.3182 3.142857 2.958094 1.84763340333746E-0001

0.3909 2.558140 2.067957 4.90182302137495E-0001

0.4636 2.156863 1.748241 4.08622147975160E-0001

0.5364 1.864407 1.605506 2.58901117649478E-0001

0.6091 1.641791 1.435251 2.06539782661759E-0001

0.6818 1.466667 1.082753 3.83913629681220E-0001

0.7545 1.325301 1.718826 3.93524865051317E-0001

0.8273 1.208791 0.981923 2.26868259438416E-0001

N=150 eps=0.1

Chebishev 2 roda

uzli znach_funkcii summa pogreshnost

0.1727 5.789474 5.815949 2.64748524559422E-0002

0.2455 4.074074 4.082792 8.71820127196792E-0003

0.3182 3.142857 3.023666 1.19190742334422E-0001

0.3909 2.558140 2.573782 1.56420480879075E-0002

0.4636 2.156863 2.128767 2.80954842936807E-0002

0.5364 1.864407 1.926558 6.21509276442687E-0002

0.6091 1.641791 1.576700 6.50908017219002E-0002

0.6818 1.466667 1.451521 1.51458506927486E-0002

0.7545 1.325301 1.251584 7.37167241280358E-0002

0.8273 1.208791 1.306614 9.78228004166109E-0002

Lezhandr

uzli znach_funkcii summa pogreshnost

0.1727 5.789474 5.239256 5.50217427695484E-0001

0.2455 4.074074 4.288745 2.14670797878710E-0001

0.3182 3.142857 3.455997 3.13139379490020E-0001

0.3909 2.558140 2.582270 2.41305119581360E-0002

0.4636 2.156863 2.213640 5.67775996234938E-0002

0.5364 1.864407 1.668727 1.95679713619928E-0001

0.6091 1.641791 1.854359 2.12567904030778E-0001

0.6818 1.466667 1.462314 4.35245924690773E-0003

0.7545 1.325301 1.550027 2.24725713113884E-0001

0.8273 1.208791 0.957565 2.51226099003509E-0001

Результаты после внесения случайной погрешности (порядка )

N=150 eps=0.1

Chebishev 2 roda

uzli znach_funkcii summa pogreshnost

0.1727 5.789556 5.815996 2.64748349322378E-0002

0.2455 4.074158 4.082845 8.72065778547301E-0003

0.3182 3.142922 3.023722 1.19165993255711E-0001

0.3909 2.558176 2.573824 1.56832717166591E-0002

0.4636 2.156957 2.128825 2.80978050577820E-0002

0.5364 1.864472 1.926602 6.21645147917870E-0002

0.6091 1.641825 1.576733 6.51574772743081E-0002

0.6818 1.466673 1.451565 1.51859157401357E-0002

0.7545 1.325383 1.251644 7.37041839500811E-0002

0.8273 1.208844 1.306660 9.78414868388559E-0002

Lezhandr

uzli znach_funkcii summa pogreshnost

0.1727 5.789508 5.239305 5.50177466293901E-0001

0.2455 4.074131 4.288768 2.14662428565804E-0001

0.3182 3.142948 3.456052 3.13128878998356E-0001

0.3909 2.558187 2.582338 2.41763320374912E-0002

0.4636 2.156871 2.213688 5.67393723030018E-0002

0.5364 1.864477 1.668771 1.95684639495417E-0001

0.6091 1.641890 1.854405 2.12539936046722E-0001

0.6818 1.466678 1.462351 4.40186938562140E-0003

0.7545 1.325378 1.550088 2.24734780716611E-0001

0.8273 1.208853 0.957636 2.51191662767421E-0001

Вывод

В ходе выполнения лабораторной работы мы исследовали приближение функций посредством их разложения в ряды по ортогональным многочленам Фурье-Чебышева первого и второго рода, а так же Фурье-Лежандра. В среде Delphi разработали программу реализующую данные методы. Программа отлажена на модельной задаче. Исследовали точность и устойчивость разложений. Чем больше слагаемых в сумме, тем выше точность. При внесении погрешности порядка в начальные данные, результат изменился незначительно. Это говорит об устойчивости. Оценили влияние особых точек. При приближении к особой точке погрешность увеличивается, чем дальше от особой точки, тем погрешность меньше.

Соседние файлы в папке docx55