Разработка программы на языке Фортран, осуществляющей интегрирование дифференциальных уравнений с использованием подпрограммы ORK4S1

Страницы работы

Содержание работы

Министерство образования и науки Российской Федерации

Федеральное агентство по образованию

МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ

/ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ/

«МАИ»

Кафедра динамики и управления летательных аппаратов

      ЗАЩИЩЕНО                                                                     УТВЕРЖДАЮ

с оценкой ______________                                Заведующий кафедрой 106

___________ /__________/                                 ___________ А.В. Ефремов

Курсовая работа

по курсу «Информатика»

               Проверил:

                                                                             ___________ Ю.И. Мальцев

               Исполнитель:

               Студент группы 01-214                     ____________ В.М. Соколов

Москва 2008


Содержание:

Ø  1 Задание №1............................................................................... …..3

ü  1.1 Задание.............................................................................. 3

ü  1.2 Исходные данные............................................................. 3

ü  1.3 Таблица идентификаторов…………………….………….………..……...3

ü  1.4 Текст программы……………………………………..…………………….4

ü  1.5 Результаты………………………………………………………..…………5

ü  1.6 Графики……………………………………………………………………..5

ü  1.7 Вывод………………………………………………………………….…….5

Ø  2 Задание №2:.................................................................................... 6

ü  2.1 Задание.............................................................................. 6

ü  2.2 Исходные данные…………………………………………………………..6

ü  2.3 Таблица идентификаторов………...……………………………….……...6

ü  2.4 Описание подпрограмм………………..………………………….…….....6

ü  2.5 Текст подпрограммы……………………………………………………….7

ü  2.5.1 Текст подпрограммы общего типа dihotomy(a,b,eps,delta,xmin,fmin) ..7

ü  2.5.2 Текст подпрограммы  fun(x)…………………….…………………...…..7

ü  2.5.3 Текст главной программы……………………..………………………...8

ü  2.6 Результаты…….………………………………………………….………...8

ü  2.7 Вывод…………………………………………………………………….…8

ü  2.8 График точной функции….……………………………………………….8


1. Задание №1

1.1 Задание

Разработать программу на языке Фортран, осуществляющую интегрирование диф. уравнения с использованием подпрограммы ORK4S1.

Заданное диф. уравнение должно быть приведено к системе диф. уравнений 1-го порядка и для этой системы должны быть приведены начальные условия. По результатам интегрирования построить график в EXCEL вместе с точным решением.

1.2 Исходные данные

1) Уравнение второго порядка (вариант 8)

2) Точное решение

3) Интервал интегрирования

[0, 1.4]

4) Полученная система уравнений первого порядка

       

5) Начальные условия

1.3 Таблица идентификаторов.

В главной программе

             В начале шага

              В конце шага

Переменные в задании

х

y

p

х

y

p

Идентификаторы

t0

x0(1)

x0(2)

tk

xk(1)

xk(2)

В подпрограмме Func

Переменные в задании

y

p

dy/dх

dp/dх

Идентификаторы

x(1)

x(2)

f(1)

f(2)

1.4 Текст программы:

Program Main

      external Func

     real x0(2), xk(2)

     Open(10,file='Vivod.txt')

1    format(1x,4F10.5)

      n=2

      h=0.01

      t0=0

      x0(1)= 0

      x0(2)= 2

       tkn=1.4

      ic=0

      nc=20

       ytch= sin(t0)+t0/cos(t0)

     Print *,t0,x0,ytoch

     Write (10,1) t0, x0, ytch

2    Call ORK4S1(t0,x0,h,n,Func,tk,xk)

       If(tk<tkn-0.5*h) Then

       ic=ic+1

       else

       go to 5

      End if

      If (ic==nc) then

       ytch = sin(tk)+tk/cos(tk)

     Print *,tk,xk,ytoch

       write(10,1) tk,xk,ytch

        ic=0

      End if

      Do i=1,n

       x0(i)=xk(i)

      End do

      t0 = tk

      Go to 2

 5     ytch = sin(tk)+tk/cos(tk)

      Write(10,1) tk, xk,ytch

     End Program Main

     Subroutine Func(t,x,n,F)

     Real t, x(n), F(n)

      F(1) = x(2)

      F(2) = (1+2*tan(t)*tan(t))*x(1)

     End Subroutine Func

     SUBROUTINE ORK4S1 (T0,X0,H,N,Func,T,X)

      DIMENSION X0(N),X(N),A1(5),AR(25),F(25)

       A1(1)=H/2.

       A1(2)=A1(1)

       A1(5)=A1(1)

       A1(3)=H

       A1(4)=H

       A1(5)=H/2

       T=T0

       DO 11 I=1,N

       AR(I)=X0(I)

   11  X(I)=X0(I)

       DO 13 J=1,4

      CALL FUNC(T,AR,N,F)

Похожие материалы

Информация о работе

Предмет:
Информатика
Тип:
Курсовые работы
Размер файла:
46 Kb
Скачали:
0