Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.60.149] |
|
Сообщ.
#1
,
|
|
|
Есть график, построенный по точкам (функции нет).
Как его сделать плавным? |
Сообщ.
#2
,
|
|
|
ну так надобно вычислить функцию, которая проходит через все енти точки. Помоему в каждом техническом вузе на третьем курсе этому учат
|
Сообщ.
#3
,
|
|
|
Попробуй профитировать его элементарными функциями при одновременном постороении хи квадрата - далее минимизировать ошибку.
Если не хочешь сам писать прогу то могу подсказать : есть такой зверь PAW (блин как я его ненавижу - Physics Analysis Workstation, по моему халявный) там есть пакет MINUIT - это как раз то о чем я и говорил. Хотя если у тебя 10 точек то это из пушки по воробьям получается. |
Сообщ.
#4
,
|
|
|
А всегда ли можно вычислить функцию для нескольких сотен точек, взятых из базы и представляющих график цена/время ?
|
Сообщ.
#5
,
|
|
|
не знаю твоего уровня:)
1) на новичка - строить не по точкам, а по отрезкам. то естьот каждой предыдущей проводить отрезок к последующей. 2) на гуру - использовать всякие бета сплайны. (мы тут только курс по этому делу закончили, блин - тяжкая вещь....) |
Сообщ.
#6
,
|
|
|
Цитата shadowbolt, 03.06.02, 23:20:48 А всегда ли можно вычислить функцию для нескольких сотен точек, взятых из базы и представляющих график цена/время ? Всегда. При чем есть два кардинально различающихся метода (и результата, соответственно) Интерполяция - сглаживание кривой проходящей через все точки. Аппроксимация - сглаживание кривой не обязательно проходящей через все точки. Интерполяция может давать очень странный результат если исходные точки заданы с низкой точностью и/или несколько точек пропущено (другие особенности). Интерполирующая функция бесконечно интегрируемая в любой точке, и это может дать большие отклонения функции между двумя заданными точками. Можешь почитать про сглаживание http://algolist.manual.ru/maths/approx.php там есть ссылка на PDF На этом http://www.serpik.com/ сайте найдешь прикольную программулину которая строит гарфики, сглаживает. ихний баннер Прога отечественная и для русских, когда-то была бесплатной, сейчас не знаю |
Сообщ.
#7
,
|
|
|
to m: Большое спасибо за разъяснение. Значит мне нужна апроксимация. Только сторонние проги не подходят, т.к. график я строю в своей проге.
Пошел учить матчасть. |
Сообщ.
#8
,
|
|
|
Вот тебе еще в помощь:
Вверху этой страницы: Разделы сайта -> Паскаль Потом в окошке поиска введи "сплайн" -> [ Search ] |
Сообщ.
#9
,
|
|
|
а ещё на http://www.planet-source-code.com есть специальный движок - data smooth engine зовётся.
|
Сообщ.
#10
,
|
|
|
Слышал о рядах фурье? Это первый способ.
А второй - это аппроксимация. У меня есть свой курсовик (правда, только для 3-х точек), так что, если надо, кинь мне приватное сообщение.... 2 purpe: У кого на третьем, у кого ещё на подготовительных курсах |
Сообщ.
#11
,
|
|
|
Тогда точно нужно бета сплайны. если данных тебе ссылок недостаточно, попробуй поискать на яндексе по словам бета сплайн или B-сплайн.
там результатов не так много, и среди них есть класс, который как раз и строит апроксимации по точкам. класс не очень большой, разобраться несложно:) не найдешь, постараюсь у себя на винте поискать и прислать:) ЗЫ блин, у меня ж по этим бета-сплайнам экзамен, я я досих пор не разобрался с ними нормально:(... где бы литературу найти... |
Сообщ.
#12
,
|
|
|
По ссылке тов. m обнаружено содержание интересного произведения, а именно:
"Практикум на ЭВМ" К.Ю. Богачева. Но ссылка на файл не рабочая. Поднапряг поисковики, тоже не нашел. Вроде нашел этот файл, но расширение *.ps. Внутри \%!PS-Adobe-2.0 \%\%Creator: dvips(k) 5.86d Copyright 1999 Radical Eye Software \%\%Title: a.dvi Чем смотреть - непонятно, пахнет ТеХ'ом. Если у кого есть сие произведение в более другом виде был бы очень рад увидеть его в мыле: snikita<>torba.com |
Сообщ.
#13
,
|
|
|
Правильно что TeX'ом пахнет - сделан то файл из дэвэишки!
Поскрипты читаются c помощью GSview |
Сообщ.
#14
,
|
|
|
Сгладить можно полиномом N порядка, коффициенты которого вычисляются по методу Гаусса, например...
Сам над такой же проблемой на той неделе бился. Могу залить исходник реализации алгоритма на C. |
Сообщ.
#15
,
|
|
|
Цитата shadowbolt, 05.06.02, 10:27:41 По ссылке тов. m обнаружено содержание интересного произведения, а именно: "Практикум на ЭВМ" К.Ю. Богачева. Но ссылка на файл не рабочая. Поднапряг поисковики, тоже не нашел. Вроде нашел этот файл, но расширение *.ps. Внутри \%!PS-Adobe-2.0 \%\%Creator: dvips(k) 5.86d Copyright 1999 Radical Eye Software \%\%Title: a.dvi Чем смотреть - непонятно, пахнет ТеХ'ом. Если у кого есть сие произведение в более другом виде был бы очень рад увидеть его в мыле: snikita<>torba.com Не правда ваша тов. shadowbolt, обе ссылки проверены, теперь уже повторно. Все качается. На ту ссылку нужно нажать мышой, (а не просто смотреть на нее), откроется окошечко, с рекомендациями по скачиванию и просмотру. Вот линк на сам файл http://algolist.manual.ru/maths/method_approx.zip, в этом архиве лежит файл с расширением .PS его можно смотреть вьюверами (см. выше) или сразу распечатать командой copy prn Semestr2.psесли принтер поддерживает ps (это обычно большими буквами в названии указывается) и если бумаги не жалко. |
Сообщ.
#16
,
|
|
|
Цитата m, 06.06.02, 12:32:22 Не правда ваша тов. shadowbolt, обе ссылки проверены, теперь уже повторно. Все качается. На ту ссылку нужно нажать мышой, (а не просто смотреть на нее), откроется окошечко, с рекомендациями по скачиванию и просмотру. Ясненько. Это у меня Опера шалила. Хоть я и тыкал на ссылку, ничего не происходило. |
Сообщ.
#17
,
|
|
|
2purpe: Na samom dele dovol'no trudno budet nai'ti takuju funkciju dlja bol'shogo chisla tochek
Mojno poprobovat' porabolami soedinjat' po tri tochki, no jeto ne ochen' horoshii' sposob. Vot tut obsujdalsja tot je vopros i est' ishodnik na paskale: http://www.forum.vingrad.ru/cgi-bin/newforum/ikonboard.cgi?s=3cff5bab7273ffff;act=ST;f=13;t=815 |
Сообщ.
#18
,
|
|
|
2 neutrino:
Почему в том форуме ты пишешь по-русски, а здесь транслитерацией? Мы тоже хотим по-русски |
Сообщ.
#19
,
|
|
|
Zdravstvui'te Vot.
Otvechu: Potomu chto tam est' perevod s translita, a ja ne mnogo ne v Rossii, i komp'jutery, kotorye ja ispol'zuju ne moi. I nel'zja na nih ustanovit' russkii' . U samogo glaza boljat ot jetogo translita. Izvinite uj menja. |
Сообщ.
#20
,
|
|
|
Цитата neutrino, 06.06.02, 18:06:03 2purpe: Na samom dele dovol'no trudno budet nai'ti takuju funkciju dlja bol'shogo chisla tochek Mojno poprobovat' porabolami soedinjat' po tri tochki, no jeto ne ochen' horoshii' sposob. Vot tut obsujdalsja tot je vopros i est' ishodnik na paskale: http://www.forum.vingrad.ru/cgi-bin/newforum/ikonboard.cgi?s=3cff5bab7273ffff;act=ST;f=13;t=815 Может и трудно, но функция всегда найдётся ! А мы, кстати, не ищем простых путей |
Сообщ.
#21
,
|
|
|
Цитата neutrino, 06.06.02, 19:37:24 Zdravstvui'te Vot. Otvechu: Potomu chto tam est' perevod s translita, a ja ne mnogo ne v Rossii, i komp'jutery, kotorye ja ispol'zuju ne moi. I nel'zja na nih ustanovit' russkii' . U samogo glaza boljat ot jetogo translita. Izvinite uj menja. А где "там" ? Киньте ссылочку, плиз.... только приватным сообщением.... |
Сообщ.
#22
,
|
|
|
>> Как сгладить график?
А если просто сделать преобразование Фурье, и в полученном спектре урезать высокие частоты квантованием? |
Сообщ.
#23
,
|
|
|
Быстрее всего интерполяция Оверхаузера - http://www.musicdsp.org/archive.php?classid=5#93 - здесь она позорно обозвана эрмитовой
|
Сообщ.
#24
,
|
|
|
Цитата andyag, 13.06.02, 15:35:58 >> Как сгладить график? А если просто сделать преобразование Фурье, и в полученном спектре урезать высокие частоты квантованием? В данном случае ты можешь получить бешенную погрешность и потерять уйму полезных данных. |
Сообщ.
#25
,
|
|
|
Цитата GrAnd, 19.06.02, 16:35:19 В данном случае ты можешь получить бешенную погрешность и потерять уйму полезных данных. А под сглаживанием разве не это имеется ввиду? |
Сообщ.
#26
,
|
|
|
Но никак не "обрезание" высоких частот. Это равносильно тому, что взять среднее арифметическое от всех значений. ;D ;D ;D
|
Сообщ.
#27
,
|
|
|
Цитата GrAnd, 20.06.02, 08:41:59 Но никак не "обрезание" высоких частот. Это равносильно тому, что взять среднее арифметическое от всех значений. ;D ;D ;D Я же не говорю _совсем обрезать_, я говорю _немного проквантовать_ :-) ( урезать - не значит зарезать :-) ) |