Математическое моделирование физических процессов
Курсовая работа, 04 Декабря 2011, автор: пользователь скрыл имя
Краткое описание
Данная работа рассматривает одну из самых востребованных в наше время областей математики. Ведь эта область позволяет прогнозировать природные и экономические явления, планировать транспортные и информационные потоки, а так же точно рассчитывать различные виды затрат. Без преувеличения можно назвать математическое моделирование — основным инструментом по проектированию человеческой цивилизации.
Целью данной работы является самостоятельное изучение метода математического моделирования, а также построение и исследование математической модели процесса движения точки средствами языка программирования Delphi.
Содержание работы
Введение
Глава 1. Задачи на определение кинематических характеристик движения точки
Глава 2. Реализация средствами среды программирования Delphi7
Заключение
Литература
Приложение
Содержимое работы - 1 файл
Копия курсовая.docx
— 581.37 Кб (Скачать файл) series3.AddArrow(xm,ym,x2,y2,'
series2.AddBubble(xm+(x2-xm)/
series3.AddArrow(xm,ym,x3,y3,'
series2.AddBubble(xm+(x3-xm)/
|
stringgrid1.Cells[0,1]:=
stringgrid1.Cells[1,1]:=
stringgrid1.Cells[2,1]:=
stringgrid1.Cells[3,1]:=
stringgrid1.Cells[4,1]:=
stringgrid1.Cells[5,1]:=
stringgrid1.Cells[6,1]:=
stringgrid1.Cells[7,1]:=
stringgrid1.Cells[8,1]:=
stringgrid1.Cells[9,1]:=
stringgrid1.Cells[10,1]:=
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
end.
Заключение
В ходе выполнения работы изучен метод математического моделирования. Средствами интегрированной среды разработки Delphi 7 была создана программа, реализующая решение задачи на определение кинематических характеристик движения. Модель, зависящая от входного параметра − времени, представлена в виде графика и таблицы. Основными компонентами программы являются TStringGrid, TChart.
Считаю, что цель работы достигнута.
Литература
- Шеннон Р. Имитационное моделирование систем – искусство и наука: Пер.с англ. — М.: Мир, 1978. — 610 с.
- Блехман И. И., Мышкис А. Д., Пановко Н. Г. Прикладная математика: Предмет, логика, особенности подходов. С примерами из механики: Учебное пособие. — 3-е изд., испр. и доп. — М.: УРСС, 2006. — 376 с.
- Введение в математическое моделирование. Учебное пособие. Под ред. П. В. Трусова. — М.: Логос, 2004.
- Жуков А. Изучаем Delphi. — СПб.:Питер, 2001. —352 с.
- Комашинская Т.С. Информатика. Часть 1. Учебное пособие — Уссурийск: Издательство УГПИ, 2007. — 96 с.
Приложение.
Исходный код программы.
unit curs;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, TeeProcs, TeEngine, Chart, StdCtrls, Series, BubbleCh,
ArrowCha, Grids, math;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Chart1: TChart;
Series1: TFastLineSeries;
Series2: TBubbleSeries;
Edit1: TEdit;
Label1: TLabel;
Series3: TArrowSeries;
StringGrid1: TStringGrid;
Label2: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure
FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
a,b,h,x,t,xm,ym,vx,vy,v,ax,ay,
a1,b1,c1,d1,x1,y1,r1: real;
a2,b2,c2,d2,x2,y2,r2: real;
a3,b3,c3,d3,x3,y3,r3: real;
m,i: integer;
y: array[1..200] of
real;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
stringgrid1.Cells[0,0]:='x';
stringgrid1.Cells[1,0]:='y';
stringgrid1.Cells[2,0]:='Vx';
stringgrid1.Cells[3,0]:='Vy';
stringgrid1.Cells[4,0]:='V';
stringgrid1.Cells[5,0]:='Ax';
stringgrid1.Cells[6,0]:='Ay';
stringgrid1.Cells[7,0]:='A';
stringgrid1.Cells[8,0]:='At';
stringgrid1.Cells[9,0]:='An';
stringgrid1.Cells[10,0]:='q';
end;
procedure TForm1.Button1Click(Sender: TObject);
function f(x: real): real;
begin
f:=x*x-1;
end;
begin
series1.Clear;
series2.Clear;
series3.Clear;
a:= -3.5;
b:= 3.5;
h:= 0.1;
t:=StrToFloat(edit1.text);
xm:= 4*t; ym:= f(xm);
vx:= 4; vy:= 32*t;
v:= sqrt(vx*vx+vy*vy);
ax:= 0; ay:= 32;
ap:= sqrt(ax*ax+ay*ay);
at:= (vx*ax+vy*ay)/v;
an:= sqrt(ap*ap-at*at);
q:= v*v/an;
x:= a;
while x<=b do
begin
series1.AddXY(x,f(x));
x:=x+h;
end;
a1:=1+4*xm*xm;
b1:=-(6*xm+4*xm*xm*xm+4*xm*ym)
c1:=xm*xm+xm*xm*xm*xm+2*xm+1+
d1:=b1*b1-4*a1*c1;
x1:=(-b1+sqrt(d1))/(2*a1);
y1:=xm*xm-1+2*xm*(x1-xm);
a2:=1;
b2:=-2*xm-1/(2*xm);
c2:=xm*xm+0.25-(an/10)*(an/10)
d2:=b2*b2-4*a2*c2;
x2:=(-b2-sqrt(d2))/(2*a2);
y2:=ym-x2/(2*xm)+0.5;
a3:=1;
b3:=-2*ym;
c3:=ym*ym-(ap/10)*(ap/10);
d3:=b3*b3-4*a3*c3;
y3:=(-b3+sqrt(d3))/(2*a3);
x3:=xm;
series2.AddBubble(xm,ym,0.1);
series3.AddArrow(xm,ym,xm+vx/
series2.AddBubble(xm+vx/4-0.5,
series3.AddArrow(xm+vx/4,ym,
series2.AddBubble(xm+vx/4+0.2,
series3.AddArrow(xm,ym,xm+vx/
series2.AddBubble(xm+vx/4-0.4,
series3.AddArrow(xm,ym,x1,y1,'
series2.AddBubble(xm+(x1-xm)/
series3.AddArrow(xm,ym,x2,y2,'
series2.AddBubble(xm+(x2-xm)/
series3.AddArrow(xm,ym,x3,y3,'
series2.AddBubble(xm+(x3-xm)/
stringgrid1.Cells[0,1]:=
stringgrid1.Cells[1,1]:=
stringgrid1.Cells[2,1]:=
stringgrid1.Cells[3,1]:=
stringgrid1.Cells[4,1]:=
stringgrid1.Cells[5,1]:=
stringgrid1.Cells[6,1]:=
stringgrid1.Cells[7,1]:=
stringgrid1.Cells[8,1]:=
stringgrid1.Cells[9,1]:=
stringgrid1.Cells[10,1]:=
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
end.