14640

Решение заданного дифференциальног уравнения методом Рунге – Кутта с применением «ручных» вычислений

Лабораторная работа

Информатика, кибернетика и программирование

Решить заданное дифференциальное уравнение методом Рунге Кутта с применением ручных вычислений и с помощью программы с шагом h и шагом h/2. С помощью прикладного программного средства MathCAD методом Рунге Кутта обеспечить вывод полученных решений в виде таблиц и граф...

Русский

2013-06-08

121.27 KB

27 чел.

Решить заданное дифференциальное уравнение методом Рунге – Кутта с применением «ручных» вычислений и с помощью программы с шагом h и шагом  h/2. С помощью прикладного программного средства (MathCAD) методом Рунге – Кутта обеспечить вывод полученных решений в виде таблиц и графиков.

1) Решение «вручную» с помощью MS Excel:

y=f(x,y)

a

b

y0

h

x+sin(y/3)

1.6

2.6

4.6

0.1

1.1) При h=0.1:

1)

2)

3)

4)

5)

6)

………………………………………………………………………………..

10)

1.2) При h=0.05:

1)

2)

3)

………………………………………..

19)

20)

  

Таблица результатов при h=0.1:

i

xi

y0

k1

f(x,y)=x+sin(y/3)

k2

f(x+h/2,y+k1/2)

0

1,6

4,6

0,259930

2,599298

0,264998

2,649983

1

1,7

h

0,269871

2,698707

0,274541

2,745411

2

1,8

0,1

0,278988

2,789884

0,283222

2,832219

3

1,9

0,287211

2,872105

0,290977

2,909768

4

2

0,294483

2,944828

0,297762

2,977620

5

2,1

0,300773

3,007726

0,303556

3,035562

6

2,2

0,306071

3,060711

0,308363

3,083633

7

2,3

0,310394

3,103941

0,312211

3,122114

8

2,4

0,313782

3,137823

0,315153

3,151530

9

2,5

0,316299

3,162987

0,317262

3,172619

10

2,6

0,318027

3,180270

0,318631

3,186307

i

k3

f(x+h/2,y+k2/2)

k4

f(x+h,y+k3)

Yi1

0

0,264998

2,649978

0,269871

2,698706

4,600000

1

0,274534

2,745336

0,278988

2,789882

4,864965

2

0,283209

2,832087

0,287210

2,872103

5,139467

3

0,290959

2,909592

0,294482

2,944824

5,422643

4

0,297742

2,977415

0,300772

3,007722

5,713571

5

0,303535

3,035347

0,306071

3,060706

6,011281

6

0,308342

3,083421

0,310394

3,103936

6,314785

7

0,312192

3,121921

0,313782

3,137816

6,623098

8

0,315137

3,151367

0,316298

3,162981

6,935262

9

0,317249

3,172494

0,318026

3,180264

7,250372

10

0,318622

3,186222

0,319067

3,190665

7,567596

Таблица результатов при h=0.05:

i

xi

y0

k1

f(x,y)=x+sin(y/3)

k2

f(x+h/2,y+k1/2)

0

1,6

4,6

0,129965

2,599298

0,131244

2,624875

1

1,65

h

0,132499

2,649980

0,133730

2,674598

2

1,7

0,05

0,134935

2,698707

0,136116

2,722311

3

1,75

0,137269

2,745374

0,138396

2,767915

4

1,8

0,139494

2,789884

0,140566

2,811318

5

1,85

0,141608

2,832153

0,142622

2,852440

6

1,9

0,143605

2,872105

0,144561

2,891213

7

1,95

0,145484

2,909680

0,146379

2,927582

8

2

0,147241

2,944828

0,148075

2,961506

9

2,05

0,148876

2,977516

0,149648

2,992957

10

2,1

0,150386

3,007726

0,151096

3,021926

11

2,15

0,151773

3,035453

0,152421

3,048416

12

2,2

0,153036

3,060711

0,153622

3,072447

13

2,25

0,154176

3,083526

0,154703

3,094055

14

2,3

0,155197

3,103941

0,155665

3,113291

15

2,35

0,156101

3,122016

0,156511

3,130220

16

2,4

0,156891

3,137823

0,157246

3,144922

17

2,45

0,157572

3,151447

0,157874

3,157489

18

2,5

0,158149

3,162987

0,158401

3,168027

19

2,55

 

0,158628

3,172555

0,158833

3,176650

20

2,6

0,159014

3,180270

0,159174

3,183485

i

k3

f(x+h/2,y+k2/2)

k4

f(x+h,y+k3)

Yi2

0

0,131244

2,624878

0,132499

2,649980

4,600000

1

0,133730

