Шпоры - Компьютерное моделирование - файл n26.doc

приобрести
Шпоры - Компьютерное моделирование
скачать (6657.8 kb.)
Доступные файлы (26):
n1.db
n2.jpg628kb.12.05.2010 08:18скачать
n3.jpg220kb.12.05.2010 08:47скачать
n4.jpg172kb.12.05.2010 08:48скачать
n5.jpg490kb.12.05.2010 08:51скачать
n6.jpg306kb.12.05.2010 08:52скачать
n7.jpg195kb.12.05.2010 09:01скачать
n8.jpg214kb.12.05.2010 09:02скачать
n9.jpg250kb.12.05.2010 09:02скачать
n10.jpg428kb.12.05.2010 09:03скачать
n11.jpg417kb.12.05.2010 09:03скачать
n12.jpg374kb.12.05.2010 09:04скачать
n13.jpg221kb.12.05.2010 09:04скачать
n14.jpg306kb.12.05.2010 09:04скачать
n15.jpg505kb.12.05.2010 08:24скачать
n16.jpg185kb.12.05.2010 08:24скачать
n17.jpg274kb.12.05.2010 08:29скачать
n18.jpg134kb.12.05.2010 08:31скачать
n19.jpg250kb.12.05.2010 08:32скачать
n20.jpg148kb.12.05.2010 08:33скачать
n21.jpg399kb.12.05.2010 08:35скачать
n22.jpg270kb.12.05.2010 08:38скачать
n23.jpg621kb.12.05.2010 08:44скачать
n24.jpg314kb.12.05.2010 08:43скачать
n25.jpg344kb.12.05.2010 08:45скачать
n26.doc607kb.12.05.2010 09:05скачать
Победи орков

Доступно в Google Play

n26.doc

1. Понятие об инфрм. мадел-ии. Разл. подходы к опред-ю пон-я «инф. модел-е». С т.з. инф-ки, решение любой задачи описывается след. «реальный объект - модель - алгоритм - программа - результаты – реал. объект». В этой цепочке очень важную роль играет звено «модель», как необходимый, обязательный этап решения этой задачи. Под моделью при этом понимается нек. мысленный образ реал. объекта (системы), отражающий существ. св-ва объекта и заменяющий его в процессе реш-я задачи. Модель - очень широкое понятие, включающее в себя мн-во сп-бов представления изучаемой реал-сти. Разл-ют модели материальные (натурные) и идеальные (абстрактные). Матер. модели основываются на чем-то объективном, существующем независимо от чел. сознания. Матер. модели делят на физические (например авиамодели) и аналоговые, основанные на процессах, аналогичных в каком-то отн-нии изучаемому (напр-р, процессы в электр. цепях оказываются аналогичными многим механическим, химическим, биол-ким и даже соц-­ным процессам и м.б. исп-ны для их модел-ния). Идеальные модели: интуитивные модели, напр-р, произведения искусства - живопись и т.д., но единого подхода к класс-ции остальных видов идеальных моделей нет. Иногда эти модели все разом относят к информационным. В основе такого подхода лежит расширительное толкование понятия «инф-ция»: «инф-цией явл. почти все на свете, а м.б., даже вообще все». Такой подход является не вполне оправданным, так как он переносит инфор. природу познания на суть используемых в процессе моделей-при этом любая модель явл. информа­ционной. Более продуктивным представляется такой подход к класс-ции идеальных моделей, при кот. разл-ют следующие.1. Вербальные (текстовые) модели. Эти модели исп-ют послед-ти предложений на формализованных диалектах естест. языка для описания той или иной области действ-ти (пр-ры: правила дорожного движения, настоящий учебник).2. Мат. модели - очень широкий класс знаковых моделей (основанных на формальных языках над конечными алфавитами), широко исполь­зующих те или иные мат. методы. Нап-р: мат. модель звезды. Сл. система ур-ний, описывающих физ. процессы, происходящие в недрах звезды.3. Информац. модели - класс знаковых моделей, описывающих информа­ц. процессы (возникновение, передачу, преобразование и использование информации) в системах самой разнообр. природы. Граница м\у вербальными, мат-кими и информационными моделями может быть проведена весьма условно; возможно, информац. модели следовало бы считать подклассом мат-ких моделей. Однако, в рамках инф-ки как самост. науки, отдельной от мат-ки, физики, лингвистики и др. наук, выделение класса информационных моделей является целесообразным. Инф-ка имеет самое непосредственное отнош-ие и к мат.моделям, поскольку они явл. основой прим-я компьютера при реш-и задач разл. природы: мат. модель исследуемого процесса или явл-я на определ. стадии исслед-ния преобразуется в компьютерную (вычисл-ную) модель, кот-я затем превращается в алгоритм и комп. программу. Опр-ния простейших понятий инфор. модел-ния: Экземпляр-представ-е предмета реал. мира с помо­щью нек. набора его харак-к, существенных для решения данной информац. задачи. Мн-во экземпляров, имеющих одни и те же харак-ки и подчи­няющиеся одним и тем же правилам. наз. объектом. Т.о., объект есть абстракция предметов реал. мира, объединяемых общ. харак-ками и поведением. Кажд. объект в модели д. б. обеспечен уникальным и значимым именем. Бол-во объектов, с кот-ми приходится встречаться, отн-ся к одной из след. категорий: Реальней объект, Роль,Событие,Взаимодействия,Объекты-спецификации

3.Структуры данных:список. виды списков. пример обработки списка.

