Министерство образования и науки Российской Федерации
Государственное образовательное учреждение высшего профессионального образования
«Комсомольский – на – Амуре государственный технический университет »
Институт ИКПМТО
Кафедра Технологии машиностроения
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовому проекту
Расчетная методика проектирования программного комплекса
Студент группы 5МС-1 З.С. Асотова
2006
Содержание
Введение
1. Постановка и анализ задачи
1.1 Потребность в идентификации распределения погрешностей
1.2 Оптимальное число интервалов группирования экспериментальных данных
2. Проектирование программного комплекса
3. Кодирование программы
3.1 Модуль Math
3.2 Модуль 1
3.3 Модуль 2
3.4 Модуль 3
3.5 Модуль 4
Заключение
Приложение А
Приложение Б
Приложение В
Приложение Г
Приложение Д
Список использованных источников
Введение
Информационные технологии занимают уникальное положение и стали неотъемлемой частью нашей повседневной деятельности. Информационные системы - область науки и техники, без знания которой невозможно дальнейшее развитие современного общества. В отличие от других научно-технических достижений средства вычислительной техники и информатики применяются практически во всех сферах интеллектуальной деятельности человека, способствуя прогрессу в технике и технологии. Конечно, освоение уже имеющихся и хорошо себя зарекомендовавших программных систем и основанных на них технологий - важная и необходимая задача. Нужно создавать необходимые условия для развития в нашей стране исследований в области информационных технологий и реализации их результатов в практических системах и различных приложениях.
1. Постановка и анализ задачи
Целью данной работы является разработка программы на языке программирования Delphi для идентификации формы закона распределения погрешностей экспериментальных данных.
1.1 Потребность в идентификации распределения погрешностей
Обоснованное решение многих задач требует идентификации формы распределения погрешностей.
Эта идентификация нужна, т.к. рассеяние многих оценок зависит от формы закона распределения. Для обеспечения одной и той же погрешности в определении оценки при одном законе можно ограничиться достаточно малой выборкой, в то время как при другом – выборка исходных данных должна быть значительно больше. Из этого следует, что знание вида закона распределения необходимо для определения одних параметров закона распределения через другие его параметры. Изменение вида закона распределения погрешностей может служить признаком какого-либо изменения условий проведения измерений.
Экспериментальные данные о разнообразии форм распределения погрешностей измерений накоплены в достаточном количестве. В результате этого факт разнообразия законов распределения погрешностей был признан законодательно. 1 января 1974 г. был введен в действие ГОСТ 8.011 – 72, устанавливающий, что при сообщении размера погрешности результата измерения целесообразно указывать вид распределения. Так же были стандартизованы модели равномерного, трапецеидального, треугольного, нормального и двухмодальных распределений.
Надо заметить, что возможность идентификации формы распределения экспериментальных данных ограничена, прежде всего, малостью объема выборки. При большом объеме выборки, например в несколько тысяч наблюдений, построение гистограммы часто позволяет получить достаточно плавную кривую, которая отражает все характерные особенности наблюдаемого закона. Другими словами, более тонкая идентификация формы распределения возможна лишь при соответствующем увеличении объема выборки экспериментальных данных.
Следовательно, можно сделать вывод о том, что имеет большое значение накопление данных и составление каталога распределения погрешностей различных средств измерений (датчиков, приборов), широко применяемых методов измерений, для того чтобы этими данными можно было затем пользоваться даже при наличии малых серий измерений.
1.2 Оптимальное число интервалов группирования экспериментальных данных
Для определения медианы, сгибов, других квантилей, использования критерия согласия Колмогорова-Смирнова или для обнаружения промахов экспериментальные данные необходимо расположить в порядке возрастания, т.е. построить вариационный ряд (упорядоченную выборку).
Для определения формы распределения просто упорядоченной выборки недостаточно, она должна быть представлена в виде гистограммы, состоящей из m столбцов с определенной протяженностью d соответствующих им интервалов. Принято делать эти интервалы одинаковыми. Существует оптимальное число интервалов группирования, когда ступенчатая огибающая гистограммы наиболее близка к плавной кривой распределения. При группировании данных в слишком большое число мелких интервалов гистограмма будет отличаться от плавной кривой распределения вследствие изрезанности многими всплесками и провалами (некоторые интервалы окажутся пустыми или мало заполненными), т.е. будет иметь «гребенчатый» вид. Но при слишком малом числе m интервалов характерные особенности будут потеряны вследствие слишком крупной ступенчатости. Таким образом, оптимальным числом m интервалов является такое, когда максимальное возможное сглаживание случайных данных сочетается с минимальным искажением от сглаживания самой кривой искомого распределения. Для распределения погрешностей одним из практических признаков приближения к оптимуму может служить в гистограмме провалов. Близким к оптимальному считается наибольшее m, при котором гистограмма еще сохраняет плавный характер.
2 Проектирование программного комплекса
В данной работе будет использовано 5 модулей и 4 формы.
Первая форма (mainForm) должна отражать дружественный интерфейс, вариационный ряд чисел, количество этих чисел, оценку центра, количество столбцов и две кнопки. Button1 будет называться «Гистограмма», Button2 – «Рассчитать».
При нажатии кнопки Button2 рассчитываются min и max числа ряда, ширина интервала и количество попаданий чисел в интервалы. Для пользователя выводятся на экран варианты количества столбцов для дальнейшего построения гистограммы. По умолчанию предлагается максимальное количество.
В Delphi имеется два компонента, представляющие меню: MainMenu – главное меню
, и PopupMenu – всплывающее меню (страница Standard).Основное свойство компонентов Items. Его заполнение производится с помощью конструктора меню. Расположим на форме эти компоненты.
1) Двойным щелчком по компоненту MainMenu1 вызовем редактор меню.
2) Задаем свойству Caption значение Файл.
3) Щелчком мышью ниже пункта меню Файл создаем новый пункт Открыть.
4) Аналогичным способом создаем все пункты меню Файл.
5) Аналогичным способом создаем все пункты меню Правка.
6) Аналогичным способом создаем все пункты меню ?
7) Добавляем на форму компонент ImageList1 и заносим в него иконки для пунктов меню. Используя свойство Images компонента MainMenu1, связываем меню с набором иконок. Для некоторых пунктов меню, используя свойство ImageIndex, задаем иконки.
При нажатии кнопки Button1 открывается вторая форма (grafic), которая отображает графики (гистограмма исходных данных, симметрированная гистограмма и полигон). Для удобства внизу формы расположены флажки (CheckBox1, CheckBox2, CheckBox3), а они в свою очередь на панели (компонент GroupBox1). Эти флажки можно как включать так и отключать. По умолчанию, при открытии формы, они активированы.
Открывая пункт меню «О программе» появляется третья форма (о программе). На нее помещен компонент Image1 (данная картинка отображает суть программы), кнопка «ОК» (компонент Button1) и краткие данные.
Открывая пункт меню «Справка» появляется четвертая форма (справка). На которую помещен компонент Memo1, в котором отображено как пользоваться данной программой.
3. Кодирование программы
3.1 Модуль Math
В данном модуле мы описываем все свои математические действия. Здесь мы рассчитываем ширину интервала, количество интервалов, max, min.
Код модуля приведен в приложении А.
3.2 Модуль 1
Первый модуль связан непосредственно с первой формой, о которой говорилось выше. Здесь мы описываем дружественный интерфейс, вывод вариационного ряда в компонент Memo1. Причем, нужно учесть, что в файле, где сохранены числа первым указана оценка центра Хс, его мы выводим на форму в Label3. Так же мы описываем здесь расчеты, которые программа выполняет при нажатии на кнопку Button2 и Button3. Описана связь первой формы со второй.
Код модуля приведен в приложении Б.
3.3 Модуль 2
В данном модуле программа рассчитывает и строит графики. Связан с модулем 1 и модулем Math
Код модуля приведен в приложении В.
3.4 Модуль 3
Этот модуль описывает третью форму, связан с первым модулем.
Код модуля приведен в приложении Г.
3.5 Модуль 4
Данный модуль прилагается к четвертой форме, на которой располагается справка.