Вы находитесь на странице: 1из 40

Размещено на http://www.allbest.

ru/
ВВЕДЕНИЕ

Одним из важнейших методов современных наук (физики, химии и т.д.)


является модельное описание. Модель позволяет получить количественную
информацию об исследуемом объекте или процессе. Величины,
определяющие результаты эксперимента, выступают в роли переменных и
параметров некоторой функциональной зависимости, теоретически
получаемой в рамках модели. После экспериментальной регистрации
зависимости ее сравнивают с теоретической. Путем сравнения можно не
только численно определить, т.е. измерить, значения величин, не измеряемых
другим способом, но и вывести заключение об адекватности применения
модели.
Обработка экспериментально полученной зависимости состоит в
проведении по зарегистрированным точкам теоретической кривой,
рассчитанной для заданного набора численных значений параметров.
Варьируя параметры, добиваются наилучшего совпадения теоретической
кривой с экспериментальными данными. Достижению такого совпадения
помогает обязательное требование: теоретическая кривая должна отражать
все особенности поведения экспериментальной зависимости, а, тем более, не
давать повода для сомнений в совпадении с ней. Полученный набор
параметров расценивается как результат их одновременного измерения,
выполненного на основе используемой модели.
В эксперименте часто проверяют линейную зависимость двух величин
вида:

y=а·x+b, (1)

где х, у - измеряемые величины, а, Ь - параметры зависимости. Даже


если из модельного описания непосредственно не получается линейная
зависимость величин, теоретическую зависимость стремятся преобразовать к
Размещено на http://www.allbest.ru/
линейной. Объясняется это тем, что линейная зависимость выделяется из
других форм функциональной связи двух величин. Во-первых, в силу
психологических причин восприятие человека обладает свойством выделять
прямые линии, как встречающиеся в повседневной жизни, так и построенные
в виде графиков. Визуально удается достаточно точно восстановить из
графика всю прямую, даже в той области, где информация о ней частично
отсутствует. Это означает, что проводимая «на глаз» прямая, которая
проходит по точкам, содержащим экспериментальный разброс, оказывается
удивительно близкой к оптимальной, построенной с помощью методов
математической статистики. Собственно, возможности статистики
применительно к линейной зависимости определяют второе обстоятельство
ее частого использования. Дело в том, что параметры линейной зависимости
и их погрешности могут быть надежно оценены на основе метода,
называемого методом наименьших квадратов.
Курсовая работа состоит в написании программного комплекса,
реализующего метод наименьших квадратов. Описание метода приведено в
теоретической части данной курсовой работы. В практической части
представлены блок-схемы, описание пользовательского интерфейса,
программный код, а также результаты работы программы.
Размещено на http://www.allbest.ru/

ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ

УГС 22000 - Автоматика и управление


Направление подготовки 220700 - Автоматизация технологических
процессов и производств
Профиль подготовки Автоматизация технологических процессов и
производств
Факультет Информационных технологий и управления
Кафедра Системного анализа
Учебная дисциплина ИНФОРМАТИКА
Тема: Разработка программного обеспечения для построения
статистической модели методом наименьших квадратов.
Вариант № 10.
Исходные данные к работе (источники)
Разработать программный комплекс для получения статистической
модели методом наименьших квадратов.
Влияющие факторы:
Скорость счета I радиоактивного элемента 64Cu.
Выходные параметры:
Время счета τ.
Уравнение зависимости скорости счета от времени.

0 . 693⋅τ
T 1 /2
I =I 0⋅e

Экспериментальные данные приведены в таблице:

64
Cu
№  ,ч I имп./мин
1 5 2370
Размещено на http://www.allbest.ru/
2 10 1810
3 15 1390
4 20 1060
5 25 809
6 35 475
7 45 276

По заданной экспериментальной выборке:

- найти значение коэффициентов регрессии T 1 /2 и I 0 , используя

метод наименьших квадратов;


- найти расчетные значения функции I( τ ) ;
- построить таблицу экспериментальных и расчетных значений;

- построить графики функций Ii (τ ) и I pi (τ ) .


В качестве критерия оптимальности выбрать сумму квадратов разности
между экспериментальными и расчетными значениями:

