Показано с 1 по 10 из 19

Тема: Интерполяция кубическими сплайнами

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    У меня нет CoDeSys 3.5, посмотреть не смогу.
    Было бы хорошо, если бы исходники были опубликованы в тексте сообщения, было кратко приведено описание применения - ведь нет смысла в каждом цикле выполнять пересчёт полиномов, значит он происходит или в отдельном ФБ или по отдельной команде.
    Также интересно видеть формулы - как расчёта полиномов, так и вычислений функции, ограничения входных и выходных значений.

    Без этого - применение чужого кода - "прыжок веры" Индианы Джонса.

    В своё время хотел применить интерполяционные формулы Лагранжа и Ньютона для корнеизвлекающей зависимости расхода от перепада давления. Хорошо, что сначала построил график на компьютере - в узлах значения совпадали, а между ними формировались "вертикальные волны", т.е. между узлами результат интерполяции был со значительной ошибкой. Думал о кубических сплайнах, но не стал тратить время и сделал кусочно-линейной интерполяцией.
    Понятно, что со сплайнами будет лучше, но всё же есть смысл проверить.
    Была сетка значений:
    dP, кПа 0.610 2.450 5.540 9.860 14.100 22.400 30.500 39.800 50.300
    F, т/ч 5 10 15 20 25 30 35 40 45

  2. #2

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    У меня нет CoDeSys 3.5, посмотреть не смогу.
    Было бы хорошо, если бы исходники были опубликованы в тексте сообщения, было кратко приведено описание применения - ведь нет смысла в каждом цикле выполнять пересчёт полиномов, значит он происходит или в отдельном ФБ или по отдельной команде.
    Вот работа проекта в эмуляции, зачем тут кубические сплайны, только автору понятно))) 1 Работа проекта.jpg
    Тут двух точек за глаза)
    Последний раз редактировалось kondor3000; 11.04.2025 в 21:14.

  3. #3

    По умолчанию

    Цитата Сообщение от FPavel Посмотреть сообщение
    У меня нет CoDeSys 3.5, посмотреть не смогу.
    Было бы хорошо, если бы исходники были опубликованы в тексте сообщения, было кратко приведено описание применения - ведь нет смысла в каждом цикле выполнять пересчёт полиномов, значит он происходит или в отдельном ФБ или по отдельной команде.
    Также интересно видеть формулы - как расчёта полиномов, так и вычислений функции, ограничения входных и выходных значений.

    Без этого - применение чужого кода - "прыжок веры" Индианы Джонса.

    В своё время хотел применить интерполяционные формулы Лагранжа и Ньютона для корнеизвлекающей зависимости расхода от перепада давления. Хорошо, что сначала построил график на компьютере - в узлах значения совпадали, а между ними формировались "вертикальные волны", т.е. между узлами результат интерполяции был со значительной ошибкой. Думал о кубических сплайнах, но не стал тратить время и сделал кусочно-линейной интерполяцией.
    Понятно, что со сплайнами будет лучше, но всё же есть смысл проверить.
    Была сетка значений:
    dP, кПа 0.610 2.450 5.540 9.860 14.100 22.400 30.500 39.800 50.300
    F, т/ч 5 10 15 20 25 30 35 40 45
    Есть ещё сплайн Акимы, дающий на выходе плавную кривую без резких выбросов на перегибах.
    https://www.source-code.biz/snippets/typescript/akima/
    Последний раз редактировалось 1exan; 12.04.2025 в 19:39.

  4. #4

    По умолчанию

    Цитата Сообщение от 1exan Посмотреть сообщение
    Есть ещё сплайн Акимы, дающий на выходе плавную кривую без резких выбросов на перегибах.
    Вообще то глючит не по детски этот метод.
    1.JPG

  5. #5

    По умолчанию

    Цитата Сообщение от BETEP Посмотреть сообщение
    Вообще то глючит не по детски этот метод.
    Да, есть какой-то нюанс с крайними точками.
    Возможно можно как-то обойти, добавив сдвигом дополнительных точек в конце-начале

  6. #6

    По умолчанию

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

    А исходная идея была - сразу после ввода таблицы исходных данных получить функцию и сразу ею пользоваться без дополнительных вычислений.
    Но в моём случае - проявились ограничения интерполяционной функции (полинома).

Похожие темы

  1. Линейная Интерполяция в пр200
    от Андрей 77 в разделе Среда программирования OWEN Logic
    Ответов: 41
    Последнее сообщение: 23.11.2023, 07:35

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •