Методі математичної обробки експериментальних даних

Автор работы: Пользователь скрыл имя, 21 Апреля 2014 в 21:41, курсовая работа

Краткое описание

В даній курсовій роботі були проведені розрахунки з використанням різноманітних методів математичної обробки експериментальних даних. Був проведен аналіз результатів отриманних за допомоги різноманітних методів, а також були порівняні, методи якими ми користувалися в роботі, методи обробки експериментальних даних по простоті використання і по точності отриманних результатів. Був розрахован вибірковий коефіцієнт кореляції, характеризуючий силу лінійного кореляційного зв¢язку між X та Y. З використанням методів параболічного інтерполювання і метода Лагранжа були розраховані значення фізичних величин в заданних невузлових точках, результати отримані по заданим методам були співставленні і проаналізовані.

Вложенные файлы: 1 файл

мой курсач.docx

— 366.02 Кб (Скачать файл)

  

      #include<stdio.h>

      #include<conio.h>

      #include<math.h>

     void main(void)

   {

     float x[100], y[100], Sx=0, Sy=0, Sx2=0, Sy2=0, Sxy=0, a, b, r; int n, i=0;

     clrscr();

     printf (“\n введіть кількість єкспериментальних крапок\n n=”); scanf(“%i”, &n);

     printf (“Попарно введіть значення х та у”);

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

    {   printf(“\n x[%i”, i); printf (“]=”); scanf(“%f”, &x[i]);

         printf(“\t y[i”, i); printf (“]=”); scanf(“%f”, &y[i]);

         Sx=Sx+x[i]; Sy=Sy+y[i];

         Sx2=Sx2+pow(x[i],2); Sy2=Sy2+pow(y[i],2);

         Sxy=Sxy+x[i]*y[i];    }

    b=(n* Sxy - Sx *Sy)/(n*Sx2-pow(Sx,2));

    a=(Sy-b*Sx)/n;

    r=(n* Sxy - Sx *Sy)/ pow((n*Sx2-pow(Sx,2))* (n*Sy2-pow(Sy,2)),0.5);

    printf (“\n Sx=%f, Sy=%f, Sx2=%f, Sy2=%f, Sxy=%f, a=%f, b=%f, r=%f”,

                     Sx, Sy, Sx2, Sy2, Sxy, a, b, r);

    getch();

  }

5) Програма власної розробки, при запуску якої вводимо коефіцієнти регресії перетвореного рівняння до лінійного виду  a та b,кількість експериментальних точок n, перетворені значення х та у. Предназначена для розрахунку розрахункових- fx[i] по рівнянню лінійного виду, іх квадратів відхилень p[i] та сума квадратів відхилень z, також вона розраховує дисперсію адекватності Sad2, дисперсії Sb2,Sa2, та суми х, у, х2.

  

   #include <stdio.h>

   #include <math.h>

   #include <conio.h>

 

   float f (float x,float a,float b)

  {

   return (a+b*x);

   }

   void main(void)

  {

   float a,b,y[15],x[15],p[15],fx[15],z=0,Sad2,Sx=0,Sy=0,Sx2=0,Sb2,Sa2; int i,n;

   clrscr();

   printf ("Введіть коефіцієнти регресії a та b");

   printf ("\n a="); scanf ("%f", &a);

   printf (" b="); scanf ("%f", &b);

   printf ("\n Введіть кількість експериментальних точок \n n="); scanf ("%i", &n);

   printf ("Введіть попарно преобразовані значення х та у ");

 

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

   {

  printf ("\n x[%i", i); printf("]="); scanf("%f", &x[i]);

  printf ("\t y[%i", i); printf("]="); scanf("%f", &y[i]);

  fx[i]=f(x[i],a,b); p[i]=pow(y[i]-fx[i],2); z=z+p[i]; Sx=Sx+x[i]; Sy=Sy+y[i];

  Sx2=Sx2+pow(x[i],2);

  }

  Sad2=z/(n-2); Sb2=n*Sad2/(n*Sx2-pow(Sx,2)); Sa2=Sb2*Sx2/n;

  printf ("розрахункові значення f(x) і квадрат відхилення \n");

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

 {printf ("\n fx[%i]=%f,\t p[%i]=%f", i,fx[i],i,p[i]);}

 printf ("\n квадрат суми відхилень z=%f,\n Sad=%f,\n Sx=%f,\n Sy=%f,\n Sx2=%f,\n Sb2=%f,\n Sa2=%f", z,Sad2,Sx,Sy,Sx2,Sb2,Sa2);

 getch();

}

 

 

 

 

 

 

 

 


 



Информация о работе Методі математичної обробки експериментальних даних