Модуль реализации краевых задач - основной, возмущенной, сопряженной
После создания UML – модели проекта нам необходимо визуально разработать интерфейс главного окна проекта. Интерфейс проекта создается с помощью меню, размещенного на форме (рис. 21). Меню диалогового окна позволяет решать все три поставленные задачи: основную, возмущенную, сопряженную.
Для ввода исходных данных и отображения результата окно приложение должно содержать окно ввода краевых условий на концах отрезка и величину n– компонент Edit, 2 компонента StringGrid – для построения матрицы и для визуального вывода результата, компоненты Label для того, чтоб дать названия кнопкам редактирования и для вывода результата. Кроме этого, необходимы кнопки «Результаты решения», «Следующая» и «Предыдущая» – 3 компонента Button. Для вывода результатов в файловый документ используем кнопку «Результаты в файл» - компонент BitBtn. Перечисленные элементы размещаются на форме в соответствии с направлениями нашего письма: слева-направо и сверху – вниз. Слева данные, справа управление, сверху – исходные данные, снизу – результаты. При этом целесообразно область данных результата отделить, использовав компоненту Panel и расположив ее сверху формы. На ней установим компоненту метка Label.
Последовательность работы с приложением просматривается следующая:При выборе одной из опций меню на диалоговом окне появляется метка с надписью, содержащей вид уравнения соответствующей краевой задачи (рис. 21, а, б, в)Дальнейшие этапы решения каждой из задач состоят из следующих шагов.
2. Последовательность шагов алгоритма отражена на модели (рис.20):
- Первый шаг – ввод данных (краевых условий на отрезке);
- Второй шаг – при вводе правильного значения величины n для визуального контроля результатов становится доступной таблица StringGrid1 и кнопка «МАТРИЦА» (рис. 22, а) Если числа введены неверно, то выводится сообщение об ошибке«Ошибка в записи числа» (рис. 22, б). Также доступной становится таблица StringGrid2 и кнопка «Результаты решения»;
- Третий шаг – для вывода результатов в файл доступной становится кнопка Bitbtn «Результаты в файл», а таблицы StringGrid1 и StringGrid2 становятся не доступными, как показано на рисунке 23;
- Четвертый шаг – пользователь нажимает кнопку «Следующая» или «Предыдущая», на экран должно отобразиться исходное состояние окна приложения (рис. 24);
- Пятый шаг – нажатие в меню «Выход», приложение закрывается, причем кнопка «Выход» должна быть доступна в любой момент времени (рис. 25)
-
В визуальном проекте предусматривается проверочный вывод результатов приближенного решения методом прогонки каждой из выше рассматриваемых краевых задач, а также вывод трехдиагональной матрицы соответствующей системы сеточных уравнений (для небольшого количества точек разбиения отрезка, например, n = 5). Эти результаты нами названы визуальным контролем приближенного решения краевых задач.
Диагональное преобладание матрицы системы сеточных уравнений означает безусловную устойчивость метода прогонки. Однако погрешность приближенного решения зависит от величины шага h в сеточных уравнениях. Поэтому необходимо проведение вычислений с более мелким шагом (то есть с большим количеством n точек разбиения) для доведения погрешности решения до фиксированной малой величины. В связи с этим, решение краевых задач проводится с n=300 (и более) и эти результаты выводятся в текстовый файл.
Решения всех трех краевых задач необходимы для вычисления значений функционалов(2.2.13), которые позволяют непосредственно связать возмущение источника в основной задаче с вариацией исследуемого функционала(2.2.13).