Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4-16_занятия_LV8_red+.doc
Скачиваний:
38
Добавлен:
13.11.2019
Размер:
803.84 Кб
Скачать

9.3. Интерполяция полиномом

При этом виде интерполяции ищется алгебраический полином степени n – 1

,

проходящий через все имеющиеся узловые точки. На входе PolyInterp.vi действуют массивы X,Y и текущие значения х.

  1. Чтобы получить новый, проинтерполированный массив Xint, Yint, выберите Polynomial Interpolation.vi из палитры Mathematics >> Interp&Extrap и поместите ее внутрь цикла For. Подсоедините исходные массивы X, Y, задайте количество интерполированных значений.

Внимание! В LabVIEW есть два способа ввода массива чисел внутрь цикла For Loop: поэлементно (с индексированием) и всем массивом. В данном случае требуется на каждой итерации цикла иметь весь массив на входе PolyInterp.vi. Для этого нажмите точно на туннеле правую кнопку мыши и выберите Disable Indexing (Запретить индексирование).

  1. Рассчитайте шаг интерполяции х.

  2. В нутри цикла For сформируйте текущий х, связав его со счетчиком цикла i и х. При построении диаграммы сверяйтесь с рис. 9.1. Для убыстрения построения блок-схемы включите автоматический выбор инструмента, щелкнув по прямоугольнику вверху Палитры Инструментов (см. рис. 2.2).

  3. Используя Build Array из палитры Array, обеспечьте вывод на XY Graph двух кривых: исходной функции и проинтерполированной (на входе XY Graph теперь четыре массива, объединенные в два кластера).

  4. Переключитесь на лицевую панель, включите Plot Legend и измените цвет второй кривой графика.

  5. Запустите VI, понаблюдайте результаты интерполяции при разных значениях параметров.

9.4. Интерполяция дробно-рациональной функцией

В этом случае находится дробно-рациональная функция

,

проходящая через все исходные узлы X, Y. Степень полиномов m в числителе и знаменателе равна при четном n и при n нечетном. Использование дробно-рациональной функции позволяет понизить степень интерполяционных полиномов.

  1. Выберите кадр № 1 структуры Sequence. В нем разработайте алгоритм интерполяции с помощью Rational Interpolation.vi. Реализация идентична предыдущему кадру.

  2. На лицевой панели расположите второй XY Graph для анализа результатов интерполяции дробно-рациональной функцией.

9.5. Сплайн-интерполяция

Этот вид интерполяции является наиболее качественным и в настоящее время чаще всего используется при обработке данных эксперимента, хотя в практической реализации он несколько более сложен. В отличие от интерполяции полиномом и дробно-рациональной функцией при сплайн-интерполяции не ищется единая функция для всех узловых точек. Вместо этого строится набор кубических полиномов для каждого элементарного интервала [xi, xi+1], причем искомые полиномы должны удовлетворять условию непрерывности вплоть до вторых производных. Интерполяция данным способом состоит из двух этапов. На первом рассчитывается массив производных (наклонов сплайна) в каждом исходном узле. На втором этапе считаются интерполированные точки. Соответственно, в LabVIEW существует два прибора: Spline Interpolant.vi для нахождения наклонов сплайна и Spline Interp.vi для получения интерполированных значений.

  1. Переместитесь в кадр № 2, поместите в него Spline Interpolant.vi, подсо-едините к нему исходные массивы X и Y. На выходе данного получается одномерный массив Interpolant.

  2. Разместите блок, рассчитывающий интерполированные значения, по аналогии с предыдущими кадрами. Отличие в том, что на вход Spline Interpolation.vi нужно еще подать промежуточный массив вторых производных Interpolant из п. 1.

  3. На лицевой панели расположите третий XY Graph с результатами сплайн-интерполяции.

  4. Сохраните разработанный VI.

  5. Проанализируйте качество и скорость интерполяции тремя перечисленными способами при малом (<20) и большом (>100) количестве исходных узловых точек, а также при разных относительных количествах исходных и проинтерполированных точек.

  6. Составьте отчет по лабораторной работе. Приведите примеры удачной и неудачной интерполяции. Сравните скорость вычисления разными способами. Объясните различия.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]