Научная статья на тему 'Методики для аппроксимации зависимостей нескольких переменных в программной среде MS Excel и Mathcad'

Методики для аппроксимации зависимостей нескольких переменных в программной среде MS Excel и Mathcad Текст научной статьи по специальности «Математика»

CC BY
3183
390
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АППРОКСИМАЦИЯ / ЗАВИСИМОСТЬ / ФУНКЦИЯ НЕСКОЛЬКИХ ПЕРЕМЕННЫХ / АРГУМЕНТ / ИССЛЕДОВАНИЕ / ЭКСПЕРИМЕНТ / ДИСКРЕТНОЕ МНОЖЕСТВО / КОМПЬЮТЕРНАЯ ПРОГРАММА / СПЛАЙН / АЛГОРИТМ / APPROXIMATION / DEPENDENT / FUNCTION OF SEVERAL VARIABLES / ARGUMENT / STUDY / EXPERIMENT / DISCRETE DATA / COMPUTER PROGRAM / SPLINE / ALGORITHM

Аннотация научной статьи по математике, автор научной работы — Горожанкин Сергей Андреевич, Шитов Анатолий Анатольевич, Савенков Никита Владимирович

Предложены методики аппроксимации дискретных данных непрерывными гладкими функциями нескольких переменных при выполнении экспериментальной части научного исследования. Приведенный материал базируется на применении таких относительно распространенных программных продуктов, как MS Excel и Mathcad, может быть реализован в аналогичных по структуре и назначению компьютерных программах, содержит результаты практического применения на примере аппроксимации функциями нескольких переменных различного вида характеристик современного автомобильного двигателя внутреннего сгорания. Даны рекомендации по рациональному применению предлагаемых методик, описаны возможные сопутствующие сложности при их реализации в рассматриваемых программных оболочках. Представленные теоретический материал и практические примеры процедур аппроксимации отличаются множеством настроек, гибкостью применения к различному виду представления исходных данных, а также относительной простотой использования, так как построены по принципу «от простого к сложному».

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Procedures for Approximating Dependences of Several Variables in MS Excel and Mathcad Software Environment

The article suggests a technique for approximating the original data via continuous smooth functions of several variables when performing the experimental part of a scientific study. The material is based on using such relatively common software like MS Excel and Mathcad, it can be implemented in structurally and functionally similar computer programs, and also provides results of practical application on the example of approximating the characteristics of a modern automobile internal combustion engine via functions of several variables of different kinds. In addition, the paper presents recommendations for rational use of the suggested methods and possible related difficulties in their implementation in the considered software shells. Theoretical material and practical examples of the approximation procedures prepared by the authors aredistinguished by a lot of options, flexibility of application to different types of representation of the original data, as well as the relative ease of use, because they are based on a simple-to-complex basis.

Текст научной работы на тему «Методики для аппроксимации зависимостей нескольких переменных в программной среде MS Excel и Mathcad»

DOI: 10.5862/JCSTCS.247.4 УДК 517.4+004.942

С.А. Горожанкин, A.A. Шитов, Н.В. Савенков

методики для аппроксимации зависимостей нескольких переменных в программной

СРЕДЕ MS ExCEL И MATHCAD

S.A. Gorozhankin, A.A. Shitov, N.V. Savenkov

procedures for approximating dependences

OF SEVERAL VARIABLES IN MS ExCEL AND MATHCAD

Software environment

Предложены методики аппроксимации дискретных данных непрерывными гладкими функциями нескольких переменных при выполнении экспериментальной части научного исследования. Приведенный материал базируется на применении таких относительно распространенных программных продуктов, как MS Excel и Mathcad, может быть реализован в аналогичных по структуре и назначению компьютерных программах, содержит результаты практического применения на примере аппроксимации функциями нескольких переменных различного вида характеристик современного автомобильного двигателя внутреннего сгорания. Даны рекомендации по рациональному применению предлагаемых методик, описаны возможные сопутствующие сложности при их реализации в рассматриваемых программных оболочках. Представленные теоретический материал и практические примеры процедур аппроксимации отличаются множеством настроек, гибкостью применения к различному виду представления исходных данных, а также относительной простотой использования, так как построены по принципу «от простого к сложному».

АППРОКСИМАЦИЯ; ЗАВИСИМОСТЬ; ФУНКЦИЯ НЕСКОЛЬКИХ ПЕРЕМЕННЫХ; АРГУМЕНТ; ИССЛЕДОВАНИЕ; ЭКСПЕРИМЕНТ; ДИСКРЕТНОЕ МНОЖЕСТВО; КОМПЬЮТЕРНАЯ ПРОГРАММА; СПЛАЙН; АЛГОРИТМ.

The article suggests a technique for approximating the original data via continuous smooth functions of several variables when performing the experimental part of a scientific study. The material is based on using such relatively common software like MS Excel and Mathcad, it can be implemented in structurally and functionally similar computer programs, and also provides results of practical application on the example of approximating the characteristics of a modern automobile internal combustion engine via functions of several variables of different kinds. In addition, the paper presents recommendations for rational use of the suggested methods and possible related difficulties in their implementation in the considered software shells. Theoretical material and practical examples of the approximation procedures prepared by the authors are distinguished by a lot of options, flexibility of application to different types of representation of the original data, as well as the relative ease of use, because they are based on a simple-to-complex basis.

