powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Интерполировать значение по предыдущим значениям
25 сообщений из 29, страница 1 из 2
Интерполировать значение по предыдущим значениям
    #38277516
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
строится график из ломаной линии (выглядит как нисходящая ветвь параболы)

нахожу последовательно углы наклона каждого участка ломаной

допустим:
(значение тангенса в градусах)
1) 0.000615
2) 0.008615
3) 0.022153

как грубо "предположить" какой будет следующий угол, смотря на эти предыдущие значения?

под грубо подразумеваю - существует ли волшебная формула?
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277544
Фотография skole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Формула расчтета угла из тригонометрии, 8 класс, котангенс
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277551
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я про такой случай говорю
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277624
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аппроксимируй на параболу или иную подходящую кривую, и считай значение в нужной точке.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277652
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2,

это не интерполяция, а экстраполяция
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277655
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

как раз это и является задачей - нахождение значения X когда Y=0
В данном случае:
Y - Efficiency
X - давление

это дело описывает параболу
Y=aX 2 +bx+c

100 = a*0 2 +b*0+c (100 эффективность = 0 макс давление)
99 = a*1625 2 +b*1625+c (99 эффективность = 1625 макс давление)
85 = a*3250 2 +b*3250+c (85 эффективность = 3250 макс давление)
49 = a*4875 2 +b*4875+c (49 эффективность = 4875 макс давление)
...
надо найти какой X будет 0% эффективности - то есть когда заглохнет насос
0 = a*X 2 +b*X+c (0 эффективность = 4875 макс давление)
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277660
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилAlexander2,
это не интерполяция, а экстраполяция
согласен, неправильно выразился
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277670
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2,

полином Лагранжа построй
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38277819
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аппроксимируй любым методом. Например, МНК. Потом экстраполируй.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38278238
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Alexander2Akina,

как раз это и является задачей - нахождение значения X когда Y=0
В данном случае:
Y - Efficiency
X - давление

это дело описывает параболу
Y=aX 2 +bx+c

100 = a*0 2 +b*0+c (100 эффективность = 0 макс давление)
99 = a*1625 2 +b*1625+c (99 эффективность = 1625 макс давление)
85 = a*3250 2 +b*3250+c (85 эффективность = 3250 макс давление)
49 = a*4875 2 +b*4875+c (49 эффективность = 4875 макс давление)
...
надо найти какой X будет 0% эффективности - то есть когда заглохнет насос
0 = a*X 2 +b*X+c (0 эффективность = 4875 макс давление)А парабола -это по физическим соображениям или как? Либо в данных есть погрешность, либо это не парабола. Парабола легко строится по трем точкам. По первым трем точкам a=-1/406250 b=11/3250 c=100, четвертая точка на эту параболу не попадает. По четырем точкам можно построить кубическую кривую, но она проходя через некоторое минимальное значение начинает снова расти. Оно физике задачи соответствует?
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38278250
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
[quot Alexander2]строится график из ломаной линии (выглядит как нисходящая ветвь параболы)[quot]а может быть выглядит как четверть периода синусоиды... Или как еще чего-нибудь. Экстраполяция без представления о физике процесса может дать совершенно произвольные результаты.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38279029
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В такой постановке автору подойдет всё что угодно. Кусочные параболы
как в методе Симпсона. Сплайны. Кривые Бежье.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38279161
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
да подойдет любой метод, описывающий общий процесс понижения производительности с повышением давления (силы, температуры и т.д.).
Показал бы кто на примере как вообще вычислить и найти чему будет равен Х при пересечении с горизонталью. Алгоритм смогу составить сам.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38279197
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2, парень решение твоей проблемы лежит в области тепловой физики,
физики газов или механики. Читай умные книжки по предметной области для которой
этот софт делается. А в этом форуме тебе могуть дать реализации "коней в вакууме".

Много разных и ненужных коней...
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38279629
x1ca4064
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2Показал бы кто на примере как вообще вычислить и найти чему будет равен Х при пересечении с горизонталью. Алгоритм смогу составить сам.

Смотрите:

Пусть у нас будет парабола Y=1-A*X^2, нам надо найти правильное значение A. Составим функцию ошибки E=1/2*Sum(Y[i]-(1-A*X[i]^2)^2. Теперь минимизируем эту функцию ошибки, для чего возмем производную от нее по A:

dE/dA=Sum(Y[i]*X[i]^2)-Sum(X[i]^2)+A*Sum(X[i]^4)

Приравняем производную 0, и найдем

A=(Sum(X[i]^2)-Sum(Y[i]*X[i]^2))/Sum(X[i]^4)

Для Ваших данных (примерно):
X Y
0 1
1625 0.95
3250 0.85
4875 0.5

A=1.99E-8

Нулевая эффективность при X=7088.637839
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38279762
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2строится график из ломаной линии (выглядит как нисходящая ветвь параболы)
Уже сказали выше, повторю: "выглядит как", не считается, кривую надо выбрать из физики процесса. По графику : может быть параболой или синусоидой, или экспонентой или еще много чего :)

