В такой системе, по крайней мере, один из коэффициентов
отличен от нуля. Уравнения необходимо переставить таким образом, чтобы на месте первого уравнения было уравнение с максимальным отличным от нуля коэффициентом при Х=0. Далее вводится множитель , на него умножается первое уравнение системы и вычитается из второго уравнения. При этом мы получимТретье уравнение системы (1) умножим на коэффициент
и вычтем из второго уравнения первое уравнение, умноженное на этот коэффициент. В результате получимТаким образом система уравнений (1) приводится к виду:
Для системы уравнений (2) введем множитель
, умножим на него второе уравнение системы (2) и вычтем из третьего уравнения. В результате третье уравнение системы (2) примет вид:Тогда система уравнений (2) примет вид:
(3)Мы получили треугольную систему уравнений и необходимо выполнить обратную подстановку для вычисления неизвестных.
Обобщим метод на случай системы из n уравнений с n неизвестными.
На k-ом этапе мы исключаем из системы уравнений
с помощью множителей , где i=k+1, k+2,…,n-1J=k,k+1,…,n-1
Индекс k принимает значения k=0,1,…,n-2 включительно. При k=n-2 происходит исключение
из последнего уравнения и в результате получится треугольная система уравнений.В представленной блок-схеме все множители, на которые нужно умножать уравнения, обозначаем буквой m, т. к. на каждом этапе требуется не более 1-го множителя.
k-номер уравнения, который вычитается из остальных, а также неизвестного, который исключается из остальных n-k уравнений
i-номер уравнения, из которого в данный момент исключается неизвестное, j-номер столбца
После приведения системы к ∆-му виду необходимо сделать обратный ход для нахождения неизвестных, значения которых будут вычисляться по формуле:
Где j-n-2, n-3,…,0
Начертим блок-схему для функции обратной подстановки
Начертим блок-схему для функции определения наибольшего коэффициента
и перестановки уравнений при необходимости.Аппроксимация функций методом наименьших квадратов
Пусть в результате эксперимента получается следующая таблица значений:
x0 | x1 | … | xn-1 |
y0 | y1 | … | yn-1 |
Требуется найти аналитический вид функции, которая в точках x0, x1,…,xn-1 будет иметь значения достаточно близкие к y0, y1,…,yn-1.
Рассмотрим наиболее простой вид аппроксимации, т.е. замены таблицы значений аналитическим видом функции – аппроксимацию линейной функцией, т.е. будем находить функцию y=a0*x+a1, из которой в точках x0, x1,…,xn-1 значения будут близки к y0, y1,...,yn-1. В качестве критерия близости будем рассматривать квадратичный критерий качества
(1)Необходимо найти коэффициенты a0 и a1, чтобы критерий качества стремился к минимуму. Как известно, необходимое условие минимума – равенство 0 первых производных функции по соответствующим переменным. Найдем производные критерия качества (1) по переменным a0 и a1
(2)
Разделим каждое из уравнений системы (2) на -2 и поставим неизвестные перед коэффициентами
(3)Система (3) – система из двух линейных уравнений с двумя неизвестными. Будем решать его методом алгебраического сложения. Первое уравнение системы (3) умножим на n, а второе уравнение на
и вычтем из первого уравнения второе, из второго уравнения системы (3) получим выражение для a1Аппроксимация квадратичной функции:
Пусть дана таблица значений
x0 | x1 | ……… | xn-1 |
y0 | y1 | ……… | yn-1 |
Требуется аппроксимировать эту таблицу полиномом третьего порядка, т.е. требуется найти коэффициенты полинома y=a0x2+a1x+a2 , который в точках x0 , x1 , … , xn-1 имеет значения достаточно близкие к y0 , y1 , … , yn-1.
В качестве критерия близости выберем квадратичный критерий качества, который должен стремиться к минимуму.
=
(1)Найдем производные функции (1) по переменным а0 , а1 и а2.
2*
(2) 2*
2*
Разделим каждое уравнение системы (2) на (-2) и поставим коэффициенты после неизвестных
(3)
Система уравнений (3) это система из трех линейных уравнений с тремя неизвестными, которую необходимо решать методом Гаусса или итерации.
Для того, чтобы решить систему методом Гаусса необходимо вычислить коэффициенты при неизвестных а0 , а1 и а2 и записать их в соответствующие переменные и, может быть, выполнить переобозначение , так как при решении системы уравнений методом Гаусса систему уравнений мы записывали в виде:
a00*x0+a01*x1+…+a0,n-1=b0
a10*x0+a11*x1+…+a1,n-1=b1
………………………………………...
an-1,0*x0+an-1,1*x1+…+an-1,n-1=bn-1
или систему уравнений рассмотрим в виде:
x00*a0+x01*a1+…+x0n-1=b0
x10*a0+x11*a1+…+x1n-1=b1
…………………………..
Список использованных источников
1) Программирование на С++ в среде VisualStudioC++. NET: учеб. пособие / А. Б. Лазарева, А. В. Троицкий, С. Н. Митяков – Н. Новгород, 2008.-334
2) Алгоритмические языки и программирование: методические указания к курсовой работе для студентов специальностей 230401.65 / А. Б. Лазарева, Т. Е. Жилина – АПИ НГТУ 2010.-43