APPROXIMATION; DEPENDENT; FUNCTION OF SEVERAL VARIABLES; ARGUMENT; STUDY; EXPERIMENT; DISCRETE DATA; COMPUTER PROGRAM; SPLINE; ALGORITHM.

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

процессор Microsoft Excel и система компьютерной алгебры Mathcad.

Предлагаемые методики отличаются от традиционного использования рассматриваемых программ возможностью поэтапного выполнения процедуры аппроксимации

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

Новизна предлагаемых методик относительно известных общих рекомендаций, изложенных в работах [1—5], заключается в построении многофакторных зависимостей средствами программных продуктов, предназначенных главным образом для выполнения однофакторной аппроксимации. Такой подход позволяет: индивидуально подбирать для каждой переменной такой тип аппроксимирующей функции, при котором обеспечивается минимальное значение величин численного отклонения, и при этом не нарушается физический смысл рассматриваемого объекта либо процесса; применять в пределах одной аппроксимирующей функции нескольких переменных зависимости различных типов (например, кусочно-заданные и элементарные); отказаться от необходимости структурирования исходного дискретного множества в виде сетки с заданным шагом значений аргументов — предлагаемые методики, фактически, позволяют работать непосредственно с результатами экспериментальных исследований.

Приведенный в статье материал отобран и систематизирован нами с целью разработки некоторых общих рекомендаций и готовых практических решений, позволяющих облегчить процесс обработки результатов экспериментальных исследований.

Ввиду своей относительной сложности для некоторых нелинейных зависимостей, автоматическая аппроксимация исходных дискретных множеств может быть осуществлена с помощью:

• элементарных функций, представленных уравнениями, которые могут применяться для практических инженерных расчетов, а также экспортироваться в другие программные продукты (например, в Mathcad или в Maple) для последующей обработки и анализа;

• кусочно-заданных аналитических

зависимостей, под которыми подразумеваются такие фрагментные зависимости, которые содержат логические операторы (например, сплайн-функции). Эти зависимости применены для описания физических процессов, аппроксимация которых с помощью элементарных функций сопряжена с большей величиной численного отклонения и на некоторых интервалах противоречит физическому смыслу изучаемого процесса [2].

Для автоматизированного создания аппроксимирующих зависимостей, представленных элементарными функциями, может быть применено множество программных продуктов, например — Microsoft Excel или CurveExpert. Работа с кусочно-заданными функциями в настоящей статье рассмотрена на примере системы компьютерной алгебры Mathcad; вычислительные комплексы, подобные последнему, обычно не позволяют получить аппроксимирующие уравнения в аналитическом виде (что объясняется громоздким представлением и ограниченными возможностями самих программ). Поэтому дальнейшая работа с полученными условными функциями выполняется, как правило, в среде соответствующего программного продукта.

Приведенные принципы автоматической аппроксимации обусловлены формой исходного дискретного множества и числом его аргументов. Статья посвящена построению функций нескольких переменных, однако для иллюстрации возможностей предлагаемых методик, рассмотрим в первую очередь особенности создания зависимостей одной переменной.

Однофакторная модель

Аппроксимация зависимости одной переменной вида y = f(x) с помощью как элементарной, так и кусочно-заданной функций выполняется в один этап и приведена на примере внешней скоростной характеристики эффективной мощности автомобильного двигателя внутреннего сгорания (ДВС). На рис. 1 а показано исходное дискретное множество (результаты измерений на лабораторном стенде) и соответствующие аппроксимирующие функции.

a)

n, 1/мин

б)

♦ ♦ ♦

♦ ЛИ ♦ ^т/ : J^ ♦ ÜB/ ♦ /ir ♦ w

♦ pr ♦ Г ♦ fj\ ♦ ♦ 1 ♦ 1 ♦ w +fT\

♦r

О 0.2 0.4 0.6

Рис. 1. Пример графического построения средствами МаШсад различных аппроксимирующих

функций для зависимостей одной переменной:

а — эффективной мощности N ДВС от частоты вращения коленчатого вала п; б — зависимости коэффициента использования мощности к от коэффициента нагрузки X

(о) — результаты экспериментов; (-) — аппроксимация элементарной функцией;

(------) — аппроксимация кусочно-заданной функцией

Для автоматической аппроксимации элементарной функцией применен табличный процессор Microsoft Excel (команда «Добавить линию тренда» [3]). Исходному множеству (при значении коэффициента коллинеарности R = 0,9997) удовлетворяет полином 4-й степени:

N = /(п) = а + Ьп + с п2+й п3+е п4, (1)

е о \ / е е е е е '

где а , Ь , с , й , е — полиномиальные коэф-

е1 е1 е1 е1 е т

фициенты, равные соответственно: —5,6032; 0,0297; —1,0379'10-5; 4,2-10-9; -5,78910 13.

Эту аппроксимацию можно осуществить и с помощью других программных пакетов. Например, применение всесторонней системы подбора кривых СигуеЕхрей позволяет получить аналогичный результат.

В общем виде алгоритм для аппроксимации исходного множества кусочно-заданной функцией кубического интерполяционного сплайна в системе компьютерной алгебры Mathcad представлен следующими зависимостями:

Х:= (х, Х2 Хз ... х)т, (2)

У:= (У1 у2 Уз . Уп)т, (3) а кусочно-заданной линейной функцией

зависимостями [4]:

у(х) := Шегр (сБр1те(Х, У), X, У, х), (4)

у(х):= 1Шегр(Х, У, х), (5)

где X — массив аргументов дискретного множества; У - массив соответствующих значений дискретного множества; х1.хп, у1.уп — соответственно аргументы и значения дискретного множества, полученные в результате выполнения эксперимента (рис. 1 а) [6].

Для рассматриваемого примера одно-факторной зависимости соответствующий листинг будет представлен выражениями:

Х:= (1000 1500 2000 2500 (6) 3000 3500 4000)т, (6)

У:= (17 25 37 47 57 66 70)т, (7)

ЛТ(п) := Шегр ^р1те(Х, У), X, У, п). (8)

Вместо команды кубического сплайна «срНпе» для некоторых функций, в соответствии с их видом, может быть применена команда аппроксимации параболическим сплайном «psp1ine» или линейным «крНпе».

Приведенные алгоритмы Mathcad также позволяют получать значения исследуемой зависимости и за пределами исходной дискретной области — в экстраполяции.

При работе с программными оболочками могут получиться и противоречивые результаты. Например, несмотря на высокое значение коэффициента коллинеарности (R = 1), кусочно-заданные сплайн-функции не всегда могут быть применены для аппроксимации исходного физического процесса. На рис. 1 б приведены результаты экспериментальных исследований зависимости коэффициента использования мощности автомобильного бензинового двигателя от коэффициента нагрузки, а также соответствующие аппроксимирующие функции. Как показано на графике, наилучшим вариантом является аппроксимация элементарной экспоненциальной (Вейбула) функцией:

*(„) = AV = ak - ¿k-exp(-C^k), (9)

где ak, bk, ck, dk, — коэффициенты: 0,992; 7,36; 14,92; 0,56.

Приведенная функция получена в программной среде CurveExpert с помощью команды «Apply Fit».

Использование для описания дискретных множеств кусочно-заданных сплайн-функций в ряде случаев на некоторых интервалах может противоречить исходному физическому процессу, как это показано на рис. 1 б, где по своему определению величина 1 не может принимать значения, превышающие единицу. В основном образование так называемых «возмущений» между опорными точками объясняется недостаточной плотностью их расположения на координатных плоскостях [7].

Двухфакторная модель

Аналогичным образом зависимости двух переменных могут быть аппроксимированы непрерывными функциями рассматриваемых типов вида z = fx, y) в один либо в два этапа.

Исходные дискретные множества, в соответствии с особенностями планирования конкретного эксперимента (подразумеваются особенности как самой методики про-

ведения опыта, так и применяемого оборудования, приборов, а также специфики исследуемого физического процесса), могут быть представлены в двух различных вариантах. Первый — в виде математической матрицы, в которой каждому значению (хпт или уп) одноименного аргумента (X или У) соответствует одинаковое количество значений функции (^пт), табл. 1. Второй вариант — в виде семейства зависимостей вида Ът = fXm), каждая из которых справедлива для конкретного значения ут аргумента У; при этом каждому значению ут может соответствовать различное количество значений функции znm, табл. 2 [8].

В таблицах приведена запись исходных дискретных данных как в общем виде для обоих вариантов, так и в виде конкретных примеров двухфакторных зависимостей — удельного расхода топлива ДВС = f п, к) (табл. 1) и объемного расхода воздуха ДВС б0 = f Р, п) (табл. 2), где Р — давление воздуха в ресивере впускной системы ДВС. Данные получены в ГОУ ВПО «ДонНАСА» при стендовых испытаниях двигателя УМЗ-4216 [9, 10].

Наиболее сложный случай представления дискретной двухфакторной зависимости вида z = /х, у), в котором каждому ее значению соответствует своя пара значений аргументов, в данной статье не рассмотрен.

Процедура аппроксимации двухфак-торной зависимости, которая задана квадратной матрицей (табл. 1), с помощью кусочно-заданной функции может быть выполнена в Mathcad за один этап на основании приведенного алгоритма [11]:

X : — (Xi Х2 Х3 ..

Y := (У1 У2 Уз ..

XY0> := X

Z :=

Z11 Z12 Z13 . . Zn1

Z21 Z22 Z23 . . Zn2

Z31 Z32 Z33 . . Zn3

z. z Z- . .. z

Xn)T,

Уи)т,

= Y,

(10) (11) (12)

(13)

Таблица 1

Зависимость двух переменных, представленная математической матрицей

У к

У1 У2 У3 Уп 0,6 0,7 0,8 0,9 1

Х2 711 721 731 7п1 1000 342 324 302 279 300

Х2 712 722 732 7п2 1500 316 298 281 272 274

X ХЛ 713 723 733 7п3 п 2000 342 313 296 283 286

2500 346 315 293 283 288

Х т 71т 72т 73т 7 пт 3000 358 326 303 292 294

Таблица 2

Зависимость двух переменных в виде семейства однофакторных зависимостей

У1 Х1 Х11 Х21 Хт1 1500 Р(1) 555 598 658 724

21 711 721 7т1 0О(1) 56,7 65,2 69,5 90,1

У2 Х2 Х12 Х22 Хт2 2000 Р (2) 628 650 711 730

У 22 712 722 7т2 п 0О(2) 97 102,8 115,6 118

2500 Р (3) 496 569 671 708

0О(3) 96,8 108,1 132 140,3

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Уп X" п Х1п Х2п Х тп 3000 Р(4) 464 607 641 703

2" п 71п 72п 7 тп 0О(4) 102,6 144,3 155,5 169,2

z(x, у) := т1егр

С8р1те( ХУ, 2),

ХУ, 2,

х

у

(14)

Зависимость = /(п, к), аппроксимированная с помощью представленного алгоритма, приведена графически на рис. 2 а. По аналогии с (4), кроме кубического сплайна может применяться параболический либо линейный.

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

Этап 1. В соответствии с (2)—(4), создается п-е количество функций вида £ = /(х ),

каждая из которых справедлива для конкретного значения уп.

Этап 2. Создается квадратная матрица значений, и в соответствии с (10)—(14) выполняется аппроксимация.

Также на примере функции 00 = /(Р, п) рассмотрим применение упрощенной методики. Этап 1

Р1 := (555 598 658 724)т; (15) Р2 := (628 650 711 730)т; (16) Р3 := (496 569 671 708)т; (17) Р4 := (464 607 641 703)т; (18) 00(1) := (56,7 65,2 69,5 90,1)т; (19) 00(2) := (97 102,8 115,6 118)т; (20)

00(3) := (96,8 108,1 132 140,3)т; (21) 0О(4) := (102,6 144,3 155,5 169,2)т; (22)

Рис. 2. Пример графического построения средствами Mathcad аппроксимирующих функций

двухфакторных зависимостей: а — удельного расхода топлива ДВС с помощью функции кубического сплайна; б — объемного расхода воздуха ДВС с помощью линейных функций по переменной Р и полиномиальных 4-й степени по переменной п

-МР := ^егр ^р1те(Р„

Р1. 00(1). р);

0(1У

0ц2)(Р := inteгp (csp1ine(P2, 00(2)), Р2' 00(2)' Р); 00(3)(Р) := inteгp (csp1ine(Pз, 00(3)),

Р3' 00(3)' Р);

00(4)(Р) := inteгp ^рИпе(Р4, (00(4>),

Р4' 00(4)' Р);

Этап 2:

(23)

(24)

(25)

(26)

N:= (1500 2000 2500 3000)т; (27) 0(Р) := (00(1)(Р) 00(2)(Р) 00(3)(Р)

00(4)(р))т;

(30(Р,п) := Ыегр ^рИпе(Ж, 0(Р)),

(28)

(29)

N 0(Р),п).

Полученная функция 00(Р, п) в графическом виде приведена на рис. 2 б. Данная зависимость может быть также задана и комбинированно — все либо некоторые

выражения первого этапа аппроксимации (00 (Р)^00 (Р)) могут иметь отличный от выражения второго этапа аппроксимации (29) тип сплайна (например, параболический или линейный).

Процедура аппроксимации двухфактор-ной зависимости элементарной функцией выполняется в два этапа.

Э т ап 1.

Исходные данные, в случае если они заданы математической матрицей, приводятся к виду, представленному в табл. 2. В итоге будет получено п-е число зависимостей одной переменной.

Первый этап начинается с выбора наиболее подходящего типа и размера аппроксимирующей элементарной функции, одинаковых для всех зависимостей Ъп = /Хп). Рассмотрим это на примере данных, приведенных в табл. 2. Для всех четырех дискретных множеств достаточную достоверность обеспечивает применение линейной функции:

00 = / (Р, п) =

00(1)(Р) = аВ (1)Р + ЬВ (1) 00(2)(Р) = аВ (2)Р + ЬВ (2) 00(3)( Р) = ав (3)Р + ЬВ (3) 00(4)(Р) = аВ (4)Р + ЬВ (4)

0,158Р - 28,976 для п = 1500

:0,181Р -15,362 для п = 2000

0,213Р -10,858 для п = 2500

0,269Р -18,989 для п = 3000

(30)

где aB(l)"-aB(4)

bB(1)...bB(4) - коэффициенты аппроксимации, полученные в рассматриваемом примере в программной среде Microsoft Excel.

В итоге получено семейство зависимостей, каждая из которых справедлива для определенного значения аргумента n. Приведенная функция (30) имеет гладкую зависимость по переменной P и дискретную по переменной п.

В том случае, когда особенность исследуемого физического процесса связана с проблематичностью подбора типа аппроксимирующей элементарной функции (для Zn = f(Xn)), а дискретное множество задано квадратной либо прямоугольной математической матрицей, то целесообразно проверить возможность выполнения первого этапа аппроксимации по другой переменной -Zn = f(Yn). В некоторых случаях это позволяет обойти рассматриваемую сложность.

Этап 2.

Второй этап направлен на получение гладкой зависимости также и по второй переменной - в рассматриваемом случае по n. В соответствии с (30) искомая аппроксимирующая двухфакторная функция в общем виде представлена уравнением:

= aB(n)P + bB(n), (31)

где aB(n) и bB(n) — аппроксимирующие функции для коэффициентов.

Значения коэффициентов каждой строки выражения (30) зависят от аргумента n:

'0,158 для n = 1500 0,181 для n = 2000 0,213 для n = 2500, 0,269 для n = 3000

Qm(P n)

aB = f (n) = <

(32)

bB = f (n) = <

-28,976 для n = 1500 -15,362 для n = 2000 -10,858 для n = 2500. -18,989 для n = 3000

(33)

В ходе второго этапа выполняется создание элементарных аппроксимирующих однофакторных функций для зависимостей коэффициентов — выбирается наиболее подходящий их тип и размер. При этом аргументами являются числа вторых столбцов

систем выражений (32) и (33) — (1500; 2000; 2500; 3000), а значениями — числа первых столбцов. Для рассматриваемого примера, аппроксимация функций коэффициентов выполнена в программной среде Microsoft Excel с помощью полинома 4-й степени:

aB = f(n) = -1,599 + 3,23-10-3-n -- 2,189-10-6-n2 + 6,486-10-10-n3 - (34) - 6,953-10-14-n4;

B f(n) = 615,37 — 1,303-n +

Ь

+ 9,416-10—4-п2 - 2,865-10—7-п3 + (35) + 3,132-10—11-п4.

Таким образом, искомая аппроксимирующая функция для исходного дискретного множества (табл. 2) при применении элементарных зависимостей имеет вид (рис. 2 б):

Q0(P, n)=(—1,599 + 3,23-10-+ 6,486-10

■n —

2,189-10—6-n2

-10 3

— 6,953-10—14-n4)-P + (615,37 — — 1,303-n + 9,416-10—4-n2 —

— 2,865-10—7-n3 + 3,132-10—11-n4).

(36)

Если на завершающем (втором) этапе возникают трудности с аппроксимацией зависимостей коэффициентов, то для этого может быть применен комбинированный способ задания аппроксимирующей функции. Например, первый этап может содержать семейство элементарных аппроксимирующих функций, как это рассмотрено на примере выражения (30), а зависимости коэффициентов (32) и (33) на втором этапе могут быть аппроксимированы кусочно-заданными функциями (например, в программной среде МаШсаё с помощью алгоритма (2)-(4)).

Кроме того, результаты первого этапа аппроксимации элементарными функциями позволяют представить исходное дискретное множество (см. табл. 2) в виде квадратной математической матрицы. Это дает возможность выполнения второго этапа с помощью алгоритма (10)—(14).

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

Таблица 3

Трехфакторная зависимость в виде семейства математических матриц

Z Z1 Z2 zi

X1 X2 X. l

Y1 X11 X21 X , n1 Y2 X12 X22 Xn2 Y. 1 Xu X2i X . ni

У11 t111 t211 tn11 У12 t112 t212 n12 Уц t11l t21i t.. nil

У21 t121 t221 tn21 У22 t122 t222 tn22 У2i t12i t22i

У„1 t1m1 t2m1 t , nm1 Ут1 t1m2 t2m2 tnm2 У . mi t. . Lmi ^Imi t , nmi

Трехфакторная модель

Зависимость трех переменных вида Т = ЛХ, У, 2), заданную в виде семейства математических матриц (по аналогии с табл. 1) или семейства функций одной переменной (по аналогии с табл. 2), представляющих собой зависимости вида Т. = XX, У), каждая из которых справедлива для определенного значения аргумента 2 (табл. 3), также возможно аппроксимировать элементарной либо кусочно-заданной функцией при помощи рассматриваемых в настоящей статье программных продуктов.

