So It Begins

I haven’t had a nerve wracking wait for something in a long time. I got exactly that in the final hours of April 21st, 2014.

I had to pass time until the GSoC accepted students list came out, at 00:30 IST (17:00 UTC), and I did so by listening to motivational music and talking to people close to me. SunPy’s mentors were away during the whole ordeal, and so, I didn’t get to pick their brains (which is decidedly a good thing). And then came the big moment. Carol had muted #gsoc and no one could announce their acceptance or lack thereof straightaway. I had heard from my friend, who did his GSoC last year, that selected students receive a congratulatory e-mail.

I opened my Gmail, and to my pleasant surprise, there it was. After a round of congratulations from my parents and close friends, I finally settled down. Getting accepted into GSoC ranks as the best thing I’ve done while still in college (opportunities of this kind and magnitude are hard to come by here), and it’s come to me really late. I get to relish it only once, but I’m not complaining!

My project with SunPy is regarding the re-implementation of sunpy.wcs as sunpy.coordinates using the Astropy coordinates framework, according to APE5. The mentors assigned to me are Stuart Mumford, Nabil Freij and David Perez-Suarez (SunPy is full of really nice people – couldn’t have asked for better mentors). Now Astropy has proposed to build astropy.coordinates, with classes such as CoordinateRepresentation and CoordinateFrame. The main task for me is to recreate sunpy.wcs while wrapping over astropy.coordinates functionality. It is always better to avoid re-inventing the wheel.

Some basic things in the pipeline for this project are as follows -:

  1. sunpy.coordinates will have classes such as HelioProjective, HelioCentric and HelioGraphic, which will derive from CoordinateFrame.
  2. Further, Carrington and Stonyhurst heliographic coordinates will be accommodated.
  3. Different coordinate representations will also be worked upon, such as the cylindrical and spherical representations.
  4. An inter-conversion framework for different coordinates will be created using the bi-directional transformation registry in astropy.coordinates.
  5. Astropy’s Quantity class will be absorbed for use by sunpy.

I’ve been asked to submit a SunPy Enhancement Proposal (SEP), similar to APEs, since the project I am to work on is to be a major feature of SunPy. The community bonding period will be utilized in brainstorming over design and creating the bare-bones API. I like this workflow – it is quite organized and there is a process for everything.

All in all, I’m looking forward to this. The learning curve will be steep but extremely worth it!

2 thoughts on “So It Begins

  1. So it begins and here we are to help you to get the most of it 🙂
    Thanks for the nice introduction!

    1. Hey there David!
      I should be thanking you guys for the smooth initiation into SunPy! Couldn’t have asked for better people to guide me. ^^

Leave a comment