SunPy

A Julia wrapper around SunPy.

Motivation

This package brings SunPy's solar physics capabilities to Julia, enabling:

  • Performant Array manipulation: Leverage Julia's powerful and flexible array manipulation for accelerated numerical computations
  • Ecosystem integration: Combine solar data analysis with the broader Julia scientific computing stack (e.g., SciML, JuliaAstro, JuliaArrays)

Acquiring Data

Obtaining solar data using the Fido interface (a unified data search and retrieval tool).

julia> using SunPy, PythonCall
julia> @py import sunpy.net: Fido, attrs as a
julia> FidoPython: <sunpy.net.fido_factory.UnifiedDownloaderFactory object at 0x7f713ba330e0> sunpy.net.Fido Fido is a unified data search and retrieval tool. It provides simultaneous access to a variety of online data sources, some cover multiple instruments and data products like the Virtual Solar Observatory and some are specific to a single source. For details of using `~sunpy.net.Fido` see :ref:`sunpy-tutorial-acquiring-data-… ... 14 more lines ... NOAAPredictClient ... SRSClient ... NoRHClient ... RHESSIClient ... HEKClient ... HECClient ... JSOCClient ... SOLARNETClient ... VSOClient ...
julia> Fido.search(a.Time("2012/3/4", "2012/3/6"), a.Instrument.lyra, a.Level.two)Python: <sunpy.net.fido_factory.UnifiedResponse object at 0x7f713b7ca660> Results from 1 Provider: 3 Results from the LYRAClient: Source: https://proba2.sidc.be/lyra/data/bsd Start Time End Time Instrument Physobs Source Pr… ----------------------- ----------------------- ---------- ---------- ------ --… 2012-03-04 00:00:00.000 2012-03-04 23:59:59.999 LYRA irradiance PROBA2 … 2012-03-05 00:00:00.000 2012-03-05 23:59:59.999 LYRA irradiance PROBA2 … 2012-03-06 00:00:00.000 2012-03-06 23:59:59.999 LYRA irradiance PROBA2 …

Maps

Map object in sunpy.

@py import sunpy.data.sample: AIA_171_IMAGE
my_map = sunpy.map.Map(AIA_171_IMAGE)
<sunpy.map.sources.sdo.AIAMap object at 0x7f713b73de50>
Observatory SDO
Instrument AIA 3
Detector AIA
Measurement 171.0 Angstrom
Wavelength 171.0 Angstrom
Observation Date 2011-06-07 06:33:02
Exposure Time 0.234256 s
Dimension [1024. 1024.] pix
Coordinate System helioprojective
Scale [2.402792 2.402792] arcsec / pix
Reference Pixel [511.5 511.5] pix
Reference Coord [3.22309951 1.38578135] arcsec
Image colormap uses histogram equalization
Click on the image to toggle between units

API

SunPy.find_contours_pyMethod
find_contours_py(m::Map, levels)

Find contours in a Map at specified levels and convert them to world coordinates (SkyCoord) using the map's WCS transformation.

source