Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Використання методу найменших квадратів при вирішенні електротехнічних завдань

Реферат Використання методу найменших квадратів при вирішенні електротехнічних завдань





с Функції

Функція MASS (double * x, double * y, double ** sum, intN, intK, double * a, double * b) служить для обчислення коефіцієнтів для методу найменших квадратів, де * x, * y масиви вихідних даних, N - розмірність масиву, * а-шуканий коефіцієнт.

Функція Kof_kor (double * x, double * y, intn) служить для обчислення коефіцієнта кореляції * x, * y-масив вихідних даних, n - розмірність масиву.

Функція Ind_kor (double * a, double * x, double * y, intn) служить для обчислення індексу кореляції, де * a-коефіцієнтів методу найменших квадратів, * x, * y-масиви вихідних даних, n- розмірність масивів.


5. Характеристика даних та їх умовні позначення


Таблиця 2

Найменування даннихОбозначеніе в блок-схемеОбозначеніе в программеТіп переменнихРазмерность массіваnnintІсходний масив значень нагрузокx, x1x, x1doubleІсходний масив значень напряженійy, y1y, y1doubleВспомогательние переменниеi, ki, kintМассів значення навантажень, при якому необхідно визначити значення напряженіяssdoubleОжідаемое значення нагрузкіotv, otv1otv , otv1doubleПеременная вибору действіяjjintЧтеніе даних з файлаffifstreamЗапісь даних в файлf1f1ofstreamКоеффіціент найменших квадратовa, a1a, a1doubleКоеффіціент корреляцііkof_korkof_kordoubleІндекс корреляцііInd_korInd_kordoubleСуммарная квадратична ошібкаS, S1S, S1double


6. Текст програми


# include lt; iostream gt;

# include lt; fstream gt;

# include lt; math.h gt;

# include lt; conio.h gt;

# include lt; clocale gt; namespace std;

int MASS (double * x, double * y, double ** sum, int N, int K, double * a, double * b)

{int i, j, k, m; double z, c; (i=0; i lt; K + 1; i ++) (j=0; j lt; K + 1; j ++)

{[i] [j]=0; (k=0; k lt; N; k ++)

{sum [i] [j] +=pow (x [k], i + j);}

} (i=0; i lt; K + 1; i ++)

{b [i]=0; (k=0; k lt; N; k ++)

{b [i] +=pow (x [k], i) * y [k];}

} (i=0; i lt; K; i ++)

{m=i; (j=i + 1; j lt; K + 1; j ++)

{if (fabs (sum [m] [i]) lt; fabs (sum [j] [i])) m=j;} (k=i; k lt; K + 1; k ++)

{z=sum[m][k];sum[m][k]=sum[i][k];sum[i][k]=z;}=b[m];b[m]=b[i];b[i]=z;(j=i+1;jlt;K+1;j++)

{= - sum [j] [i]/sum [i] [i]; (k=i; k lt; K + 1; k ++)

{sum [j] [k]=sum [j] [k] + c * sum [i] [k];} [j]=b [j] + c * b [i ];}

} [K]=b [K]/sum [K] [K]; (i=K + 1-2; i gt;=0; i -)

{(k=i + 1; k lt; K + 1; k ++)

{b [i]=b [i] -a [k] * sum [i] [k];} [i]=b [i]/sum [i] [i];

} 0;

} Kof_kor (double * x, double * y, int n)

{int i;sred_x,sred_y,kof_kor,sum_x=0,sum_y=0,*otkl_x,*otkl_y,sum_otkl_x,sum_otkl_y;*proizv_rz,stand_otklon_x,stand_otklon_y,*otkl_x2,*otkl_y2,sum_proizv_rz=0;_x=new double [n]; otkl_y=new double [n]; proizv_rz=new double [n]; otkl_x2=new double [n]; otkl_y2=new double [n]; (i=0; i lt; n; i ++)

{sum_x +=x [i]; sum_y +=y [i];} _ x=sum_x/n; sred_y=sum_y/n; (i=0; i lt; n; i ++)

{otkl_x [i]=sred_x-x [i]; otkl_y [i]=sred_y-y [i];} (i=0; i lt; n; i ++)

{otkl_x2[i]=pow(otkl_x[i],2);otkl_y2[i]=pow(otkl_y[i],2);}(i=sum_otkl_x=sum_otkl_y=0;ilt;n;i++)

{sum_otkl_x+=otkl_x2[i];sum_otkl_y+=otkl_y2[i];}_otklon_x=pow(sum_otkl_x/n,1/2.);stand_otklon_y=pow(sum_otkl_y/n,1/2.);(i=0;ilt;n;i++)

{proizv_rz [i]=otkl_x [i] * otkl_y [i];} (i=0; i lt; n; i ++)

{sum_proizv_rz+=proizv_rz[i];}_kor=sum_proizv_rz/(stand_otklon_x*stand_otklon_y*n);kof_kor;

} Ind_kor (double * a, double * x, double * y, int n)

{int i; sred_y, * yY, * yM, Y, ym=0, yy=0, ind_kor;=new double [n]; yM=new double [n]; (i= 0; i lt; n; i ++)

{sred_y +=y [i];} _ y=sred_y/n; (i=0; i lt; n; i ++)

{=a[0]+a[1]*x[i]+a[2]*pow(x[i],2)+a[3]*pow(x[i],3);[i]=pow(y[i]-Y,2);yM[i]=pow(y[i]-sred_y,2);

} (i=0; i lt; n; i ++)

{yy +=yY [i]; ym +=yM [i];} _ kor=pow (fabs (1- (yy/ym)), 1/2.); ind_kor;

} main ()

{f; ofstream f1; n=6, k, N=4, i, j=1, n1=3; double **x_mass,*y,*x,*s,*a,*b,*y1,*x1,*a1,*otv,*otv1,kof_kor,ind_kor,*min_y,*min_y1,S=0,S1=0,OTVET;sred_y,*yY,*yM,Y,ym=0,yy=0;yY=ne...


Назад | сторінка 3 з 6 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Double Standards in Modern Politics
  • Реферат на тему: Double Entry Types of Balance Sheet
  • Реферат на тему: Double electric layer. Mechanism of formation and theory of structure
  • Реферат на тему: Розрахунок апроксимацій експериментальних даних методом найменших квадратів ...
  • Реферат на тему: Основи методу найменших квадратів