All Posts

Anaconda packages are not “free”

We wanted to inform the wider community about Anaconda Inc. and if you are legally allowed to use their products for free.

Read more ...


SunPy Development Team wins a NASA Group Achievement Award!

We are delighted to announce that the SunPy development team has been awarded with a NASA Group Achievement Award!

Read more ...


Process Your Solar Eclipse Photos with SunPy!

On 8 April 2024, a total solar eclipse will pass over Mexico, the United States, and Canada, allowing millions of people to see the highly-structured solar corona with their own eyes. Along the path of totality, many will be taking their own pictures of the eclipse. In this post we demonstrate how you can use SunPy to process your own eclipse photos!

Read more ...


pyOpenSci and sunpy

pyOpenSci logo

Read more ...


The future of time series data in sunpy

In late 2022 I got a small development grant from NumFocus to scope the future of time series data in sunpy. The successful application can be read on the sunpy wiki. The application contains context that I won’t repeat here. This blog post is the key outcome of this grant, with a record of what I did, the recommendations I made, and any decisions we came to as a community.

Read more ...


aiapy: A SunPy affiliated package for analyzing data from the Atmospheric Imaging Assembly

aiapy is a SunPy affiliated package for analyzing EUV image data from the Atmospheric Imaging Assembly (AIA). It includes a number of of functions for calibrating images, correcting metadata, and analyzing the filter bandpasses. In this post, we show some examples of the different capabilities of version 0.6.3 of the aiapy package.

Read more ...


SunPy Awarded NASA Grant

As part of the NASA “Open Source Tools, Frameworks, and Libraries” program, the SunPy proposal “Strengthening the Foundations of the SunPy Ecosystem” has been funded for the next three years.

Read more ...


October Release Announcements

Today we have a quadruple release announcement for you! It’s been a very busy week in SunPy land getting both the core and ndcube releases over the line; I hope you enjoy them!

Read more ...


The What, Why, and How of SunPy Affiliated Packages

SunPy affiliated packages are well-maintained, open-source software packages that build upon or extend the functionality of the SunPy core library. The main idea behind affiliated packages is to provide additional tools and functionality to the solar physics community that is considered outside the scope of the SunPy core library, but builds upon it. Affiliated packages are aimed to integrate well with the SunPy ecosystem and together with the core library offer a diverse software ecosystem for which to perform solar data analysis. Affiliated packages are reviewed and registered with the SunPy project.

Read more ...


SunPy 2.0 Released

The SunPy project is happy to announce the release of SunPy 2.0! SunPy is an open-source Python library for Solar Physics data analysis and visualization.

Read more ...


SunPy awarded a NASA HDEE Grant

A NASA Heliophysics Data Environment Enhancement (HDEE) grant has been awarded to a proposal submitted to support SunPy development. The grant was awarded through NASA’s 2019 ROSES grant solicitation.

Read more ...


SunPy Survey

The SunPy project is happy to announce the results of the solar physics community survey!

Read more ...


SunPy 1.1 Released

The SunPy project is happy to announce the release of SunPy 1.1! SunPy is an open-source Python library for Solar Physics data analysis and visualization.

Read more ...


Sunkit-Image: Final GSOC Report

This project developed several image processing algorithms and manipulation routines for sunkit-image, an affiliated Python package of the Sunpy Project. The rigorous analysis of solar images is of paramount importance to the Heliophysics community as this can reveal more information on solar features and events, which in turn can affect the Earth. This project brought selected solar image processing algorithms under the umbrella of a new library.

Read more ...


Google Summer of Code 2019 | Final Report | OpenAstronomy | NDCube

Duplicate implicit target name: “google summer of code 2019 | final report | openastronomy | ndcube”.

Read more ...


Part 7: The End Arrives

It has now been twelve weeks since I began this journey and finally, the curtains on this arduous and breathtaking adventure have been begun to fall. This week it will be last week as an official Google Summer of Code and this will be my final post as a student. I can feel the nostalgia gripping me.

Read more ...


GSoC 2019: Project IRISpy 3.2

It is my pleasure to report that with my mentors’ assistance as well as my many hours of contributing to the sunpy/irispy GitHub repo, I have been able to reach all four goals original set out by the primary mentor Danny Ryan, which are as follows:

Read more ...


Part 6: Reaching the Summit

If I describe my journey through Google Summer of Code as an arduous mountain climbing adventure then finally I have reached a point from where the summitis within reach.

Read more ...


GSoC 2019: Project IRISpy 3.1

Grateful to report that I have eventually solved the issues encountered as stated in blog post 2.2 in the series for my GSoC project… and most important of all with my mentors’ blessings I have successfully passed the 2nd coding phase. Moreover, I am delighted to report that my most significant contribution on GitHub thus far, which is the PR to enable time-dependent effective areas determination of IRISpy, has been merged about 6 days ago. More can be found about this PR at the link here.

