Skip to main content

Some Questions About Data Analysis

6 posts / 0 new
Last post
Some Questions About Data Analysis


Light Curve --> Phase Diagram --> O-C Diagram --> Time Series Analysis(Fourier Transform)

Light Curve is the measurement of magnitude over time. Phase Diagram is he folding of light curve to see the shape of light curve. O-C Diagram is the period analysis and behavior. Time Series Analysis is the predicted outcome of light curve of star over time


  • What does it mean by period analysis and behavior?
  • Do we look for changes in its period? and why?
  • How do we construct a O-C Diagram and Time series Analysis?
  • Also is there something we will discover once we predicted the outcome of light curve?


Light Curve from existing Telescopes (CHANDRA, ASTROSAT, and etc) --> Python(?) or Jupyter Notebook --> 3d Model(?)

I read a paper about a highschool student 3d modelling an asteroid with the use of light curves.


  • Does anyone know a good introduction of python into astronomy? from basics to application
  • Is it possible to 3d model stars such as XZ Cygni?
BGW's picture
Big Topic

Hello Jeremiah,

You are asking a HUGE question!  I'll only answer a few small pieces of it.

What does period analysis mean?  To me, it means to try to determine the period.  This is more difficult than you might expect, because of sampling.  I.e. how often and how regularly observations were made.  If you have continuous observations, i.e. taken at a regular interval for as long as you want (e.g. every 10 minutes for 5 years), the problem would be easy (Fourier analysis would work great).  But most astronomical datasets used for doing period analysis aren't like that.  They are often observations at random intervals, perhaps much longer than the period, and of varying data quality.  With such data, different algorithms must be used, and the results are not so straightforward.