В языках программ-ния (Pascal, C, др.) существует способ выделения памяти под данные, который называется динамическим. В этом случае память под величины отводится во время выполнения программы. Такие величины будем называть динамическими. Раздел оперативной памяти, распределяемый статически, называется статической памятью; динамически распределяемый раздел памяти называется динамической памятью (динамически распределяемой памятью). Согласно определению, список располагается в динамически распределяемой памяти, в статической памяти хранится лишь указатель на заглавное звено. Структура, в отличие от массива, является действительно динамической: звенья создаются и удаляются по мере необходимости, в процессе выполнения программы.В общем виде объявление выглядит так. Type U = ^Zveno;

Zveno = Record Inf : BT; Next: U End; здесь BT — некоторый базовый тип элементов списка. Если указатель ссылается только на следующее звено списка,то такой список называют однонаправленным, если на следующее и предыдущее звенья — двунаправленным списком. Если указатель в последнем звене установлен не в Nil, а ссылается на заглавное звено списка, то такой список называется кольцевым. Кольцевыми могут быть и однонаправленные, и двунаправленные списки. Более подробно рассмотрим работу со связанными списками на примере однонаправленного некольцевого списка. Выделим типовые операции над списками: добавление звена в начало списка; удаление звена из начала списка; добавление звена в произвольное место списка, отличное от начала (например, после звена, указатель на которое задан); удаление звена из произвольного места списка, отличного от начала (например, после звена, указатель на которое задан); проверка, пуст ли список; очистка списка;печать списка.Приведём полный текст модуля.

Unit Spisok;

Interface

Type BT = LongInt;

U = ^Zveno;

Zveno = Record Inf : BT; Next: U End;

{добавляет элемент в начало списка, Firstуказатель на начало списка, Xнекоторое значение}

Procedure V_Nachalo(Var First : U; X : BT);

{удаляет первый элемент из списка и возвращает его значение в переменную Х}

Procedure Iz_Nachala(Var First : U; Var X : BT);

{вставляет новое звено в список со значением Х перед звеном Pred}

Procedure V_Spisok(Pred : U; X : BT);

{удаляет из списка звено на которое указывает предыдущее звено Pred и возвращает значение X}

Procedure Iz_Spiska(Pred : U; Var X : BT);

{Удаляет из списка все элементы}

Procedure Ochistka(Var First: U);

{функция возвращает значение true, если в списке нет ни одного элемента}

Function Pust(First : U) : Boolean;

{выводит список на экран}

Procedure Print(First : U);

Implementation

Procedure V_Nachalo;

Var Vsp : U

Begin New(Vsp);

Vsp^.Inf := X; Vsp^.Next := First;

First := Vsp; End;

Procedure Iz_Nachala;

Var Vsp : U;

Begin

Vsp := First;

First := First^.Next;

X := Vsp^.Inf;

Dispose(Vsp); End;

Procedure V_Spisok;

Var Vsp : U;

Begin New(Vsp);

Vsp^.Inf := X;

Vsp^.Next := Pred^.Next;

Pred^.Next := Vsp; End;

Procedure Iz_Spiska;

Var Vsp : U;

Begin Vsp := Pred^.Next;

Pred^.Next := Pred^.Next^.Next;

X := Vsp^.Inf;

Dispose(Vsp); End;

Procedure Ochistka;

Var Vsp : BT;

Begin

While Not Pust(First) Do Iz_Nachala(First, Vsp)

End;

Function Pust;

Begin Pust := First = Nil End;

Procedure Print;

Var Vsp : U;

Begin Vsp := First;

While Vsp <> Nil Do

Begin

Write(Vsp^.Inf : 6);

Vsp := Vsp^.Next

End;

WriteLn End;

Begin

End.
 

4.Стр-ры данных:стек. пр-р исп-ния стека.

Стек—динам. стр-ра данных, представляющая из себя упорядоченный набор эл-тов, в которой добавление новых эл-тов и удаление существующих производится с одного конца, называемого вершиной стека. Наиболее наглядным примером организации стека служит детская пирамидка, где добавление и снятие колец осуществляется как раз согласно определению стека. Стек можно организовать на базе линейного массива, файла, однако чаще для этого испульзуется однонаправл. список, причём в качестве вершины стека выберем начало этого списка. Выделим типовые операции над стеком: добавление элемента; извлечение элемента; проверка, пуст ли стек; очистка стека. Реализуем эти операции.

Unit Stack;

Interface

Type BT = LongInt;

U = ^Zveno;

Zveno = Record Inf : BT; Next: U End;

{добавляет элемент в вершину стек, Firstуказатель на начало стека, Xнекоторое значение}

Procedure V_Stack(Var First : U; X : BT);

{удаляет элемент из вершины стека и возвращает его значение в переменную X}

Procedure Iz_ Stack (Var First : U; Var X : BT);

{удаляет все элементы стека}

Procedure Ochistka(Var First: U);

{функция возвращает значение true, если в стеке нет ни одного элемента}

Function Pust(First : U) : Boolean;

Procedure Print(First : U);

Implementation

Procedure V_ Stack;

Var Vsp : U

Begin New(Vsp);

Vsp^.Inf := X; Vsp^.Next := First;

First := Vsp; End;

Procedure Iz_ Stack;

Var Vsp : U;

Begin

Vsp := First;

First := First^.Next;

X := Vsp^.Inf;

Dispose(Vsp); End;

Procedure Ochistka;

Var Vsp : BT;

Begin

While Not Pust(First) Do Iz_Satck(First, Vsp)

