Интерполяция многомерной поверхности

Описание демо-примера

Расположение

SimInTech\Demo\Автоматика и математика\Интерполяция\Интерполяция многомерной поверхности.prt

Описание

Данный проект демонстрирует возможности библиотеки "Интерполяция" для интерполяции многомерной поверхности. В проекте осуществляется сравнение различных методов интерполяции: ступенчатой и линейной.

Математическая модель для интерполяции представлена на рисунке (Рисунок 1)


Рис. 1. Окно проекта демо-примера

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

Блоки "Линейное с насыщением" позволяют задать желаемые диапазоны изменения каждого аргумента, преобразуя входной сигнал из интервала [0, 1] в интервал [Y1, Y2] в соответствии со значениями свойств блока.

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

  • через свойства блока
  • через JSON-файл
Прим.:
Файл формата "JSON" находится в директории проекта в папке "data".

При задании многомерной поверхности через свойства блока в поле "Формула" используется объединение матриц, аналогичных JSON-файлу. Для корректного преобразования из матрицы в массив осуществляется транспонирование результирующей матрицы

В JSON-файле теги "dim_1" - "dim_3" задают значения аргументов интерполяции, теги "data_1" - "data_3" задают срезы многомерной поверхности при соответствующих значениях третьего аргумента.

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

На графиках отображаются результаты интерполяции заданных аргументов (Рисунок 2, Рисунок 3).



Рис. 2. Ступенчатая интерполяция


Рис. 3. Линейная интерполяция

Используемые блоки