Насчет формулы: гугли "метод наименьших квадратов".
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38279811
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Alexander2mayton,
да подойдет любой метод, описывающий общий процесс понижения производительности с повышением давления (силы, температуры и т.д.).
Показал бы кто на примере как вообще вычислить и найти чему будет равен Х при пересечении с горизонталью. Алгоритм смогу составить сам.А может график вообще никогда горизонталь не пересечет, может он на последнем куске ломаной прошел точку перегиба и дальше наклон будет уменьшаться, а значение асимптотически приближаться к 0 в бесконечности...
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38279817
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
посмотрите на график арктангенса, переверните и сдвиньте его... Уверены, что у вас не такой случай?
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38280243
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
?Alexander2mayton,
да подойдет любой метод, описывающий общий процесс понижения производительности с повышением давления (силы, температуры и т.д.).
Показал бы кто на примере как вообще вычислить и найти чему будет равен Х при пересечении с горизонталью. Алгоритм смогу составить сам.А может график вообще никогда горизонталь не пересечет, может он на последнем куске ломаной прошел точку перегиба и дальше наклон будет уменьшаться, а значение асимптотически приближаться к 0 в бесконечности...
Может. Может. Да.. да. Он может быть и колебательным процессом. И просто шумом. И суперпозицией
других функций с шумами и колебаниями. Вообще всё может быть.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38280756
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
x1ca4064,

спасибо за участие.
Я ту упоминал - речь идет о насосе, производительность падает по мере увеличения давления. Судя по эксперименталоьной кривой, оно должно упасть до 0 примерно между 5200-5700. А согласно приведенным расчетом по производной получается аж 7088, хотя максимально достижимое давление для данной модели насоса вообще 6500.
Это что косяк в расчетах или что-то-другое?
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38280766
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2,

Прошу всех не впадать в крайности теоретизирования, речь идет о банальных тестах производительности насосов, то есть идет процесс проверки РЕАЛЬНЫХ девайсов на станине. Через насос прокачивают воду под разным давлением и смотрят при каком давлении он "умрет". Обычно он не "умирает", и обеспечивает запрашиваемую производительность при заданном давлении. Но иногда, судя по нарастающему градиенту падения производительности, видно, что он не дотянет до номинального давления [когда он способен хоть что-то (чуть > 0% производительности) прокачивать]. Так вот задача - предположить точку перечечения с нулевой производительностью.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38280782
mikhail_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если можно предположить что ваша функция допускает разложение в ряд Тэйлора, тогда

x1 = 0; f(x1) - известно
x2 = 1625 f(x2) - известно
x3 = 3250 f(x3) - известно
x4 = 4875 f(x4) - известно

Разлагая в ряд Тэлора и отбрасывая члены выше третьего порядка получаем систему из 4х линейных уравнений с 4мя неизвесными:

f(x) + f'(x)(x1 - x) + f''(x)(x1 - x)^2/2 + f'''(x)(x1 - x)^3/6 = f(x1)
f(x) + f'(x)(x2 - x) + f''(x)(x2 - x)^2/2 + f'''(x)(x2 - x)^3/6 = f(x2)
f(x) + f'(x)(x3 - x) + f''(x)(x3 - x)^2/2 + f'''(x)(x3 - x)^3/6 = f(x3)
f(x) + f'(x)(x4 - x) + f''(x)(x4 - x)^2/2 + f'''(x)(x4 - x)^3/6 = f(x4)

Решаете вручную, находите f(x), там получится какая-то страшенно выглядящая рациональная функция. Дальше пишите коротенькую програмку для поиска корней этой функции по Ньютону. Фсё.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38281031
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Alexander2x1ca4064,

спасибо за участие.
Я ту упоминал - речь идет о насосе, производительность падает по мере увеличения давления. Судя по эксперименталоьной кривой, оно должно упасть до 0 примерно между 5200-5700. А согласно приведенным расчетом по производной получается аж 7088, хотя максимально достижимое давление для данной модели насоса вообще 6500.
Это что косяк в расчетах или что-то-другое?Вон там http://fini.su/information_12975.html график зависимости производительности компрессора в зависимости от давления с изломами и перегибами, ни разу не похож на параболу.
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38281033
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Alexander2Alexander2,

Прошу всех не впадать в крайности теоретизирования, речь идет о банальных тестах производительности насосов, то есть идет процесс проверки РЕАЛЬНЫХ девайсов на станине. Через насос прокачивают воду под разным давлением и смотрят при каком давлении он "умрет". Обычно он не "умирает", и обеспечивает запрашиваемую производительность при заданном давлении. Но иногда, судя по нарастающему градиенту падения производительности, видно, что он не дотянет до номинального давления [когда он способен хоть что-то (чуть > 0% производительности) прокачивать]. Так вот задача - предположить точку перечечения с нулевой производительностью.Да нельзя тут экстраполировать. Почему нельзя напрямую измерение нужную точку найти?
...
Рейтинг: 0 / 0
Интерполировать значение по предыдущим значениям
    #38281265
x1ca4064
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2Это что косяк в расчетах или что-то-другое?

Это говорит о том, что функция y=1-A*x^2 (я взял ее для примера, она самая простая) плохо подходит для описания поведения Ваших насосов. Необходимо выбрать другую функцию
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Интерполировать значение по предыдущим значениям
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]