Read more ...


Part 5: The Second Evaluation Awaits

The fifth part of the ongoing series of my blog posts on my experience in the Google Summer of Code. I am working with Sunpy on their solar image processing toolkit, Sunkit-image. As of now two months have already and it has been an enriching experience. The second evaluation is also just around the corner and I am very hopeful that I will be able to clear it.

Read more ...


GSoC 2019: Project IRISpy 2.2

To follow up, the problem encountered as reported in edition 2.1 in this series has been resolved with the help of my very helpful and responsive mentors. But some lingering issues remain, which we suspect to be mostly indexing-related, as is apparent from the way the given IDL code is translated into Python. So now all four versions of IRIS response can be used to produce some get_iris_response function output. However, say for example version=4, I have been only able to successfully reproduce 3/4’s of the expected output as generated by the IDL version of the code. This is encouraging, as previously only half was the same as the target output. So the part of the IDL code that I am having some problems with is the following:

Read more ...


[Week 06] — First Evaluations and Completing the first half

image0 First Evaluations are Completed!

Read more ...


[Week 05] — Testing out the codebase!

image0 Testing FTW!

Read more ...


[Week 04] — Climbing the Everest — 02

image0 Sustaining the journey!

Read more ...


GSoC 2019: Project IRISpy 2.1

Passed Phase 1 of GSoC. And I have just encountered my first roadblock in this project over the past few days, so now I am working hard on various approach to try and understand some IDL code snippets that does not translate well into Python without some more knowledge of the IDL INTERPOL function. (Source: harrisgeospatial) In IDL, this function takes in a maximum of four arguments: an input vector, the number of points in the result, the abscissa values for the input vector, and abscissa values for the result. In this way, the iris fit can be interpolated onto a new lambda grid readily. However, an exact equivalent does not exist in Python. The closest one we have opted to adopt is SciPy’s interpolate.interp1d function (Source: scipy). This method takes the x-coordinates and y-coordinates of the input data, and interpolate some pattern from this, which means that to project to a grid an extra step is necessary. I have now modified the relevant code snippets of in my PR so that I have a functional line. But to project it to some very specific grid distinct from the input one will take extra checking, since I am iffy about my approach. Currently seeking input from my mentors to sort out the issue. Hopefully this roadblock will be cleared soon.

Read more ...


Part 4: Weeks after the first evaluation

This is part 4 of the ongoing series of my blog posts describing my journey as a Google Summer Of Code student working with Sunpy to develop Sunkit-image, an image processing toolbox for solar images.

Read more ...


SunPy Release Schedule and Version Numbering

In this blog post I want to outline how, and more over why, we are going to number the SunPy releases and when we are going to release them.

Read more ...


GSoC 2019: Project IRISpy 1.2

Four weeks have passed since the commencement of the Coding Period on May 27th, 2019 (EST). Soon our 1st evaluation will come up, which in itself is an exciting time as we will be judged on whether we will be qualified to go on to the next round. In my opinion I have done most of what have been agreed between me and my mentors. Comparing to my peers my project probably is more manageable, as an IDL version of the code already exists which provides us with a source code from which a Python-translation is written. And, the level of the project is relatively easy, so that the concepts involved are pretty basic. In this blog post, I would like to discuss about a trinity of techniques I have developed as a rookie software developer to deal with issues arising during the implementation of some new function into the broader code base. For the most up-to-date status of the PR please head to link.

Read more ...


Part 3: The Debugging

This is part 3 of the ongoing series of my blog posts describing my journey as a Google Summer Of Code student working with Sunpy to develop Sunkit-image, an image processing toolbox for solar images.

Read more ...


[Week 03] — Climbing the Everest — 01

image0 Climbing the Everest — Starting the trek!

Read more ...


[Week 02] — Solving Bugs!

image0

Read more ...


Part 2: The Dive

The Coding Period of the Google Summer of Code officially began on 27th May 2019 — for me, it was the day when the “Dive” into the realm of code began.

Read more ...


GSoC 2019: Project IRISpy 1.1

It has been two weeks since the commencement of the coding phase… I can’t believe it, as it seems like time files. But to sum up the time that passed the following is a brief summary report for what tasks have been completed and what remains:

Read more ...


[Week 01]— Getting Stuff Done!

image0

Read more ...


SunPy 1.0 Released

The SunPy project is happy to announce the release of SunPy 1.0.0!

Read more ...


Part 1: The Community Bonding Period

In this series of posts, I describe my journey as a Google Summer of Code student. These posts would mostly include my work during the weeks and the experience I gained from it. Such posts would come up every two weeks from now so stay tuned.

Read more ...


GSoC 2019: Project IRISpy 0.2

