12
Руководство пользователя
×

2.2.13 Функция интерполяции по функциям

 Функция представляет собой линейную интерполяцию по аргументу X функции, заданной точками (xi, Fi), где xi – значение аргумента i-ой точки, а Fi – значение функции при X=xi. Значения функции Fi задаются функциями, имеющими собственные независимые аргументы Y1, Y2, … , Yn. В резудьтате создаваемая функция F имеет аргументы X, Y1, Y2, … , Yn. Вид создаваемой функции F(X,Y), в которой функции Fi зависят от одного аргумента Y=Y1 представлен на Рис. 8.
 
Рис. 8. Функция интерполяции по функциям
Синтаксис метода создания
pieceLineF(list((X1, F1),…))
Обязательные позиционные параметры метода
list((scalar X1, function F1),…)
Список представляет собой пары скаляров и функций (Xi, Fi), где Xi - значение первого аргумента создаваемой функции; Fi - функция, равная создаваемой функции, при значении первого аргумента, равном Xi.
Описание
Функция линейной интерполяции по функциям имеет n+1 аргумент, где n – максимальное число аргументов функции из множества функций Fi(Y1, Y2,…, Yn). Первым аргументом искомой функций является аргумент, по которому осуществляется интерполяция между значениями множества функций Fi(Y1, Y2,…, Yn).
При задании функции должно быть определено не менее двух точек. Точки задания создаваемой функции в списке могут быть указаны в произвольном порядке, поскольку их упорядочивание по значению аргумента Xi производится автоматически после завершения создания списка.
Для совместимости точек задания создаваемой функции в данном методе необходимо:
      совпадение размерностей значений аргумента Xi всех точек списка;
      совпадение размерностей значений функций Fi всех точек списка;
      совпадение размерностей аргументов с одинаковыми номерами позиций для функций Fi(Y1, Y2,…, Yn) всех точек списка.
Пример
scalar x1=1 [ m ];
scalar x2=2 [ m ];
function function1(y [ kg ], z [], y2 [], y3 [])=1*#y;
function function2(y [ kg], z[] )=2*#y;
function function3=pieceLineF( list( ( x1, function1 ), ( x2, function2 ) ) );
sensor sensor1=function3( 1.5 [m], 10 [kg], 0, 0, 0);