Моделирование электрических систем Выбор структуры математической модели и вычисление ее параметров
Выбор структуры математической модели и вычисление ее параметров

Непосредственными результатами наблюдений (опытов) в процессе проведения эксперимента являются зависимости между входами x и выходами y, представленные, как правило, в табличной форме. Построение математической модели в параметрической форме требует обработки табличных данных. При этом следует учесть, что экспериментальные данные могут содержать систематические, случайные и грубые погрешности. Обычно погрешности измерений принято представлять в виде среднеквадратической погрешности σ и двумя границами интервала, в пределах которого истинное значение измеряемого параметра находится с заданной вероятностью (Δi, Δh).

На первом этапе построения математической модели необходимо выбрать вид (структуру) математической модели. Второй этап требует специальных вычислительных средств для определения параметров выбранной математической модели. Рассмотрим общий подход к подбору вида математической модели без использования каких-либо теоретических представлений о внутренней структуре моделируемого объекта. В математике такая задача носит название задачи о приближении функций. Для простоты примем объект с одним входом x и одним выходом y.

Пусть на некотором множестве задана система функций φ0(x), φ1(x), …, φm(x), которые в дальнейшем будем считать достаточно гладкими (например, непрерывно дифференцируемыми) функциями. Назовем эту систему основной.

Функции вида

47

где c0, c1, …, cm – постоянные коэффициенты, называются обобщенными многочленами порядка m. В частности, если основная система состоит из целых неотрицательных степеней переменной x, т. е. φ0(x) = 1, φ1(x) = x, …, φm(x) = xm, то

48

есть обычный полином степени m.

Если

49

то

410

называется тригонометрическим полиномом (или тригонометрическим многочленом) порядка m.

Задача о приближении функций ставится следующим образом: данную функцию f(x) требуется заменить обобщенным многочленом Qm(x) заданного порядка m так, чтобы отклонение (в смысле σ или (Δi, Δh)) функции f(x) от обобщенного многочлена Qm(x) на указанном множестве {x} было наименьшим. При этом многочлен Qm(x) в общем случае называется аппроксимирующим.

Если множество {x} состоит из отдельных точек x0, x1, …, xn, то приближение называется дискретным. Если же {x} есть отрезок a ≤ x ≤ b, то приближение называется интегральным.

На практике часто пользуются приближениями функций обычным и тригонометрическим полиномами.

В теории дискретного приближения функций имеет место задача интерполяции функций. В случае обычного полинома задача интерполяции формулируется следующим образом. Для данной функции f(x) найти полином Qm(x) возможно низшей степени m, принимающей в заданных точках xi (i = 0, 1, 2, …, n; xi ≠ xj при i ≠ j) те же значения, что и f(x), т. е. такой, что Qm(xi) = f(xi) (i = 0, 1, 2, …, n). Такой полином называют интерполяционным, а точки xi (i = 0, 1, 2, …, n) – узлами интерполяции.

Как известно, существует единственный полином степени не выше n, принимающий в точках xi (i = 0, 1, 2, …, n) заданные значения. Поэтому можно положить n = m. Коэффициенты a0, a1, …, an полинома Qn(x) можно определить из системы уравнений:

411

где

yi = f(xi) (i = 0, 1, 2, …, n).

Определитель этой системы линейных алгебраических уравнений есть так называемый определитель Вандермонда Δ ≠ 0, и, следовательно, система (4.11) имеет единственное решение.

Интерполяция дает возможность вычислить значения функции y = = f(x) между заданными точками xi – 1 и xi (i = 1, 2, …, n).

Пример 3. Выполним интерполяцию функции, заданную в табличной форме в пяти точках (см. ниже). Расчеты выполним в системе Mathcad.

Векторы данных:

Заполнение матрицы X:

Получение коэффициентов интерполяционного полинома:

Определение функции полинома:

График функции для интерполирующего полинома:

Определим значение функции в промежуточных точках со значениями 0,2 и 0,5.

Для сравнения выполним интерполяцию по тем же данным другими способами, заложенными в Mathcad; кусочно-линейной и сплайн-интерполяцией.

Графики интерполяционных функций:

Значения в заданных точках:

  • для полиномиальной

  • для линейной

  • для сплайн-интерполяции

Результаты вычислений в промежуточных точках достаточно сильно различаются между собой, и принятие той или иной модели может основываться на данных, внешних относительно использованных измерений.

Интерполяция является частным случаем аппроксимации, когда степень интерполяционного полинома равна числу измерений без единицы и n = m (число измерений равно n + 1, а число неизвестных коэффициентов модели равно m + 1). Когда n > m, в общем случае имеем задачу аппроксимации.

Для данной функции f(x) найти полином Qm(x) степени m, который в заданных точках xi (i = 0, 1, 2, …, n; xi ≠ xj при i ≠ j) доставляет минимум некоторой функции коэффициентов ai (i = 0, 1, 2, …, m): Sm(a0, a1, …, am). Такой полином называют аппроксимирующим. В общем случае Qm(x) есть обобщенный многочлен вида (4.7).

Функцию Sm(a0, a1, …, am) можно выбрать в соответствии с методом наименьших квадратов как сумму квадратов отклонений полинома Qm(x) от функции f(xi) на заданном множестве точек

412

Такой способ носит название квадратичной аппроксимации.

Коэффициенты аппроксимирующего полинома Qm(x) вычисляют посредством решения системы линейных уравнений:

413

где

yi = f(xi) (i = 0, 1, 2, …, n) и верхний индекс T означает операцию транспонирования матрицы.

Система уравнений (4.13) получена дифференцированием критерия квадратичной аппроксимации (4.12) по искомым коэффициентам и приравниванию нулю полученных выражений. В случае обобщенного полинома (4.7) с произвольными функциями φ0(x), φ1(x), …, φm(x) в системе уравнений (4.13) вместо значений степеней x требуется подстановка значений соответствующих функций φ0(x), φ1(x), …, φm(x), вычисленных в заданных точках x.

Пример 4. Выполним аппроксимацию функции из примера 3 полиномами степени 3 и 2.

Для Q3(x)

Заполнение матрицы X:

Получение коэффициентов аппроксимирующего полинома Q3(x):

Определение функции полинома:

График функции для аппроксимирующего полинома Q3(x):

Среднеквадратическая погрешность аппроксимации:

Для Q2(x)

Заполнение матрицы X:

Получение коэффициентов аппроксимирующего полинома Q2(x):

Определение функции полинома:

График функции для аппроксимирующего полинома Q2(x):

Среднеквадратическая погрешность аппроксимации:

Пример 5. Выполним аппроксимацию данных, приведенных в табличной форме (см. ниже) в виде обобщенного многочлена Q2(x) = c0φ0(x) + c1φ1(x) + c2φ2(x), где функции φi(x) (i = 0, 1, 2) выбраны в виде

Данные эксперимента и вектор функция составляющих Q2(x):

Вектор коэффициентов модели вычислим с помощью специальной функции Mathcad linfit(x, y, F)

Функция обобщенного многочлена и ее график:

Среднеквадратическая ошибка:

Существуют модели, которые не являются многочленами вида (4.7) и нелинейно зависят от параметров, как, например, функция

. 414

Здесь y нелинейно зависит от параметров a и b. К некоторым функциям такого вида применимо приведение нелинейной задачи к линейной по следующему способу.

Пусть задана система точек Mi(xi, yi). Вводятся новые переменные X и Y так, чтобы преобразованные точки Ni(Xi, Yi) лежали на одной прямой. Например, степенная зависимость y = cxa посредством логарифмирования приводится к линейной:

415

и линейная модель в новых координатах:

416

Здесь Ni(Xi, Yi) = Ni(lg xi, lg yi). Некоторые функции, которые приводятся к линейной относительно коэффициентов задаче аппроксимации, представлены в табл. 4.1.

Таблица 4.1

Некоторые функции, допускающие преобразование к линейной относительно коэффициентов задаче аппроксимации

№ п/п

Исходная функция

Линейная функция

Соотношения для преобразования

1

y = axb

Y = α + bX

Y = lg y; X = lg x; α = lg a

2

y = abx

Y = α + βx

Y = ln y; α = ln a; β = ln b

3

4

5

6

В тех случаях, когда невозможно перейти к линейной относительно коэффициентов задаче аппроксимации, выводятся подобные (4.13) нелинейные уравнения аналогичным способом, и их решение дает искомые коэффициенты.