rm(list=ls()) require(animation) require(rv) ## StdDev is positively correlated with sea state StdDev<-4 ## N is the number of trailing points used to ## calculate the moving average. N<-20 par(bg="white") plot(0:40,seq(-20,20,by=1),type="n") q<-rnorm(N,mean=0,sd=StdDev) qWave<-c(mean(q)) r<-0 for (n in seq(1,40,by=1)) { r<-c(r,n) v<-rnorm(1,mean=0,sd=StdDev) q<-c(q,v) qWave<-c(qWave,mean(q[seq((1+n),((N-1)+n),by=1)])) } plot(0:40,seq(-20,20,by=1),type="n") lines(r,qWave,col="blue") ## set animation options oopt <- ani.options(interval = 0.1) for (m in seq(41,200,by=1)) { plot((max(0,m-40):max(40,m)),seq(-20,20,by=1),type="n") r<-c(r,m) v<-rnorm(1,mean=0,sd=StdDev) q<-c(q,v) qWave<-c(qWave,mean(q[seq((1+m),((N-1)+m),by=1)])) lines(r,qWave,col="blue") par(new=FALSE) ani.pause() }