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

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

,

3.1. Реализация решения в пакете Excel.

В качестве исходной функции взяты дискретные значения тока, полученные из решения методом Эйлера системы дифференциальных уравнений с помощью программы, написанной на языке C++, и построен график (рис.5) этой зависимости:

Используя мастер диаграмм с выводом уравнения линии тренда, построим отдельно дискретную зависимость I(t) на интервале и добавим линию тренда. (см. Приложение 2). Путем предварительных пробных построений было установлено, что для лучшей аппроксимации необходимо область изменения функции разбить на 2 участка:

  • от 0 до 0.0003;

  • от 0.0003 до 0.005

Для выбранных участков были построены аппроксимирующие полиномы 3 степени (рис. 6)

.

Поиск решений был тоже проведен для двух участков

  • от 0 до 0.0003;

  • от 0.0003 до 0.005

Значения I(t) и аппроксимирующего полинома, полученного с помощью поиска решений: (см. Приложение 3)

В результате поиска решений получены коэффициенты:

коэффициенты 1 участок

коэффициенты 2 участок

a2

-1,962

b2

9682,100

а1

144,587

b1

-49,939

а0

0,007

b0

0,059

I1(t)=-1,962*x2+144,587*x+0,007

I2(t)=9682,1*x2-49,939*x+0,059

Ошибка аппроксимации:

0,000299

величина достоверности аппроксимации

0,999701

Рисунок 7 График I(t) и аппроксимирующего полинома, полученного с помощью поиска решения

3.2. Реализация решения в пакете MathCad, используя алгоритм метода наименьших квадратов.

В качестве исходной функции взяты дискретные значения тока, полученные из решения в пакете MathCAD методом Рунге-Кутта системы дифференциальных уравнений. Для более точного вычисления функцию разбиваем на 2 участка.

1 Участок

вычисление достоверности

аппроксимации

Рисунок 8 График I(t) и аппроксимирующей на 1 участке

2 Участок

вычисление достоверности

аппроксимации

Рисунок 9 График I(t) и аппроксимирующей на 2 участке

Вывод: из сравнения результатов, полученных в Excel и MathCAD видно, что результат, полученный в пакете MathCAD методом наименьших квадратов, немного точнее результатов, полученных в пакете Excel.

4. Численное интегрирование

4.1. Реализация решения на языке программирования высокого уровня C++ методом трапеции.

В качестве интегрируемой функции взята аналитическая функция, полученная в пакете Excel с помощью мастера диаграмм.

Б лок-схема

Программный код:

#include <iostream.h>

#include <math.h>

//Квадрат аналитической функции I(t), полученной в пакете Excel

double I(double t)

{

double Res, It;

if {(t<0.003)

It=1Е+09*(pow(t.3))-1Е+06*pow(t,2)_+385.49*t+5Е-05

Else

{

It =-926345*t(pow(t,3)+17295*pow(t,2)-67.215*t+0.0695;

}

}

Res = pow(It, 2);

return Res;

}

void main()

{

double R4, T1, T2, h, S, Integ, Q;

int i, n;

cout << "********** METOg LEBbIX np. **********\n";

cout << "BBEguTE COnPOTuBLEHuE R4 (OM):\n";

cin >> R4;

cout << "BBEguTE T1 (c):\n";

cin >> T1;

cout << "BBEguTE T2 (c):\n";

cin >> T2;

cout << "BBEguTE KOL-BO PA36uEHuu n:\n";

cin >> n;

h = (T2 - T1) / n;

cout << "WAr h = " << h << " c.\n";

S = 0;

for (i=0; i <= (n-1); i++)

{

S += I(T1 + h * i);

}

Integ = h * S;

Q = R4 * Integ;

cout << "Integ = " << Integ;

cout << "\nKOL-BO TEnLOTbI Q = " << Q << "\n\n\n";

}

Результаты работы программы:

R4= 1.88

t1= 0.00

t2= 0.005

n= 200

shag h=0.00002500

INTEG=0.00000254

kolichestvo teploti: Q=0.00000478

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