Курсовая

Курсовая на тему Моделирование физических процессов

Работа добавлена на сайт bukvasha.net: 2014-12-11

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 22.11.2024


ГОУ ВПО “Сибирский государственный университет телекоммуникаций и информатики”
Уральский технический институт связи и информатики (филиал)
Кафедра информационных систем и технологий
Моделирование физических процессов
Екатеринбург 2009

Оглавление
Введение
Математическая модель
Описание теории применяемой к задаче
Блок – схемы
Листинг программы
Фотография графика
Решение задачи в MathCAD
Вывод
Литература

Введение
Благодаря данной курсовой работе, я получу основные навыки: в моделирование физических процессов, грамотного распределения информации и грамотного использования возможностей языка программирования Pascal.
Курсовая работа является первой объёмной самостоятельной работой для меня в роли программиста. Эта работа завершает подготовку по дисциплине “Программирование на языках высокого уровня” и становится базой для выполнения последующих курсовых проектов по специальным дисциплинам. После выполнения данной курсовой работы, я рассчитываю научиться строить графики функций, работать в MathCAD, и понимать геометрический смысл методов: Эйлера модифицированного и Рунге-Кутта.

Математическая модель, постановка задачи
1.                Обсчитать первую точку методами Рунге – Кутта и Эйлера модифицированного.
2.                Построить график к первой точке.
3.                Составить блок - схемы.
4.                Написать программу.
5.                Построить график в MathCAD.
6.                Сделать выводы
Описание теории применяемой к задаче
Метод Рунге – Кутта. Теория:
Пусть дано дифференциальное уравнение первого порядка
 QUOTE    = f(x, y), с начальным условием y( QUOTE   ) =  QUOTE   .
Выберем шаг h и введём обозначения:
 QUOTE    =  QUOTE    + i*h,  QUOTE    = y( QUOTE   ), где
 i = 0, 1, 2, …
 QUOTE    - узлы сетки,
 QUOTE    – значение интегральной функции в узлах.
Аналогично Модифицированного метода Эйлера решаем дифференциальное уравнение. Отличие состоит в делении шага на 4 части.
Согласно методу Рунге – Кутта 4 порядка, последовательные значения  QUOTE    искомой функции y определяются по формуле:  QUOTE    =  QUOTE    + ∆y, где

QUOTE    =  QUOTE   ( QUOTE   + 2  QUOTE    + 2 QUOTE    +  QUOTE   ), I = 0, 1, 2, …
А числа  QUOTE   ,  QUOTE   ,  QUOTE   ,  QUOTE    на каждом шаге вычисляются по формулам:
 QUOTE   h* f( QUOTE   ,  QUOTE   )
 QUOTE   ,  QUOTE   )
 QUOTE   ,  QUOTE   )
 QUOTE   h* f( QUOTE   ,  QUOTE    + QUOTE   )
Обсчёт первой точки методом Рунге - Кутта:
Заданно уравнение движения материальной точки:  QUOTE    = x*sin(t), с условием
t 0 =1, t к =1.4, h = 0.05, x 0 =2. Необходимо построить физическую и математическую модель движения.
tg(a) = x*sin(t) = 2*sin(1)= 1.6829
/(a) = 1.0346
t(b) = 1.6829 + 0.125 = 1.8079
x(b) = 2+0.125*1.8079 = 2.2259
tg(b) = 2.2259*sin(1) = 1.8730
/(b) = 1.0803
t(c) = 1.6829 + 0.025 = 1.7079
x(c) = 2 + 0.025*(1.7079) = 2.0426
tg(c) = 2.0426*sin(1) = 1.7187
/(c) = 1.0438
t(d) = 1.6829 + 0.0375 = 1.7204
x(d) = 2 + 0.0375*1.7204 = 2.0645
tg(d) = 2.0645*sin(1) = 1.7372
/(d) = 1.0484

Метод Эйлера модифицированный
Теория:
Пусть дано дифференциальное уравнение первого порядка
 QUOTE    = f(x, y), с начальным условием y( QUOTE   ) =  QUOTE   .
Выберем шаг h и введём обозначения:
 QUOTE    =  QUOTE    + i*h,  QUOTE    = y( QUOTE   ), где
 i = 0, 1, 2, …
 QUOTE    - узлы сетки,
 QUOTE    – значение интегральной функции в узлах.
1)                Обозначим точки: A( QUOTE   , QUOTE   ), C( QUOTE   +h/2,  QUOTE   +h/2*f( QUOTE   , QUOTE   )) и B( QUOTE   , QUOTE   ).
2)                Через точку A проведем прямою под углом a, где
Обсчёт точки модифицированным методом Эйлера
Заданно уравнение движения материальной точки:  QUOTE    = x*sin(t), с условием
t 0 =1, t к =1.4, h = 0.05, x 0 =2. Необходимо построить физическую и математическую модель движения.
A(1; 2)
tg(a) = x*sin(t) = 2*sin(1)= 1.682
/(a) = 1.034
 QUOTE    =  QUOTE    +  QUOTE    * f( QUOTE   ,  QUOTE   )
 QUOTE    = 2 + 0.025*(1.6829) = 2.042
C(0.025; 2.042)
tg(c) = x*sin(t) = 2*sin(1.025) = 1.709
/(c) = 1.041
 QUOTE   =  QUOTE   +h*f( QUOTE   +  QUOTE   ;  QUOTE   + QUOTE   *f( QUOTE   ; QUOTE   ))
 QUOTE    = 2 + 0.05*(1.041) = 2.05205
Листинг программы:
Uses crt,graph,graph0;
const
h=0.05;
var
gd,gm,n,i,j:integer;
a,b,k1,k2,k3,k4,d,g,c:real;
Xf:array[1..50] of integer;
Yf:array[1..50] of integer;
begin
clrscr;
a:=0;
b:=1.4;
n:=abs(round((a-b)/h));
readln;
writeln(' x= y= ');
writeln;
c:=2;
d:=0;
for j:=1 to n do
 begin
 k1:=h*c*sin(d);
 k2:=h*(c+0.5*k1)*sin(d+0.5*h);
 k3:=h*(c+0.5*k2)*sin(d+0.5*h);
 k4:=h*(c+k3)*sin(d+h);
 g:=k1+2*k2+2*k3+k4;
 Xf[j]:=round(100*d);
 Yf[j]:=round(100*c);
 if (j=1) or (j=2) or (j=3) or (j=4)
 or (j =5) or (j=6) or (j=7) or (j=8) or (j=9) then
 begin
 write(' ');
 write(j);write('. '); write(d);write(' ');writeln(c);
 delay(3000);
 end
 else
 begin
 write(j);write('. '); write(d);write(' ');writeln(c);
 delay(2000)
 end;
 d:=d+h;
 c:=c+g/6;
 end;
readln;
gd:=detect;
init('c:\tp70\bgi');
setbkcolor(15);
setcolor(3);
line(0,240,640,240);
line(320,0,320,480);
for i:=1 to n do
 begin
 if i+1<=n then
 begin
 setlinestyle(0,0,3);
 setcolor(7);
 line(320+Xf[i],Yf[i]-160,320+Xf[i+1],Yf[i+1]-160);
 putpixel(460,240,15);
 putpixel(320,40,15);
 putpixel(Xf[i]+320,Yf[i]-160,0);
 end;
 end;
readln;
closeGraph;
end.
Таблица измерений в Pascal, Mathcad:
t
X1
X2
Xm
2
2,077
2,1
2,16
2,2
2,247
2,3
2,341
2,4
2,44
2,5
2,545
2,6
2,656
2,7
2,773
2,8
2,896
X1 – метод Эйлера модифицированный, X2 – метод Рунге – Кутта, Xm – решение в Mathcad
Решение в Mathcad.



Вывод
В результате проделанной работы, я научился решать дифференциальные уравнения и строить к ним график, еще я научился решать такие уравнения в среде Turbo Pascal. Узнал, как решать различные уравнения в MathCAD. Еще я понял, как можно строить различный функции по точкам, с помощью циклов. Так же я понял, как нужно правильно масштабировать графики, в зависимости от заданной функции. Вследствие того, что данная курсовая, была для меня первой серьезной и объемной работой, я научился оформлять серьезные работы.

Список литературы
1.    Демидович Б.П., Марон И.А., Шувалова Э.З., Численные методы анализа: Физматгиз, 1963.
2.    Немюгин С.А. turbo Pascal. Практикум – СПБ.: Питер, 2009.
3.    Немюгин С.А. turbo Pascal. Программирование на языке высокого уровня: Учебник для вузов. – СПБ.: Питер, 2005.
4.    М.М. Боженова, Л.А.Москвина.
5.    Практическое программирование. Приемы создания программ на языке Паскаль.
6.    Основные процедуры и функции модуля graph: http://rsc-team.ru/cgi-bin/index.pl?rzd=2&group=lection&ind=21

1. Реферат на тему Sesame Street And The Death Of Reading
2. Реферат Тенденції висотних міст у містобудуванні
3. Сочинение на тему Пушкин а. с. - К чаадаеву а. с. пушкина
4. Реферат Финские братские войны
5. Тесты на тему Классицизм XVII XVIII
6. Реферат на тему Каббала и экономика рациональность человека экономического и рациональность человека каббалистического
7. Реферат Організація та практика комерційної реклами
8. Реферат Роль М. В. Ломоносова в развитии медицины и фармации
9. Реферат на тему Владимир Высоцкий
10. Реферат Автоматизация работы кинотеатра