End;

Function Pust;

Begin Pust := First = Nil End;

Procedure Print;

Var Vsp : U;

Begin Vsp := First;

While Vsp <> Nil Do

Begin

Write(Vsp^.Inf : 6);

Vsp := Vsp^.Next

End;

WriteLn End;

Begin

End.
5. Очередь—это инф-ная стр-ра, в кот-ой для добавления эл-в доступен только один конец, называемый хвостом, а для удаления—другой, называемый головой. Т.е. новый элемент добавляется в начало очереди, а извлекается элемент с конца очереди. Очередь разумнее всего моделировать, отобразив её на двунаправленный кольцевой список. В этом случае в заглавном звене будет присутствовать инф-ция как об указателе на голову, так и на хвост очереди. Выделим типовые операции над очередями: добавление элемента в очередь (помещение в хвост);удаление элемента из очереди (удаление из головы);проверка, пуста ли очередь; очистка очереди.Вот модуль, содержание кот-го сост-ют реализованные типовые операции над очередями.

Unit Spisok2;

Interface

Type BT = LongInt;

U = ^Zveno;

Zveno = Record Inf : BT; N, P: U End;

{добавляет элемент в начало очереди, Firstуказатель на начало очереди, Xнекоторое значение

Procedure V_Och(Var First : U; X : BT);

{удаляет элемент из очереди и возвращает его значение в переменную X}

Procedure Iz_Och(Var First : U; Var X : BT);

{удаляет все элементы из очереди}

Procedure Ochistka(Var First: U);

{функция возвращает значение true, если в очереди нет ни одного элемента}

Function Pust(First : U) : Boolean;

Implementation

Procedure V_Och;

Var Vsp : U;

Begin

New(Vsp);

Vsp^.Inf := X;

If First = Nil

then begin Vsp^.N := Vsp; Vsp^.P := Vsp;

First := Vsp end

else begin Vsp^.N := First; Vsp^.P := First^.P;

First^.P^.N := Vsp; First^.P := Vsp; end;

End;

Procedure Iz_Och;

Var Vsp : U;

Begin

x:=first^.inf;

if First^.p=first

then begin

dispose(first);

first:= nil end

else begin

Vsp := First;

First := First^.N;

First^.P := Vsp^.P;

Dispose(Vsp) end

End;

Procedure Ochistka;

Var Vsp : BT;

Begin

While Not Pust(First) Do Iz_Och(First, Vsp)

End;

Function Pust;

Begin

Pust := First = Nil End;

Begin

End.
6.Стр-ра данных: двоичное дерево. Дерево поиска. Осн. операции. 

Дерево—это совок-ть эл-ов, наз-мых узлами (при этом один из них определен как корень), и отн-ний (родительский–дочерний), образующих иерархическую стр-ру узлов. Узлы, кот-е не имеют ни одного последующего узла, наз. листьями. В двоичном (бинарном) дереве каждый узел м.б. связан не более чем c двумя др. узлами. Рекурсивно двоичное дерево опред-ся так: двоичное дерево бывает либо пустым (не содержит ни одного узла), либо содержит узел, наз-мый корнем, а также два независимых поддерева—левое и правое. Двоичное дерево поиска – дерево обладающее с-вом: корневой эл-т имеет большее значение узла, чем любой эл-т в левом поддереве, и меньшее или равное, чем эл-ты в правом поддереве. Указанное св-во наз. характеристическим св-вом двоичного дерева поиска и вып-ся для любого узла такого дерева, включая корень. Далее будем рассм. только двоичные деревья поиска. Такое название дв. деревья поиска получили по той причине, что скорость поиска в них примерно такая же, что и в отсортированных массивах: O(n) = C • log2n (в худшем случае O(n) = n).Выделим типовые операции над дв.деревьями поиска: добавл-е эл-та в дерево; удал-е эл-та из дерева; обход дерева; поиск в дереве. Поскольку опред-ние дв. дерева рекурсивно, то все указанные типовые операции м.б. реализованы в виде рекурсивных подпрограмм. Пусть дв. дерево поиска описывается следующим типом Type BT=LongInt; U = ^BinTree; BinTree = Record Inf : BT; L, R : U End; Покажем два варианта добавления элемента в дерево: итеративный и рекурсивный.

{Итеративный вариант добавления элемента в дерево, }

Procedure InsIteration(Var T : U; X : BT);

Var vsp, A : U;

Begin

New(A); A^.Inf := X; A^.L:=Nil; A^.R := Nil; vsp:=nil;

If T=Nil Then T:=A

Else Begin vsp := T;

While vsp <> Nil Do

If A^.Inf < vsp^.Inf

Then If vsp^.L=Nil

Then Begin vsp^.L:=A; vsp:=A^.L End

Else vsp:=vsp^.L

Else If vsp^.R = Nil

Then Begin vsp^.R := A; vsp:=A^.R End

Else vsp := vsp^.R;

End;

{Рекурсивный вариант добавления элемента в дерево}

Procedure InsRec(Var Tree : U; x : BT);

Begin

If Tree = Nil

Then Begin

New(Tree);

Tree^.L := Nil;

Tree^.R := Nil;

Tree^.Inf := x End

Else If x < Tree^.inf

Then InsRec(Tree^.L, x)

Else InsRec(Tree^.R, x)

End;

Сущ-вует неск. сп-бов обхода всех узлов дерева. Три наиболее часто исп-мых из них наз. обход в прямом (префиксном) порядке, обход в обратном (постфиксном) порядке и обход во внутреннем порядке (или симметричный обход). Каждый из обходов реал-ся с использованием рекурсии.

обратном порядке}

