Курсовая

Курсовая Аппроксимация экспериментальных зависимостей

Работа добавлена на сайт bukvasha.net: 2015-10-25

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024





Задание
1

Данные давления водорода Н2 на линии насыщения приведены в таблице. Сделать аппроксимацию экспериментальных данных в виде степенной функции и многочлена первой степени. Произвести сравнительный анализ ошибки аппроксимации полученной двумя функциями.
Таблица 1

Ts,0К

32

33

34

35

36

37

38

39

Pмм рт. ст.

360,3

509,5

699,2

935,3

1223.7

1570,5

1981,8

2463,8



Аппроксимация экспериментальных зависимостей методом наименьших квадратов. Теоретические сведения
Пусть, в результате эксперимента получена зависимость.


Необходимо найти аналитическую формулу f
=
, которая аппроксимирует экспериментальную (табличную) зависимость.

Выберем зависимость в виде полинома 2 – й степени, т.е.
 (1)
В выражении (1) коэффициенты , ,  подлежат определению, причем эти коэффициенты должны быть подобраны таким образом, чтобы зависимость наилучшим образом приближалась к экспериментальной зависимости. Пусть отклонение  - различие между табличным значением  в точке  и значением аналитической функции в этой же самой точке, т.е.:


 (2)
В соответствии с методом наименьших квадратов (МНК) наилучшими коэффициентами зависимости (1) будут такие, для которых сумма квадратов отклонений будет минимальной.
 (3)
Используя необходимые условия существования экстремума для функций нескольких переменных , находим уравнение для определения коэффициентов зависимости (1).
   (4)
Из условия (4) получим систему линейных алгебраических уравнений:
 (5)
Решив систему (5) найдем коэффициенты  аппроксимирующей зависимости (1).

Эффективным методом решения систем линейных алгебраических уравнений является матричный метод. Сущность его состоит в следующем.

Пусть А — матрица коэффициентов системы уравнений, X
— вектор неизвестных, В — вектор правых частей системы уравнений. Тогда решение системы уравнений в матричной форме будет иметь вид:


Х = А -1 В.

Правило Крамера

Если ранг матрицы совместной системы равен числу ее неизвестных, то система является определенной. Если число неизвестных системы совпадает с числом уравнений (m
=
n
)
и матрица системы невырожденная (det A
≠ 0), то система имеет единственное решение, которое находится по правилу Крамера:

В этих формулах ∆ = det А — определитель системы, а k
— определитель, полученный из определителя системы заменой k

o
столбца столбцом свободных членов (k
=
1, 2,..., n
).


Решение системы трех линейных уравнений с тремя неизвестными можно выразить через определители:
, ,
Информационное обеспечение
Зависимость давления P водорода Н2 при различных температурах на линии насыщения приведены в таблице (1).

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

Графическое отображение точек экспериментальных данных


Рис. 1. Экспериментальная зависимость P=f(T)
В результате анализа данных выберем в качестве аппроксимирующего многочлена параболу, заданную уравнением P2(x)=a0+a1x+a2x2.

Для определения коэффициентов a0, a1, a2 запишем систему уравнений вида

При составлении системы создадим вспомогательную таблицу данных (таблица 2).



Используя данные таблицы 2, систему уравнений (5) записываем в виде

В результате решения системы методом Крамера получаем следующие значения определителей:
detA = 56448;

detA1 = 1435933397;

detA2 = -94279012,8;

detA3 = 1564382,4;
Вычислив определители, рассчитываем значения коэффициентов:
a0 = detA1/ detA;

a1= detA2/detA;

a2 = detA3/ detA;

a0= 25438,1625;

a1= -1670,19226;

a2= 27,71369048.


Таким образом, искомый аппроксимирующий многочлен имеет вид:
 (6)
Полученная аналитическая зависимость (6) обобщает экспериментальные данные табл.01.

Для оценки погрешности полученной зависимости составим таблицу значений P. Для этого определим давление P по формуле (6). Результаты внесем в таблицу 2.



Таблица 2

T

32

33

34

35

36

37

38

39

P

370,8291668

502,0267858

688,6518

930,7042

1228,1839

1581,091

1989,4256

2453,188



