МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


Как цель узнает о ваших желаниях прежде, чем вы начнете действовать. Как компании прогнозируют привычки и манипулируют ими


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


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

Примеры программной реализации рассмотренных методов.





Решение системы уравнений методом Кутта-Мерсона

cls

defdbl a-z

print "Решение системы диф. уравнений методом Кутта-Мерсона»

input "введите число уравнений N=",n

dim y(n),w(n),a(n),c(n),d(n),e(n),f(n)

input "Задайте погрешность вычислений e=",e1

input "Задайте начальный шаг h=",h

input "Задайте начальное значение x0=",x

input "Задайте конечное значение x1=",x1

for j=1 to n

print "Введите начальное значение y0(";j;")=";:input ,w(j)

y(j)=w(j)

next j

110 e3=0:gosub 400:d=0

for j=1 to n

a(j)=f(j)*h:y(j)=w(j)+a(j)/3

next j

x=x+h/3:gosub 400

for j=1 to n

y(j)=w(j)+(a(j)+f(j)*h)/6

next j

gosub 400

for j=1 to n

c(j)=f(j)*h

y(j)=w(j)+a(j)/8+0.375*c(j)

next j

x=x+h/6:gosub 400

for j=1 to n

d(j)=f(j)*h:y(j)=w(j)+a(j)/2-1.5*c(j)+2*d(j)

next j

x=x+h/2:gosub 400

for j=1 to n

e(j)=f(j)*h

y(j)=w(j)+(a(j)+4*d(j)+e(j))/6

e2=abs(-2*a(j)+9*c(j)-8*d(j)+e(j))/30

if e2<=e1 then goto 250

e3=1:goto 260

250 if e2<(e1/20) then d=d+1

260 next j

if e3=0 then goto 290

x=x-h

for j=1 to n

y(j)=w(j)

next j

h=h/2: goto 110

290 if d=n then h=h+h

print "x=";x;

for j=1 to n

print "y(";j;")=";y(j);

w(j)=y(j)

next j

if x<x1 then goto 110

print «Работа завершена»

end

400 'задание уравнений

f(1)=y(1)+y(2)-x^2+x-2

f(2)=-2*y(1)+4*y(2)+2*x^2-4*x-7

return

Решение системы диф. уравнений методом Кутта-Фельдберга

cls

defdbl a-z

print "Решение системы диф. Уравнений методом Кутта-Фельдберга"

input "Введите число уравнений N=",n

dim y(n),L(n),w(n),a(n),b(n),c(n),d(n),e(n),f(n)

input "Задайте точность е=»,е1

input "Задайте начальный шаг h=»,h

input "Задайте начальное x0=",x

input "Задайте конечное x1=",x1

for j=1 to n

print "Задайте начальный y0(";j;")=";:input ,w(j)

y(j)=w(j)

next j

110 e3=0:gosub 400:d=0

for j=1 to n

a(j)=f(j)*h:y(j)=w(j)+2*a(j)/9

next j

x=x+2*h/9:gosub 400

for j=1 to n

b(j)=h*f(j):y(j)=w(j)+a(j)/12+b(j)/4

next j

x=x+h/9:gosub 400

for j=1 to n

c(j)=h*f(j):y(j)=w(j)+(34.5*a(j)-121.5*b(j)+135*c(j))/64

next j

x=x+h/2.4:gosub 400

for j=1 to n

d(j)=h*f(j):q=w(j)-17*a(j)/12+6.75*b(j)

y(j)=q-5.4*c(j)+16*d(j)/15

next j

x=x+h/4:gosub 400

for j=1 to n

e(j)=h*f(j):q=w(j)+65*a(j)/432-0.3125*b(j)

y(j)=q+.8125*c(j)+4*d(j)/27+5*e(j)/144

next j

x=x-h/6:gosub 400

for j=1 to n

L(j)=h*f(j):y(j)=w(j)+a(j)/9+.45*c(j)+16*d(j)/45+e(j)/12