Аппроксимация кусочно-заданными сплайн-функциями в программной среде МаШсаё выполняется в несколько этапов. Сначала создается 1-е число (в соответствии с количеством матриц исходных данных, табл. 3) аппроксимирующих двухфактор-ных зависимостей вида I. = Дх, у), каждая из которых будет справедлива для соответствующего значения аргумента 2. Для этого могут быть применены алгоритмы,

использование которых в настоящей статье рассмотрено на примере зависимостей §е= Ли, к) и б0 = /Р, п).

Заключительным этапом аппроксимации является создание искомой функции согласно приведенному листингу:

2 := (*1 ¿2 ... г,.)т, (37)

У(х, у) := (^(х, у) ^(х, У) - Ь(х, у))т, (38)

Ох, у, г) := Шегр (с8рНпе(2, У(х, у)),

2, У(х, у), г). (39)

Аппроксимация элементарными функциями выполняется в три этапа. Первые два этапа направлены на создание 1-го количества аппроксимирующих зависимостей вида Д = А(х, у) — построение каждой из которых осуществляется по аналогии с методикой (30)—(36). Важно, чтобы они имели между собой одинаковый общий вид, допустим, по примеру зависимости (36). Таким образом, результатом выполнения первых двух этапов будет являться система функций:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

t = f (*, У, z) =

ti = f (x, У ) = (aal У2 + ba ! y + cal)x + (abl y2 + btl y + cbl) для z t2 = f (X, У) = (aa2У2 + ba2У + Ca2)x + (ab2У' + bb2У + Cb2) ДЛЯ Z2 ,

ti = f У) = ^аУ2 + ЬшУ + Cai )x + (йыУ2 + КУ + Cbi ) ДЛЯ Z

(40)

ГДе aa(1)-aa(i)

b b c c

a(1) a(i)' a(1) a(i)'

— коэффициенты аппрок-

