# NOT RUN {
t<-1:6000
f1<-0.03
f2<-0.04
noise<-15*rnorm(length(t))
amp=1.5
s<-amp*sin(2*pi*f1*t)+amp*sin(2*pi*f2*t)
system.time(a<-kzp(s+noise,m=500,k=3))
b<-smooth.kzp(a, smooth_level=0.01)
par(mfrow=c(3,1))
plot(periodogram(s+noise),type='l')
plot(a)
plot(b)
par(mfrow=c(1,1))
# signal/noise
signal<-kzft(s+noise,m=500,k=3)
print(paste("signal-to-noise ratio = ", round(sqrt(var(2*Re(signal))/var(s+noise)),4) ))
summary(a, digits=2, top=2)
# }
Run the code above in your browser using DataLab