WaveletPsi[wave,x]
gives the wavelet function
for the symbolic wavelet wave evaluated at x.
WaveletPsi[wave]
gives the wavelet function as a pure function.
WaveletPsi
WaveletPsi[wave,x]
gives the wavelet function
for the symbolic wavelet wave evaluated at x.
WaveletPsi[wave]
gives the wavelet function as a pure function.
Details and Options
- The wavelet function
satisfies the recursion equation
, where
is the scaling function and
are the high-pass filter coefficients. - A discrete wavelet transform effectively represents a signal
in terms of scaled and translated wavelet functions
, where
. - WaveletPsi[wave,x,"Dual"] gives the dual wavelet function
for biorthogonal wavelets such as BiorthogonalSplineWavelet and ReverseBiorthogonalSplineWavelet. - The dual wavelet function satisfies the recursion equation
, where
are the dual high-pass filter coefficients. - The following options can be used:
-
MaxRecursion 8 number of recursive iterations to use WorkingPrecision MachinePrecision precision to use in internal computations
Examples
open all close allBasic Examples (3)
Plot[WaveletPsi[HaarWavelet[], x], {x, -1, 2}, Exclusions -> None]WaveletPsi[HaarWavelet[], x, WorkingPrecision -> ∞]Plot[WaveletPsi[DaubechiesWavelet[4], x], {x, -3, 4}, PlotRange -> All]WaveletPsi[DaubechiesWavelet[4], x]Plot[WaveletPsi[MexicanHatWavelet[1], x], {x, -5, 5}, PlotRange -> All]WaveletPsi[MexicanHatWavelet[1], x]Scope (5)
Compute primal wavelet function:
ψ = WaveletPsi[DaubechiesWavelet[3]]Plot[ψ[x], {x, -2, 3}, PlotRange -> All]Overscript[ψ, ~] = WaveletPsi[BiorthogonalSplineWavelet[3, 5], x, "Dual"]Plot[Overscript[ψ, ~], {x, -3, 4}, PlotRange -> All]Wavelet function
for discrete wavelets, including HaarWavelet:
Plot[WaveletPsi[HaarWavelet[], x], {x, -0.5, 1.5}, Exclusions -> None]Plot[WaveletPsi[DaubechiesWavelet[3], x], {x, -2, 3}, PlotRange -> All]Plot[WaveletPsi[SymletWavelet[5], x], {x, -4, 5}, PlotRange -> All]Plot[WaveletPsi[CoifletWavelet[2], x], {x, -5, 6}, PlotRange -> All]Plot[WaveletPsi[BiorthogonalSplineWavelet[2, 4], x], {x, -2, 3}, PlotRange -> All]ReverseBiorthogonalSplineWavelet:
Plot[WaveletPsi[ReverseBiorthogonalSplineWavelet[5, 5], x], {x, -4, 5}, PlotRange -> All]Plot[WaveletPsi[CDFWavelet[], x], {x, -3, 4}, PlotRange -> All]Plot[WaveletPsi[ShannonWavelet[8], x], {x, -8, 8}, PlotRange -> All]Plot[Re@WaveletPsi[BattleLemarieWavelet[6, 8], x], {x, -8, 8}, PlotRange -> All]Plot[Re@WaveletPsi[MeyerWavelet[2, 5], x], {x, -5, 5}, PlotRange -> All]Wavelet function
for continuous wavelets, including DGaussianWavelet:
Plot[WaveletPsi[DGaussianWavelet[3], x], {x, -5, 5}, PlotRange -> All]Plot[WaveletPsi[MexicanHatWavelet[1], x], {x, -5, 5}, PlotRange -> All]Plot[{Re[WaveletPsi[GaborWavelet[1], x]], Im[WaveletPsi[GaborWavelet[1], x]]}, {x, -5, 5}, PlotRange -> All]Plot[WaveletPsi[ShannonWavelet[8], x], {x, -8, 8}, PlotRange -> All]Plot[WaveletPsi[MorletWavelet[], x], {x, -5, 5}, PlotRange -> All]Plot[{Re[WaveletPsi[PaulWavelet[4], x]], Im[WaveletPsi[PaulWavelet[4], x]]}, {x, -2, 2}, PlotRange -> All]Multivariate scaling and wavelet functions are products of univariate ones:
ϕ = WaveletPhi[DaubechiesWavelet[3]];
ψ = WaveletPsi[DaubechiesWavelet[3]];Plot3D[Evaluate[ϕ[x]ψ[y]], {x, 0, 5}, {y, 0, 5}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]Plot3D[Evaluate[ϕ[x]ψ[y]], {x, 0, 5}, {y, -2, 3}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]Plot3D[Evaluate[ψ[x]ϕ[y]], {x, -2, 3}, {y, 0, 5}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]Plot3D[Evaluate[ψ[x]ψ[y]], {x, -2, 3}, {y, -2, 3}, PlotRange -> All, ColorFunction -> "SolarColors", Mesh -> None, Axes -> None]Options (3)
MaxRecursion (1)
WorkingPrecision (2)
By default WorkingPrecision->MachinePrecision is used:
Subscript[ψ, 1] = WaveletPsi[DaubechiesWavelet[4]]Subscript[ψ, 2] = WaveletPsi[DaubechiesWavelet[4], WorkingPrecision -> MachinePrecision]Subscript[ψ, 1] == Subscript[ψ, 2]Use higher-precision filter computation:
WaveletPsi[DaubechiesWavelet[4], 2, WorkingPrecision -> 20]Precision[%]Properties & Relations (4)
Wavelet function integrates to zero
:
Integrate[WaveletPsi[HaarWavelet[], x], {x, -∞, ∞}]
satisfies the recursion equation
:
ϕ = WaveletPhi[DaubechiesWavelet[2]];b = WaveletFilterCoefficients[DaubechiesWavelet[2], "PrimalHighpass"];Plot the components and the sum of the recursion:
wavelet[x_, ϕ_, b_] := 2Table[b[[i, 2]]ϕ[2x - b[[i, 1]]], {i, Length[b]}]{Plot[Evaluate@wavelet[x, ϕ, b], {x, -1, 2}, PlotRange -> All], Plot[Total@wavelet[x, ϕ, b], {x, -1, 2}, PlotRange -> All]}Frequency response for
is given by
:
g[wav_, ω_] := With[{b = WaveletFilterCoefficients[wav, "PrimalHighpass"]}, Sum[b[[i, 2]]Exp[-I b[[i, 1]]ω], {i, Length[b]}]
]The filter is a high-pass filter:
Plot[Abs[g[DaubechiesWavelet[2], ω]], {ω, -π, π}, Ticks -> {{-π, -(π/2), 0, (π/2), π}, Automatic}, AxesLabel -> {ω, Abs[G[ω]]}]Fourier transform of
is given by
:
h[wav_, ω_] := With[{a = WaveletFilterCoefficients[wav]}, Sum[a[[i, 2]]Exp[-I a[[i, 1]]ω], {i, Length[a]}]]g[wav_, ω_] := With[{b = WaveletFilterCoefficients[wav, "PrimalHighpass"]}, Sum[b[[i, 2]]Exp[-I b[[i, 1]]ω], {i, Length[b]}]
]fg[wav_, ω_, j_] := Abs[g[wav, (ω/2)]Product[h[wav, (ω/2^i)], {i, j}]]Plot[fg[DaubechiesWavelet[2], ω, 10], {ω, -10Pi, 10Pi}, PlotRange -> All,
AxesLabel -> {ω, Overscript[ψ, ^ ][ω]}]Neat Examples (1)
Plot translates and dilations of wavelet function:
ψ[x_, j_, k_] := 2^j / 2WaveletPsi[BiorthogonalSplineWavelet[1, 3], 2^jx - k]Plot[Evaluate@Table[ψ[x, j, 0], {j, 0, 4}], {x, -0.5, 1}, Filling -> Axis, PlotRange -> All, Axes -> {True, False}]Plot[Evaluate@Table[ψ[x, 2, k], {k, 0, 2^2 - 1}], {x, -0.5, 1.5}, Filling -> Axis, PlotRange -> All]Related Guides
History
Text
Wolfram Research (2010), WaveletPsi, Wolfram Language function, https://reference.wolfram.com/language/ref/WaveletPsi.html.
CMS
Wolfram Language. 2010. "WaveletPsi." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/WaveletPsi.html.
APA
Wolfram Language. (2010). WaveletPsi. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/WaveletPsi.html
BibTeX
@misc{reference.wolfram_2026_waveletpsi, author="Wolfram Research", title="{WaveletPsi}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/WaveletPsi.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_waveletpsi, organization={Wolfram Research}, title={WaveletPsi}, year={2010}, url={https://reference.wolfram.com/language/ref/WaveletPsi.html}, note=[Accessed: 13-June-2026]}