7


  • Учителю
  • Урок Обработка экспериментальных данных

Урок Обработка экспериментальных данных

Автор публикации:
Дата публикации:
Краткое описание:
предварительный просмотр материала

Александр Георгиевич Задорожный

Учитель информатики и ИКТ

МБОУ СОШ № 125

с углубленным изучением математики

г.Снежинска

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

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





Урок Обработка экспериментальных данных

Метод наименьших квадратов позволяет выполнить данную задачу наиболее точно.

Пусть Y= U, X= I, a = R.

Y= a X - аналитическая зависимость тока от напряжения при неизвестном сопротивлении.

∑ ( Yi- a Xi) 2 = min - это требование метода наименьших квадратов при расчете неизвестного сопротивления.

Урок Обработка экспериментальных данных= 2 * ∑ Xi ( Yi- a Xi) - берем производную от выражения ∑ ( Yi- a Xi) 2 = min для получения значения параметра, удовлетворяющего требованию методу наименьших квадратов.

∑ XiYi- a ∑ Xi2 = 0, в правой части уравнения 0, т.к. берем производную от постоянной величины.



а = ∑ Xi Yi / ∑ Xi 2 - выражение для неизвестного коэффициента, полученное из экспериментальных данных по методу наименьших квадратов для линейной зависимости. Для зависимости Y=aX+b формулы для расчета получаются аналогично формуле Y=aX.

Привожу окончательный результат расчета неизвестных коэффициентов а и b.

a= (N * SXY - SX * SY) / (N * SX2 - SX * SX): b = SY / N - а * SX / N ,

где SXY=∑ Xi Yi , SX =∑ Xi, SY=∑ Yi, SX2= ∑ Xi 2 , N - число точек. Эти формулы используются для расчета в программе. Переменными pX, pY обозначены значения отклонения по осям X и Y в % от выбранного случайным образом шумового коэффициента. Переменными AM, BM обозначены вычисляемые по методу МНК значения а и b , а переменной sh - обозначен шаг изменения аргумента.







Метод наименьших квадратов для Y= aX+b



Dim X, Y, pX, pY, XM, YM, Xmin, Xmax, Ymin, Ymax, A, B, AM, BM, SH, XT, SXY, SX2, SX, SY,

MasX(1 To 101), MasY(1 To 101) As Single, I, N As Long

P

Label1 Метод наименьших квадратовrivate Sub Command1_Click()

N = Val(Text3.Text): Picture1.Cls: pX = Val(Text4.Text): pY = Val(Text5.Text)

XM = Val(Text2.Text): A = Val(Text1.Text): B = Val(Text9.Text): SH = 2 * XM / N

P

Label2 Y=a*X+bicture1.Scale (-XM, XM)-(XM, -XM)

SXY = 0: SX2 = 0: SX = 0: SY = 0: N = 0

'

Коэффициент А

X Max

Число точек

Max отклонение X

Max отклонение Y

А MNK

1

10

30

20

20

Коэффициент BГенерация точек

For XT = -XM To XM Step SH

N = N + 1: X = (XT + 0.01 * pX * (2 * Rnd - 1)):

Y

B MNK

1T = A * XT + B

Y = (YT + 0.01 * pY * (2 * Rnd - 1)): Picture1.PSet (X, Y)

SXY = SXY + X * Y: SX2 = SX2 + X ^ 2: SX = SX + X:

SY = SY + Y

Next XT

A

Picture1M = (N * SXY - SX * SY) / (N * SX2 - SX * SX):

BM = SY / N - AM * SX / N

YM = AM * XM + BM: Text6.Text = Str(AM):

Text10.Text = Str(BM)

'Ось X , Y

Picture1.Line (-XM, -XM * AM + BM)-(XM, YM)

For I = -XM To XM

PУрок Обработка экспериментальных данныхicture1.PSet (I, 0): Picture1.Print I

P

Command1 Вычислить

Text.boxicture1.PSet (0, I): Picture1.Print I

Next I

End Sub



Вид программы в VB 6.0 показан ниже.



Урок Обработка экспериментальных данных





Данная программа иллюстрирует полезность метода наименьших квадратов в обработке реальных экспериментальных данных. Данные нужно разместить на диске С в корневом каталоге с именем Data.txt . Формат данных x1 y1 x2 y2 …. Для запуска программы обработки нажимаем кнопку «данные». Программа обработки данных приведена ниже.



Private Sub Command2_Click()

Picture1.Cls

Open "C:\Data.txt" For Input As #1

N = 1: Input #1, X, Y

Xmin = X: Xmax = X: Ymin = Y: Ymax = Y: MasX(1) = X: MasY(1) = Y

While Not EOF(1)

IУрок Обработка экспериментальных данныхnput #1, X, Y

N = N + 1: MasX(N) = X: MasY(N) = Y

If Xmin > X Then Xmin = X

If Ymin > Y Then Ymin = Y

If Xmax < X Then Xmax = X

If Ymax < Y Then Ymax = Y



Wend

Text3.Text = Str(N)

Close #1

Text3.Text = N: Picture1.Cls: XM = Xmax

Picture1.Scale (-XM, XM)-(XM, -XM)

SXY = 0: SX2 = 0: SX = 0: SY = 0

'Генерация точек

For I = 1 To N

X = MasX(I): Y = MasY(I)

Picture1.PSet (X, Y)

SXY = SXY + X * Y: SX2 = SX2 + X ^ 2:

Next I



AM = SXY / SX2: BM = 0

YM = AM * XM + BM: Text6.Text = Str(AM): Text10.Text = Str(BM)

'Ось X , Y

Picture1.Line (-XM, -XM * AM + BM)-(XM, YM)

For I = -XM To XM Step 2

Picture1.PSet (I, 0): Picture1.Print I

Picture1.PSet (0, I): Picture1.Print I

Next I

End Sub



Программа обрабатывает линейные зависимости Y=aX+b с коэффициентом b=0. Данная программа является полигоном для изучения обработки экспериментальных данных. Она позволяет школьникам самим с ее помощью выполнять большой объем вычислений и почувствовать мощь вычислительных методов. Особенно это может пригодиться в исследовательской деятельности при подготовке работ учащимися для участия в научно-практической конференции.



3А.Г. Задорожный



 
 
X

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

После этого кнопка ЗАГРУЗКИ станет активной!

Кнопки рекомендации:

загрузить материал