Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kursach_16.doc
Скачиваний:
9
Добавлен:
29.08.2019
Размер:
583.17 Кб
Скачать

6.3.1 Блок-схема

Рисунок 6 - Блок-схема. Метод Эйлера 1-я модификация.

6.3.2 Код программы

#include <iostream.h>

#include <math.h>

int main(){

double R1=30,R2=25,R3=50,R4=1.88,R5=15,R6=60;

double oC=20E-6,oL=5.57E-3;

double a=(R4+(R1*R2)/(R1+R2)+(R5+R6)*R3/(R3+R5+R6));

double b=(R5+R6)/(R3+R5+R6);

double d=R2/(R1+R2);

double g=1/(R3+R5+R6);

double f=10,fi=7*3.14/5;

double w=2*3.14*f;

double t,T0=0,T1=0.01,T2=0.02;

double n=200,h=(T2-T0)/n ;

double E0=15;

double oI=0,oU=0,oI1,oU1,oI2,oU2,E;

for(t=0;t<=T2;t+=h)

{

if (t<T1) d=R2/(R1+R2);

else d=0;

E=E0+E0*sin(w*t+fi);

oI1=oI+h/2*(1/oL*(-oI*a-oU*b+E*d));

oU1=oU+h/2*(1/oC*(oI*b-oU*g));

oI2=oI+h*((1/oL*(-oI*a-oU*b+E*d))+(1/oL*(-oI1*a-oU1*b+E*d)));

oU2=oU+h*((1/oC*(oI*b-oU*g))+(1/oC*(oI1*b-oU1*g)));

oI=oI2;

oU=oU2;

cout<<"t="<<t<<"I="<<oI2<<"U="<<oU2<<endl;

}

cin>>b;

return 0;

}

Таблица 3.Результат работы в программе С++

Анализ результатов.

Численное решение системы дифференциальных уравнений в программах MathCad и C++ было реализовано с помощью метода Эйлера 1-й модификации. Численные результаты двух программ совпадают. Получены графики зависимости силы тока и напряжения от времени согласно системе уравнений и файл данных, содержащий дискретные зависимости силы тока и напряжения от времени на интервале .

7 Решение задачи аппроксимации зависимости I(t)

7.1 Реализация в пакете Excel

Таблица 4. Результаты работы программы Excel

i

t

I

1

0

0

2

0,0001

0,003578

3

0,0002

0,005205

5

0,0004

0,005896

7

0,0006

0,005411

9

0,0008

0,004682

11

0,001

0,003959

13

0,0012

0,003306

15

0,0014

0,002729

17

0,0016

0,002223

19

0,0018

0,001783

21

0,002

0,001398

23

0,0022

0,001064

25

0,0024

0,0007745

27

0,0026

0,0005245

29

0,0028

0,0003102

31

0,003

0,000128

33

0,0032

-0,0002483

35

0,0034

-0,0001508

37

0,0036

-0,0002521

39

0,0038

-0,0003303

41

0,004

-0,000387

43

0,0042

-0,0004233

45

0,0044

-0,0004404

47

0,0046

-0,0004392

49

0,0048

-0,0004204

51

0,005

-0,0003847

Рисунок 7 - график зависимости I(t) и аппроксимирующая функция на первом участке

Рисунок 8 - график зависимости I(t) и аппроксимирующая функция на втором участке

Рисунок 9 - график зависимости I(t) и аппроксимирующая функция на третьем участке

Рисунок 10 - график зависимости I(t) и аппроксимирующая функция на трех участках

Анализ результатов

Решение задачи аппроксимации было проверено в MathCAD и в Microsoft Excel 2003. Точки для аппроксимации брались из пункта (MathCAD) . В среде MathCAD был реализован метод наименьших квадратов, при этом участок был разбит на три промежутка для получения более точной аппроксимирующей функции. В Excel аппроксимация проведена с помощью линий тренда.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]