Решение краевых задач в среде виртуальной гибридной машины
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ
НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ”ХПИ”
Кафедра вычислительной техники и программирования
Курсовая работа
по теме "Решение краевых задач в среде виртуальной
гибридной машины"
Харьков – 2008
ВВЕДЕНИЕ
В своем развитии вычислительные средства, рожденные удивительными идеями подобия физических процессов различной природы, прошли множество оригинальных технических реализаций. Опыт развития показывает, что жизнь технических решений в своем материальном воплощении недолговечна. Появляются новые материалы, технологии, физические среды и процессы. На их основе реализуются технические устройства для успешного применения зарекомендовавших себя методик исследований и вычислений.
Так, благодаря интенсивному развитию цифровой вычислительной техники и сверхмикроминиатюризации электронных элементов, узлов и блоков, “Аналоговые вычислительные машины” расширили свои вычислительные и функциональные возможности, превратившись в гибридные вычислительные системы моделирования, тренажерные комплексы и специализированную периферию. Время проведения исследований динамических объектов уменьшилось на порядки, стало возможным выполнять одновременно оперативную обработку и соответствующее документирование результатов.
В настоящее время в аппаратной среде цифровых машин можно реализовать программную модель универсальной гибридной (аналого-цифровой) вычислительной машины, в которой операционные блоки будут функционировать в квазипараллельном режиме (в режиме разделения времени). Такую модель удобно создавать с помощью профессиональных пакетов моделирования электронных аналоговых и цифровых схем, снабженных развитым графическим интерфейсом пользователя.
Используя макроопределения для схем операционных блоков и снабжая их соответствующими графическими обозначениями, можно сформировать весь набор операционных блоков, необходимый для представления математических моделей реальных объектов.
Положительные достоинства работы с псевдооборудованием гибридного вычислительного комплекса состоит в том, что в его среде можно моделировать объекты любой физической природы, лишь бы их можно было описать адекватными математическими моделями. При этом используется отработанная десятилетиями процедура программирования аналоговых устройств и естественное умение разработчика взаимодействовать с объектом, который им же описан математически.
В прошлом программирование аналоговых ЭВМ происходило методом переключения перемычек на коммутационной панели ЭВМ. Это было неудобно и связано с риском поражения электрическим током (напряжением до 100 В). Чтобы просмотреть результаты моделирования или выполнить замеры, необходимо было подключать осциллограф - для анализа переходных процессов, или стрелочные приборы - для анализа установившихся состояний.
Работа в среде виртуальной гибридной вычислительной машины упростила составление схем устройств, повысила наглядность экспериментов, уменьшила риск поражения электрическим током. Результаты моделирования можно просматривать на экране монитора и распечатывать на принтере.
В данном расчетно-графическом задании виртуальная гибридная вычислительная машина будет использована в качестве вычислительного инструмента для решения краевых задач методами математического и аналогового моделирования, с целью демонстрации возможностей аналоговых устройств для исследования физических объектов, описанных уравнениями математической физики в обыкновенных и частных производных.
1 АНАЛИЗ МЕТОДОВ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ
1.1 Анализ задания и постановка задачи исследования
В задании на выполнение расчетно-графического задания приведено краткое описание исходных данных следующего содержания:
Провести исследование конечно-разностных методов решения краевых задач путем моделирования в среде пакета Micro-Cap V. Оценить эффективность и сравнительную точность получения решений методом математического моделирования, аналогового моделирования и численными расчетами. Здесь, во-первых, четко указан класс задач, для которого необходимо разработать методику решения и исследования. Это класс краевых задач, к которым относятся дифференциальные уравнения в обыкновенных и частных производных с условиями, заданными на границе области решения. Во-вторых, названа моделирующая среда, в которой должна функционировать виртуальная аналоговая вычислительная машина. Это профессиональный пакет схемотехнического моделирования электронных схем Micro-Cap V. И, в-третьих, с целью сопоставления результатов решения, рекомендуется применить различные методы, из которых названы три: метод математического моделирования, метод вычислений по аналогии и метод традиционных численных расчетов.
В связи со сказанным, мне необходимо проанализировать наиболее распространенные методы решения краевых задач в обыкновенных производных, выбрать из них удобный для применения в виртуальной гибридной среде и подобрать для демонстрации контрольные задачи. Аналогичную работу необходимо провести с краевыми задачами в частных производных. Описать методику конечно-разностной аппроксимации исходных уравнений и привести алгоритмы или последовательность ее выполнения.
В результате рассмотрения существующих методов решения составить математические модели краевых задач, подобрав в качестве исходных уравнений такие, для которых, с целью контроля, несложно получить и аналитические решения.
1.2 Методы решения задач в частных производных
Среди дифференциальных уравнений в частных производных можно выделить уравнения, описывающие стационарные распределения в заданной области некоторой физической величины, и уравнения, описывающие изменение во времени распределенной в заданной области физической величины. Признаком, разделяющим уравнения на эти два подмножества, является присутствие в уравнении частной производной по времени. Принципиальное различие пространственной и временной независимых переменных состоит в том, что в отличие от однонаправленного изменения реального времени ортогональные пространственные переменные могут изменяться независимо друг от друга в обоих направлениях.
Ядром наиболее часто встречающихся дифференциальных уравнений в частных производных служит уравнение Лапласа
,
где
(набла в квадрате) - оператор Лапласа,
который в двумерной декартовой системе
координат имеет вид
.
Это уравнение описывает стационарное поле некоторой физической величины и относится к уравнениям эллиптического, гиперболического или параболического типа в зависимости от значения определителя дифференциальной формы второй степени
,
для которой соответственно
,
где
- в общем случае функции координат и
потенциала u.
К нестационарным уравнениям параболического и гиперболического типов относятся соответственно уравнение теплопроводности с параметрами-функциями и S
и уравнения волновое и бигармоническое с параметром С
и
Названные уравнения представлены в канонической форме, которая включает безразмерные относительные переменные, обычно приводимые к диапазонам изменения [0,1] и [-1,1]. Размерности слагаемых согласуются посредством параметров уравнения.
Основным методом решения дифференциальных уравнений в частных производных является аппроксимация уравнения системой алгебраических уравнений или системой дифференциальных уравнений. Эти два вида аппроксимаций в литературе получили название метод сеток и метод прямых.
Метод сеток реализуется в том случае, когда частные производные, входящие в уравнение, заменяются в каждой точке заданной области конечно-разностными выражениями, полученными из значений искомого решения в окружающих точках. Количество уравнений в системе связано с шагом дискретизации временной и пространственных переменных и формой границы области решения. Число точек, попавших внутрь области решения, определяет число неизвестных и уравнений.
Метод прямых относится к случаю, когда одна из независимых переменных является временем (случай нестационарных задач) или когда одну из пространственных переменных (случай стационарных задач) пропорционально связывают со временем. Частные производные от независимых переменных, не связанных с временем, аппроксимируют конечными разностями. В результате, оставшиеся дискретными независимые переменные сочетанием своих значений определяют общее число дифференциальных уравнений, которые в общем случае являются краевыми.
Аппроксимирующие дифференциальные уравнения с краевыми условиями невозможно интегрировать как систему уравнений Коши. Линейная система краевых задач многократно решается с частными начальными условиями и по результатам решений краевые условия пересчитываются в начальные. Нелинейной системе для приближенного вычисления начальных условий потребуются итерационные процедуры, рассмотренные выше.
Математические модели, сформированные по методам сеток и прямых, могут быть решены методом математического моделирования с применением аналоговых или псевдо аналоговых операционных блоков, а также методом аналогий.
Метод аналогий (аналоговое моделирование) заключается в том, что для каждого уравнения математической модели подбирается физический объект, переменные состояния которого связаны таким же уравнением. В подавляющем большинстве случаев в качестве аналоговых объектов используются схемы с электрическими и электронными компонентами. Особенно простыми аналогами уравнений математических моделей являются уравнения электрических схем, полученные на основании законов Ома и Кирхгофа.
Итак, все рассмотренные методы используют конечно-разностную аппроксимацию, к рассмотрению которой мы переходим.
1.3 Конечные разности и аппроксимация производных
1.3.1 Определение конечных разностей
Конечная разность "вперед"
для таблично заданной функции в i-той
точке определяется выражением:
,
где функция
задана, как функция целочисленного
аргумента с единичным шагом по аргументу
i.
Для аналитически заданной и протабулированной с постоянным шагом h функции f(x) определяющее соотношение имеет вид:
f(x)
= f(x+h)
- f(x)
Преобразование таблицы функции
f(x) в функцию целочисленного аргумента
g(i) осуществляют при помощи линейного
соотношения между аргументами x и i :
.
Повторные конечные разности n-го порядка в i-той точке для табличной функции g(i) определяются соотношением
Линейность конечно-разностного
оператора
позволяет ввести конечно-разностный
оператор сдвига E=(1+
)
и многочлены от оператора
с целыми коэффициентами, такие, как
и т.п.,
где
должно рассматриваться в качестве
оператора повторной разности k-го порядка
.
Применение оператора сдвига к g(i) преобразует последнее в g(i+1) :
g(i+1) = Eg(i) = (1+)g(i)=
g(i) +
g(i).
Повторное применение оператора сдвига позволяет выразить значение ординаты функции g(i) в точке (i+n) через конечные разности различных порядков:
где
- число сочетаний из n элементов по k ;
-
многочлен степени k от целой
переменной n (),
имеющий k сомножителей. При k=n
.
Относительно начала координат (i=0 - начало таблицы) функция целочисленной переменной g(n) представляется разложением по многочленам различных степеней от 0 до n. Для больших степеней конечные разности равны нулю.
С другой стороны, так как
, то
Таким образом, любая повторная конечная разность выражается взвешенной алгебраической суммой ординат табличной функции.
1.3.2 Взаимосвязь операторов разности и дифференцирования
Значение функции на удалении h
от некоторой точки
можно выразить через значения производных
в этой точке, разложив ее в ряд Тэйлора:
где
- оператор дифференцирования,
- оператор сдвига, выраженный
через оператор p .
h- шаг по оси действительной переменной
Из равенства операторов сдвига,
выраженных через p и
,
можно получить взаимосвязь этих линейных
операторов:
,
Оператор дифференцирования порядка n, перенесенный в точку, например, на 2 шага вперед представляется так:
Если алгебраически перемножить многочлены с конечно-разностными операторами и ограничиться операторами со степенью не выше n, то получится одна из возможных аппроксимаций оператора дифференцирования. Например, для n=2 и четырех точечном задании функции f(x), отбросив повторные разности выше третьего порядка, получим:
.
Выразив повторные разности через ординаты табличной функции, получим второй вариант аппроксимации оператора дифференцирования:
.
Для целочисленного аргумента
табличной функции запись выражения
можно упростить, так как шаг h=1 и
:
.
Для k-той производной в точке m от начала интервала [0,n]:
После выполнения операций
возведения многочленов в степень и их
перемножения, конечные разности со
степенями больше n отбрасываются,
а оставшиеся
заменяются выражением
.
Раскрыв скобки, подставив
и сгруппировав подобные члены, получим
аппроксимирующую сумму из (n+1)-й ординаты
функции:
.
Коэффициенты
минимальны для точек середины интервала
(m=n/2) и максимальны - для крайних. Аналогично
ведут себя и коэффициенты в выражении
погрешности аппроксимации.
Таким образом, для любой внутренней точки из группы выбранных равномерно расположенных ординат можно сформировать выражение, аппроксимирующее производную взвешенной суммой.
1.4 Представление уравнений конечно-разностной моделью
При математическом описании реальных физических объектов чаще всего приходится иметь дело с дифференциальными уравнениями в обыкновенных или частных производных второго порядка с начальными, краевыми или граничными условиями.
Для аппроксимации таких уравнений удобно заранее построить таблицы коэффициентов для выражений производных по заданному числу значений функции. В бакалаврской работе воспользуемся аппроксимацией по трем и пяти точкам, коэффициенты для которых приведены в таблицах 1, 2, 3, 4. В крайних справа колонках таблиц приведены коэффициенты выражений, вынесенных в заголовок колонки, для погрешности аппроксимации производной в выбранной точке. В выражениях погрешности присутствуют значения производных функции с порядками выше порядка аппроксимируемой производной.
Таблица 1 - Аппроксимация первой производной по трем точкам
|
y(0) |
y(1) |
y(2) |
|
y’(0) |
-3 |
4 |
-1 |
2 |
y’(1) |
-1 |
0 |
1 |
-1 |
y’(2) |
1 |
-4 |
3 |
2 |
Таблица 2 - Аппроксимация второй производной по трем точкам
|
|
|
|
|
|
1 |
-2 |
1 |
-12, 2 |
|
1 |
-2 |
1 |
0, -1 |
|
1 |
-2 |
1 |
12, -2 |
Таблица 3 - Аппроксимация первой производной по пяти точкам
|
|
|
|
|
|
|
|
-25 |
48 |
-36 |
16 |
-3 |
12 |
|
-3 |
-10 |
18 |
-6 |
1 |
-3 |
|
1 |
-8 |
0 |
8 |
-1 |
2 |
|
-1 |
6 |
-18 |
10 |
3 |
-3 |
|
3 |
-16 |
36 |
-48 |
25 |
12 |
Таблица 4 - Аппроксимация второй производной по пяти точкам
|
|
|
|
|
|
|
|
35 |
-104 |
114 |
-56 |
11 |
-150, 12 |
|
11 |
-20 |
6 |
4 |
-1 |
15, -3 |
|
-1 |
16 |
-30 |
16 |
-1 |
0, 2 |
|
-1 |
4 |
6 |
-20 |
11 |
15, 3 |
|
11 |
-56 |
114 |
-104 |
35 |
150, -12 |
Чтобы получить конечно-разностную модель дифференциального уравнения, необходимо сначала интервал или область решения разделить с постоянным шагом по осям координат на требуемое число подинтервалов и для каждой внутренней точки подставить аппроксимирующие выражения в заданное уравнение. После приведения подобных членов в каждом уравнении, получится система алгебраических уравнений при полной дискретизации всех независимых переменных или система дифференциальных уравнений - при неполной дискретизации. К полученным таким образом уравнениям добавляются соотношения или значения функции и ее производных в точках границы области.
В процессе формирования уравнений особое внимание необходимо обращать на замену производных конечно-разностными эквивалентами в приграничных точках. В выражениях последних должны отсутствовать неизвестные значения функции в точках, расположенных вне области интегрирования. Поэтому аппроксимирующие, выражения производных из таблиц 1-4 для точек у левой границы интервала берутся из верхних строчек, а для точек у правой границы - из нижних строчек.
2. КРАЕВАЯ ЗАДАЧА В ЧАСТНЫХ ПРОИЗВОДНЫХ
В качестве демонстрационной краевой нестационарной задачи возьмем задачу теплопроводности с непрерывным временем. На этой задаче удобно показывать как динамику нагрева объекта, так и установившееся распределение температурного поля.
2.1 Задача теплопроводности с непрерывным временем
Применение метода прямых рассмотрим на примере решения уравнения теплопроводности следующего вида:
,
которое описывает изменение
температуры
вдоль металлического стержня длиной в
1 метр (
),
вваренного своими концами в две
металлические пластины с разными,
постоянно поддерживаемыми на них
температурами
и
.
Начальное распределение температуры по длине будем задавать для внутренних точек как
.
Единичную длину стержня разобьем на 8 равных частей
()
и обозначим изменяющееся значение
температуры в каждой точке через
.
2.2 Вариант аппроксимации дифференциальными уравнениями
Применим трех точечную аппроксимацию частной производной второго порядка, воспользовавшись таблицей 2 из раздела 1.4. Для внутренних точек и для приграничных точек коэффициенты в аппроксимирующем выражении второй производной оказываются одинаковыми. Это позволяет для каждой внутренней точки, размеченного на 8 частей стержня, записать следующую систему дифференциальных уравнений первого порядка относительно скорости изменения температур в каждой точке:
Для получения числовых значений зададим конкретные величины. Так коэффициент В для теплоизолированного по боковой поверхности алюминиевого стержня равен теплопроводности этого материала, т.е. =200 вт/(мК).
Удвоенный квадрат шага по длине стержня равен 20.1252=0.03125 м2.
Вместо температуры введем относительную переменную, разделив левую и правую части на 100:
.
Если все коэффициенты перенести в правую часть и, вычислить, записав результат перед скобками, то система уравнений примет окончательный вид:
В полученной системе > 0>=1, а > 8>=0.
В случае аппроксимации производной
по времени конечными разностями «вперед»,
что в цифровой моделирующей среде может
случиться и при непрерывном времени,
соотношение между шагом по временной
переменной
и по пространственной
должно подчиняться следующему неравенству:
.
При несоблюдении этого условия решение
может оказаться численно неустойчивым.
2.3 Программирование для математического моделирования
Полученная в пункте 2.2 система дифференциальных уравнений, благодаря представлению искомых переменных в относительном виде, при максимальных напряжениях на выходах операционных блоков в 1 вольт и масштабных множителях, равных единице, специального расчета коэффициентов передач не требует. Коэффициенты по входам сумматоров будут такими же, как в уравнениях.
С
хема
соединения операционных блоков для
этой задачи показана на рисунке 1.
Рисунок 1
2.4 Программирование задачи для метода аналогий
Если в окончательной системе дифференциальных уравнений, полученных в п. 4.2, каждое уравнение преобразовать по Лапласу и разрешить относительно переменной с индексом переменной в правой части, то получится система следующего вида:
,
где
- ранее вычисленный коэффициент;
p - комплексный параметр, вызванный применением преобразования Лапласа к производной.
Рисунок 2
Аналогичное выражение получается для напряжений в пассивной электрической цепи, показанной на рисунке 2, если для входных и выходных напряжений использовать одинаковую индексацию.
Зависимость напряжения на внутреннем узле по отношению к общему проводу будет:
.
Если положить равными
и
,
то достаточно при емкости С=1 мкФ выбрать
сопротивление R=160 кОм. В этом случае
=6.25
1/с.
Соединив такие ячейки (аналоги дифференциальных уравнений системы) в последовательную электрическую цепь, мы получаем аналоговую модель дифференциального уравнения теплопроводности, которая изображена на рисунке 3.
Р
исунок
3
2.5 Моделирование и численное решение задачи
2.5.1 Решение задачи методом моделирования
Р
исунок
4
Таблица 5.-Численное представление результатов моделирования
2.5.1 Решение задачи методом аналогий
Р
исунок
5
Выводы
Рисунки 4 и 5, представляющие решение задачи теплопроводности двумя методами, оказались практически идентичными. Затраты на подготовку к моделированию в среде виртуальной гибридной вычислительной машины свелись к построению схем соединения операционных блоков и заданию их параметров. Самой громоздкой частью процесса решения задачи в частных производных, независимо от применяемых вычислительных средств, является построение аппроксимирующей математической модели.
Таким образом, использованию пакета схемотехнического моделирования и созданной в его среде виртуальной гибридной машине альтернативы, на наш взгляд, нет. По крайней мере, это справедливо для задач с числом уравнений до ста. Наибольшим достоинством такого решения состоит в наглядности, оперативности и точности получаемых результатов.