Разработка программы численного интегрирования обыкновенного дифференциального уравнения явным методом Рунге-Кутта шестого порядка точ

Автор работы: Пользователь скрыл имя, 16 Января 2014 в 21:33, курсовая работа

Краткое описание

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

Содержание

Введение..........................................4
1 Постановка задачи...............................5
1.1 Общая характеристика задачи.................5
1.2 Анализ литературных источников..............5
1.3 Расчетные формулы метода....................5
2 Разработка алгоритма решения задачи.............7
2.1 Описание данных, используемых для
решения задачи..............................7
2.2 Описание схемы программы....................7
3 Кодирование программы...........................8
3.1 Описание структуры
разрабатываемого пакета.....................8
3.2 Описание используемых типов данных..........8
3.3 Проектирование интерфейса программы.........9
4 Тестирование программы..........................15
4.1 Тестирование задачи в
математическом пакете.........................15
4.2 Тестирование работы программы...............15
5 Разработка гипертекстового варианта
документа работы................................16
Заключение........................................18
Список использованных источников..................19
Приложение А Твердая копия программы..............20
Приложение Б Результаты Тестирования программы....27
Приложение В Тестирование данных в математическом пакете..........................................28
Приложение Г Акт приемки программы................29

Вложенные файлы: 1 файл

Moy_Kursach (2).doc

— 725.50 Кб (Скачать файл)

 

   Список используемых источников

 


  1. Численные методы анализа. Приближение функций, дифференциальные уравнения. Б.П.Демидович, И.А.Марон, Э.З.Шувалова. Под редакцией Б.П.Демидовича. Государственное издательство Физико-Математической литературы. Москва 1962.-368с.

 

  1. Изучение численных методов интегрирования дифференциальных уравнений. Методические указания к лабораторной работе №19 по дисциплине “Вычислительная техника и программирование”. Для студентов очной формы обучения специальностей Т11.02.00 “Автоматизированные электроприводы”. В.Н.Абобурко-2003. Белорусско-Российский университет.

 

 

 

 

URL-источники:

http://ikt.muctr.ru/html2/12/lek12_5.html                                          

 

                                       Приложение А

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

 

namespace WindowsFormsApplication1

{

    public partial class RG6Arzu : Form

    {

        double[] X;

        double[] Y;

 

        static double f(double x, double y)

        {

            return x*x+y;

        }

 

        public RG6Arzu()

        {

            InitializeComponent();

        }

 

        private void button1_Click(object sender, EventArgs e)

        {

            int n = Convert.ToInt32(textBox3.Text);

            double h = Convert.ToDouble(textBox4.Text);

 

            X = new double[n];

            Y = new double[n];

            X[0] = Convert.ToDouble(textBox1.Text);

            Y[0] = Convert.ToDouble(textBox2.Text);

            double k1 = f(X[0], Y[0]);

            double k2 = h * f(X[0] + h / 4, Y[0] + 1 / 4 * k1);

            double k3 = h * f(X[0] + h * 3 / 8, Y[0] + 3 / 32 * k1 + 9 / 32 * k2);

double k4 = h * f(X[0] + h * 12 / 13, Y[0] + 1932 / 2197 * k1 + (-7200 / 2197) * k2 + 7 / 96 / 2197 * k3);

         double k5 = h * f(X[0] + h, Y[0] + 439 / 216 * k1 + (-8) * k2 + 3680 / 513 * k3 + (-845 / 4104) * k4);

            double k6 = h * f(X[0] + h / 2, Y[0] + (-8 / 27) * k1 + 2 * k2 + (-3544 / 2565) * k3 + 1859 / 4104 * k4 + (-11 / 40) * k5);

 

            for (int i = 1; i < n; i++)

            {

        X[i] = X[i - 1] + h;

       Y[i] = Y[i - 1] + k1 * 25 / 216 + k3 * 1408 / 2565 + k4 * 2197 / 4104 - k5 / 5;

            }

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

            AnswerTableForm atf = new AnswerTableForm(X, Y);

            atf.Show();

        }

 

        private void button3_Click(object sender, EventArgs e)

        {

            AnswerGraphForm agf = new AnswerGraphForm(X, Y);

            agf.Show();

        }

    }

 

                                   Приложение Б

                       Результаты тестирования программы

 

 

файл данных для табличной  функции

X0= 0 Y0= 1

h= 0,1 n= 25

ns= 20

Таблица значений функции

0 X = 0     Y = 1,0000

1 X = 25    Y = -72707,8292671784

2 X = 50    Y = -145416,658534357

3 X = 75    Y = -218125,487801535

4 X = 100   Y = -290834,317068713

5 X = 125   Y = -363543,146335892

6 X = 150   Y = -436251,97560307

7 X = 175    Y = -508960,804870249

8 X = 200   Y = -581669,634137427

9 X = 225   Y = -654378,463404606

10 X = 250  Y = -727087,292671784

11 X = 275  Y = -799796,121938962

12 X = 300  Y = -872504,95120614

13 X = 325   Y = -945213,780473319

14 X = 350  Y = -1017922,6097405

15 X = 375   Y = -1090631,43900768

16 X = 400  Y = -1163340,26827485

17 X = 425  Y = -1236049,09754203

18 X = 450   Y = -1308757,92680921

19 X = 475  Y = -1381466,75607639

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 Приложение Б

                                            Продолжение

 

 

                      


Информация о работе Разработка программы численного интегрирования обыкновенного дифференциального уравнения явным методом Рунге-Кутта шестого порядка точ