2,674592

0,134935

2,698707

4,731240

2

0,136115

2,722297

0,137269

2,745373

4,864965

3

0,138395

2,767893

0,139494

2,789884

5,001076

4

0,140564

2,811289

0,141608

2,832152

5,139467

5

0,142620

2,852405

0,143605

2,872105

5,280027

6

0,144559

2,891172

0,145484

2,909679

5,422643

7

0,146377

2,927537

0,147241

2,944828

5,567198

8

0,148073

2,961457

0,148876

2,977516

5,713571

9

0,149645

2,992906

0,150386

3,007726

5,861640

10

0,151094

3,021874

0,151773

3,035453

6,011281

11

0,152418

3,048363

0,153036

3,060710

6,162371

12

0,153620

3,072395

0,154176

3,083525

6,314786

13

0,154700

3,094005

0,155197

3,103941

6,468402

14

0,155662

3,113243

0,156101

3,122015

6,623098

15

0,156509

3,130176

0,156891

3,137822

6,778757

16

0,157244

3,144881

0,157572

3,151446

6,935262

17

0,157873

3,157453

0,158149

3,162986

7,092502

18

0,158400

3,167995

0,158628

3,172554

7,250372

19

0,158831

3,176623

0,159013

3,180269

7,408768

20

0,159173

3,183463

0,159313

3,186263

7,567596

Относительные погрешности метода:

Влияние шага на точность вычислений:

2) Решение в MathCad:

2.1) При  h=0.1:

2.2) При h=0.05:


Относительные погрешности метода:

3) Решение в Matlab:

создадим документ Blank M-file, напечатаем

function f=fun2(t,y)

f=t+sin(y/3);

сохраним под именем fun2

>> t=1.6;

>> h=0.1;

>> t_fin=2.6;

>> y0=4.6;

>> [t,y]=ode45('fun2',[1.6:h:t_fin],[y0]);

>> plot(t,y,'LineWidth', 2);grid;

>> single(y)

ans =

  4.5999999

  4.8649654

  5.1394668

  5.4226437

  5.7135711

  6.0112815

  6.3147855

  6.6230979

  6.9352617

  7.2503719

  7.5675964

Округлим до 6-ти цифр после запятой:

y=

4.600000

4.864965

5.139467

5.422644

5.713571

6.011282

6.314786

6.623098

6.935262

7.250372

7.567596

>> h=0.05;

>> [t,y]=ode45('fun2',[1.6:h:t_fin],[y0]);

>> hold on;

>> plot(t,y,'LineWidth', 2);grid;

single(y)

ans =

  4.5999999

  4.7312398

  4.8649654

  5.0010762

  5.1394668

  5.2800274

  5.4226437

  5.5671983

  5.7135711

  5.8616400

  6.0112815

  6.1623712

  6.3147855

  6.4684014

  6.6230979

  6.7787566

  6.9352617

  7.0925026

  7.2503719

  7.4087682

  7.5675964

Округлим до 6-ти цифр после запятой:

y=

  4.600000

  4.731240

  4.864965

  5.001076

  5.139467

  5.280027

  5.422644

  5.567198

  5.713571

  5.861640

  6.011282

  6.162371

  6.314786

  6.468401

  6.623098

  6.778757

  6.935262

  7.092503

  7.250372

  7.408768

  7.567596

Таким образом, y = 7.567596

Относительные погрешности метода:

Сводная таблица результатов:

Метод

Результат

δ(y), %

h

h/2

h

h/2

«вручную» с Excel

7,567596

7,567596

MathCad

7,567596

7,567596

Matlab

Вывод: относительная погрешность во всех методах одинакова, выявить наиболее точный метод не удалось. На приведенных графиках видно, что с уменьшением шага повышается точность вычислений. В данном случае, при решении способом Рунге-Кутта, по сравнению с методом Эйлера мы получили чуть большую погрешность вычислений (0.000014% против 0.000013%).

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РТ

АЛЬМЕТЬЕВСКИЙ ГОСУДАРСТВЕННЫЙ

НЕФТЯНОЙ ИНСТИТУТ

Кафедра информатики

ЛАБОРАТОРНАЯ  РАБОТА №11

По дисциплине: «Прикладное программирование»

На тему: «Численное решение обыкновенного дифференциального

уравнения первого порядка методом Рунге-Кутта»

Вариант №42

Выполнил: студент группы 10-21   Хохлов Р.С. Проверил: доцент каф. информатики Амиров Д.Ф.

Альметьевск 2013


 

А также другие работы, которые могут Вас заинтересовать

