Вэйвлетное разложение гладкого потока ненулевой высоты Выполнил : Суханов Василий Научный руководитель : Демьянович Ю. К. Рецензент : Лебединская Н. А.
Постановка задачи 2 Дана функция f из C 1 [a, b] Используя значения функции и производной приблизить f на [a, b] Количество кодирующих чисел должно контролироваться пользователем
Вэйвлетный подход 3 Рассмотреть f на изначально мелкой сетке Специальным алгоритмом укрупнить сетку Выдать аппроксимацию f на крупной сетке При недостаточной точности измельчить сетку, не пересчитывая коэффициенты полностью
Сплайны эрмитова типа 4 Фиксируем φ(t) = (1, t, t 2, t 3 ) T Рассмотрим ω j, что supp ω 2j-1 [x j, x j+2 ] и supp ω 2j [x j, x j+2 ] Σ ( φ j+1 ω 2j-1 (t) + φ j+1 ω 2j (t)) = φ (t) Компоненты φ (t) приближаются точно с помощью линейных комбинаций ω j S φ (X)= {u | u = Σc j ω j } – пространство сплайнов эрмитова типа
Проекция на пространство сплайнов 5 Любую гладкую функцию можно спроектировать на пространство сплайнов Коэффициенты в разложении – производные и значения функции в узлах
Алгоритм вычисления значения аппроксимации 6 На вход подаётся аргумент функции x и коэффициенты с сеткой За O(log N) вычисляется пара узлов сетки, соседних с x За O( 1 ) вычисляется значение аппроксимации
Функции библиотеки 7 Кодирующая процедура принимает начальное количество узлов, долю сохраняемых узлов, функцию и производную, выдаёт основной поток Декодирующая процедура принимает узлы, коэффициенты, вычисляет аппроксимацию
Численный эксперимент 8 u(t)I0I0 R1R1 R2R2 R linear t 86 1,33 · · ,6 · t2t2 93 5,33 · ,2 · ,2 · t3t ,42 · ,2 · ,6 · /(1 + t 2 ) 95 2,1 · ,2 · · sin(t) 92 9 · ,2 · ,63 · sin(10t)918,8 · · ,6 · I 0 – количество узлов крупной сетки нашего алгоритма R i – погрешность алгоритма (1 – нашего, 2 – аналогичного для гладких потоков 1 высоты, 3 – кусочно - линейное на равномерной сетке )