Содержание
ОГЛАВЛЕНИЕ
Введение3
I.Особенности интегрирования систем уравнений6
II.Методы численного интегрирования уравнений второго порядка21
III.Оптимизация распределения узлов интегрирования26
Заключение30
Список использованной литературы32
Приложение133
Приложение234
Приложение335
Приложение436
Приложение538
Выдержка из текста работы
Информатика является основной базой для проведения научно-исследовательских и проектно-технических работ в современной промышленности. С помощью аппаратно-программных комплексов выполняются как научно-технические расчёты, так и информационный и пакетный поиск данных по необходимой тематике.
Согласно заданию, цель данной курсовой работы — Разработки программы численного интегрирования обыкновенного дифференциального уравнения явным многошаговым методом Адамса третьего порядка точности в среде программирования Borland C++Builder для персонального компьютера.
1 Описание поставленной задачи
1.1 Краткая характеристика численного метода
Обыкновенным дифференциальным уравнением (ОДУ) n-го порядка называется следующее уравнение, которое содержит одну или несколько производных от искомой функции y(x):
G(x,y,y^,…,y^((n-1) ),y^((n) ) )=0
В ряде случаев дифференциальное уравнение можно преобразовать к виду, в котором старшая производная выражена в явном виде. Такая форма записи называется уравнением, разрешенным относительно старшей производной (при этом в правой части уравнения старшая производная отсутствует):
Именно такая форма записи принята в качестве стандартной при рассмотрении численных методов решения ОДУ.
Линейным дифференциальным уравнением называется уравнение, линейное относительно функции у (х) и всех ее производных.
Например, ниже приведены линейные ОДУ первого и второго порядков
Решением обыкновенного дифференциального уравнения называется такая функция у (х), которая при любых х удовлетворяет этому уравнению в определенном конечном или бесконечном интервале. Процесс решения дифференциального уравнения называют интегрированием дифференциального уравнения
Общее Решение ОДУ n-го порядка содержит n произвольных Констант C1, C2, …, Cn
Это очевидно следует из того, что неопределенный интеграл равен первообразной подынтегрального выражения плюс константа интегрирования
Так как для решения ОДУ n-го порядка необходимо провести н интегрирований, то в общем решении появляется n констант интегрирования.
Частное решение ОДУ получается из общего, если константам интегрирования придать некоторые значения, определив некоторые дополнительные условия, количество которых позволяет вычислить все неопределенные константы интегрирования.
Многошаговые методы численного интегрирования
Данные методы используют для определения каждой последующей точки не одно, а несколько значений функции в предыдущих точках интегрирования. В отличие от одношаговых методов многошаговые не обладают свойством самостартования, поэтому перед запуском вычислений необходимо рассчитать требуемое число первых точек искомой функции при помощи одношагового метода, а только потом по этим значениям реализовать процесс интегрирования многошаговым методом. Исходные данные и результаты расчета при многошаговом методе интегрирования аналогичны данным одношаговых методов. Однако для определения текущих значений точек искомой функции в процессе интегрирования необходимо сформировать два одномерных массива: для аргумента — MX и функции — MY. В этих массивах первый (нулевой) элемент соответствует текущей искомой (n-ной) точке, первый — предыдущей (n-1)-вой, второй — (n-2)-ой точке, которая стоит впереди текущей на два шага интегрирования, третий — (n-3)-ей точке, отстоящей на три шага интегрирования, и так до последней точки, учитываемой конкретным методом.
1.2 Анализ литератур и программ, патентный поиск
В настоящее время методы Адамса являются одними из перспективных численных методов интегрирования для решения задачи Коши. Доказано, что при применении многошаговых численных методов Адамса для решения задачи Коши до 12 порядка область устойчивости уменьшается. При дальнейшем увеличении порядка область устойчивости, а также точность метода возрастает. Кроме того, при одинаковой точности для многошаговых методов на одном шаге интегрирования требуется меньше вычислений правых частей дифференциальных уравнений, чем в методах Рунге-Кутты. К достоинствам методов Адамса относится и то обстоятельство, что в них легко меняется шаг интегрирования и порядок метода.
На практике широко используются два типа методов Адамса — явные и неявные. Явные методы известны как методы Адамса-Бэшфорта, неявные — как методы Адамса-Мултона.
1.3 Формирование требований к программе
Разработанная программа должна удовлетворять следующим требованиям:
тип операционной системы –Windows 10/7/XP
формат файла исходных данных – текстовый
формат вывода результатов расчёта:
— таблица результата расчёта искомой функции
4) формат файла справки – html.
2 Проектирование схем алгоритмов
2.1 Разработка алгоритма головной программы
Схема алгоритма головной программы описывает общий сценарий работы разрабатываемого приложения. В составе проекта приложения предусматривается 3 формы:
1) главная форма приложения;
2) форма отображения таблицы результатов расчета;
3) форма построения графика решения ОДУ;
При запуске приложения отображается главная форма, на которой находятся управляющие элементы: главное меню и кнопки инструментов, таблица ввода исходных данных. В схеме головного алгоритма предусматривается обработка следующих событий (нажатие соответствующей кнопки или выбор пункта главного меню):
1) принятие исходных данных;
2) решение ОДУ численным методом Адамса, при условии ввода исходных данных;
3) отображение таблицы результатов расчета, при условии успешного расчета;
4) вывод графика решения, при условии успешного окончания расчетов;
5) вывод информации о программе;
6) выход из программы.
В схеме алгоритма предусматривается контроль и блокирование следующих действий пользователя:
1) запуск численного решения при отсутствии ввода исходных данных;
2) просмотр результатов расчета (таблицы и графика решения) без успешного завершения этапа численного решения.
Схема алгоритма головной программы изображается согласно требований ГОСТ 19.701-90 на рисунке 2.1 и на листе графически.
Рисунок 2.1 – Схема алгоритма приложения
2.2 Проектирование алгоритма ввода исходных данных
Для решения в программе выбирается ОДУ вида:
(2.1)
где a0, a1, …, an- коэффициенты степенного ряда порядка n переменной аргумента x;
b1,b2,…bm-коэффициенты степенного ряда порядка m.
В общем виде (2.1) примет вид:
(2.2)
Исходными данными являются:
N-размерность степенного ряда переменной х;
M-размерность степенного ряда переменной у;
A-массив коэффициентов переменной х;
В- массив коэффициентов переменной у;
h- величина шага интегрирования;
X0,Y0-начальные условия;
Xk-конечное значение аргумента Xk,определяющее интервал поиска решения;
Np-число точек значений аргумента и функции, сохраняемых в файле.
Ввод исходных данных возможен с клавиатуры на форме ввода. При этом исходные данные вводятся в текстовых полях однострочных редакторов и элементарных таблиц. Алгоритм окончательного считывания данных из управляющих элементов представляет собой чтение данных из поля нужного компонента с преобразованием из строкового в численный тип.
Рисунок 2.2- Схемы алгоритмов ввода данных
2.3 Разработка алгоритма вывода результатов
Результаты расчета (точки исходной функции) сохраняются в переменных-массивах: для аргумента X и функции Y,которые отображаются в виде таблицы или графика на соответствующих формах.
Рисунок 2.3- Схемы алгоритмов вывода данных
2.4 Проектирование алгоритма численного метода
Численное решение ОДУ методом Адамса с учетом приведенного в разделе 1 описания исходных данных и результатов расчета показывается на схеме алгоритма рисунка 2.3.
Результаты решения дифференциального уравнения записываются в переменные-массивы X (значения аргументов точек интегрирования) и Y(значения функции).
Для организации вычисления решения предварительно должно определятся число точек решения Nj на интервале сохранения. Сохранять все расчетные точки на каждом шаге нецелесообразно вследствие их большого количества. Число точек сохранения Np задается изначально. Номер сохраняемой точки отображается для информирования пользователя о скорости расчета
Рисунок 2.4- Схема численного решения методом Адамса
3. Кодирование программы в среде программирования
3.1 Разработка структуры программы
Согласно задания проект программы разрабатывается в среде визуального программирования C++Builder версии 6.0 на основе составленных блок-схем алгоритмов…
Заключение
В результате выполнения курсовой работы было произведено описание задачи решения обыкновенного дифференциального уравнения явным, многошаговым методом Адамса третьего порядка точности, разработана схема алгоритма и написана программа решения на языке программирования C++ в среде программирования С++Builder. Проведенное тестирование показало правильность вычисления по спроектированной программе.
Разработанная программа может использоваться для решения обыкновенных дифференциальных уравнений на персональных компьютерах в среде Windows XP/7/8/10.
Список использованных источников
Заусаев А.Ф. Разностные методы решения обыкновенных дифференциальных уравнений: Учебн. пособ. Самара:Самарский гос.техн.ун-т,2010.100с.
Информатика. Методические указания и задания к курсовой работе для студентов специальности 1-53 01 05 “Автоматизированные электроприводы”. — Могилев: Белорусско-российский университет.
Приложение А
(Обязательное)
Тексты спроектированной программы
Текст файла Project1.cpp
//—————————————————————————
#include
#pragma hdrstop
//—————————————————————————
USEFORM(«Unit1.cpp», Form1);
USEFORM(«Unit2.cpp», Form2);
USEFORM(«Unit3.cpp», Form3);
//—————————————————————————
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->CreateForm(__classid(TForm2), &Form2);
Application->CreateForm(__classid(TForm3), &Form3);
Application->Run();
catch (Exception &exception)
Application->ShowException(&exception);
catch (…)
throw Exception(«»);
catch (Exception &exception)
Application->ShowException(&exception);
return 0;
//—————————————————————————….
!!!Внимание в наличии только записка со всеми приложениями (листинг), самого ПО нет!!!