Procedure PrintTree(T : U);

begin

if T <> Nil

then begin PrintTree(T^.L); write(T^.inf:6); PrintTree(T^.R) end; end;

прямом порядке}

Procedure PrintTree(T : U);

begin

if T <> Nil

then begin write(T^.inf : 6); PrintTree(T^.L); PrintTree(T^.R) end;end;
Реализуем ф-цию, возвращающую true, если элемент присутствует в дереве, и false — в противном случае.

function find(Tree : U; x : BT) : boolean;

begin

if Tree=nil then find := false

else if Tree^.inf=x then Find := True

else if x < Tree^.inf

then Find := Find(Tree^.L, x)

else Find := Find(Tree^.R, x)

end;

По сравнению с предыдущими задача удаления узла из дерева реализуется неск-ко сложнее. В этом случае нужно заменить удаляемый эл-т самым правым элементом из его левого поддерева.

function Delete(Tree: U) : U;

var P, v : U;

begin

if (Tree=nil)

then writeln('такого элемента в дереве нет!')

else if x < Tree^.inf

then Tree^.L := Delete(Tree^.L, x)

else if x > Tree^.inf

then Tree^.R := Delete(Tree^.R, x)

else begin

P := Tree;

if Tree^.R=nil

then Tree:=Tree^.L

else if Tree^.L=nil

then Tree:=Tree^.R

else begin

v := Tree^.L;

while v^.R^.R <> nil do v:= v^.R;

Tree^.inf := v^.R^.inf;

P := v^.R;

v^.R :=v^.R^.L;

end;

dispose(P);

end;

Delete := Tree

end;
7. Пон-е о мат. моделир-нии. Этапы мат. моделир-ния. Класс-ция мат. моделей.

Мат. модели - очень широкий класс знаковых моделей (основанных на формальных языках над конечными алфавитами), широко исполь­зующих те или иные мат. методы. Мат. модель выражает существенные черты-объекта или процесса язы­ком уравнений и др. мат. средств. Собственно говоря, сама мат-­ка обязана своим существованием тому, что она пытается отразить, т.е. промодели­ровать, на своем специфическом языке закон-ти окружающего мира.

Этапы: I.Опред-е целей модел-ния. Основные из них таковы:1) (понимание) модель нужна для того, чтобы понять, как устроен конкретный объект, какова его структура, основные свойства, законы развития и взаимодействия с окружаю­щим миром; 2) (управление) модель нужна для того, чтобы научиться управлять объектом (или процессом) и определить наилучшие способы управления; 3) (прогнозирование) модель нужна для того, чтобы прогнозировать поведение объекта в тех или иных условиях.

II. Важнейшим этапом модел-ния явл. разделение входных параметров по степени важности влияния их изменений на выходные. Такой процесс называется ранжированием (разделением по рангам). Отбрасывание менее значимых факто­ров огрубляет объект модел-я и способ-ет пониманию его гл. св-в и закономерностей.

III.Поиск мат. описания. На этом этапе необходимо перейти от абстрактной формул-ки модели к формул-ке, имеющей конкретное мат. наполнение. В этот момент модель предстает перед нами в виде уравн-я, с-мы уравн-й, с-мы нерав-в, дифференциального ур-ния или с-мы таких уравнений и т.д.

V. Когда мат. модель сформулирована, выбираем метод ее исслед-я. Для реш-я одной и той же задачи есть неск. конкретных методов, различающихся эффективностью, устойчивостью и т.д. От верного выбора метода часто зависит успех всего процесса.

VI. Разработка алгоритма и составление программы для ЭВМ - это творческий и трудно формализуемый процесс. После составл-я программы решаем с ее помощью простейшую тестовую задачу. Затем следует собственно численный эксперимент, и выясняется, соответствует ли модель реальному объекту (процессу).

