Решение краевых задач в среде виртуальной гибридной машины
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ
НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ”ХПИ”
Кафедра вычислительной техники и программирования
Курсовая работа
по теме "Решение краевых задач в среде виртуальной
гибридной машины"
Харьков – 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, представляющие решение задачи теплопроводности двумя методами, оказались практически идентичными. Затраты на подготовку к моделированию в среде виртуальной гибридной вычислительной машины свелись к построению схем соединения операционных блоков и заданию их параметров. Самой громоздкой частью процесса решения задачи в частных производных, независимо от применяемых вычислительных средств, является построение аппроксимирующей математической модели.
Таким образом, использованию пакета схемотехнического моделирования и созданной в его среде виртуальной гибридной машине альтернативы, на наш взгляд, нет. По крайней мере, это справедливо для задач с числом уравнений до ста. Наибольшим достоинством такого решения состоит в наглядности, оперативности и точности получаемых результатов.