Archive for August, 2011

Weighted Wavelet Z-Transform (WWZ) in VStar

August 30, 2011

It’s hard to believe 6 months have elapsed since the last release of VStar. Although there  is no firm date for the next release yet, there has been a lot of progress towards it. I hope it will happen this month, at first internally to the Citizen Sky VStar team.

My last two posts covered a couple of forthcoming features: model creation from period analysis and the CLEANest algorithm. I used examples from Grant Foster’s book Analyzing Light Curves: A Practical Guide to illustrate the new features. I’m still collaborating with Grant and Doug Welch on improvements to CLEANest such as taking into account the harmonics of specified frequencies. Grant has already incorporated into his R version of CLEANest. This aspect of VStar development has been on the back-burner for the last few weeks so in the meantime I decided to implement Weighted Wavelet Z-Transform (WWZ), also covered in Grant’s book (and created by him). I know that Aaron Price has been looking forward to seeing WWZ in VStar.

Again, I have (with permission from AAVSO) had the benefit of a reference implementation in the form of Fortran code available in the AAVSO Software Directory, just as I did with Date Compensated Discrete Fourier Transform (DCDFT) in the form of the Fortran code of TS (also available via the same software directory web page).

Whereas period analysis algorithms like DCDFT, Phase Dispersion Minimisation, Analysis of Variance (AoV) and others (DCDFT is implemented in VStar) provide information about candidate periods in a time series dataset, and CLEANest refines candidate periods, WWZ analyses how a star’s period changes over time: time-frequency analysis. Grant uses the stars T Umi and R Dor as examples.

The T Umi dataset, taken from the AAVSO International Database (AID) in Grant’s example spans the JD range 2,420,000 to 2,455,000.

Creating a phase plot with periods resulting from DCDFT in VStar doesn’t result in an obviously “clean” fit over the time range. WWZ helps to explain why. Applying WWZ to the dataset requires selecting the series to be analysed, then the following parameters:

  • Minimum frequency
  • Maximum frequency
  • Frequency step or resolution
  • Decay: the wavelet window; smaller values yield better resolution of variation

This post won’t go into detail about these parameters or the WWZ algorithm. Apart from Grant’s book, the HTML docs accompanying the WWZ Fortran code available in the AAVSO Software Directory are worth reading.

For T Umi, choosing values for the above parameters (entered into a dialog box) of : 0.00001, 0.02, 0.00001, 0.001 give the following plot of period vs time:

This is VStar’s equivalent of Figure 11.16 in Grant’s book.

The WWZ result dialog also gives other plots and data tables derived from the result of analysing each frequency in the specified range and interval over a range of times. One of the tables shows only those time-frequency pairs for which the WWZ statistic is at maximum (distance from 1 denotes degree of variation for a particular time) for each time under test.

The following 3D plot shows period and time on two axes as above, but adds the WWZ statistic on the 3rd dimension:

The ridge of the plot denotes the degree of variation at a particular time-frequency (or time-period in our case) pair. In the VStar dialog tab in which this appears, the mouse can be used to rotate this plot and view it from various angles.

What VStar does not currently do is create a 2D plot that represents the WWZ statistic as different colours. It’s an open question as to whether this is necessary, but such plots do have a striking appearance and some may prefer them over 3D plots. WinWWZ, developed by Geir Klingenberg and Lisa Henkel creates such “contour plots”. Grant also talks about the pros and cons of each kind of plot in his book.

What is currently committed in SourceForge is not the last word before the looming release, and I would appreciate feedback on the current interface. I may yet use a different 3D plot library. VStar currently uses JMathPlot for 3D plots and JFreeChart for all other (2D) plots here and elsewhere in the tool.

Grant’s second example is of R Dor in the JD range 2,426,000 to 2,556,000.

With the visual series selected for analysis and the parameters 0.001, 0.009, 0.0001, 0.005, the period vs time plot appears strange:

until you look at the 3D plot (equivalent to Figure 11.16 in the book):

which, as Grant says, shows that R Dor (at least in the JD range under test) exhibits mode switching, i.e. it switches from one pulsation mode to another (between periods of around 332 and 175 days).

I hope you enjoyed this brief look at another of the new features that will appear in the next release of VStar.