n
S=∑ ( I i −I pi ) 2 → min
i=1 .
Размещено на http://www.allbest.ru/
1. АНАЛИЗ МЕТОДОВ СТАТИСТИЧЕСКОЙ ОБРАБОТКИ
ЭКСПЕРИМЕНТАЛЬНЫХ ДАННЫХ

1.1 Определение параметров линейной зависимости из графика

После нанесения на график экспериментальных точек по ним «на глаз»


проводят прямую. Строят ее таким образом, чтобы точки в среднем
одинаково располагались по обе стороны от прямой. На рис.1 это прямая 1-2.
На ней выбирают две точки (1 и 2) максимально удаленные друг от друга.

Рис. 1.1 - Графическая обработка линейной зависимости

Их координаты х1, y1 и х2, y2 подставляют в (1) для получения двух


уравнений с неизвестными а и b:

y1=ax1+b;
y2=ax2+b,

из которых находят:

y 1− y 2 y ⋅x − y ⋅x
a= b= 2 1 1 2
x1 −x 2 , x 1−x 2 (2)
Размещено на http://www.allbest.ru/

Для оценивания ∆а и ∆b строят две дополнительные прямые


симметричные относительно прямой 1-2, чтобы экспериментальные точки, в
основном, располагались между ними.
Если на графике имеются точки, которые отстоят от основной прямой
1-2 более, чем на утроенное среднее расстояние точек до прямой (это хорошо
заметно уже при рассматривании графика - на рис.1 такой точкой является
точка А), то их отбрасывают и не используют при построении
дополнительных прямых. Соответствующие измерения, скорее всего,
содержат промахи.
Дополнительные прямые определяют «коридор погрешностей»
эксперимента, внутри которого находится исследуемая линейная
зависимость. Предельные случаи хода этой зависимости получатся, если
провести прямые через противоположные углы «коридора» (прямые 4-5 и 6-
7). Тем же способом, что и для основной прямой 1-2, находят параметры
предельных прямых ai, bi и а2, b2. Оценки погрешностей:

|a1 −a 2| |b −b |
Δa= Δb= 1 2
2 , 2

Может оказаться, что теоретическую зависимость между измеряемыми


величинами предполагают линейной, а экспериментальные точки явно не
ложатся на прямую. Проведение по ним прямой, как это сделано на рис 2,
неправомерно. Расхождение между теоретической н экспериментальной
зависимостями свидетельствует о наличии систематических погрешностей,
которые должны быть выявлены и учтены при обработке результатов. Иначе
экспериментатору остается только констатировать расхождение модели с
экспериментом.
Размещено на http://www.allbest.ru/

Рнс. 1.2 - Пример необоснованной интерпретации экспериментальной


зависимости как линейной

Часто линейная зависимость является приближенно справедливой в


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

1.2 Метод парных точек

В некоторых экспериментах основной интерес представляет только


угловой коэффициент зависимости (1). Для оценивания значения
коэффициента и определения его погрешности удобен метод парных точек.
Он заключается в следующем.
После нанесения на график экспериментальных точек из них выбирают
пары, в которых точки отстоят друг от друга примерно на одинаковое
расстояние. Желательно, чтобы это расстояние было максимально
возможным. Через каждую пару проводят прямую, а затем согласно (2)
вычисляют угловые коэффициенты всех прямых. Из получившегося набора
коэффициентов по правилам обработки данных прямых измерении
определяют среднее значение коэффициента и его погрешность. Их
принимают за результат измерения искомого параметра зависимости (1).
Размещено на http://www.allbest.ru/
Например, конкретной обработка данных эксперимента по измерению
сопротивления R участка электрической цепи. Даны измеренные значения
тока I и соответствующие им значения падения напряжения U.
Теоретическое описание исследуемой зависимости дает закон Ома:

U = R·I,

где сопротивление R является угловым коэффициентом линейной


зависимости, проходящей через начало координат. Значит, для его
определения можно воспользоваться методом парных точек. Проставляют
экспериментальные точки на график (рис 3) и нумеруют их по порядку от 1
до 8. Выбирают пары точек 1-5, 2-6, 3-7, 4-8 и заносят их координаты в табл.
1, которую используют для проведения необходимых вычислений.

Рис. 1.3 - Зависимость падения напряжения от тока в цепи

Таблица 1.1 - Обработка данных методом парных точек


Размещено на http://www.allbest.ru/
Вычисляют среднее значение сопротивления:
Размещено на http://www.allbest.ru/

R̄=
∑ Ri
n .

Далее переходят к вычислению дисперсии:

∑ ( R− R̄ )2
σ R̄=
√ n(n−1 ) .

Для n и доверительной вероятности α находят табличный коэффициент


Стьюдента, и домножением на него дисперсии получают ΔR .

Окончательный результат:

R= R̄±ΔR .

Точность измерения сопротивления невелика, что свидетельствует о


наличии значительных экспериментальных погрешностей

1.3 Описание метода наименьших квадратов

Этот метод является одним из наиболее распространенных приемов


статистической обработки экспериментальных данных, относящихся к
различным функциональным зависимостям физических величин яруг от
друга. В том числе, он применим к линейной зависимости и позволяет
получить достоверные оценки ее параметров а и b, а также оценить их
погрешности.
Пусть имеется установка, работающая по принципу «черного ящика».
На входе в данную установку мы можем установить вектор входных
параметров xi, а на выходе из установки измерить вектор выходных
параметров yi, где i=1..n. Число n представляет собой число опытов (рис. 4).
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/

Рис. 1.4 - Изображение исследуемого объекта.

Существование зависимости между двумя наборами величин xi, и yi,


где i=1..n можно определить с помощью коэффициента парной корреляции
rxy, численная величина которого вычисляется по формуле:

n n n
n⋅∑ ( x i⋅y i ) −∑ x i⋅∑ y i
i=1 i=1 i =1
r xy =

√(
n n 2 n n 2
n⋅∑ xi2−
i=1
( ) )(
∑ xi
i =1
⋅ n⋅∑ y 2i −
i =1
(∑ ) )
i=1
yi
(3)

Коэффициент парной корреляции находится в пределах -1≤ rxy ≤+1, то

есть
|r xy|≤1 или r xy ∈ [ 0;1 ] . Чем ближе коэффициент парной корреляции

находится к единице, тем сильнее зависимость yi=f(xi). При равенстве


коэффициента парной корреляции нулю зависимость отсутствует. По
числовому значению коэффициента парной корреляции можно сделать
предположение о виде зависимости.
Если коэффициент парной корреляции по абсолютной величине равен
единице, то существует линейная зависимость yi=a·xi+b (рис. 5).

Рис. 1.5 - Вид линейной зависимости


Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/

Если коэффициент парной корреляции положительный, то с


увеличением аргумента, увеличивается значение функции (рис. 6).

Рис. 1.6 - С увеличением аргумента увеличивается значение функции

При отрицательном коэффициенте парной корреляции с увеличением


аргумента, уменьшается значение функции (рис. 7).
программный комплекс скриншот еxcel

Рис. 1.7 – С увеличением аргумента уменьшается значение функции

В случае существования зависимости между входными и выходными


параметрами объекта исследования ищется уравнение регрессии. Для поиска
уравнения регрессии используется метод наименьших квадратов.
Суть метода наименьших квадратов заключается в следующем.
Предполагается, что зависимость между величинами является линейной:
yi=a·xi+b и сумма квадратов отклонений расчетных значений от
экспериментальных - должна быть минимальной.
Расчетное значение запишем в следующем виде:
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/

y pi =a⋅xi +b (4)

Сумму квадратов отклонений расчетных значений от


экспериментальных запишем в виде:

n
S=∑ ( y i− y pi )2 →min
i=1 (5)

В выражение (5) подставим уравнение регрессии (4) и получим:

n
S=∑ ( y i−a⋅x i−b )2 →min
i=1 (6)

Известно, что экстремум функции достигается тогда, когда первая


производная равна нулю. В нашем случае имеются два неизвестных: a и b. По
данным коэффициентам возьмем две частные производные:

{
∂S
=2⋅∑ ( yi −a⋅xi −b )⋅(− xi )=0 ¿ ¿¿¿
∂a i=1
(7)

Разделим оба уравнение системы (5) на -2. В результате, раскрыв


скобки, получим систему из двух линейных уравнений с двумя неизвестными
a и b:

n n n n

{ ;
{
∑ (xi⋅yi−a⋅x2i −b⋅xi )=0 ¿ ¿¿¿ ∑ (xi⋅yi )−∑ (a⋅x2i )−∑ (b⋅xi)=0 ¿ ¿¿¿
i=1 i=1 i=1 i=1
Размещено на http://www.allbest.ru/

n n n

{a⋅∑ x2i +b⋅∑ xi=∑ (xi⋅yi ) ¿ ¿¿¿


i=1 i=1 i=1 (8)

Данная система может быть решена с помощью метода Крамера.


Главный определитель системы ∆ равен:

n n
∑ x 2i ∑ xi n n 2
Δ=|i=1
n
∑ xi
i=1

n
|=n⋅∑
i=1
x 2i −
(∑ )
i=1
xi

i=1

Коэффициенты при неизвестном a и b заменяем столбцом свободных


членов, получаем определители:

n n
∑ ( x i⋅y i ) ∑ x i n n n
i=1 i=1
Δ a =| n
|=n⋅∑ ( x i⋅y i ) −∑ x i⋅∑ y i
i=1 i =1 i=1
∑ yi n
i=1 и
n n
∑ x 2i ∑ ( xi⋅y i ) n n n n
Δ b =|i =1
n
i =1
n
|=∑ x 2i ⋅∑ y i−∑ xi⋅∑ ( x i⋅y i )
i=1 i=1 i=1 i=1
∑ xi ∑ yi
i =1 i =1

Вычисляем коэффициенты по правилу Крамера:


Размещено на http://www.allbest.ru/
n n n

{
a= =
Δ
Δa
n⋅∑ ( x i⋅y i )−∑ x i⋅∑ y i
i=1
n

i=1
n

( )
n⋅∑ x 2i − ∑ x i
i=1
i=1
2
i=1
¿ ¿¿¿

(9)
Размещено на http://www.allbest.ru/

Таким образом, получены коэффициенты уравнения регрессии


ypi=a·xi+b.
Уравнение регрессии (4) может адекватно описывать процесс только в
интервале экспериментальных значений, с помощью которых вычислялись
коэффициенты уравнения регрессии:

min( x эi ,i=1..n )≤x i≤max( x эi ,i=1..n ) .

Для оценки адекватности модели, на практике могут быть


использованы следующие оценки: корреляционное отношение η и средняя
относительная ошибка ε:


η= 1− i=1n
∑ ( y эi− y рi )2

∑ ( y эi− y ) 2
i =1 , (10)

n
1
ȳ= ∑y
где n i=1 эi - среднее значение выходного параметра.

100 y −y
ε= ∑ | эi рi |
n y эi (11)

В настоящее время существует ряд нелинейных зависимостей, которые


могут быть приведены к линейному виду yi=a·xi+b. Операция приведения
нелинейной зависимости к линейному виду называется линеаризацией.
Вариант 10. Определить начальную скорость счета I0 и период
полураспада T1/2 радиоактивного элемента по зависимости скорости счета от
времени:
Размещено на http://www.allbest.ru/

0 , 693⋅τi
T 1/ 2
I i =I 0⋅e , i=1.. n (12)

Приведем нелинейное уравнение (12) к линейному виду.


Прологарифмируем обе части уравнения:

0 , 693 τ i
ln( I i )=ln( I 0 )+
T 1/2

Проведем замену переменных:

0 , 693
y i=ln( I i ), b=ln(I 0 ), a= , x i=τ i
T 1/2 ,

в результате получим уравнение yi=b+a·xi или yi=a·xi+b.


Таким образом, для того, чтобы найти предэкспоненциальный
множитель - начальную скорость счета I0 и период полураспада T1/2
радиоактивного элемента, необходимо проделать следующие действия:

1. yi=ln(Ii), xi=τi;
n n n n n n n
n⋅∑ ( x i⋅y i )−∑ x i⋅∑ y i ∑ x 2i ⋅∑ y i−∑ xi⋅∑ ( x i⋅y i )
i=1 i=1 i=1
a= n n
b= i=1 i=1
n
i=1
n
i=1

n⋅∑ x 2i −( ∑ x i )2 n⋅∑ x 2i −( ∑ x i )2
2. i =1 i =1 , i=1 i=1 (13)

Кроме этого, следует вычислить среднеквадратические ошибки a и b.


Находим дисперсию:
Размещено на http://www.allbest.ru/
n n 2

2
σ =
1

[
n( n−2) i=1
n
2
n

i=1
2
n ∑ y i −( ∑ y i ) −
[∑
n x i⋅y i −∑ x i⋅∑ y i

n
i =1
n
n ∑ x2i −( ∑ xi )2
i=1 i=1
i=1
]
] (14)
Размещено на http://www.allbest.ru/

Далее находим дисперсию параметра a:

nσ 2
σ 2a = n n
n ∑ x 2i −( ∑ x i )2
i =1 i =1 (15)

После этого находим дисперсию параметра b:

n
1
σ 2b = ∑ x2i ⋅σ 2a
n i=1 (16)

Согласно ГОСТ Р 8.736 доверительная вероятность P=0,95. При такой


вероятности P и количестве измерений n=7 количество степеней свободы f=6,
значит коэффициент Стьюдента (таблица) равен t=2,44691184879, тогда
домножив дисперсии параметров a и b на коэффициент Стьюдента найдем
абсолютные ошибки для a и b.

a=a±σa·t
b=b±σb·t
3. I0=eb, T1/2=0,693/а (17)
0 , 693 τ i
I pi=I 0⋅e
4. T 1/2 .

Следует отметить, что погрешность метода наименьших квадратов в


полтора раза меньше, чем у метода парных точек.
Размещено на http://www.allbest.ru/
2. ПРАКТИЧЕСКАЯ ЧАСТЬ

2.1 Блок-схема программного комплекса

Для программы Microsoft Visual Studio:


Размещено на http://www.allbest.ru/

Рис. 2.1
Размещено на http://www.allbest.ru/

Для программы Microsoft Excel:

Рис. 2.2

2.2 Инструкция пользователя программного комплекса

Для программы Microsoft Visual Studio:


Вводим количество экспериментальных данных n.
Вводим экспериментальные данные τ и I.
Нажимаем кнопку построить график.

Получаем таблицу расчетных данных, искомые a, b, T 1 /2 и I0 , а

также построенные графики функций I(τ) и Iрi(τ).


Размещено на http://www.allbest.ru/
Для программы Microsoft Excel:
Записываем экспериментальные τ и I данные в таблицу
Строим график функции I(τ) и линию тренда

Рис. 2.3

Создаем расчетные ячейки относительно экспериментальных данных, а


именно, присваиваем xi=τi, yi=Ln(Ii)
Делаем вспомогательные расчеты: xi· xi; xi·yi и yi· yi
Вычисляем суммы всех расчетных данных:

n n n n n
∑ xi ∑ yi ∑ x 2i ∑ x i⋅y i ∑ y 2i
i=1 , i=1 , i=1 , i=1 , i=1

Получаем следующую таблицу:

№ τ, ч I, имп./мин. х, ч y х*х х*y y*y


1 5 2370 5 7,77 25 38,85 60,38
2 10 1810 10 7,50 100 75,01 56,27
3 15 1390 15 7,24 225 108,56 52,38
4 20 1060 20 6,97 400 139,32 48,53
5 25 809 25 6,70 625 167,39 44,83
6 35 475 35 6,16 1225 215,72 37,99
7 45 276 45 5,62 2025 252,92 31,59
сумма 155 47,95 4625 997,77 331,96

Находим по формулам (13) a и b


2 2
Находим дисперсии σ2, σ a , σ b по формулам (14), (15),(16)
Размещено на http://www.allbest.ru/
Находим абсолютные ошибки для a и b

Находим значение коэффициентов регрессии T 1 /2 и I 0 по формулам


(17)
Строим график функции Iрi(τ)

Рис. 2.4

2.3 Скриншоты рабочей программы

Скриншоты из программы Microsoft Visual Studio

Рис. 2.5
Размещено на http://www.allbest.ru/

Рис. 2.6

Рис. 2.7

Рис. 2.8

Скриншоты из программы Microsoft Excel


Размещено на http://www.allbest.ru/

Рис. 2.9

Рис. 2.10

Рис. 2.11
Размещено на http://www.allbest.ru/

Рис. 2.12

2.4 Программный код

Public Class Form1


Dim x() As Single
Dim I() As Double
Dim Y() As Double
Dim n As Integer
Dim f() As Double
Dim j As Integer
Dim S1 As Double
Dim S2 As Double
Dim S3 As Double
Dim S4 As Double
Dim S5 As Double
Dim a As Double
Dim b As Double
Dim RowI As Integer
Dim ColI As Integer
Dim sigma As Double
Размещено на http://www.allbest.ru/
Dim sigmaA As Double
Dim sigmaB As Double
Dim absalutA As Double
Dim absalutB As Double
Dim I0 As Double
Dim T1_2 As Double
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
'n = CSng(InputBox("Введите число n = "))
n = CSng(TextBox6.Text)
ReDim x(n)
ReDim I(n)
ReDim Y(n)
AxMSFlexGrid1.Col = 1 'первый столбец
AxMSFlexGrid1.Row = 0 'шапка
AxMSFlexGrid1.Text = "час" 'заголовок в табл
'ввод τ
For j As Integer = 1 To n
x(j) = CSng(InputBox("Введите число t(" & j & ")"))
''''''''''''''''' TextBox1.Text = TextBox1.Text + CStr(x(j)) + vbCrLf
AxMSFlexGrid1.Col = 1
AxMSFlexGrid1.Row = j ' - 1
AxMSFlexGrid1.Text = CStr(x(j))
'номера строк-----------------------
AxMSFlexGrid1.Row = j
AxMSFlexGrid1.Col = 0
AxMSFlexGrid1.Text = CStr(j)
Next
AxMSFlexGrid1.Col = 2 '2й столбец
AxMSFlexGrid1.Row = 0 ' шапка
Размещено на http://www.allbest.ru/
AxMSFlexGrid1.Text = "имп./мин" 'заголовок табл
'ввод I
For j As Integer = 1 To n
I(j) = CSng(InputBox("Введите число I(" & j & ")"))
'''''''''''''''''''''''''' TextBox2.Text = TextBox2.Text + CStr(I(j)) + vbCrLf
'AxMSFlexGrid1.Col = 2
AxMSFlexGrid1.Row = j ' - 1
AxMSFlexGrid1.Text = CStr(I(j))
Y(j) = Math.Log(I(j))
Next
myFunction()
End Sub
Private Sub myFunction()
S1 = 0
S2 = 0
S3 = 0
S4 = 0
S5 = 0
AxMSFlexGrid1.Row = 0
AxMSFlexGrid1.Col = 3
AxMSFlexGrid1.Text = "x" 'S1
AxMSFlexGrid1.Col = 4
AxMSFlexGrid1.Text = "y" 'S2
AxMSFlexGrid1.Col = 5
AxMSFlexGrid1.Text = "x*y" 'S3
AxMSFlexGrid1.Col = 6
AxMSFlexGrid1.Text = "x^2" 'S4
AxMSFlexGrid1.Col = 7
AxMSFlexGrid1.Text = "y^2" 'S5
For j As Integer = 1 To n
Размещено на http://www.allbest.ru/
AxMSFlexGrid1.Row = j
AxMSFlexGrid1.Col = 3
S1 = x(j) + S1
AxMSFlexGrid1.Text = CStr(Math.Round(x(j), 2))
AxMSFlexGrid1.Col = 4
S2 = S2 + Y(j)
AxMSFlexGrid1.Text = CStr(Math.Round(Y(j), 2))
AxMSFlexGrid1.Col = 5
S3 = S3 + x(j) * Y(j)
AxMSFlexGrid1.Text = CStr(Math.Round(x(j) * Y(j), 2))
AxMSFlexGrid1.Col = 6
S4 = S4 + x(j) ^ 2
AxMSFlexGrid1.Text = CStr(Math.Round(x(j) ^ 2, 2))
AxMSFlexGrid1.Col = 7
S5 = S5 + Y(j) ^ 2
AxMSFlexGrid1.Text = CStr(Math.Round(Y(j) ^ 2, 2))
Next
AxMSFlexGrid1.Row = n + 1
AxMSFlexGrid1.Col = 0
AxMSFlexGrid1.Text = "сумма"
AxMSFlexGrid1.Col = 3
AxMSFlexGrid1.Text = CStr(Math.Round((S1), 2)) 'округляем до второго
числа
AxMSFlexGrid1.Col = 4
AxMSFlexGrid1.Text = CStr(Math.Round((S2), 2))
AxMSFlexGrid1.Col = 5
AxMSFlexGrid1.Text = CStr(Math.Round((S3), 2))
AxMSFlexGrid1.Col = 6
AxMSFlexGrid1.Text = CStr(Math.Round((S4), 2))
AxMSFlexGrid1.Col = 7
Размещено на http://www.allbest.ru/
AxMSFlexGrid1.Text = CStr(Math.Round((S5), 2))
'-----------------------формулы----------------------
a=0
b=0
a = (n * S3 - S1 * S2) / (n * S4 - S1 ^ 2)
b = (S4 * S2 - S1 * S3) / (n * S4 - S1 ^ 2)
' --------------------------------------------------
TextBox4.Text = CStr(a) ' вывод a
TextBox5.Text = CStr(b) 'вывод b
ReDim f(n)
TextBox3.Text = "" 'ОЧИСТИТЬ
For j As Integer = 1 To n
f(j) = a * x(j) + b
TextBox3.Text = TextBox3.Text + CStr(f(j)) + vbCrLf
Next
'расчет дисперсии
sigma = (1 / (n * (n - 2))) * (n * S5 - S2 ^ 2 - ((n * S3 - S1 * S2) ^ 2) / (n *
S4 - S1 ^ 2)) ' Math.Sqrt корень
'вывод сигма ^2
TextBox8.Text = CStr(sigma)
'---------------------------дисперсия параметра a и b-----------------
sigmaA = (n * sigma) / (n * S4 - S1 ^ 2)
sigmaB = ((1 / n) * S4 * sigmaA)
TextBox9.Text = CStr(sigmaA)
TextBox10.Text = CStr(sigmaB)
'---------------------------------------------------------
absalutA = Math.Sqrt(sigmaA) * CSng(TextBox11.Text)
absalutB = Math.Sqrt(sigmaB) * CSng(TextBox11.Text)
Label11.Text = CStr(a) + " +/- " + CStr(absalutA)
Label12.Text = CStr(b) + " +/- " + CStr(absalutB)
Размещено на http://www.allbest.ru/
I0 = Math.Exp(b)
T1_2 = 0.693 / a
TextBox12.Text = CStr(I0)
TextBox13.Text = CStr(T1_2)
End Sub
Private Sub TextBox6_TextChanged(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles TextBox6.TextChanged
If TextBox6.Text <> "" Then
AxMSFlexGrid1.Rows = CInt(TextBox6.Text) + 2 '+1тк верхняя строка
серая +1 для сумм
End If
End Sub
Private Sub AxMSFlexGrid1_DblClick(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles AxMSFlexGrid1.DblClick
End Sub
Private Sub TextBox7_TextChanged(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles TextBox7.TextChanged
End Sub
Private Sub AxMSFlexGrid1_ClickEvent(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles AxMSFlexGrid1.ClickEvent
TextBox7.Text = AxMSFlexGrid1.Text 'окно для редактирования данных
табл
RowI = AxMSFlexGrid1.Row 'номер строки
ColI = AxMSFlexGrid1.Col ' номер столбца
If TextBox7.Text <> "" And (ColI = 1 Or ColI = 2) Then 'если первый или
2й столбец то окошко редактирования и кнопка активны
TextBox7.Enabled = True
Button4.Enabled = True
Else : TextBox7.Enabled = False
Button4.Enabled = False
Размещено на http://www.allbest.ru/
End If
' строка состояния
ToolStripStatusLabel1.Text = "строка=" + CStr(RowI) + " " + "столбец=" +
CStr(ColI)
End Sub
Private Sub Button4_Click_1(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button4.Click
'редактирование таблицы
If TextBox7.Text <> "" And (ColI = 1 Or ColI = 2) Then
AxMSFlexGrid1.Row = RowI
AxMSFlexGrid1.Col = ColI
If ColI = 1 Then '1й столбец x
x(RowI) = CSng(TextBox7.Text)
AxMSFlexGrid1.Text = TextBox7.Text
End If
If ColI = 2 Then ' второй столбец I
I(RowI) = CSng(TextBox7.Text)
AxMSFlexGrid1.Text = TextBox7.Text
End If
myFunction() 'процедура расчета
Else : TextBox7.Text = ""
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button3.Click
'--------------------------------------------------------
Chart1.Series.Clear()
Chart1.Series.Add("(Ipi;τ)")
Chart1.Series.Add("Ipi(τ)")
Chart1.ChartAreas("ChartArea1").AxisX.Title = "τ, ч."
Размещено на http://www.allbest.ru/
Chart1.ChartAreas("ChartArea1").AxisY.Title = "Ipi, имп./мин."
Chart1.Series("Ipi(τ)").ChartType =
DataVisualization.Charting.SeriesChartType.Spline
Chart1.Series("(Ipi;τ)").ChartType =
DataVisualization.Charting.SeriesChartType.FastPoint
Chart1.Series("(Ipi;τ)").Color = Color.Red
Chart1.Series("Ipi(τ)").Color = Color.Blue
Chart1.Series("(Ipi;τ)").BorderWidth = 3
Chart1.Series("Ipi(τ)").BorderWidth = 2
For j As Integer = 1 To n
Chart1.Series("(Ipi;τ)").Points.AddXY(x(j), Y(j))
Chart1.Series("Ipi(τ)").Points.AddXY(x(j), f(j))
Next
'----------------------------------------------------------------
'---------------------ЭКСПЕРЕМЕНТАЛЬНЫЕ ДАННЫЕ
Chart2.Series.Clear()
Chart2.Series.Add("(I;τ)")
'Chart2.Series.Add("f(x)")
Chart2.ChartAreas("ChartArea1").AxisX.Title = "τ, ч."
Chart2.ChartAreas("ChartArea1").AxisY.Title = "I, имп./мин." ', f(x)"
'Chart2.Series("f(x)").ChartType =
DataVisualization.Charting.SeriesChartType.Spline
Chart2.Series("(I;τ)").ChartType =
DataVisualization.Charting.SeriesChartType.FastPoint
Chart2.Series("(I;τ)").Color = Color.Red
'Chart2.Series("f(x)").Color = Color.Blue
Chart2.Series("(I;τ)").BorderWidth = 3
' Chart2.Series("f(x)").BorderWidth = 2
For j As Integer = 1 To n
Chart2.Series("(I;τ)").Points.AddXY(x(j), I(j))
Размещено на http://www.allbest.ru/
' Chart2.Series("f(x)").Points.AddXY(x(j), f(j))
Next
End Sub
End Class
Размещено на http://www.allbest.ru/
ВЫВОДЫ

В процессе работы над курсовой работой проведен анализ методов


статистической обработки экспериментальных данных. Разработано
программное обеспечение для построения статистической модели методом
наименьших квадратов в программах Microsoft Visual Studio и Microsoft
Excel. Совпадение результатов двух программ доказывает правильность
написания программного обеспечения.
Размещено на http://www.allbest.ru/
ЛИТЕРАТУРА

1. ГОСТ Р 8.736-2011 «Государственная система обеспечения единства


измерений. Измерения прямые многократные. Методы обработки результатов
измерений. Основные положения».
2. Агапьев Б.Д., Белов В.Н., Кесаманлы Ф.П., Козловский В.В., Марков С.И.
Обработка экспериментальных данных. Учеб. пособие. – СПб.: АОЗТ
«Констрой». – 84 с.
3. Симонович, С.В. Информатика. Базовый курс: Учебник для вузов / С.В.
Симонович.- СПб.: Питер, 2011. - 640 с.
4. Информатика: учебник под редакцией В.В. Трофимова. Электронные
текстовые данные. – М: Юрайт, 2012. – 911 с. (ЭБ)
5. Шапорев, С.Д. Информатика. Теоретический курс и практические занятия /
С.Д. Шапорев. - СПб.: БХВ, 2008. - 469 с.

Размещено на Allbest.ru

Оценить