Progress has been better than expected… Within the past few weeks, while continuing work on the main PR (which can be accessed via this link) on enabling a time-dependent effective areas determination in the “iris_tools” file, which contains some IRIS instrument tools, most of the previous difficulties of translating from the IDL programming language to the Python language have been identified and ironed out. In hindsight, for me the hardest part was to comprehend a computing language for which I have no direct access to (as I do not have in possession a valid IDL licence), but at the same time be able to gain enough insight through freely available online documentation to check the rough work put into place earlier in another PR. Through careful and systematic checking, I have been able to move ahead and implement the new function fit_iris_xput() as well as the get_iris_response() function in a pythonic way with some heavy dose of guidance from my mentors Dr. Dan Ryan and Dr. Laura Hayes well ahead of schedule.

Read more ...


GSoC 2019: Community Bonding Period — II

image0

Read more ...


The Road To Google Summer Of Code

We have been taught from our childhoods that nothing can be earned without toiling hard, to achieve something we need to sacrifice something. The same mantra applies to Google Summer of Code or as we fondly know it, GSOC.

Read more ...


Getting selected for Google Summer of Code-2019

This short blogpost describes the journey of getting selected for Google Summer of Code, under SunPy organisation, for 2019.

Read more ...


GSoC 2019: Community Bonding Period - I

This post encapsulates my proceedings with the GSoC project that I have been working on, and a short log on the meeting that I had with my mentors.

Read more ...


GSoC 2019: Project IRISpy 0.1

The community bonding period of this year’s GSoC is officially under way. The project I am embarking on has to do with adding a new feature to IRISpy, which is a essentially a package that is developed on top of SunPy’s NDCube package, and is written in the popular Python programming language. IRISpy itself (albeit not yet released) provides functionalities to read, manipulate, and visualize data collected with NASA’s IRIS satellite which looks at UV emission from the solar chromosphere. The proposed new feature is a time-dependent instrument response function, which will give scientists far greater power and ability to perform IRIS data analysis in Python, as well as to make new discoveries regarding the energetics and dynamics of the solar chromosphere and transition region than previously allowed. For more information on both the IRIS instrument and IRISpy, please take a look at the SunPy documentations for IRISpy.

Read more ...


Transition from datetime to astropy.time

This blog post was written in a Jupyter notebook. Click here for an interactive version: Binder badge

Read more ...


Modeling Coronal Loops in 3D with sunpy.coordinates

The sunpy.coordinates module is a useful tool for expressing locations on the Sun in various coordinate systems. While most often used in the context of analyzing and manipulating observational data, we can also use this module to build three-dimensional models of loops in the corona.

Read more ...


SunPy 0.9 Released

The SunPy project is very happy to announce the release of SunPy 0.9, the latest release of the SunPy core package.

Read more ...


NDCube 1.0 Released

The SunPy project is very happy to announce the release of a new package “ndcube”.

Read more ...


IRISPy and NDCube

GSoC has come to an end, it was one of the best summer experience I had. In this summer I had to create a new affiliated package IRISPy but during this project making a base package for multi-dimensional contiguous and non-contiguous spatially aware arrays (from readme.md of NDCube) was a natural step so ended up developing another repository NDCube. This was initially a part of sunpycube but after breaking and burning everything we ended up with ndcube :P.

Read more ...


Sunpy Website Improvements

Believe or not, there is only one week left to the end of GSoC! The whole GSoC period became an unforgettable experience for me. I still remember the first time I read the documentation of Sphinx and say “What the hell am I supposed to do now?”

Read more ...


Updates to the website

The website has gone some minor updates to incorporate the latest version of Bootstrap and its build dependencies among other items. This work came from Prateek Chanda, Duygu KEŞKEK and Sourav Kumar

Read more ...


SPD 2016

You can find all of the material for the introductory sessions of scientific python and sunpy can be found here.

Read more ...


SunPy 0.7

SunPy 0.7 has arrived! This release is a culmination of about 10 months of work from 27 different people. This release brings many changes, the highlights are:

Read more ...


First impressions from SunPy at Python in Astronomy 2016

Steven Christe (@ehsteve) and Stuart Mumford (@Cadair) got to attend the (great) Python in Astronomy conference which took place in Seattle Washington from 21-25th of March 2016.

Read more ...


SunPy Update - March 2016

Hello all,

Read more ...


SunPy Update - February 2016

Hello all,

Read more ...


SunPy Update - January 2016

Hello all,

Read more ...


SunPy Update - November 2015

Hello all,

Read more ...


SunPy Update - October 2015

