An implementation of the Berlage wavelet that I find useful for geophysical modeling.
See this paper for a summary of the wavelet. A matlab function for generating the wavelet is below.
% USAGE: w=berlage_wavelet(t,A,alpha,n,f0,phi0)
% t = time vector (a.u.)
% A = initial amplitude (a.u.)
% alpha = exponential decay factor (non-negative and real)
% n = time exponent (non-negative and real)
% f0 = dominant frequency (Hz)
% phi0 = initial phase angle (radians) [-pi/2,+pi/2]
% w = the berlage wavelet of length(t)
% NOTES: The berlage wavelet is causal as well as continuously
% differentiable to at least order [n – 1].
% Written by Dylan Mikesell
% 17 June 2013
% check alpha
if (alpha= 0 ‘,alpha);
‘alpha = %d + %diis imaginary \nMake alpha a real number ‘,real(alpha),imag(alpha));
% check n
if (n= 0 ‘,n);
‘n = %d + %di is imaginary \nMake n a real number ‘,real(n),imag(n));
w=A*heaviside(t).*(t.^n).*exp(-alpha*t).*cos(2*pi*f0*t + phi0);
An example of the wavelet: