Thursday, 26 May 2016

Refactoring The SunPy Lightcurve Datatype

I'm pleased to announce that the ESA Summer of Code in Space (SoCiS) program will be supporting me in refactoring the lightcurve class in SunPy.

What's SunPy

In short SunPy is an open-source solar package library designed for solar physics. Developed by a team of researchers from across the globe it's designed to make anyone able to analyse solar data and is a valuable resource for the solar physics community.
I've been working with SunPy since using it for my dissertation and have tried to contribute where I can ever since.


What's The Lightcurve

In astrophysics a lightcurve is a measure of light flux/intensity over time. In SunPy it started off as this but has essentially been used as a generic time series data class. With SunPy development concentrating on the other two major datatypes (Maps and Spectra) the Lightcurve class has been left mostly untouched and is in general need of a redevelopment.


The Refactor

My project will be to refactor the old lightcurve code so that it more closely matches the rest of the SunPy library. This will include removing redundant code, creating a whole new class hierarchy (starting with time series as a parent for the lightcurve subclass) and updating the documentation.
I'll be starting the work as soon and will be updating the blog with my updates.