43308. Разработка рациональных режимов резания при эксплуатации лесопильных рам 668 KB
  Лесопильнодеревообрабатывающее оборудование общего назначения в подавляющем большинстве случаев является основным и наиболее распространенным типом машин по разделке обработке и транспорту древесины. Производство пиломатериалов осуществляется в основном на потоках с лесопильными рамами. Исследованиями установлено что лесопильные рамы экономически целесообразно использовать для продольного раскроя качественного пиловочника средних диаметров.
43309. Расчет пружины 1.17 MB
  Выбор марки стали для изготовления пружины Марка стали 85 1. Высокие свойства максимальные пределы упругости и выносливости пружины и рессоры имеют при твердости HRC 40 45 структура тростит которая достигается после закалки с равномерным и полным мартенситным превращением по всему объему металла и среднего отпуска при 400 500 С в зависимости от стали.Обоснование выбора марки стали для изготовления пружины Особенности работы рессорнопружинных сталей состоят в том что при значительных ударных или статических нагрузках в них не...
43310. Обработка методами типа «перенос-опознание» 289.5 KB
  Управление автоматом задается управляющей таблицей типа : перенос опознание которая задает операцию ПЕРЕНОС ОТВЕРГНУТЬ или процедуру опознания для каждой комбинации магазинного и входного символов. Каждая из процедур опознания просматривает несколько верхних символов магазина и либо выбирает одну из операций СВЕРТКА для некоторого правила либо ДОПУСТИТЬ или ОТВЕРГНУТЬ. Первая из них состоит в том чтобы решить какие элементы таблицы управления должны содержать операции ПЕРЕНОС какие процедуры опознания и какие операции...
43312. Візуалізація графічних зображень 365 KB
  Що стосується візуалізації даних, наданих у вигляді матричних структур, із подальшим їх перетворенням у графові моделі, то сьогодні накопичений відносно невеликий досвід їх вирішення. Основними завданнями при цьому є як фундаментальні (пояснюються недосконалістю існуючих методів візуалізації), так і технічні (пов’язані із складністю вибору та забезпеченням взаємодії різних програмних та апаратних засобів. Отже, актуальним завданням є виокремлення основних аспектів побудови прикладного програмного забезпечення, яке надавало б розробникам можливість із створення високорівневих засобів візуалізації даних, заданих у матричній формі
43313. Розробка програмного забезпечення для визначення інформації про жорсткий диск за допомогою інтерфейсу IDE/ATAPI 710.5 KB
  Програми мовою асемблера дуже точні. Оскільки ця мова дозволяє програмістові безпосередньо працювати з усім апаратним забезпеченням, програми на асемблері можуть робити те, що недоступно ніякій іншій програмі. Безсумнівно, що в програмуванні пристроїв де потрібен контроль над окремими розрядами регістрів пристрою, програмування мовою асемблера - єдиний підходящий вибір. І остання причина для написання програми на мові асемблера. Тільки через написання програм на цьому рівні деталізації можна зрозуміти, як працює машина на самому нижньому рівні.
43314. Автоматизированная система управления воздушным движением 2.05 MB
  В системе автоматизированы процессы обработки и отображения информации от радиолокационных и радиотехнических средств, информации о планировании полетов, метеорологической обстановке и другие процедуры обеспечения процессов обслуживания воздушного движения. Все подсистемы АС УВД построены на базе локальных вычислительных сетей с применением технологий цифровой обработки и передачи данных.
43315. Правова система України 168.21 KB
  Перш ніж будувати власну державу і власну правову систему потрібно подивитись, що ми маємо на сучасному етапі і що хочемо побудувати у майбутньому. Будуючи нову правову систему потрібно звертатись за допомогою до більш досконалих іноземних систем, вибираючи з них найкраще. Нажаль, в Україні, сьогодні, склалась така ситуація, коли люди, що стоять при владі не розуміють цього або, що ще гірше розуміють, але спеціально нічого не роблять. Все на що вони спроможні – це бездумно вирвати з іноземного законодавства, можливо і найкращі, положення та ліпити їх в наше. Багато наших бід саме через це.
43316. Розробка програм на мові Turbo Pascal. Робота з додатками MS Office 97/200 (Word, Excel) і MathCAD 2000 2.5 MB
  Відмінність функції від процедури полягає в тому що результатом виконання операторів що утворюють тіло функції завжди є деяке єдине значення або покажчик тому звертання до функції можна використовувати у відповідних вираженнях поряд зі змінними й констант Підпрограми являють собою інструмент за допомогою якого будьяка програма може бути розбита на ряд певною мірою незалежних друг від друга частин. Поперше цей засіб економії пам'яті: кожна підпрограма існує в програмі в єдиному екземплярі у те час як звертатися до неї можна...