Разработка программы на языке Turbo Pascal 7.0 для решения дифференциальных уравнений - Программирование, компьютеры и кибернетика курсовая работа

Разработка программы на языке Turbo Pascal 7.0 для решения дифференциальных уравнений - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Разработка программы на языке Turbo Pascal 7.0 для решения дифференциальных уравнений

Разработка программы на языке Turbo Pascal 7.0 для преобразования кинетической схемы протекания химических реакций при изотермических условиях в систему дифференциальных уравнений. Ее решение в численном виде методом Рунге-Кутта четвертого порядка.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Курсовая работа: 25 страниц, 4 рисунка, 2 таблицы, 2 графика, 3 источника
Цель работы: разработать программу на языке Turbo Pascal 7.0 для решения дифференциальных уравнений.
В курсовой работе приведено описание методов Рунге-Кутта первого, второго, третьего и четвертого порядков, приведена точность нахождения концентраций компонентов по рассматриваемым методам, блок-схема алгоритма, разработана программа расчета на на языке Turbo Pascal 7.0 с результатами и с тестовым вариантом расчета, проведен анализ полученных результатов.
МЕТОД РУНГЕ-КУТТА, РЕАКЦИЯ, БЛОК-СХЕМА, АЛГОРИТМ, ПРОИЗВОДНАЯ, ТОЧНОСТЬ, ПРОГРАММА, РАСЧЕТ, ГРАФИК.
4. ПРОГРАММА РАСЧЕТА НА ЯЗЫКЕ TURBO PASCAL
Многие процессы химической технологии описываются системой дифференциальных уравнений - начиная от кинетических исследований и заканчивая химическими технологическими процессами В основу математических способов описания процессов положены система дифференциальных уравнений и система линейных алгебраических уравнений Эти уравнения описывают материальные и тепловые балансы объектов химической технологии а так же структуры потоков технических веществ в этих аппаратах
Для получения распределения технологических параметров во времени и в пространстве (в пределах объекта) необходимо произвести СДУ методом который дал бы высокую точность решения при минимальных затратах времени на решение потому что ЭВМ должна работать в режиме реального времени и успевать за ходом технологического процесса. Если время на решение задачи большое то управляющее воздействие выработанное на ЭВМ может привести к отрицательным воздействиям Методов решения существует очень много В данной работе будет изучена кинетическая схема протекания химических реакций, которая будет переведена на математический язык - систему дифференциальных уравнений первого порядка, которая будет решаться в численном виде методом Рунге-Кутта четвертого порядка.
программа дифференциальные уравнение кинетический
Необходимо найти распределение концентраций компонентов во времени, а также изменение скорости химических реакций до веществ А,B,C,E,D, протекающих по следующей схеме:
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Так как коэффициенты являются константами, то можно уравнение записать в следующем виде.
Для преобразования данных дифференциальных уравнений для использования их в расчетах тепловых и кинетических схем методами Рунге-Кутта необходимо подставлять вместо производных значений концентраций, значения концентраций данных в начале процесса. Это обусловлено тем, что метод Рунге-Кутта четвертого порядка, который будет использован для расчета кинетической схемы процесса. Так как этот метод требует сведений только об одной точке и значений функции.
Разбор и рассмотрение методов применяемых на практике для решения дифференциальных уравнений мы начнем с их широкой категории известной под общим названием методов Рунге-Кутта
Методы Рунге-Кутта обладают следующими свойствами:
a) Эти методы являются одноступенчатыми: чтобы найти у m+1 нужна информация о предыдущей точке xmym
b) Они согласуются с рядом Тейлора вплоть до членов порядка hp где степень р различна для различных методов и называется порядковым номером или порядком метода
c) Они не требуют вычисления производных от f (xy) а требуют вычисления самой функции
Рассмотрим сначала геометрическое построение и выведем некоторые формулы на основе геометрических аналогий После этого мы подтвердим полученные результаты аналитически
Предположим нам известна точка xmym на искомой кривой Тогда мы можем провести прямую линию с тангенсом угла наклона у m =f(x m y m ) которая пройдет через точку x m y m Это построение показано на рис1 где кривая представляет собой точное но конечно неизвестное решение уравнения а прямая линия L1 построена так как это только что описано
Тогда следующей точкой решения можно считать ту где прямая L 1 пересечет ординату проведенную через точку x=x m+1 =x m +h
Уравнение прямой L 1 выглядит так: y=y m +y m (x-x m ) так как y=f(x m y m ) и кроме того x m+1 =x m +h тогда уравнение примет вид
Ошибка при x=x m+1 показана в виде отрезка е Очевидно найденное таким образом приближенное значение согласуется с разложением в ряд Тейлора вплоть до членов порядка h так что ошибка ограничения равна e t =Кh2
Заметим что хотя точка на рисунке 2.1 была показана на кривой в действительности y m является приближенным значением и не лежит точно на кривой
Формула 11 описывает метод Эйлера один из самых старых и широко известных методов численного интегрирования дифференциальных уравнений Отметим что метод Эйлера является одним из методов Рунге-Кутта первого порядка
Рассмотрим исправленный метод Эйлера и модификационный метод Эйлера В исправленном методе Эйлера мы находим средний тангенс угла наклона касательной для двух точек: x m y m и x m +hy m +hy m Последняя точка есть та самая которая в методе Эйлера обозначалась x m+1 y m+1 Геометрический процесс нахождения точки x m+1 y m+1 можно проследить по рис2 С помощью метода Эйлера находится точка x m +hy m +hy m лежащая на прямой L 1 В этой точке снова вычисляется тангенс дает прямую Наконец через точку x m y m мы проводим прямую L параллельную Точка в которой прямая L пересечется с ординатой восстановленной из x=x m+1 =x m +h и будет искомой точкой x m+1 y m+1
Тангенс угла наклона прямой и прямой L равен
Ф(x m y m h)=[f(x m y m )+f(x m +hy m +y m h)] 12
Уравнение линии L при этом записывается в виде
Соотношения 12 13 14 описывают исправленный метод Эйлера
Чтобы выяснить насколько хорошо этот метод согласуется с разложением в ряд Тейлора вспомним что разложение в ряд функции f(xy) можно записать следующим образом:
f(xy)=f(x m y m )+(x-x m )f/x+(y-y m )f/x+ 15
где частные производные вычисляются при x=x m и y=y m
Подставляя в формулу 15 x=x m +h и y=y m +hy m и используя выражение 13 для y m получаем
f(x m +hy m +hy m )=f+hf x +hff y +O(h2)
где снова функция f и ее производные вычисляются в точке x m y m Подставляя результат в 12 и производя необходимые преобразования получаем
Ф(x m y m h)=f+h/2(f x +ff y )+O(h2)
Подставим полученное выражение в 14 и сравним с рядом Тейлора
y m+1 =y m +hf+h2/2(f x +ff y )+O(h3)
Как видим исправленный метод Эйлера согласуется с разложением в ряд Тейлора вплоть до членов степени h2 являясь таким образом методом Рунге-Кутты второго порядка
Рассмотрим модификационный метод Эйлера Рассмотрим рис3 где первоначальное построение сделано так же как и на рис2 Но на этот раз мы берем точку лежащую на пересечении этой прямой и ординатой x=x+h/2 На рисунке эта точка образована через Р а ее ордината равна y=y m +(h/2)y m Вычислим тангенс угла наклона касательной в этой точке
Ф(x m y m h)=f+(x m +h/2y m +h/2*y m ) 16
Прямая с таким наклоном проходящая через Р обозначена через * Вслед за тем мы проводим через точку xmym прямую параллельную * и обозначаем ее через L 0 Пересечение этой прямой с ординатой x=x m +h и даст искомую точку x m+1 y m+1 Уравнение прямой можно записать в виде
Соотношения 16 17 18 описывают так называемый модификационный метод Эйлера и является еще одним методом Рунге-Кутта второго порядка Обобщим оба метода Заметим что оба метода описываются формулами вида
Ф(x m y m h)=a 1 f(x m y m )+a 2 f(x m +b 1 hy m +b 2 hy m ) 110
В частности для исправленного метода Эйлера
В то время как для модификационного метода Эйлера
Формулы 19 110 111 описывают некоторый метод типа Рунге-Кутта Посмотрим какого порядка метод можно рассчитывать получить в лучшем случае и каковы допустимые значения параметров a 1 a 2 b 1 и b 2
Чтобы получить соответствие ряду Тейлора вплоть до членов степени h в общем случае достаточно одного параметра Чтобы получить согласование вплоть до членов степени h2 потребуется еще два параметра так как необходимо учитывать члены h2f x и h2ff y Так как у нас имеется всего четыре параметра три из которых потребуются для создания согласования с рядом Тейлора вплоть до членов порядка h2 то самое лучшее на что здесь можно рассчитывать - это метод второго порядка
В разложении f(xy) в ряд 15 в окрестности точки x m y m положим
f(x m +b 1 hy m +b 2 hf)=f+b 1 hf x +b 2 hff y +O(h2)
где функция и производные в правой части равенства вычислены в точке x m y m
ym+1=ym+h[a1f+a2f+h(a2b1fx+a2b2ffy)]+O(h3)
Сравнив эту формулу с разложением в ряд Тейлора можно переписать в виде
y m +1 =y m +h[a 1 f+a 2 f+h(a 2 b 1 f x +a 2 b 2 ff y )]+O(h3)
Если потребовать совпадения членов hf то a 1 +a 2 =1
Сравнивая члены содержащие h2f x получаем a 2 b 1 =1/2
Сравнивая члены содержащие h2ff y получаем a 2 b 2 =1/2
Так как мы пришли к трем уравнениям для определения четырех неизвестных то одно из этих неизвестных можно задать произвольно исключая может быть нуль в зависимости от того какой параметр взять в качестве произвольного
Положим например a 2 =0 тогда a 1 =1- b 1 =b 2 =1/2 и соотношения 19 110 111 сведутся к
y m+1 =y m +h[(1-)f(x m y m )+f(x m +h/2y m +h/2f(x m y m ))]+O(h3) 112
Это наиболее общая форма записи метода Рунге-Кутта второго порядка При =1/2 мы получаем исправленный метод Эйлера при =1 получаем модификационный метод Эйлера Для всех отличных от нуля ошибка ограничения равна
Методы Рунге-Кутта третьего и четвертого порядков можно вывести совершенно аналогично тому как это делалось при выводе методов первого и второго порядков Мы не будем воспроизводить выкладки а ограничимся тем что приведем формулы описывающие метод четвертого порядка один из самых употребляемых методов интегрирования дифференциальных уравнений Этот классический метод Рунге-Кутта описывается системой следующих пяти соотношений
y m +1 =y m +h/6(R 1 +2R 2 +2R 3 +R 4 ) 114
R 2 =f(x m +h/2y m +hR 1 /2) 116
R 3 =f(x m +h/2y m +hR 2 /2) 117
R 4 =f(x m +h/2y m +hR 3 /2). 118
Ошибка ограничения для этого метода равна e t =kh5 так, что формулы 114-118 описывают метод четвертого порядка Заметим что при использовании этого метода функцию необходимо вычислять четыре раза
Исходя из вышеизложенного, для решения систем дифференциальных уравнений мы выбираем наиболее точный метод решения - метод Рунге-Кутта четвертого порядка, один из самых употребляемых методов интегрирования дифференциальных уравнений
Этот метод является одноступенчатым и одношаговым, требует информацию только об одной точке имеет небольшую погрешность значение функции рассчитывается при каждом шаге.
dc[2]:=k[1]*c[1]-(k[2]+k[5])*c[2]+k[4]*c[3];
r[5,i]:=1/6*(r[1,i]+2*r[2,i]+2*r[3,i]+r[4,i]);
writeln(f,t:1:4,#9,c[1]:1:4,#9,dc[1]:1:4,#9,c[2]:1:4,#9,dc[2]:1:4,#9,c[3]:1:4,#9,dc[3]:1:4,#9,
c[4]:1:4,#9,dc[4]:1:4,#9,c[5]:1:4,#9,dc[5]:1:4,#9,c[1]+c[2]+c[3]+c[4]+c[5]:1:4);
readln(f,c[1],c[2],c[3],c[4],c[5]);
readln(f,k[1],k[2],k[3],k[4],k[5]);
writeln('-------------Begin data--------------');
writeln('| c1 = ',c[1]:10:4, ' | k1 = ',k[1]:10:4, ' | ');
writeln('| c2 = ',c[2]:10:4, ' | k2 = ',k[2]:10:4, ' | ');
writeln('| c3 = ',c[3]:10:4, ' | k3 = ',k[3]:10:4, ' | ');
writeln('| c4 = ',c[4]:10:4, ' | k4 = ',k[4]:10:4, ' | ');
writeln('| c5 = ',c[5]:10:4, ' | k5 = ',k[5]:10:4, ' | ');
writeln('> sum ',c[1]+c[2]+c[3]+c[4]+c[5]:10:4,' |');
writeln('| h = ', h:10:4, ' | dp = ', dp:10:4, ' | ');
writeln('| tn = ', tn:10:4, ' | tk = ', tk:10:4, ' | ');
writeln('|eps = ', eps:10:4, ' | |');
writeln('------------End data-----------------');
writeln(f,'t',#9,'c[1]',#9,'dc[1]',#9,'c[2]',#9,'dc[2]',#9,'c[3]',#9,'dc[3]',#9,
'c[4]',#9,'dc[4]',#9,'c[5]',#9,'dc[5]',#9,'sum');
Пример файла исходных данных in.txt
Вещество А на протяжении всего процесса расходуется на образование веществ В, С, E, D. Концентрации вещества А в начальный момент времени расходуется быстрее, чем концентрации его же в конце процесса. Это обусловлено тем, что скорость химической реакции зависит от концентрации реагирующего вещества. Производная имеет знак «минус». Это говорит о том, что вещество расходуется. Следовательно, чем выше концентрация вещества, вступающего в процесс, тем выше скорость его реагирования с другими веществами. Вещество В образуется из вещества A и С и расходуется на производство веществ D и С. Поскольку концентрация вещества А большая в начале процесса и расходуется со временем, то и концентрация вещества В сначала быстро возрастает, а затем скорость уменьшается и меняет знак с «плюс» на «минус», в результате чего концентрация вещества начинает медленно уменьшаться.
Аналогичная ситуация происходит с веществом С, но пик его концентрации приходится наболее дальний срок (уже после 20 сек.). Концентрации веществ D и Е на протяжении всего времени реакции имеют положительные производные, в следствии чего можно и концентрации данных веществ ростут со временем. Причем, поскольку концентрация вещества В, в начале процесса, на много выше, чем концентрация вещества С, то и концентрация вещества D в процессе реакции будет всегда выше, чем концентрация вещества E. Реакция протекает в течении длительного времени и не заканчивается после 20 сек
В ходе выполнения работы был произведен расчет системы дифференциальных уравнений методом Рунге-Кутта четвертого порядка, произведен расчет кинетической схемы процесса при изотермических условиях при данных значениях концентраций и констант скоростей. Расчет произведен с малой величиной погрешности.
В результате выполнения расчета получена зависимость изменения концентрации вещества во времени. Из расчета следует, что на протяжении всего процесса вещество А расходовалось на образование остальных. Процесс не достиг конечного состояния (не достиг равновесия).
1 Мудров А.Е. Численные методы для ПЭВМ на языках Паскаль, Фортран и Бейсик. МП “Раско”, Томск, 1991 г.
2 Самарский А.А. «Введение в численные методы» М.: «Наука» 1978, 269 стр.
3 Гулин А.В., Самарский А.А. «Численные методы» М.: «Наука» 1989, 432стр.
Составление программы на алгоритмическом языке Turbo Pascal. Разработка блок-схемы алгоритма её решения. Составление исходной Pascal-программы и реализация вычислений по составленной программе. Применение методов Рунге-Кутта и Рунге-Кутта-Мерсона. курсовая работа [385,0 K], добавлен 17.09.2009
Принцип и значение метода Эйлера для расчета дифференциальных уравнений. Анализ его геометрического смысла. Улучшение метода за счет аппроксимации производной. Разработка блок-схем и программы на языке Turbo Pascal для проверки методов интегрирования. курсовая работа [385,7 K], добавлен 15.06.2013
Математическая модель, описание теории, применяемой к задаче. Обсчет точек методом Рунге-Кутта, модифицированным методом Эйлера, схема и листинг программы. Решение дифференциальных уравнений и построение графиков, решение уравнений в среде Turbo Pascal. курсовая работа [76,7 K], добавлен 18.11.2009
Решение дифференциальных уравнений с использованием классических алгоритмов численных методов Эйлера и Рунге-Кутта 4-го порядка. Команды, используемые при решении обыкновенных дифференциальных уравнений в системе вычислений. Результат работы программы. курсовая работа [226,6 K], добавлен 05.04.2013
Решение системы дифференциальных уравнений переходных процессов в RLC-цепи численным методом. Анализ графиков в Excel. Расчет переходного процесса в математическом пакете MathCad по точным формулам. Разработка программы на языке программирования Pascal. курсовая работа [777,3 K], добавлен 22.10.2012
Анализ эффективности методов сортировки данных в языке Turbo Pascal. Разработка эскизного и технического проекта программы. Сортировка без и с использованием дополнительной памяти, за исключением небольшого стека (массива). Сортировка связанных списков. курсовая работа [359,0 K], добавлен 23.05.2012
Анализ предметной области объектно-ориентированного программирования. Языки Delphi, Object Pascal - объектно-ориентированная среда программирования. Основные алгоритмические решения. Решение дифференциального уравнения методом Рунге-Кутта в среде Excel. курсовая работа [1,5 M], добавлен 02.04.2011
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .

© 2000 — 2021



Разработка программы на языке Turbo Pascal 7.0 для решения дифференциальных уравнений курсовая работа. Программирование, компьютеры и кибернетика.
Отчет по практике по теме Организация учетной работы на предприятии
Сочинение по теме Интеллигенция в революции (по роману Б. Пастернака “Доктор Живаго”)
Реферат На Тему Философия А Ф Лосева
Контрольная работа по теме Современный демографический потенциал России
Лучший День Осени Сочинение
Реферат: Ионосфера - Волшебное зеркало планеты
Реферат: Subliminal Advertising Is Fair To American Consumers
Расстройство Пищевого Поведения Реферат
Дипломная работа: Комплексный план охраны землепользования Ардатовского района Нижегородской области
Курсовая работа: Стратегия ценообразования. Скачать бесплатно и без регистрации
Курсовая работа по теме Технологический процесс производства детали 'Стакан'
Контрольная работа по теме Диспетчеризация автотранспортного предприятия
Публичные Выступления Реферат
Реферат На Тему Нарушение Функции Сосудов
Как Правильно Рассказывать Дипломную Работу
Реферат: Автоматизация системы управления цеха электросвязи 4 филиала ОАО Уралсвязьинформ
Культура Россия 17 Века Реферат
Реферат по теме Історія створення Державного Гімну України
Отзывчивость Сочинение 9.3
Военная служба, как особый вид государственной службы
Моделирование в управлении - Менеджмент и трудовые отношения курсовая работа
Методы логопедии - Педагогика дипломная работа
Имидж и PR-технологии в шоу-бизнесе - Маркетинг, реклама и торговля курсовая работа


Report Page