,................ab(iyab(ly

b b c c

"b(1Y"Ub(i)> ^b(iy ^b(i)

симации, которые могут быть получены в программной среде Microsoft Excel, Curve-Expert и подобных продуктов. Этап 3.

Третий этап является заключительным

и направлен на получение гладкой функции также и по третьей переменной — в данном случае по г.

В соответствии с выражением (40), значения коэффициентов каждого уравнения находятся в зависимости от аргумента г:

^ ) =

ba(z) =

C.(Z) =

ab (Z) =

bb(z) =

cb(z) =

ДЛЯ Zl

aa 2 ДЛЯ Z2 i

aa¡ ДЛЯ z,

bal ДЛЯ Zl Ьа2 ДЛЯ Z2; ba¡ ДЛЯ Zi

Ca1 ДЛЯ Zl Ca2 ДЛЯ Z2 i Cai ДЛЯ Z

ab1 ДЛЯ Z1 ab2 ДЛЯ z2 ;

аы ДЛЯ z¡ bb1 ДЛЯ Z1

bb2 для Z2; Ьы ДЛЯ Z

cb1 ДЛЯ Z1

cb2 ДЛЯ Z2 •

cbi ДЛЯ Z

(41)

(42)

(43)

(44)

(45)

(46)

Таким образом, искомая гладкая трех-факторная функция в общем виде может быть представлена выражением:

t = f(x, y, Z) = (aW + b(Z)y +

(47)

+ C((Z))x + (ab(Z)y2 + bb(Z)y + ^(z)).

В ходе третьего этапа выполняется аппроксимация зависимостей a = f(Z),

Ьа = f(Z), Ca = f(Z), ab = f(Z), Ьь = f(Z)" Сь = fZ) на основании данных (41)—(46). В случае, если для описания рассматриваемых функций достаточным будет применение линейных зависимостей, то итоговаЯ аппроксимирующая функция будет иметь вид:

t = fX y, Z) = ((aaaZ + baa)y2 + (4R)

+ (abaZ + bjy + (acaZ + bca))x + (48) + ((aabZ+bab)y2+(abbZ+bbb)y+(acbZ+bcb)). Количество констант в формуле (48) составляет p-q-s = 2 (линейная функция)-3

^(x, y)

(полиномиальная 2-й степени)-2 (линейная функция) = 12, где р, q, я — количество постоянных в функциях каждого этапа аппроксимации.

При описании непрерывными гладкими функциями зависимостей аа = /(7)---сЬ = /(7) также могут быть применены сплайн-функции в соответствии с алгоритмом (2)—(4).

Четырехфакторная модель

В табл. 4, в качестве примера, приведена зависимость четырех переменных вида Н = /(X, У, 2 Т), заданная в виде семейства математических матриц, представляющих собой зависимости вида Н.. = /(X.., У) каждая из которых справедлива для определенного сочетания значений и t. аргументов 2 и Т.

Описание четырехфакторной зависимости кусочно-заданной функцией с помощью программной среды МаШсаё осуществляется в несколько этапов.

Э тап 1.

В ходе первого этапа создается /*. количество (в соответствии с числом матриц исходных данных, табл. 4) аппроксимирующих двухфакторных зависимостей вида И.. = /(х, у), каждая из которых будет справедлива для определенного сочетания значений 7,1 и аргументов 2 и Т соответственно. Для создания функций И.. = /(х, у) могут быть применены алгоритмы, использование которых в настоящей статье рассмотрено на примере зависимостей = /(п, к) и 00 = АР, п).

Далее, если / = то аппроксимация может быть выполнена по упрощенному алгоритму (по аналогии с (10)—(14)). При этом второй этап будет являться завершающим.

Э т а п 2.

(49)

(50)

(51)

H(x, y) :=

h.2 (x, y)

hn(x, y)

h22 (X, у)

Z := (Z1 Z2 Z3 ... Z„)T;

T := (t1 t2 t3 - 0T;

ZT0> := Z ZT1> := T;

hn(x, y)^ hi2(X, У)

hj(x, y) hj(x, y) ... hj(x, y)

(52)

4

Т а б л и ц а 4

Зависимость четырех переменных в виде семейства математических матриц

Z

zi z2 \ z,

X2i \ Xi

Yii xiii x2ii x ,, nii Y2i xi2i x22i x ,, n2i Yi xi,i x2ii x nii

УШ h "mi h 2iii h ,,, niii У i2i h ii2i h 2i2i h ,,, ni2i УШ hii,i h2iii hniii

ti y2ii hi2ii h22ii h ,,, n2ii У22i hi22i h 222i h ,,, n22i y2ii hi2ii h22ii h n2ii

УтН himii h2mii h ,, nmii ymii him2i h 2m2i hnm2i y mii himii h2mii hnmii

Xi \ X22 \ x2

Yi2 xii2 x2i2 xni2 Y ±22 xi22 x222 xn22 Y2 xii2 x2H x - ni2

У ii2 hiii2 h2ii2 h ,,, nii2 У i22 hii22 h 2i22 h ,,, ni22 hiii2 h2ii2 h ni i2

t2 У2i2 hi2i2 h 22i2 h ,,, n2i2 У222 h i222 h 2222 h ™ n222 У2i2 hi2i2 h22i2 hn2i2

T

ymi2 himi2 h 2mi2 h ,, nmi2 ymi2 h im22 h 2m22 hnm22 У mz2 himi2 h2mi2 h 2 nmi2

xi X2j \ X,. ij

Yv xiij x2ij x ,. nil Y2j xi2j x22j x ,. n2j Y. j x... i ij x... 2ij x .. nij

yiij hiiij h2iij hniij yi2j hii2j h2i2j hni2j Yij h..., iiij 2iij h г. ni ij

t J y2ij hi2ij h22ij hn2ij У22j hi22j h222j h „■ n22j Y2j i2ij h . 22ij h ,„ n2ij

У mij himij h2mij h ,■ nmij y mij him2j h2m2j ^nmlj y •• mij himij h2mij h „ nmij

h(x, y, z, t) := interp

cspline( ZT, H (x, y)), ZT, H (x, y),

Если 1 ф ] или каждому значению аргумента ] соответствует разное количество аргументов ., то добавляется третий этап. При этом второй этап имеет вид:

21 := (¿1 22 г3 - г.)Т;

Щх, у) := (ки(х, у) Ь21(х, у) ... кп(х, у))Т;

^2 := 22 23

Z2 := (Zi z2 z3 ... z.)t;

H(x, y) := (hi2(x, y) h22(x, y) ... hQ(x, y))T;

(54)

(55)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(56)

z := (zi Z2 z3 . z)T;

Hj(x, y) := (hij(x, y) h2j(x, y) . h.j(x, y))T;

h1(x, y, z):=interp (cspline(Z1, Hi(x, y)), Zi, Hi(x, y), z);

h2(x, y, z) := interp (cspline(Z2, H2(x, y)), Z2, H2(x, y), z); 2

h (x, y, z) := interp (cspline(Z , j H(x, y)), Zj, Hj(x, y), z). j

(53)

(58)

(59)

(60) (6i) (62)

Этап 3.

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

Т := (L t2

H(x, y, z) := ( h1(x, y, z) h2(x, y, z) ... h.(x, y, z))T

h(x, y, z, t) := interp (cspline(T, H(x, y, z)), T, H(x, y, z), t).

(63)

(64)

(65)

Заключительный этап аппроксимации (выражения (63)—(65)) может быть тождественно заменен алгоритмом, выполняющим приведение матрицы исходных значений к квадратному виду:

... 7.)т; (66)

Z := (z^ Z2 z

T := (t, 2 ZT0> := Z ZT51' := T;

H(x, y) :=

fh^x, y, zi) hi(x, y, z^) ... hi(x, y, z,)^

hz(x, y, zi) h>(x, y, zi) ... hz(x, y, zi)

yhj ( x, y, zi) h. ( x, y, zi) ... h. (x, y,

h(x, y, z, t) := interp

cspline( ZT, H (x, y )), ZT, H ( x, y ),

(67)

(68)

(69)

(70)

Аппроксимация четырехфакторной зависимости (табл. 4) элементарными функциями выполняется в три этапа.

Э тап 1.

Направлен на создание / *. количества зависимостей И.. = /х, у) одинакового общего вида (допустим, по примеру выражения (36)).

Э т а п 2.

Выполняется построение семейства аппроксимирующих зависимостей вида И. = /х, у, 7), каждая из которых создается по аналогии с выражением (48) и справедлива только для определенного значения t. аргумента Т (см. табл. 4):

h = f (x, y, z, t )

h = f (x, y, z ) для ti h = f (x, y, z ) для t2

h. = f (x, y, z ) для t.

(7i)

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

Э тап 3.

Для аналитического определения рассматриваемой зависимости четырех переменных (табл. 4), необходимо все постоян-

ные уравнений h(x, y, z) представить в виде функций от переменной t. Если в качестве соответствующих аппроксимирующих зависимостей будут выбраны полиномиальные функции 2-й степени, а зависимости h(x, y, z) по набору констант будут соответствовать выражению (48), то итоговое количество коэффициентов в искомой зависимости h = fx, y, z, t) составит p-q-s-l = = 2-3-2-3 = 36 (где l — количество постоянных в каждой элементарной функции завершающего этапа процедуры аппроксимации).

В настоящей статье предложены различные методики автоматической аппроксимации дискретных множеств непрерывными гладкими зависимостями нескольких переменных в программной среде таких продуктов, как Microsoft Excel и Mathcad. Приведенные алгоритмы могут быть также реализованы и в аналогичных по назначению программах и их комплексах. Рассмотренные методики, в отличие от рекомендаций, изложенных в [i—5], характеризуются своей относительной гибкостью и позволяют работать с исходными дискретными множествами, представленными в различном виде; кроме того, имеется возможность применять различные типы аппроксимирующих кривых для каждой переменной в пределах создаваемой функции. Пред-

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

В качестве практического примера рассмотрена аппроксимация функциями одной и двух переменных дискретных множеств, которые были получены в ходе проведения серии экспериментальных исследований в лаборатории автомобильных двигателей ГОУ ВПО «ДонНАСА». Полу-

ченные результаты характеризуются хорошей сходимостью с опытными данными (Я = 0,925-1).

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

СПИСОК ЛИТЕРАТУРЫ

1. гилл Ф., Мюррей У., райт М. Практическая оптимизация. Пер. с англ. М.: Мир, 1985.

2. роджерс д., Адамс дж. Математические основы машинной графики. М.: Мир, 2001. 604 с.

3. Пащенко И.г. Excel. Шаг за шагом. М.: Эксмо, 2007. 352 с.

4. Кирьянов д.В. Mathcad 14. СПб.: БХВ-Петербург, 2007. 704 с.

5. Каленчук-Порханова А.А., Вакал Л.П. Пакет программ аппроксимации функций // Компьютерные средства, сети и системы. 2008. № 7. С. 32-37.

6. Бурдун г.д., Макаров Б.н. Основы метрологии: Учеб. пособие для вузов. Изд. 2-е, доп. М.: Изд-во стандартов, 1975. 366 с.

7. науменко А.М., Улитенко В.П. Определение погрешностей технических измерений:

Учеб. пособие. Харьков: Харьковский авиационный институт, 1982. 128 с.

8. Иовицкий П.В. Зограф И.А. Оценка погрешностей результатов измерений. Л.: ЛО Энергоатомиздат, 1985. 248 с.

9. Савенков И.В. Оптимизация режимов силовой установки автомобиля для повышения его топливной экономичности // Автомобильная промышленность. 2016. № 6. С. 12—18.

10. Савенков И.В. Определение расхода воздуха бензинового ДВС на неустановившихся режимах работы // Вестник гражданских инженеров. 2016. № 2. С. 220—224.

11. Савенков И.В., Горожанкин С.А. Определение расхода топлива бензинового ДВС с рампой тупикового типа при работе на переходных режимах // Вюник СНУ iм. Володимира Даля. 2013. № 15 (204) Ч. 2. С. 268—274.

REFERENCES

1. Gill F., Myurrey U., Rayt M. Prakticheskaya optimizatsiya [Practical optimization]. Moscow: Mir Publ., 1985. (rus)

2. Rodzhers D., Adams Dzh. Matematicheskiye osnovy mashinnoy grafiki [Mathematical foundations of computer graphics]. Moscow: Mir Publ., 2001, 604 p. (rus)

3. Pashchenko I.G. Excel. Shagza shagom [Excel. Step by step]. Moscow: Eksmo Publ., 2007, 352 p. (rus)

4. Kiryanov D.V. Mathcad 14. St. Petersburg : BKhV-Petersburg Publ., 2007, 704 p. (rus)

5. Kalenchuk-Porkhanova A.A., Vakal L.P. Paket programm approksimatsii funktsiy [Package programs approximation of functions]. Kompyuternyye sredstva, seti i sistemy. 2008, No. 7, Pp. 32—37. (rus)

6. Burdun G.D., Makarov B.N. Osnovy metrologii [Fundamentals of metrology]. Moscow: Izdatelstvo standartov Publ., 1975, 366 p. (rus)

7. Naumenko A.M., Ulitenko V.P. Opredeleniye pogreshnostey tekhnicheskikh izmereniy [Definition

of the technical measurement errors]. Kharkov: Kharkovskiy aviatsionnyy institute Publ., 1982, 128 p. (rus)

8. Novitskiy P.V., Zograf I.A. Otsenka pogreshnostey rezultatov izmereniy [Evaluation of errors of measurement results]. Leningrad: Energoatomizdat Publ., 1985, 248 p. (rus)

9. Savenkov N.V. Optimizatsiya rezhimov silovoy ustanovki avtomobilya dlya povysheniya yego toplivnoy ekonomichnosti [Optimization of the modes of the vehicle power plant for the increasing its fuel efficiency]. Avtomobilnaya promyshlennost [Automotive industry], 2016, No. 6, Pp. 12—18. (rus)

10. Savenkov N.V. Opredeleniye raskhoda vozdukha benzinovogo DVS na neustanovivshikhsya rezhimakh raboty [Assessment of air consumption of the internal combustion engine et transient operating modes]. Vestnikgrazhdanskikh inzhenerov [Bulletin of Civil Engineers], 2016, No. 2, Pp. 220-224. (rus)

11. Savenkov N.V., Gorozhankin S.A.

Opredeleniye raskhoda topliva benzinovogo DVS s rampoy tupikovogo tipa pri rabote na perekhodnykh rezhimakh [Assessment of fuel consumption of the

petrol combustion engine with a ramp-type deadlock at work on transients]. Vestnik grazhdanskikh inzhenerov [Bulletin of Civil Engineers], 2013, No. 15 (204), Part 2, Pp. 268-274. (ukr)

ГОРОЖАНКИН Сергей Андреевич — заведующий кафедрой «Автомобили и автомобильное хозяйство» Донбасской национальной академии строительства и архитектуры, доктор технических

286123, Донецкая область, г. Макеевка, ул. Державина, д. 2. E-mail: gormar52@gmail.com

GOROZHANKIN Sergey A. Donbas National Academy of Civil Engineering and Architecture. 286123, Derzhavina Str. 2, Makeevka, DPR. E-mail: gormar52@gmail.com

ШИТОВ Анатолий Анатольевич — доцент кафедры высшей и прикладной математики и информатики Донбасской национальной академии строительства и архитектуры, кандидат физико-математических

286123, Донецкая область, г. Макеевка, ул. Державина, д. 2. E-mail: shitov@mail.ru

SHITOV Anatoly A. Donbas National Academy of Civil Engineering and Architecture. 286123, Derzhavina Str. 2, Makeevka, DPR. E-mail: shitov@mail.ru

САВЕНКОВ Никита Владимирович — ассистент кафедры «Автомобили и автомобильное хозяйство» Донбасской национальной академии строительства и архитектуры. 286123, Донецкая область, г. Макеевка, ул. Державина, д. 2. E-mail: savenkovnv@yandex.ru

SAVENKOV Nikita V. Donbas National Academy of Civil Engineering and Architecture. 286123, Derzhavina Str. 2, Makeevka, DPR. E-mail: savenkovnv@yandex.ru

© Санкт-Петербургский политехнический университет Петра Великого, 2016

i Надоели баннеры? Вы всегда можете отключить рекламу.