So, period analysis is probably used most often when a star has just been discovered to be varying in brightness, and little or nothing is known about the nature of its variability.  (There are MANY reasons why a star's brightness can vary.)

The AAVSO program VStar includes facilities for period analysis.  There may be more in Peranso (  The best overview I know of for period analysis is Fullerton's "Searching for periodicityin astronomial data", in the book "The study of variable stars using small telescopes", Edited by Percy, 1986.  Unfortunately this paper does not seem to be available online.  There is also a short overview article re O-C diagrams by Willson in that volume.

The period of a star's variability can change.  It can be because there is some intrinisic randomness in the variability mechanism (e.g. pulsating variables) -- this could give the appearance of period change, even though over the long term, the average period has not changed.  Or the period might change due to evolutionary processes within the star.  In a binary system the period can change due to mass loss or mass transfer from the system, driven by evolutionary processes in one or both stars. O-C diagrams are useful for analyzing period change, because they are usually drawn to compare the actual timing of events to the assumption of a regular (constant) period.

For a reference on O-C diagrams, I made a post to this forum on Oct 19, 2019, with the heading "O-C How-To".  There is a presentation attached to that, on O-C diagrams.  You might find it useful.  One of the last slides lists sources of information ("Resources").  Check out the first item listed, an overview paper by Sterken (2005).

To me, "Time Series Analysis" is a very general term.  It just means to analyze repeated observations made over time.  And not necessarily at regular time intervals.  It is not specific to astronomy or variable stars.  Many methods (and entire books) on time series analysis only deal with datasets that are sampled at a regular interval, which as I said above, is not usually the case with astronomical data.  An exception would be when using data from the Kepler satellite, for limited time intervals.

I'll interpret your last question as "what can we learn from a light curve?".  Well, the first thing is the nature of the type of variability.  See one of numerous books about variable stars, e.g. "Understanding Variable Stars" by Percy (2007), or "Variable Stars" by Hoffmeister, Richter, and Wenzel (1985).  And, of course, use the AAVSO webpages, including the "Variable Star of the Month", or "...of the Season" pages.  The first step of classification of variable star usually comes from the light curve.

Going in to more detail, on a limited part of the topic, an astonishing amount of information can be determined about eclipsing binary stars, using the light curve.  E.g. the shapes of the orbits, temperatures of the two stars.  And if supplemented by spectroscopic radial velocity information, a great deal more can be learned (e.g. masses of the two stars)

I too am trying to learn python to use for astronomy -- I don't know of one particular source for information.  I use many sources on the internet, found via google searches.

Re 3D modelling of stars such as XZ Cyg, it depends on what you mean by "modelling".  (By the way, for an overview of this star, have you seen ?)  If you mean a "full blown" 3D (magneto)hydrodynamic modelling of its behaviour, then this is probably at the edge of what professional astronomers are trying to do.  Lower dimensional approximations are probably routine (e.g. one-dimensional approximation might be sufficient to explain most of its behaviour) and may be sufficient to capture most of the physics.  My own career was in reflection seismology:  there, simplified models were often more useful than more "correct" ones.  The best type of model depends on what you are trying to achieve or learn by modelling, and how much information you have for the "initial conditions" of the model.

I hope that some of this is useful to you,

Gary Billings

A little bit more information

Hey Jeremiah, 

Gary gave a great summary, I'll just add a little bit more information for context. Interpreting a light curve first and foremost is heavily reliant on what is causing a light curve to change. For an asteroid, it's not a light source (at least not one we could see), it is only reflecting sunlight. So when you look at the change in light over time for an asteroid you are measuring how the reflectivity of the asteroid changes as it rotates which gives you some idea of the surface structure. You aren't able to do the same thing for stars because their variability can come from a variety of different sources. You could get a model of the starspots on a star or as gary mentioned learn about the stars properties from binarity, but these are only a couple of possibilities. There are many more and while they can tell you about the interior structure as well as the surface variability, and they aren't isolated. You can have the effects of MANY signals in your light curve which further complicates things. This is distinctly unlike asteroids as previously mentioned.

As for python resources, there is the astropy library. It has tons of different tools for doing all kinds of things and is used and developed by the professional community. However, it may be overkill to start out with, so I would focus on a few key things, like first understanding Fourier Transforms and basic fitting routines. This is a good deal of what I use on a regular basis.  Hope this helps.

Bert Pablo
Staff Astronomer, AAVSO

Follow Up

Hello Mr Gary

Thank you for the reply! I currently want to do my research in stars with the use of light curves, as to why i have these questions. Now that you have mentioned eclipsing binary stars can you enlighten me where to start? (where to get data, and etc) If it isn't too much a bother. Thank you also for the clarification.

arx's picture
Data Analysis: O-C Diagrams

Hi Jeremiah,

Please see the attached paper I wrote a few years ago for the JAAVSO.

It contains step-by-step instructions for creating O-C diagrams.

Roy Axelsen

BGW's picture
short question, long answer!

Hi Jeremiah, once again you've managed to ask a short question, but the answer could fill volumes.

For eclipsing binaries, "modelling" usually means a numerical model that is based on a fairly small number of physical parameters (masses of the stars, their radii, separation, temperatures, and some subtler things like limb darkening etc).  From these physically meaningful parameters, the modelling program can generate a synthetic lightcurve (in seismology we say synthetic, but I don't hear that word used much in astrophysics).  Often lightcurves are generated that would correspond to observations through different photometic filters (eclipse depths vary in different colours), and the goal of course is to adjust the physical parameters so the synthetic light curves match the real, observed, light curves.  Synthetic radial velocity data can also be generated, to match against observations.

A very useful tool for getting a sense of this kind of modelling is at:

It requires "flash" to be enabled on your computer.  This tool is free (!), and doesn't have the full range of parameters, but is useful for understanding more complex models because it is so quick and easy to use.  For more information, see their page at:

The next level up is probably BinaryMaker3 (google it).  But it costs US$100.  It might be good enough of low level research and publication.

Professional astronomers use "the Wilson-Devinney code" (W-D), which is free, but if I remember correctly is written in FORTRAN and does not have a friendly "front-end" (though some have written front-end programs to make it easier).  The more recent PHOEBE, if I understand correctly, has two versions.  One is a front-end for the W-D code, and the other is entirely written in python.  W-D and PHOEBE are a significant undertaking to learn -- I hope to learn PHOEBE in the next year or so.  There are demo-scripts etc for PHOEBE 2, but as I say, I am just starting to learn it.

For practical advice running the W-D code, see Wilson, 1994, in IAPPP Communiations No. 55, p 1-20.  and in PASP vol 106, p 921-941.  Both should be available via ADS.

A very in depth book on modelling EBs, and W-D, is by Kallrath & Milone, 2nd edition (quite different from the 1st edition).  "Not for the faint of heart."

The above references are very serious reading, and may not be suitable for you at all.  BM3 is meant for teaching "undergrad" (i.e. in their early years) university students, and has more tutorial material.  Google it for more info.

For data, if  you are going to do serious modelling for publication, you'll want to make your own observations...   but to get a light curve for an already known eclipsing binary, you can often get a good curve using ASAS-SN data, at this site:

Enter the name of your star, e.g. LS Per.  Sometimes it will deliver a nice light curve.  There is also a page where you can search by coordinates:

Sometimes these searches will deliver a nice phased light curve, sometimes just a plot of magnitude versus time -- but you can download the data and do period analysis etc.  Sometimes the data is of poor quality, with observations from different telescopes that don't match one another.

This whole topic is one that you can spend a whole lifetime on, so these answers only "scratch the surface".  I don't know what level of mathematics, programming, etc you are comfortable with, so I don't know if these answers will be helpful to you...

Good luck!

Gary Billings


Log in to post comments
AAVSO 49 Bay State Rd. Cambridge, MA 02138 617-354-0484