n this section we
implement the procedure of the proposition
(
Existence
of biorthogonal compactly supported wavelets
) by taking
(see the definition (
Spline
functions
)) for some
.
According to the proposition
(
Properties of spline
functions
)-4,
We seek
to
satisfy
For fixed
,
the
are selected to insure that the highest powers of
and
would be the same on both sides of the equation
.
Therefore, we calculate the highest power of
as follows
thus
or
We calculate the highest power of
:
thus
or
The procedure is implemented by the following Mathematica script. The results
agree with the Python's pywt module and
[Walnut]
up to
cubic spline wavelets (p<=2,n<=5).
n=2
p=2*n-2
CC[k_, n_] := Binomial[n, k]
Pnm1[n_, y_] := Expand[Sum[CC[k, 2*n - 1]*y^k*(1 - y)^(n - 1 - k), {k, 0, n -
1}]]
N1[p_,n_]:= p-2*n+2
N2[p_,n_]:= 2*n-1
m0[p_, x_] :=(1/2*(1+Exp[-2*Pi*I*x]))^(p+1)
M0[p_,n_,x_] := 1/Sqrt[2]*Sum[H[k]*Exp[-2*Pi*I*k*x], {k, N1[p,n],N2[p,n]}]
LHS[p_,n_,z_] := m0[p, z]*Conjugate[M0[p,n, z]]
RHS[n_, z_] := (Cos[Pi*z])^(2*n)*Pnm1[n, (Sin[Pi*z])^2]
Cond[p_,n_, z_] := Expand[TrigToExp[RHS[n, z]]] -
TrigToExp[ComplexExpand[LHS[p,n,z]]]
x1 = Cond[p,n, z]
d=4*n
x2 = Collect[x1*Exp[d*I*Pi*z], Exp[I*Pi*z]]
L=CoefficientList[x2, Exp[I*Pi*z]]
eqs=Map[Function[x, x == 0], L]
eqs2 = Map[Function[x, Im[H[x]] == 0], Range[N1[p,n],N2[p,n]]]
eqs3 = { M0[p,n,0]==1 }
vars = Map[Function[x, H[x]], Range[N1[p,n],N2[p,n]]]
solA=NSolve[Join[eqs, eqs2, eqs3], vars]
m0B[p_, x_] := 1/Sqrt[2]*Sum[h[k]*Exp[-2*Pi*I*k*x], {k, 0,p+1}]
CondB[p_,z_] := Expand[m0[p,z]-m0B[p,z]]
x1 = CondB[p,z]
x2 = Collect[x1, Exp[-I*Pi*z]]
L=CoefficientList[x2, Exp[-I*Pi*z]]
eqs=Map[Function[x, x == 0], L]
eqs2 = Map[Function[x, Im[h[x]] == 0], Range[0,p+1]]
vars = Map[Function[x, h[x]], Range[0,p+1]]
solB=NSolve[Join[eqs, eqs2], vars]
{solA,solB}
|