Для оценки точности параболической аппроксимации сравниваем значения Р из табл.01 и табл.2. Модуль разности соответствующих значений представляет DP-погрешность аппроксимации, значения которой представлены в табл.3. В таблице приведена также относительная погрешность dР, равная отношению DР к Р.



Таблица
3


Т

32

33

34

35

36

37

38

39

DР

10,529

7,4732

0,5482

4,59583

4,4839

10,591

7,625

10,6125

dP,%

2,8393578

1,4886087

1,5317

0,4938

0,36509

0,6699

0,38331

0,4326



Сравнительный анализ погрешностей показывает, что полученная аналитическая зависимость удовлетворительно обобщает исходные экспериментальные данные.

Для интегральной оценки аппроксимации можно использовать формулу:



На рис. 2 приведены два графика, один из которых построен по данным аппроксимации (табл. 2), а второй - по исходным данным (табл.01).

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

Выберем в качестве аппроксимирующего многочлена линейную функцию.

Аппроксимируем данную табличную зависимость многочленом первой степени P1(x)=a0+a1x

Для определения коэффициентов а0 , а1 необходимо составить систему уравнений
  


Подставив данные таблицы в систему уравнений получим:

Находим а0 и а1 методом Крамера:
а0 = -9343,52, а1 = 297,4798
Следовательно, искомый аппроксимирующий многочлен имеет вид
P= ─ 9342,52 + 297,4798T
(7)

Формула (7) является аналитической зависимостью, обобщающей экспериментальные данные табл. 01.

Для оценки линейной аппроксимации необходимо сравнить значения yi из табл. 4 со значениями, полученными по формуле (7) для всех точек (i=1, 2, ..., 8). Результаты сравнения представлены в таблице 5.
Таблица
5





Проанализировав табл.5 можно сделать вывод, формула (7) не является корректной аналитической зависимостью, обобщающей экспериментальные данные табл. 01.

На рис.3 приведены график функции (7) и исходные экспериментальные данные. Сравнительный анализ показывает неудовлетворительную сходимость теоретических и экспериментальных данных.


Рис.5.3. График линейного аппроксимирующего многочлена и исходные данные.
Текст

программы


#include<iostream.h>

#include<math.h>

#include<conio.h>

#include<graphics.h>

#include<stdio.h>

#define PATHTODRIVER "c:\egavga.bgi"

void GrafikPolinom(float, float, float, float, float, float );//Функция //построения графика полиномиальной аппроксимации экспериментальных данных

void GrafikLinear(float,float,float,float,float);//Функция построения

//графика линейной аппроксимации экспериментальных данных

void GRAPH_POINTS(float,float,float,float ); //Функция выводит на экран точки //экспериментальных данных

int GRAPH_MODE(); //Функция инициализации графического режима

void GRID(float, float);// Функция формирования координатной сетки

/*-------------------------------------------------------------------------*/

int main()

{ clrscr();

int n;

float tmpr,pwr; //текущие значения аргумента и функции

float discret; //дискретность изменения аргумента

float tn0, tn; //диапазон изменения аргумента tn0 - min, tn - max

float pn; //pn-max экспериментальное значение функции

float *dp = new float [n]; //Массив значений ошибок аппроксимации

float *P = new float [n]; //Массив значений //полученный аналитическим способом

float INTG = 0; //переменная, используемая в выражении             //интегральной оценки аппроксимации

float A = 0, B = 0, C = 0, D = 0, E = 0, F = 0, G = 0;

float detA,i, detA1, detA2, detA3, A0,A2,A3;

int answer;

Ввод значений экспериментальных данных */ cout<<" Input number double values "<<endl;

cin>>n;

cout << " ENTER ARGUMENT VALUE " << endl;

float *t = new float [n]; //Массив значений аргумента (в данном случае - температура)

float *p = new float [n]; //Массив значений функции исследуемого процесса for( i=0;i<n;i++) {cout<<"Enter T"<<(i+1)<<"="; cin>>t[i]; }

cout <<" ENTER EXPERIMENTAL FNCTION VALUE"<<endl; for(i=0;i<n;i++) {cout<<"Enter P"<<(i+1)<<"="; cin>>p[i]; }

L:

cout <<" FOR DRAWING POINTS PRESS <1>\n" ;

cout <<" FOR FIND APROCSIMATION POLINOM FUNCTION INPUT <2>\n" ;

cout <<" FOR FIND APROCSIMATION LINEAR FUNCTION INPUT <4>\n" ;

cout <<" FOR FIND DRAWING POLINOM FUNCTION INPUT <3>\n" ;

cout <<" FOR FIND DRAWING LINEAR FUNCTION INPUT <5>\n" ;

cout <<" FOR EXIST INPUT <0>\n" ;

cin>>answer;

/* Графическое отображение экспериментальных данных в виде точек зависимости P = f(t) на координатной плоскости */

if (answer ==1)

{

int regimen = GRAPH_MODE();

if(regimen == 5)

{ tn0 = t[0]; tn = t[n-1];//tn-max экспериментальное значение температуры (аргумента) pn = p[n-1];//pn-max экспериментальное значение функции

GRID(tn,pn);

for(i = 0;i<n;i++)

{

tmpr= t[i];

pwr = p[i];

setbkcolor(1);

GRAPH_POINTS( tn,pn,tmpr,pwr );

} getch () ; closegraph(); // выход из графического режима

}

else

{ cout<<" Error code regimen = "<<regimen<<endl; getch(); closegraph();

} goto L;

}

/* Расчет функции аппроксимации экспериментальных данных в виде полинома 2 - й степени */

if(answer ==2) { for( i=0;i<n;i++) { A = A + t[i]; B = B + p[i]; C = C + t[i]*p[i]; D = D + t[i]*t[i]; E = E + t[i]*t[i]*p[i]; F = F + t[i]*t[i]*t[i]; G = G + t[i]*t[i]*t[i]*t[i]; } //

cout<<"A = "<<A<<" B = "<<B<<endl; //

cout<<"C = "<<C<<" D = "<<D<<endl; //

cout<<"E = "<<E<<" F = "<<F<<endl; //

cout<<"G = "<<G<<endl; /*n,A,B,C,D,E,F,G - коэффициенты многочленов для системы уравнений вида: n*(a0) + A*(a1) + D*(a2) = B A*(a0) + D*(a1) + F*(a2) = C D*(a0) + F*(a1) + G*(a2) = E */ // Решаем систему методом Крамера detA = n*D*G + A*F*D + D*A*F - D*D*D - A*A*G - n*F*F; detA1 = B*D*G + C*F*D + E*A*F - E*D*D - C*A*G - B*F*F; detA2 = n*C*G + A*E*D + D*B*F - D*C*D - A*B*G - E*F*n; detA3 = n*D*E + A*F*B + D*A*C - D*D*B - A*A*E - F*C*n; // cout << " detA = " << detA << " detA1 = " << detA1 << endl; // cout << " detA2 = " << detA2 << " detA3 = " << detA3 << endl; cout << " A0 = " << (A0 = detA1/detA) << endl; cout << " A2 = " << (A2 = detA2/detA) << endl; cout << " A3 = " << (A3 = detA3/detA) << endl;

cout << "APROCSIMATION POLINOM:" << endl; A2=A2; A3 = A3; cout << "P = (" << A0<<")+(" << (A2) << ")*T + (" << (A3) << ")*T^2" <<endl; for ( i=0; i<n; i++) { P[i] = A0 + A2*t[i] + A3*t[i]*t[i]; cout<<"P["<<i<<"]="<<P[i]<<" "; } cout<<"\n";

cout << " THE ABSOLUTE & RELATIVE MISTAKES OF APROCTIMATION \n"; for ( i=0; i<n; i++) { dp[i] = (P[i]-p[i]); cout<< "dP["<<i<<"]="<<(fabs(dp[i]))<<" dP(%)="<<(100*fabs(dp[i])/p[i])<<endl; }

cout <<" INTEGRAL LEVEL OF APROCTIMATION IS:\n" ;

 for ( i=0; i<n; i++) { INTG = INTG + (dp[i])*dp[i]; } float ITG = sqrt(INTG/(n+1)); cout<<"ITG = "<<ITG<<"\n"; //интегральная оценка аппроксимации getch();

goto L; }

/* Графическое отображение, полученной зависимости P = f(t) в виде полинома 2 степени, на координатной плоскости */

if(answer == 3) {

int regimen = GRAPH_MODE();

if(regimen == 5)

{ tn0 = t[0]; tn = t[n-1];//tn-max экспериментальное значение температуры (аргумента) pn = p[n-1];//pn-max экспериментальное значение функции

GRID(tn,pn);

setbkcolor(1);

GrafikPolinom(A0, A2, A3,tn0,tn,pn );

for(i = 0;i<n;i++)

{

tmpr= t[i];

pwr = p[i];

GRAPH_POINTS( tn,pn,tmpr,pwr );

} getch () ; closegraph(); // выход из графического режима

}

else

{ cout<<" Error code regimen = "<<regimen<<endl; cout << "Dont find driver or driver damaged\n" ; /*В этом месте cделать возврат в главное меню*/ getch(); closegraph();

}

goto L;

}
/*-------------------------------------------------------------------------*/ /* Расчет линейной функции аппроксимации экспериментальных данных */ cout<<" II. LINEAR APROCTIMATION " <<endl; float R = 0, R2 = 0, B0, B1; float SCp = 0, Cpi = 0, detB, detB1, detB2; float* dCp = new float [n];; float* ACp = new float [n];; float INTGL = 0; if(answer == 4) { for ( i=0;i<n;i++) { R = R+t[i]; SCp = SCp + p[i]; R2 = R2 + t[i]*t[i]; Cpi = Cpi + p[i]*t[i]; } // cout << " R =" << R << " SCp =" << SCp << endl; // cout << " R2 =" << R2 << " Cpi =" << Cpi << endl; /*n, R, SCp, R2, Cpi - коэффициенты в уравнениях для системы вида (А0)*n + (A1)*R = SCp (A0)*R + (A1)*R2 = Cpi */ detB = n*R2 - R*R; detB1 = SCp*R2 - R*Cpi; detB2 = n*Cpi - R*SCp; // cout<<"detB = "<<detB<<" detB1 = "<<detB1<<"detB2 = "<<detB2<<"\n"; B0 = detB1/detB; B1 = detB2/detB; // cout << " B0 =" << B0 << endl; // cout << " B1 =" << B1 << endl; cout << " APROCTIMATION LINEAR POLINOM" << endl; cout<<"F =("<<B0<<") + ("<<B1<<")*T" << endl; for (i = 0; i<n;i++) { ACp[i] = B0 + B1* t[i]; cout <<"ACp["<<i<<"]=" <<ACp[i]<<endl; } for ( i = 0; i<n;i++) { dCp[i] = ACp[i] - p[i]; cout<< "dCp["<<i<<"]="<<(fabs(dCp[i]))<<" dCp(%)="<<(100*fabs(dCp[i])/p[i])<<endl; } cout <<" INTEGRAL LEVEL OF APROCTIMATION IS:\n" ; for ( i=0; i<n; i++) { INTGL = INTGL + (dCp[i])*(dCp[i]); } float ITGL = sqrt(INTGL/(n+1)); cout<<"ITGL = "<<ITGL<<"\n"; cout<<" "<<"\n"; getch(); goto L; }

Графическое отображение, полученной зависимости P = f(t) в виде линейной функции аппроксимации на, координатной плоскости */

if(answer==5)

{

int regimen = GRAPH_MODE();

if(regimen == 5)

{ tn0 = t[0]; tn = t[n-1]; tn = t[n-1]; pn = p[n-1]; GRID(tn,pn);

setbkcolor(1);

GrafikLinear( B0,B1,tn0,tn,pn );

for(i=0;i<n;i++)

{tmpr = t[i]; pwr = p[i]; GRAPH_POINTS(tn,pn,tmpr,pwr);

} getch () ; closegraph(); // выход из графического режима

}

else

{ cout << " Error code regimen = "<<regimen<<endl; cout << "Dont find driver or driver damaged\n" ; getch();

} goto L;

}

return 0;

}

* Функция вывода на координатную плоскость графика функции 2-й степени */

void GrafikPolinom(float A0, float A2, float A3,float tn0,float tn, float pn )

{

float x,dx; // аргумент и его приращение

float xl,x2; // диапазон изменения аргумента

float y; // значение функции

float mx,my; // масштаб по X и Y - кол-во точек экрана, соответствующих // единице по осям координат

int x0,y0; // начало осей координат

float px,py; // координаты точки графика на экране

x0 = 50;

y0 = 400;

mx = 630/(2*tn);

my = 470/(2*pn);

// оси координат

line(10,y0,630,y0);

line(x0,10,x0,470);

// график

xl = tn0;

x2 = tn;

dx = 0.01;

x = xl;

while ( x < x2 )

{

y =A3*x*x + A2*x+A0; // функция

px = x0 + x*mx;

py = y0 - y*my;

putpixel(px,py, WHITE);

x += dx;

}}

int GRAPH_MODE()

{

int grdriver = DETECT; // драйвер

int grmode; // режим

int errorcode; // код ошибки

initgraph(&grdriver, &grmode, PATHTODRIVER);

errorcode = graphresult();

if (errorcode != grOk) // ошибка инициализации графического режима

{

printf("ERROR: dont find driver or driver damaged \n", errorcode);

puts("PRESS <Enter>");

getch();

return(-10);

}

else

{ return(5);

}}

/* Функция вывода на координатную плоскость графика линейной функции */ void GrafikLinear(float B0, float B1,float tn0, float tn, float pn ) {

float x,dx; // аргумент и его приращение

float xl,x2; // диапазон изменения аргумента

float y; // значение функции

float mx,my; // масштаб по X и Y - кол-во точек экрана, соответствующих // единице по осям координат

int x0,y0; // начало осей координат

float px,py; // координаты точки графика на экране

x0 = 50;

y0 = 400;

mx = 630/(2*tn);

my = 470/(2*pn);

// оси координат

line(10,y0,630,y0);

line(x0,10,x0,470);

// график

xl = tn0;

x2 = tn;

dx = 0.01;

x = xl;

while ( x < x2 )

{

y = B1*x+B0; // линейная функция

px = x0 + x*mx;

py = y0 - y*my;

putpixel(px,py, WHITE);

x += dx;

}}

/* Функция вывода точек экспериментальной зависимости на экран */ void GRAPH_POINTS(float tn,float pn,float tmpr,float pwr )

{

float x; // аргумент

float y; // значение функции

float mx,my; // масштаб по X и Y - кол-во точек экрана, соответствующее // единице по осям координат

int x0 = 50;

int y0 = 400;

mx = 630/(2*tn); //tn-max экспериментальное значение температуры (аргумента)

my = 470/(2*pn); //pn-max экспериментальное значение функции

y = y0 - pwr*my ;

x = x0 + tmpr*mx ;

setcolor(13);

circle(x,y,2);

}

/* Функция формирования координатной сетки и расчета масштаба по X и Y*/ void GRID(float tn, float pn)

{

int x0,y0; // координаты начала координатных осей

int dx,dy; // шаг координатной сетки (в пикселях)

int h,w; // высота и ширина области вывода координатной сетки int x,y;

float lx,ly; float dlx,dly; char st [8];

// метки линий сетки по X и Y

// шаг меток линий сетки по X и Y

// изображение метки линии сетки

x0 = 50; y0 = 400; // оси начинаются в точке (50,400)

dx = 40; dy = 40; // шаг координатной сетки 40 пикселей

dlx =1; // шаг меток оси X метками будут: 1, 2, 3 ...

dly =1; // шаг меток оси Y метками будут: 1, 2, 3 ...

h = 360; w = 560;

lx = 0; ly =0; //в начало координат ставятся метки 0

cout<<" MX = 1 : "<< 2*tn/14 <<"\n"; //масштаб по Х

cout<<" MY = 1 : "<< 2*pn/9 <<"\n"; //масштаб по Y

// засечки, сетка и оцифровка

int x = x0;

do

{

// засечка

sprintf(st,"%2.1f",lx);

outtextxy(x-8,y0+5,st);

lx += dlx;

// линия сетки

setlinestyle (DOTTED_LINE, 0, 1);

line(x,y0-3,x,y0-h);

x += dx; } while (x < x0+w);

// засечки, сетка и оцифровка по оси Y

int y = y0;

do

{

// оцифровка

sprintf(st,"%2.1f",ly) ;

outtextxy(x0-40,y, st) ;

ly += dly;

// линия сетки

setlinestyle(DOTTED_LINE, 0, 1);

line(x0+3,y,x0+w,y) ;

setlinestyle(SOLID_LINE, 0, 1);

y -= dy; } while (y > y0-h);

} ;
Результаты тестирования
Для проверки правильности вычисления аналитической формулы 2 – й степени, которая аппроксимирует экспериментальную (табличную), зависимость, выведем на экран:

- значения определителей [detA
,
detA
1,
detA
2,
detA
3
] полученных при решении системы линейных уравнений и значения коэффициентов [A
0,
A
2,
A
3
] в аналитической формуле, рассчитанные программой при выборе аппроксимирующего многочлена 2 – й степени;

- вспомогательные данные [A
,
B
,
C
,
D
,
E
,
F
,
G
] необходимые для вычисления уравнения функции аппроксимации экспериментальных данных 2 – й степени;

При тестировании получены следующие величины вышеперечисленных значений:

A = 284;

B = 97744,099609;

C = 358409,6875;

D = 10124;

E =13222899;

F = 362384;

G = 13023812;

detA = 56448;

detA 1= 1,436059 *109 ;

detA 2= ─ 9,42861 * 107 ;

detA3 = 1564482,25;

A0 = 25440,380859;

A1 = ─1670,317871;

A
2
= 27,71546;
Аппроксимирующий полином:
P
= 25440,380859 ─ 1670,317871*
T
+ 27,71546*
T
2
;

Данная аналитическая зависимость, обобщает экспериментальные данные табл. 01.

Для проверки правильности вычисления аналитической формулы 1 – й степени, которая аппроксимирует экспериментальную (табличную), зависимость, выведем на экран:

- значения определителей [det
В,
det
В1,
det
В2
] полученные при решении системы линейных уравнений и значения коэффициентов [В0, В1] в аналитической формуле, рассчитанные программой при выборе аппроксимирующего многочлена 1 – й степени;

- вспомогательные данные [R
,
SCp
,
R
2,
Cpi
] необходимые для вычисления уравнения функции аппроксимации экспериментальных данных 1 – й степени;
R = 284;

SCp = 9744,099609;

R2 = 10124;

Cpi = 358409,6875;

det
В
= 336;

det
В1
= ─ 3139086,75;

det
В2
= 99953,210937;

B
0
= ─ 9342,52058;

B
1
= 297,479797;
Аппроксимирующая функция
P
= ─ 9342,52058 + 297,479797*
T
/

Данная аналитическая зависимость, неудовлетворительно обобщает экспериментальные данные табл.01.

Аномалии и допустимые значения исходных данных.

В результате тестирования программы выявлены следующие её особенности:

1. Допустимые значения исходных данных лежат в пределах [-10000000; +10000000];

2. При больших значениях аргумента вычерчивание графика замедляется;

3. При значениях исходных данных в пределах 10-9 - график функции может быть не виден вследствие слишком мелкого масштаба.
Результаты выполнения задания
1. После ввода выходных данных, перед проведением вычислений для выбора вида аппроксимирующей функции представим экспериментальные данные в графическом виде (СНИМОК I).

2. При вычислении аппроксимирующей функции 2 –й степени программа вывела на экран (СНИМОК II ) :

- вид аппроксимирующего полинома: P
= 25440,380859 ─ 1670,317871*
T
+ 27,71546*
T
2
;


- dP иdP
(%)
– ошибки аппроксимации .Сравнительный анализ погрешностей показывает, что полученная аналитическая зависимость удовлетворительно обобщает исходные экспериментальные данные. Максимальная ошибка аппроксимации σPmax = 10,539856(2,9253%), минимальная - σPmin = 4,473511 (0,365573%);

- ITG
-
интегральную оценку аппроксимации. Для интегральной оценки аппроксимации использована формула:
ITG ==8,179605;
После завершения вычислений построим график аппроксимирующей функции и сравним его с графиком, построенным по выходным данным таблицы 01. Сравнивая графики можно определить хорошую сходимость теоретических и экспериментальных

3. При вычислении аппроксимирующей функции 1 – й степени программа вывела на экран

- вид аппроксимирующего полинома:
P
= ─ 9342,520508 + 297,479797*
T
;

-
dCP
иdCP
(%)
–абсолютную и относительную ошибки аппроксимации. Сравнительный анализ погрешностей показывает, что полученная аналитическая зависимость неудовлетворительно обобщает исходные экспериментальные данные.

Максимальная абсолютная ошибка аппроксимации
dCP - σPmax = 204,608398(8,3045868%),
минимальная абсолютная ошибка аппроксимации
dCP
-
σPmin = 20,088257(1,013637%).


Максимальная относительная ошибка аппроксимации
dCp
(%)
- σPmax = 50,920618% (183,46698),
минимальная относительная ошибка аппроксимации
dCp
(%)
- σPmin = 1,013637%(20,088257).
-

ITGL
-
интегральную оценку аппроксимации.
ITGL
= 120,015892;

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

dCP ,dCP
(%)
и ITGL можно определить неудовлетворительную сходимость теоретических и экспериментальных данных.

4. После запуска программы на экране появляется приглашение < Enter

input

dates
>
, предлагающее пользователю ввести количество пар входных данных, после чего выводится строка ввода значений аргумента <ENTER

EXPERIMENTAL
ARGUMENT

VALUE
>
и затем значений экспериментальной зависимости <ENTER EXPERIMENTAL DEPENDENCY
VALUE> .


После ввода данных на экран выводится меню:

FOR DRAWING POINTS INPUT <1>;

FOR FIND APROCSIMATION POLINOM FUNCTION INPUT <2>;

FOR DRAWING THE GRAPHIC OF POLINOM FUNCTION INPUT <3>;

FOR FIND APROCSIMATION LINEAR FUNCTION INPUT <4>;

FOR DRAWING THE GRAPHIC OF LINEAR FUNCTION INPUT<5>;

FOR

EXIST

INPUT
<0>,


состоящее из 6 пунктов, выбрав один из которых можно произвести соответствующие операции, указанные в аннотации:

-

FOR

DRAWING

POINTS

INPUT
<1>
- позволяет произвести графическое отображение экспериментальных данных в виде точек зависимости P = f(t) на координатной плоскости ;

FOR

FIND

APROCSIMATION

POLINOM

FUNCTION

INPUT
<2>
- позволяет произвести расчет функции аппроксимации экспериментальных данных в виде полинома 2 - й степени;

FOR

DRAWING

THE

GRAPHIC

OF

POLINOM

FUNCTION

INPUT
<3>
- позволяет построить графическое отображение, полученной зависимости P
=
f
(
t
)
в виде аппроксимирующего многочлена 2 степени, на координатной плоскости;

FOR

FIND

APROCSIMATION

LINEAR

FUNCTION

INPUT
<4>
- позволяет произвести расчет линейной функции аппроксимации экспериментальных данных;

FOR

DRAWING

THE

GRAPHIC

OF

LINEAR

FUNCTION

INPUT
<5>
- позволяет построить графическое отображение, полученной зависимости P
=
f
(
t
)
в виде линейной функции аппроксимации на, координатной плоскости;

FOR

EXIST

INPUT

<0>
- предлагает выйти из программы:


Вывод
Данная программа позволяет произвести аппроксимацию экспериментальных зависимостей методом наименьших квадратов с отображением результатов аппроксимации в текстовом и графическом режимах. Программа позволяет оценить точность аппроксимации и произвести сравнительный анализ типов аппроксимации ( с помощью многочлена 2 – й степени или с помощью многочлена 1 – й степени ).


Список литературы
Яремчук Ф.П., Рудченко П.А. АЛГЕБРА И ЭЛЕМЕНТАРНЫЕ ФУНКЦИИ - Киев, НАУКОВА ДУМКА, 1987, 647.

Глушаков С.В., Сурядный А.С. MICROSOFT EXCEL XP - Харьков, ФИЛИО, 2006, 508.

Дорош Н.Л., Бартенев Г.Л. и др. Методические указания к выполнению индивидуальных заданий и курсовой работы по дисциплинам "Информатика" и "Вычислительная математика". Днепропетровск, УДХТУ, 2004, 47.

1. Реферат Оценка управленческой деятельности в организации
2. Реферат Региональное управление проектами в сфере недвижимости
3. Реферат Методика аудита собственного капиталом
4. Реферат Гендерный подход в обучении старшеклассников на уроках обществознания в средней школе
5. Реферат Артикуляционная характеристика гласных звуков в английском и русском языке
6. Реферат на тему Descartes Meditations Essay Research Paper Descartes MeditationsDescartes
7. Курсовая на тему Профессиональное ориентирование в молодежной среде
8. Реферат на тему THEMES IN MACBETH Essay Research Paper THEMES
9. Реферат на тему State Soveriegnty And Environmental Sustainability Essay Research
10. Реферат Международная миграция рабочей силы 9