q=a(j)/150-.03*c(j)+16*d(j)/75+e(j)/20

e2=abs(q-0.24*L(j)):if e2<e1 then goto 250

e3=1:goto 260

250 if e2<(e1/20) then d=d+1

260 next j

x=x+h/6:gosub 400:if e3=0 then goto 290

x=x-h:

for j=1 to n

y(j)=w(j)

next j

h=h/2:goto 110

290 if d=n then h=h+h

print "x=";x;

for j=1 to n

print "y(";j;")=";y(j)

w(j)=y(j)

next j

if x<x1 then goto 110

print « работа завершена»

end

400 ‘ Задание системы уравнений

f(1)=y(1)+y(2)-x^2+x-2

f(2)=-2*y(1)+4*y(2)+2*x^2-4*x-7

return

Задания к выполнению

4.1 . Решить систему дифференциальных уравнений при следующих параметрах шаг 0,1; начальные приближения x=0,2; у1=0,099500833, y2=0.49235

Ответ:

х у1 у2

0,3 0,148367183 0,4830282264

0,4 0,1961203205 0,47011529365

0,5 0,2424068609 0,4537779586

1,0 0,440372468 0,3249711437

4.2. Решить дифференциальное уравнение первого порядка y’=-y при следующих параметрах: шаг=0,1, начальные приближения х0=0, у0=1.

Ответ:

х 0,1 0,2 0,3 0,4 0,5

у 0,904837 0,818731 0,740818 0,67032 0,606531

4.3. Решить дифференциальное уравнение второго порядка у"=-у+(1-у2)*20у' при следующих параметрах: шаг=0,003125, у0=2,077, у'0==0 Ответ:

х у у*

0,003125 2,007690786 -0,00571555801

0,00625 2,007665302 -0,01044479113

0,009375 2,007626354 -0,01435793978

0,0125 2,00757266 -0,01759589125

0,015625 2,007516959 -0,02027523125

4.4. Решить систему дифференциальных уравнений

 

при следующих параметрах: k=0,1, точность 0,0000001, х0=0, у10=0,у20=2

Ответ:

х у1 у2

0.025 0.000625 2.025

0.05 0.0025 2.05

0.075 0.005625 2.075

0,1 0.01 2.1

0.16 0.0261 2.16

0.32 0.10333 2.32

0.64 0.41271 2.74

0.96 0.93094 2.98

5.281.66502 3.33

 

5.Контрольные вопросы.

1.Постановка задачи Коши.

2.Численные методы решения задачи Коши : вывод формулы метода Эйлера.

3.Методы Рунге-Кутты. Вывод формул..

4.Решение задачи Коши для систем дифференциальных уравнений.



6. Рекомендуемая литература

 

1. Самарский А.А., Михайлов А.П. Математическое моделирование: Идеи. Методы. Примеры. – М.: Физматлит, 2001. – 320 с.

2. Советов Б.Я., Яковлев С.А. Моделирование систем. – М.: Высш. шк., 1998. –

320 с.

3. Липай Б.Р., Маслов С.И. Компьютерное моделирование электромеха-нических систем: Учеб. пос. – М.: Изд. МЭИ, 2002. – 80 с.

4. Дьяконов В. Matlab 6: Учебный курс -СПб.: Питер, 2001. - 592 с.

5. Дьяконов В., Круглов В. Математические пакеты расширения Matlab. Специальный справочник. – Спб.: Питер, 2001. – 480 с.

6. Введение в математическое моделирование: Учебное пособие/ Ашихмин В.Н., Гитман М.Б., Келлер И.Э., Наймарк О.Б. и др.// М.: Логос, 2004.

7. Могилёв А.В., Пак Н.И., Хённер Е.К. Информатика.М.,ACADEMA, 2007.

8. Могилёв А.В., Пак Н.И., Хённер Е.К. Практикум по информатике. М.,ACADEMA,2007.





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.