3 Кодирование программы в среде программирования
3.1 Разработка структуры программы
Программа разрабатывалась в среде программирования Microsoft Visual Studio 2015 на основе схем алгоритмов, описанных в предыдущем разделе.
В состав программы входят следующие функции:
1)Сохранение результатов в файл путём вызова метода, реализующего сохранение;
2)Загрузка исходных данных;
3)Функции для расчёта исходных данных;
Проект приложения включает в себя:
1) MyForm.cpp, MyForm.h – главные файлы проекта, описывающие форму и работу программы;
3.2 Разработка интерфейса пользователя
Интерфейс в программе состоит из:
1) графика;
2) кнопок для расчёта, загрузки и сохранения данных;
3) полей для ввода исходных данных;
4) таблица.
Рисунок 3.1 - Интерфейс программы
3.3 Программирование ввода-вывода данных
Вывод данных реализован на главную форму и запись точек интерполяции в таблицу. Схема вывода данных представлена на рисунке 2.2.
3.4 Программная реализация численного метода
Код численного метода:
n = (b - a) / h;
_X = new double[n+1];
_Y = new double[n+1];
yy = new double[n+1];
for (int i = 0; i <= n; i++) {
_X[i] = a + h*i;
_Y[i] = f(_X[i]);
}
yy[0] = (-3 * _Y[0] + 4 * _Y[1] - _Y[2]) / h;
for (int i = 1; i < n; i++) {
yy[i] = (_Y[i + 1] - _Y[i - 1]) / 2 / h;
}
yy[n] = (3 * _Y[n] - 4 * _Y[n - 1] + _Y[n - 2]) / 2 / h;
Исходный код программы см. в приложении А.
4 Тестирование работоспособности программы
4.1 Описание аппаратной конфигурации для тестирования
Тестирование разработанного приложения выполнялась на персональном компьютере под управлением операционной системы Windows 10 Pro со следующими характеристиками аппаратной части:
1) тип центрального процессора AMD Ryzen 3550H:
- техпроцесс 12 нм;
- число ядер - 4;
- тактовая частота процессора – 3700 МГц;
- частота шины 2x133 МГц
- величина напряжения ядра – 35 В;
- наименование системного разъема– Socket AM4;
- объем кэша данных: L1 = 384; L2 = 2MB; L3 =4 Мб.
2) системная плата AMD CZ FCH с параметрами:
- форм-фактор ATX;
- тип интерфейса подключения видеоадаптера –DVI;
- максимальный объем оперативной памяти – 32Гб;
- интерфейс подключения жесткого диска– PCI-Express. установлен модуль оперативной памяти DDR-4 объёмом 8 ГБ;
3) типы внешней памяти компьютера:
- тип жесткого диска –Kingston SSD;
- максимальный объем в 256 ГБ;
- интерфейс подключения: PCI-Express.
4.2 Тестирование разработанной программы
Для тестирования программы используется функция:
Согласно принятой форме в программе задаются следующие исходные данные:
1) начало интервала ;
2) конец интервала
3) Шаг .
Рисунок 4.1 - Результат расчёта программой
Время расчета составило менее 1 с.
Результаты расчета в виде текстового файла приводятся в Приложении Б.
4.3 Решение задачи в математической системе Mathcad
Для тестирования программы использовался Mathcad 15.
Заданы те же исходные данные, что и в пункте 4.2.
Рисунок 4.2 График решения в Mathcad
Полное решение приводится в приложении В.
4.4 Решение задачи в математической системе MATLAB
Для тестирования программы использовался MATLAB R2017a.
Использовались те же исходные данные, что и в п.4.2.
Код файла представлен в Приложении Г.
Рисунок 4.3 - Результат расчёта в MATHLAB
4.5 Анализ результатов тестирования
Результаты расчёта выводились на графики и записывались в таблицу. Значения, рассчитанные программой и построение графиков, было одинаковое во всех трёх пунктах, следовательно программа выполняет расчёт верно.