I wanted to keep people in the loop about what is happening in the SunPy project, so I thought I would start sending out monthy updates about things that have happened and things that are going to happen. This update might be a little longer than usual due to the fact it’s the first one, and I want to get everyone up to speed. Before I start I just wanted to introduce myself just in case any of you have had the fortune of not knowing. I am Stuart Mumford, I submitted my PhD thesis last week at the University of Sheffield. I am currently lead developer of the SunPy project (again) having taken over from Albert.

Read more ...


SunPy 0.6.1 Released

Announcing the 0.6.1 “thesis submission” release of SunPy. This is a bug fix release and contains the following fixes to things that slipped past us into 0.6:

Read more ...


SunPy 0.6 Released

I am very happy to tell you that the long in the works 0.6.0 release of the SunPy library has arrived. This release has been ‘in the oven’ for well over a year, and is full of rather major changes.

Read more ...


Info for the SunPy Tutorial at the TESS 2015

Welcome TESS <https://aas.org/meetings/tess2015/> attendees to the “Introduction to Solar Data Analysis in Python”!

Read more ...


SunPy 0.5.0

The SunPy project is happy to announce the release of SunPy 0.5.0. This release consists of 772 commits from 21 people including 9 new contributors, including the ability to co-align map cubes via template matching in scikit image, massive improvements to Map.rotate() including an implementation of an aiaprep calibration routine for SDO/AIA data and the ability to calculate GOES temperature and emission measure from GOES fluxes.

Read more ...


SunPy at the 2014 SPD Meeting

A poster on SunPy was presented at the SPD 2014 Meeting which took place in Boston. A copy of the poster is available online in the sunpy/presentations repo on github.

Read more ...


2nd year of SunPy participating in GSOC

Wonderful news for SunPy! This year is the 10th edition of Google Summer of Code, and SunPy is participating again for the second year in a row! Remember how awesome it was last year when we got two amazing students? Well, this year is going to be twice as awesome! Why? Because SunPy has gotten twice as many students than in 2013. Let’s introduce them and their projects:

Read more ...


RHESSI Workshop 13

The latest version of SunPy along with an introduction to scientific computing in Python was presented at the 13th RHESSI Workshop on April 3rd, 2014. The presentation was well attended by about 20 people, a significant fraction of the total conference attendees! You can find the presentations (in the form of ipython notebooks) at the following locations

Read more ...


Announcing SunPy 0.4

The SunPy community is pleased to announce the release of SunPy 0.4.0. This release contains many new features, some of which are contributed by people who participated in GSOC 2013. It includes the addition of a new local database for storing and searching data, it features a HEK to VSO translator and a new HELIO module in net. As well as this major work has been undertaken on the documentation and a new website developed.

Read more ...


ESA Summer of Code

I am happy to announce that for the third year running SunPy has got a summer student from ESA’s SOCIS program. This year the student is Tomas Meszaros. Tomas’ project this summer will be working on creating a new core data type for SunPy, the HyperMap. Which will be designed to hold ND data with at least one spatial dimension and any combination of other axes such as Wavelength, Temperature or Time. This data type will allow us to support data from instruments such as Hinode EIS and the newly launched IRIS satellite, as well as a multitude of high resolution ground based instruments. Tomas will be documenting his progress on his blog: https://examon.wordpress.com/ as well as less regular more general interest posts on this site.

Read more ...


Announcing SunPy 0.3

It gives me great pleasure to announce the release of a new version of SunPy. This version has been rather too long in the making, but is here at last!

Read more ...


Experiments in animating plots and saving movies in SunPy 0.3

Just over a year ago this post described a simple method for saving a movie of SunPy maps. Since then, SunPy and matplotlib have moved on, and I’d like to describe an updated method for animating SunPy maps, and saving the results as an mp4 file.

Read more ...


SunPy at SciPy 2013

This year I was lucky enough to be able to attend the annual Scientific Python conference (SciPy 2013) in Austin, Texas. This was very kindly supported by a sponsorship from the conference organisers and sponsors.

Read more ...


The Database class

Note: I have also a private blog which covers more advanced topics. The next post there will be about implementing custom caches and custom commands.

Read more ...


Gsoc Community Bonding

From our last post you may remember that SunPy is participating in GSOC-2013 under the PSF <https://wiki.python.org/moin/SummerOfCode/2013>`_ (!= Point Spread Function. Yesterday, Google announced the accepted candidates for their summer of code. If you look the list you will find between all these students that there are two whose projects is to work with SunPy.

Read more ...


Google Summer of Code

SunPy is participating in the Google Summer of Code 2013 under the umbrella of the Python Software Foundation .

Read more ...


SunPy 0.2

It has been a busy year but a lot of code later SunPy version 0.2.0 has arrived! This new version of SunPy is quite a change from the old 0.1 release, a few things have changed that make it not backwards compatible, however we feel that the changes are for the better! 14 people have helped to make this release of SunPy a big step forwards, between them they have added 1200 commits to the GitHub page.

Read more ...