Класс-ция: 1. По отраслям наук (мат. модели в физике, биологии, социологии и т.д.). 2. По применяемому мат. аппарату (модели, основанные на прим-нии обыкн. дифф. ур-ий, дифф. ур-ний в частных производных, стохастических методов, дискрет­ных алгебр. преобразований и т.д.). 3. По целям моделирования:дескриптивные (описательные) модели (Моделируя дви­жение кометы, вторгшейся в Солнечную систему, мы описываем (предсказываем) траекторию ее полета, расстояние, на котором она пройдет от Земли и т. д. , т. е. ставим чисто описательные цели. •оптимизационные модели (В этом случае в модель входит один или неск. параметров, доступных нашему влиянию. Напр-р, меняя тепловой режим в зернохранилище, мы можем стремиться подобрать такой, чтобы достичь максим. сохранности зерна, т. е. оптимизируем процесс);•многокритериальные модели (Часто приходится оптимизировать процесс по неск. параметрам сразу, причем цели могут быть весьма противоречивыми. Напр-р, зная цены на про­дукты и потребность чел-а в пище, организовать питание больших групп людей как можно полезнее и как можно дешевле).•игровые модели (Полководец перед сражением в условиях наличия неполной инф-ции о противостоящей армии должен разработать план: в каком порядке вводить в бой те или иные части и т.д., учитывая и возм. реакцию противника. • имитационные модели (Модель в большой мере подражает реальному процессу. Пр-р – модел-ние движ-я молекул в газе, когда каждая молекула представляется в виде шарика, и задаются усл-я поведе­ния этих шариков при столкновении друг с другом и со стенками ; при этом не нужно использовать никаких ур-ний движ-ния.

8. Моделирование физич-х процессов:В физике выделяется третий фундаменталь­ный раздел - вычислительная физика (computational physics). Причина: ограниченные возможности решения задач традиционными методами. Например приходится решать системы большого числа уравнений или дифференциальные уравнения в частных производных. Численное мод-ние в физике называют вычисл-м эксп-том, т.к оно имеет много общего с лабораторным эксп-том. Численное моделирование позволяют пред­ставить их в максимально наглядной форме (в виде графиков, диаграмм, траекторий движения).

движение тела с учетом сопротивления среды: При реальных физических движениях тел в газовой или жидкостной среде трение накладывает огромный отпечаток на характер движения. Предмет, сброшенный с большой высоты, не движется равноускоренно, так как по мере набора скорости возрастает сила сопротивления среды. Сила сопротивления растет с ростом скорости. При относитель­но малых скоростях величина , где k1 опр-тся свойствами среды и формой тела. Например, для шарика - это формула Стокса, где  - динамическая вязкость среды. При гораздо меньших скоростях : . Линей­ная по скорости часть силы сопротивления формально также сохранится, но если , то можно пренебречь ( ранжирова­ние). пропорциональна площади сечения тела S, поперечного по отношению к потоку, и плотности среды и зависит от формы тела. Обычно представляют, где с – коэфф-т лобового сопр-ния - безразмерен. При достижении достаточно большой скорости, когда образующиеся за обте­каемым телом вихри газа или жидкости начинают интенсивно отрываться от тела, значение с в несколько раз уменьшается; для шара оно становится приблизительно равным 0,1. вывод:F(сопр) состоит: линейной и квадратичной части силы.
9. Системы диф.ур. и числен. методы их решения.

Пусть два согласов-х. проц-са описыв-ся ф-ями y1(x), y2(x). Система имеет вид . Нач. услов: y1(x0)=y1(0), y2(x0)=y2(0).(нижний индекс -№ ф-ции, верх-№ шага).

Метод Эйлера: y1(n+1)=y1(n)+h*f1(xn,y1(n),y2(n)), y2(n+1)=y2(n)+h*f2(xn,y1(n),y2(n)).

Эйлера-Коши: y1(n+1)=y1(n)+h/2*(f1(xn,y1(n),y2(n))+f1(xn,y1(n)+h*f1(xn,y1(n),y2(n)),y2(n)+h*f2(xn,y1(n),y2(n)))), y2(n+1)=y2(n)+h/2*(f2(xn,y1(n),y2(n))+f2(xn,y1(n)+h*f1(xn,y1(n),y2(n)),y2(n)+h*f2(xn,y1(n),y2(n)))).

Рунге-Кутта (3-его пор): y1(n+1)=y1(n)+0.25*(k11+2*k12+k13), y2(n+1)=y2(n)+ 0.25*(k21+2*k22+k23), k11=h*f1(xn,y1(n),y2(n)), k21=h*f2(xn,y1(n),y2(n)), k12=h*f1(xn+h/2,y1(n)+h/2*k11,y2(n)+h/2*k21), k22=h*f2(xn+h/2,y1(n)+h/2*k11,y2(n)+h/2*k21), k13=h*f1(xn+h,y1(n)+h*k12,y2(n)+h*k22), k23=h*f2(xn+h,y1(n)+h*k12,y2(n)+h*k22).

При использовании числ. методов интегриров-я диф. ур. могут возникнуть 2 неприятности: неустойч-ть и некорректность(неустойч-ть по отношению к нач. услов.). С повышением порядка метода повыш-ся устойч-ть метода в связи с тем, что в разложении формулы больше членов.

Проблема устойч-сти числ. методов порождает разл. подходы. Наиб. устойч-ю облад-т неявные (простейш-неявн. исправл. метод Э): если бы при получении формулы yn+1=y0+h/2*(f(xn,yn)+f(xn+h,yn+h*f(xn,yn))) в процессе “исправления” заранее знали yn+1 в след. точке, то исправление было бы таким: yn+1=yn+h/2*(f(xn,yn)+f(xn+h,yn+1)). Для непосредств. вычис-ния эта формула непригодна, т.к. yn+1 есть и в прав. части, но можно рассматр. как уравнение. Такого рода метод, в котором для значения решения в след.узле имеется не прямая, а уравнение, назыв. неявным. Это уравн. решают итерац. методами-простой итерацией: yn+1(k+1)=yn+h/2*(f(xn,yn)+f(xn+h,yn+1(k))),k=0,1..., Ньютона и др. При этом возникает проблема нач.прибл-я yn+1(0). В качестве его берут либо yn, либо находят с помощью какого-то явного метода.

10.Свободное падение с учетом сопротивления среды.
Мат модель движе­ния – Ур-ие 2-го закона Ньютона с учетом двух сил: тяжести и сопротивления среды: Где и . Проецируя векторное уравнение на вертик-ную ось, получаем . Вопрос на первом этапе: каков хар-р изменения скорости со временем, если все параметры, входящие в уравнение, заданы? Ясно, что при наличии сопротивления, растущего со скоростью, в какой-то момент сила сопр-ия сравняется с силой тяжести, после чего скорость больше возрастать не будет. Начиная с этого момента, и соответствующую скорость можно найти из , решая квадратное уравнение. Имеем , (отриц-ый отбрасываем). Итак, характер движения качественно таков: скорость при падении возрастает от до ; как и по какому закону - это можно узнать, лишь решив дифференциальное уравнение. Математическая модель выражается системой дифференциальных уравнений:

решается методам Эйлера:



Когда сравняются линейная и квадратичная оставляющие силы сопротивления: , чтоб, узнать, надо ли принимать во внимание линейную составляющую силы сопротивления.

11. Движение тела брошенного под углом к горизонту. Будучи бро­шенным под углом к горизонту с начальной скоростью, тело летит, если не учитывать сопротивления воздуха, по параболе, и через некоторое время падает на землю. Проецируя уравнение на оси х и у, получаем . Поскольку в каждой точке траектории сила сопротивления направлена по каса­тельной к траектории в сторону, противоположную движению, то , , где - угол между текущим направлением скорости и осью х. Подставляя это в уравнение и учитывая, что получаем уравнения движения в переменных : Поскольку траектория движения представляет несомненный интерес, допол­ним систему (7.12) еще двумя уравнениями и, решая их совместно будем получать разом четыре функции: .

12. Обезразмеривание и законы подобия.

Будучи бро­шенным под углом к горизонту с начальной скоростью, тело летит, если не учитывать сопротивления воздуха, по параболе, и через некоторое время падает на землю. Разложим скорость на горизонтальную и вертикальную составляющие: , . Поскольку движение по вертикали происходит под действием постоянной силы тяжести, то оно является равнозамедленным до достижения верхней точки на траектории и равноускоренным - после нее; движение же по горизонтали является равномерным. Из формул равноускоренного движения раз в верхней точке , то время достижения верхней точки на траектории . Высота этой точки . Полное время движения до падения на землю ; за это время, двигаясь равномерно вдоль оси х со скоростью , тело пройдет путь . Идея обезразмеривания заключается в переходе от абсолютных значений расстояний, скоростей, времен и т.д. к относительным, причем отношения строятся к величинам, типичным для данной ситуации. В рассматриваемой задаче это особенно хорошо просматривается. В самом деле, при отсутствии сопротивления воздуха мы имеем значения l, h, t, определенные выше; сопротивление воздуха изменит характер движения, и если мы введем в качестве переменных величины - безразмерные расстояния по осям и время, - то при отсутствии сопротивления воздуха эти переменные будут изменяться в диапазоне от 0 до 1, а в задаче с учетом сопротивления отличия их максимальных значений от единицы ясно характеризуют влияние этого сопротивления. Для скоростей естественно ввести безразмерные переменные: . Обезразмерим. Имеем: . Подставляя это в уравнение 2 (предыдущ. шпора), получаем или . Подставляя , получаем , где безразмерные комбинации параметров, входящих в исходные уравнения, . Выполним обезразмеривание во всех уравнениях. В результате получим (7.14). Начальные условия для безразмерных переменных таковы: . Важнейшая роль обезразмеривания - установление законов подобия. После обезразмеривания переменных появляются безразмерные комбинации параметров - в данном случае a, b, , - фактически определяющие характер движения. Если мы изучаем два разных движения но такие, что а, b и одинаковы, то движения будут качественно одинаковы. Число таких комбинаций обычно меньше числа размерных параметров (в данном случае вдвое), что также создает удобство при полном численном исследовании всевозможных ситуаций, связанных с этим процессом.

13. Движение тела с переменной массой: взлет ракеты.

Математическое описание - в основе все тот же второй закон Ньютона. Поскольку ракета очень быстро набирает столь высо­кую скорость, что линейной составляющей силы сопротивления заведомо можно пренебречь, то . Примем, что топливо расходуется равномерно вплоть до его полного выгорания, т.е. , где - начальная масса ракеты, - конечная, - расход топлива. Уравнение движения принимает вид -это ур-е (7.17). У нас есть значения величин . Необходимо учесть, что в коэффициент входит величина r - плотность окружающей среды, которая на «космических» высотах во много раз меньше, чем вблизи поверхности. Математически зависимость плотности атмосферы от высоты хорошо передается формулой , где (и измеряется в метрах, - плотность вблизи поверхности Земли). Поскольку величина h меняется в ходе полета, уравнение для изменения h(t) следует добавить к уравнению (7.17) и записать следующую систему дифференциальных уравнений: . Надо обезразмерить переменные. Естественной характерной скоростью является первая космическая скорость 7,8 км/с; характерное время - момент полной выработки горючего . За характерную высоту можно взять, h* - на которой плотность атмосферы уменьшается в 10 раз. Итак, введя безразмерные переменные , после несложных преобразований получим уравнения , где - известная функция: , а безразмерные параметры a,b,p,e,k выражаются через исходные так: . То, что определяется двумя формулами, связано с наличием двух этапов по­лета: до и после выработки топлива.

14. Движение небесных тел: (7.20). Здесь - гравитационная постоянная.

Рассмотрим движение одного из тел с точки зрения наблюдателя, находящегося на втором. Уравнение, описывающее движение тела m име­ет вид или в проекциях на оси х, у: Сведем к системе. . Обезразмерим. В качестве величин для обезразмеривания удобно принять характерное расстояние от Земли до Солнца , период круговой орбиты , соответствующий этому расстоянию, скорость движения по ней , т.е. принять . После обезразмеривания получаем (7.24). В безразмерных переменных уравнения вообще не содержат параметров. Единственное, что отличает разные режимы движения друг от друга - начальные условия. Можно доказать, что возможные траектории движения, описываемые уравне­ниями (7.24) - эллипс, парабола и гипербола.

16. Уравнение теплопроводности.

Пусть стержень линеен. Фиксируем точку и выделим малый участок стержня . Поток тепла тем больше чем больше разность температур |u1-u2|: . Тогда . Теперь запишем количество тепла, проходящее через сечение в . Он определяется той же формулой . Методом Эйлера вычислим . Отсюда . Если через сечения и прошло разное количество тепла то на нагревание ушло . Пусть температура участка изменилась на , тогда , где m-масса, с – удельная теплоемкость. Приравняем для два выражения: . Если представить и перейдя к пределу при получим . Или где . Для решения этой задачи нужны начальное условие (распределение температуры в некот. начальн. мом. времени ) и краевые условия(поддерживаемая температура на концах стержня и ).

17. Числен.мет.решения теплопр. Использ.сеточные методы,т.е. в рез-те будет получено решение указ-го ур-ия только в выбранных узлах сетки.Пусть перем-ая x может принять любое знач из отр[0,L].Разобьем на n равных частей с узлами в точках x0=0,x1=x0+x,...,xi=x0+ix,...,xn=x0+nx=L.Искомую ф-цию u(x) аппроксимируем знач. в узлах сетки. Аппр-ция первой производной в т.хi имеет вид:. Но не пригодна для крайних точек. Найдем односторонние разности для лев. точки: , для пр.точки:. Вторую производную заменяем также: ,

. Для интегр-ния по времени исп-ем метод Эйлера. Для этого нужна двойная индексация: верхние индексы – для измен. по врем(t)., нижн – по координате(x). , (где k=0,1,...,; i=1,2,...,n-1) – явная схема решения ур-ия теплопр. = f(xi), f(x)-задает нач.усл. Разностная схема устойчива не всегда, а только при .

Существует другая, абсолютно устойчивая схема.

Неявн. схема: +. Эта схема абсолютн. уст-ва и более эф-на. Но это формула непригодна для непосредст-го расчета. Ее решают при помощи системы линейных уравнений.

19. Генерация случайных чисел. При компьютерном моделировании случайных процессов нель­зя обойтись без наборов, так называемых, случайных чисел, удовлетворяющих заданному закону распределения. На самом деле эти числа генерирует компьютер по определенному алгоритму; такие числа называют «псевдослучайными». Рассмотрим вначале генерацию чисел равновероятно распределенных на неко­тором отрезке. Большинство программ - генераторов случайных чисел - выдают последовательность, в которой предыдущее число используется для нахождения последующего. Первое из них - начальное значение. Все генераторы случайных чисел дают последовательности, повторяющиеся после некоторого количества членов, называемого периодом, что связано с конечной длиной машинного слова. Самый простой и наиболее распространенный метод - метод вычетов в котором очередное случайное число х опреде­ляется «отображением». Xn=(axn-1+c)mod m (*) где а, с, т - натуральные числа. Наибольший возможный период датчика равен т; однако, он зависит от а и с. Ясно, что чем больше период, тем лучше; однако реально наибольшее т ограничено разрядной сеткой ЭВМ. В любом случае используемая в конкретной задаче выборка случайных чисел должна быть короче периода, иначе задача будет решена неверно. Заметим, что обычно генераторы выдают отношение - xn/m, которое всегда меньше 1, т.е. генерируют последовательность псевдослучайных чисел на отрезке [0,1]. Располагая датчиком случайных чисел, генерирующим числа r  [0. I], легко получить числа из произ­вольного интервала [a,b]: x=a+(b-a)*r. Более сложные распределения часто строятся с помощью распределения равно­мерного. Рассмотрим метод Неймана (метод отбора-отказа), в основе которого лежит про­стое геометрическое соображение. Допустим, что необходимо генерировать случай­ные числа с некоторой нормированной функцией распределения f(x) на интервале [a b]. Введем положительно определенную функцию сравнения w(х) такую, что w(х)=const и w(x)>f(х) на [a b] (обычно w(х) равно максимальному значению f(х) на [a b]). Поскольку площадь под кривой f(x) равна для интервала [х, х + dх] вероятности попадания х в этот интервал, можно следовать процедуре проб и ошибок. Генерируем два случайных числа, определяющих равновероятные коорди­наты в прямоугольнике АВСD с помощью датчика равномерно распределенных случайных чисел: x=a+(b-a)*r, y=w*r и если точка М(х, у) не попадает под кривую f(х), мы ее отбрасываем, а если попадает – оставляем. При этом множество координат х оставленных точек оказывается распределенным в соответствии с плотностью вероятности f(x).

20. Моделирование случайных процессов в системах массового обслуживания. Компьютерное моделирование при решении задач массового обслуживания, реализуемое в виде метода статистических испытаний играет важную роль. Рассмотрим одну задачу данного класса. Имеется магазин с одним продавцом, в который случайным образом входят покупатели. Если продавец свободен, он начинает обслуживать покупателя сразу, если покупателей несколько, выстраивается очередь. Итак, на входе этой задачи случайный процесс прихода покупателей в магазин. Промежутки между приходами любой последова­тельной пары покупателей - независимые случайные события, равновероятные в диапазоне времени от 0 до некоторого. При этом распределении вероят­ность того, что между приходами двух покупателей пройдет 1 минута, 3 минуты или 8 минут одинакова (если Т>8). Второй случайный процесс в этой задаче, никак не связанный с первым, сводится к последовательности случайных событий - длительностей обслуживания каждого из покупателей. Для распределение вероятностей вполне уместно принять аналогичную модель равновероятного распределения. При проведении испытания мы получим два массива чисел: А – промежутки между при­ходами покупателей, В - длительности обслуживания. Из этих данных можно составить, например, такие массивы: F - длительность времени, проведенного покупателем в магазине в целом, G - в очереди в ожидании обслуживания, Н - время, проведенное продавцом в ожидании покупателя. Практическое значение задач об очередях - стремление ра­ционально построить обслуживание потребителей. Поэтому возникает необходимость изучить, например, такие случайные величины как G и H. Для построе­ния методом статистических испытаний распределений величин G и Н поступим так: найдем в достаточно длинной серии испытаний (реально - в десятках тысяч, что на компьютере делается достаточно быстро) значения gmax (для Н все делается аналогично) и разделим промежуток [0, gmax] на т равных частей - скажем, вначале на 10 - так, чтобы в каждую часть попало много значений gi,. Разделив число попада­ний nk в каждую из частей на общее число испытаний n, получим набор чисел pk=nk/n, где (k=1,2,…,m). Построенные по ним гистограммы дают представление о функциях плотностей вероятности соответствующих распределений. По ним уже можно получить ответы на такие вопросы, как сильно ли загружен продавец или же он гад все время «прохлаждается».

21. Мат. модели в экологии. Классическая экология - наука о взаимодействии организмов и окружающей среды. В классической экологии рассматриваются взаимодействия нескольких типов: • взаимодействие организма и окружающей среды; • взаимодействие особей внутри популяции; • взаимодействие между особями разных видов (между популяциями). Математические модели помогают установить некоторые общие закономерности развития отдельных популяций. Привлечение компьютеров существенно раздвинуло границы моделирования. Возникли принципиально новые направления, и прежде всего - имитационное моделирование. Модели внутривидовой конкуренции. Популяция — совокупность особей одного вида, существующих в одно и то же время и занимающих определенную территорию. Взаимодействие особей внутри популяции определяется внутривидовой конку­ренцией, между популяциями — межвидовой конкуренцией. ВК в популяции с дискретным размножением. Простейшая из указанных моделей для вида с дискретными перио­дами размножения, в которой численность популяции в момент времени t равна Nt, и изменяется во времени пропорционально величине основной чистой скорости воспроизводства R Коэффициент R характеризует количество особей, которое воспроизво­дится в расчете на одну существующую. Данная модель может быть выражена уравнением (1), его решение где N0 - начальная численность популяции. Если R>1 то численность будет расти неограниченно.

Конкуренцию можно определить как использование некоего ограниченного ресурса (пищи, во­ды, света, пространства). Скорость воспроизводства в результате конкуренции снижается с ростом популяции. Этой гипотезе отвечает формула . Суть этой модели в том что константа R заменена на фактическую скорость воспроизводства, т.е. , которая уменьшается по мере роста Nt. Из этой формулы может быть получена более общая формула, учитывающая интенсивность конкуренции: . Параметр b определяет тип зависимости падения скорости роста популяции от ее численности. При численном моделировании, меняя b и R, можно получить различные решения см. рис.



22. Логическое уравнение. Логистическая модель межвидовой конкуренции.

Рассм. попул. с непрерывным размножением и построим модель изменения ее численности. Скорость роста в этом случае можно обозначить , тогда средняя скорость увеличения численности в расчете на одну особь определяется величиной . Без учета внутривидовой конкуренции получаем или Где r- приращение численности за единицу времени в расчете на одну особь. Если учитывать внутривидовую конкуренцию, то получаем: , где К – предельное значение численности популяции , при к-ром скорость роста становится равной нулю. Уравнение известно под названием «логистического». Межвидовая конкуренция. Мы имеем дело с двумя различными популяциями. Пусть N1 - численность первой популяции, а N2 - второй. Предельные плотности насыщения и максимальные врожденные скорости роста популяций обозначим соответственно K1, K2, r1, r2. Обратимся к логистическому. Для первой популяции вместо N нужно записать - суммарное воздействие па вид 1, - коэффициент конкуренции. Аналогично и для популяции 2. Получим систему

23. Динамика численности популяции хищника и жертвы.

Модель состоит из дух компонентов:

С – численность популяции хищника, N – численность популяции жертвы. С и N – есть функции от времени, поэтому скорость роста популяций выразим как производные по времени и . Тогда средняя скорость увеличения численности жертвы в расчете на одну особь определяется величиной . Тогда при размножении в среде без хищника эту величину мы будем считать постоянной . Перепишем последнее равенство . Таким образом в отсутствие хищника популяция жертвы растет экспоненциально.

Скорость поедания жертвы будет зависеть от численностей популяций N и С – чем больше численность той и другой популяции, тем чаще происходят встречи. Число встреченных и успешно съеденных жертв будет зависеть и от «эффективности поиска» хищником жертвы. Таким образом скорость поедания жертвы будет равна . И окончательно для численности жертвы получаем: .

В отсутствие пищи отдельные особи хищника голодают и гибнут. Предположим вновь, что численность хищника в отсутствие пище будет уменьшаться экспоненциально: , (q – смертность).

Скорость рождения новых особей в данной модели полагается зависящей от двух обстоятельств: скорости потребления пищи , эффективности f, с которой эта пища переходит в потомство хищника. Итак, для численности хищника окончательно получаем: . И окончательно получаем мат. модель.



Численное решение методом Эйлера.








1. Понятие об инфрм. мадел-ии. Разл. подходы к опред-ю пон-я «инф. модел-е»
Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации