What’s new

HelioPy 0.15.3 (2021-03-29)

Features

  • Level 3 data products can now be downloaded using heliopy.data.solo.download. (#966)

Bug Fixes

  • Fixed access to some Solar Orbiter SWA data products in heliopy.data.solo. (#957)

Trivial/Internal Changes

HelioPy 0.15.2 (2020-12-23)

Bug fixes

  • Fixed a bug in setup.py that prevented HelioPy from being installed on other readthedocs projects.

Heliopy 0.15.0 (2020-10-17)

Features

  • All SPICE kernels are now automatically furnished when they are loaded into a spice object. (#938)

  • The classes in heliopy.data.spice have been updated, to allow for different types of SPICE files:

    • All kernels are now derived from KernelBase.

    • SPK kernels have their own class, SPKKernel.

    • Calling Kernel will automatically detect and create the appropriate kernel class. (#941)

Bug Fixes

  • When a SPKKernel is created, the SPICE kernel is now validated and an error raised if the given file is not a valid SPK kernel. (#941)

  • Updated link to the Solar Orbiter SPICE kernel (#942)

Heliopy 0.14.0 (2020-09-30)

Features

  • Added the ability to download science quality data to heliopy.data.solo.download. (#934)

Bug Fixes

  • SWEAP functions in heliopy.data.psp have been updated to take into account a change in file version number that occurred at the end of 2019. (#932)

Heliopy 0.13.1 (2020-08-27)

Features

Bug Fixes

Heliopy 0.13.0 (2020-08-21)

Features

Backwards Incompatible Changes

  • Support for converting from the J2000 coordinate frame to astropy coordinates has been removed in heliopy.spice.Trajectory.coords. If you want to convert to astropy coordinates, generate the trajectory in the IAU_SUN coordinate system, get the coords, and then .transform_to() the desired astropy coordinate frame from there. (#913)

Bug Fixes

  • The coordinates returned by heliopy.spice.Trajectory.coords when the coordinate frame is "IAU_SUN" have been fixed to properly take into account light travel time. In order to ensure consistency, coordinates can only be created with sunpy versions > 2. (#911)

Heliopy 0.12.0 (2020-06-22)

Features

Backwards Incompatible Changes

  • The OMNI data download functions have been updated to use CDAWeb as their source. This means that the heliopy.data.omni.low function has been removed, and replaced by heliopy.data.omni.h0_mrg1hr. This is the same 1 hour data product, but some of the variable names will have changed. (#904)

Heliopy 0.11.1 (2020-05-19)

Bug Fixes

  • Fixed Solar Orbiter kernel download in heliopy.data.spice. (#898)

  • heliopy.spice.setup_spice no longer needs to be manually run to setup common spice files. (#899)

Improved Documentation

  • Fixed the documentation build on readthedocs. (#894)

Heliopy 0.11.0 (2020-05-11)

Changes to heliopy.spice

This release contains several breaking changes to heliopy.spice and heliopy.data.spice, made to accommodate new high level objects to interact with SPICE. The following new objects have been added:

  • SPKKernel, to hold a single SPICE SPK kernel. This comes with helper methods to find the bodies stored within a kernel, and the time coverage of a given body within a kernel.

  • Body, to hold a single body (e.g. a planet, a spacecraft). This contains helper methods to easily convert between body names and body ids.

In addition, heliopy.spice no longer automatically loads commonly needed files on import. This means if you want to use heliopy.spice, it is highly recommended to run heliopy.spice.setup_spice() first.

The existing code has been changed to use the new classes, with the following breaking changes:

Features

  • heliopy.spice now contains the Body object, which allows for easy access of both a body name and id code, validating that either a name or id code are valid on creation.

  • Trajctory now stores the .target and .observing body atributes as Body objects. To get the name or id, use .id or .name. (#868)

  • Added the abcorr argument to heliopy.spice.Trajectory.generate_positions() to allow optional aberration correction. By default this is set to no correction. (#873)

  • Added the Cassini SPICE kernel to heliopy.data.spice. (#876)

  • Updated the Solar Orbiter SPICE kernel to the latest release in heliopy.data.spice. (#879)

  • Added several new solar energetic particle products to heliopy.data.ace. (#882)

Heliopy 0.10.1 (2020-04-03)

Bug Fixes

  • Updated the url for downloading Helios 4Hz magnetic field data. (#856)

  • Avoid converting all CDF data to floating point data, to save significant memory when loading a CDF file. (#858)

Heliopy 0.10.0 (2020-02-20)

Features

Improved Documentation

  • Cleaned up the docstrings of heliopy.data. (#846)

Heliopy 0.9.0 (2019-11-13)

Features

  • A new module heliopy.models has been added to contain heliospheric concepts, the first one of which is heliopy.models.ParkerSpiral. (#768)

  • All functions in heliopy.data.wind now download data in monthly (as opposed to daily) intervals. You may need to delete existing data to correctly load complete datasets. (#772)

  • heliopy.spice.Trajectory objects now have the coords property, that contains the trajectory coordinates as an SkyCoord object.

    In order to do this currently only the ‘J2000’ and ‘IAU_SUN’ spice frames are supported as they have direct mappings to Sunpy/Astropy coordinate systems, but it is possible to generate coordinates in either of these systems and then transform them post-hoc to another Sunpy/Astropy coordinate system. (#776)

  • heliopy.data.wind.swe_h3() has been added. (#800)

  • heliopy.data.wind.threedp_elpd() has been added. (#802)

  • The new heliopy.data.psp module contains methods to automatically download and load Parker Solar Probe data. Currently SWEAP SPC L3 data and FIELDS MAG fluxgate data are available. (#822)

Backwards Incompatible Changes

Bug Fixes

  • Fixed a bug in loading .cdf data where either all files were either converted to .hdf files or at least one of the intervals of data is missing. (#768)

  • Fixed downloading narrow time intervals of MMS data. (#810)

Heliopy 0.8.2 (2019-10-21)

Features

Bug Fixes

  • heliopy.data.spice can now be imported without internet access. If this is the case determining the names of STEREO kernels (which requires internet) will not be possible. (#782)

  • Fixed loading Ulysses data when at least some of it isn’t available. (#795)

HelioPy 0.8.1 (2019-08-14)

Bug Fixes

  • Fix heliopy.data.helios.mag_4hz data downloading (#741)

  • Switch IMP downloading from FTP site to HTTPS site, since anonymous FTP access to NASA servers no longer works. (#749)

HelioPy 0.8.0 (2019-06-24)

Features

Backwards Incompatible Changes

HelioPy 0.7.1 (2019-06-10)

Bug Fixes

  • Fix bug that prevented MMS data from spacecraft 4 being downloaded. (#719)

  • Correctly attach units to MMS data. (#726)

Version 0.7.0

New features

  • Added a graph showing the available coordinate transformations to heliopy.coordinates

  • Added STEREO-B kernels to heliopy.data.spice

  • Added automatic spice kernel detection for the STEREO spacecraft to heliopy.data.spice

  • Switched the download progress bar from wget based to tqdm based, which should work better in notebooks.

Bug fixes

  • Fixed a bug where not all MMS files were downloaded for a large query.

  • Correctly removed bad values in heliopy.data.omni.

Removed features

Version 0.6.7

Deprecations

  • heliopy.data.wind.swe_h3 and heliopy.data.wind.threedp_sfpd are deprecated and will be removed in version 0.7.0. This is because they currently use pandas MultiIndex structures, which are not the recommended way to store 2-or-more dimensional data. In the future they are likely to be re-written to use xarray.

Version 0.6.6

Bug fixes

  • Data downloaded through CDAS is now moved from a temporary folder using shutil, fixing it when the temp folder and destination folder are on different filesystems.

Version 0.6.5

Bug fixes

Backwards incompatible changes

Version 0.6.4

New features

Backwards incompatible changes

  • Kernels available in heliopy.data.spice have been cleaned up, meaning some are now not available or have been moved to the predicted section.

  • A handful of data download functions have migrated to using the CDAS restful service, and have therefore had their call signatures changed. In particular: - heliopy.data.messenger.mag_rtn has lost its try_download kwarg - heliopy.data.helios.merged has lost its try_download kwarg

The following IMP download functions, which only ever worked for IMP8 have been renamed:

Version 0.6.3

New features

Bug fixes

  • Updated links to the STEREO-A spice kernels.

Backwards incompatible changes

  • heliopy.data.mms.fgm_survey has been removed in favour of the more general heliopy.data.mms.fgm. To download survey mode FGM data use the new method and set the mode keyword argument to srvy.

Version 0.6.2

New features

Bug fixes

  • Fixed heliopy.data.mms.fgm_survey data loading. #601

Version 0.6.1

New features

  • The heliopy.data.ace module now contains all the magnetic field and particle data produces produced by ACE. #577, #578

  • STEREO-A spice kernels have been added. #585

Bug fixes

  • The accidentally removed Ulysses spice kernel has returned. #582

  • heliopy.data.helper.cdfpeek has been updated to work with cdflib, and now prints all CDF file information.

Version 0.6.0

HelioPy now only supports Python versions 3.6 and higher.

New features

  • HelioPy has been integrated with SunPy TimeSeries and AstroPy Units. All of the HelioPy modules now return physical units with data.

  • Added a new data.util.cdf_units function that can extract the UNIT attribute from CDF files.

  • Low resolution OMNI data import has been added in data.omni.low function.

  • Magnetic Field data from DSCOVR Spacecraft can now be imported using the data.dscovr.mag_h0 function.

Backwards incompatible changes

  • Methods in heliopy.data no longer returns a Pandas DataFrame, but now return a SunPy timeseries object. To get the underlying data, you can still do:

    dataframe = timeseries.data
    

    For an example of how to use the new object, see TimeSeries Plotting Example.

  • Data import has had a major overhaul, so that every column in CDF files now gets automatically imported and retains its name without being changed by HelioPy. This means column names in several data products are now different, to reflect their original name in the CDF files instead of a custom name that was previously assigned by HelioPy.

  • data.helios.merged, data.helios.mag_4hz, data.helios.corefit and data.helios.mag_ness no longer take a verbose keyword argument. #467

Fixed bugs

Version 0.5.3

New features

  • Lots of small documentation updates.

  • data.helios.distparams now has an extra 'data_rate' column, which determines whether a given distribution function was transmitted in high or low data mode. #529

Version 0.5.2

New features

  • The new HelioPy logo has been added to the documentation. #448, #447

Fixed bugs

Version 0.5.1

New features

  • HelioPy can now be installed using conda.

Backwards incompatible changes

  • The list of kernels available for automatic download in heliopy.data.spice has been updated, and some names changed. #408

Fixed bugs

  • spice.Trajectory.generate_positions can now generate positions at a resolution of one second instead of one day. #405

  • A duplicate “z gsm” column header in the data returned by data.imp.mag15s has been corrected. #396

Version 0.5.0

New features

  • heliopy.data.sunspot added an additional functionality to import sunspot data in three different timeframes - daily, monthly and yearly.

  • The inventory of spice kernels in heliopy.data.spice now includes “Helios 1 Reconstructed”, “Helios 1 Predicted”, “Juno Reconstructed”, “Juno Predicted” and “Helios 2” kernels.

  • heliopy.spice.furnish now accepts a list of filenames as well as individual filenames.

  • A lot of new functions for downloading ACE data have been added to heliopy.data.ace.

Backwards incompatible changes

Removed features

Version 0.4

New features

Backwards incompatible changes

  • heliopy.spice.Trajectory.generate_positions now takes a list of dates/times at which to generate orbital positions, instead of a start time, stop time, and number of steps. The old behaviour can be recovered by manually generating an evenly spaced list of times.

Version 0.3

New features

HelioPy now contiains code for working with SPICE kernels. See the following modules for more information:

Removed features

  • The heliopy.plasma module has been removed (see http://www.plasmapy.org/ for the recommended alternative)

  • heliopy.plot code removed

Version 0.2

New features

  • Convert examples gallery to automatically generate plots

  • Added heliopy.data.helper.listdata method for easily viewing the amount of data HelioPy is storing locally.

  • Added heliopy.data.wind.threedp_sfpd method for importing WIND 3DP sfpd data.

Version 0.1.3

Fixed bugs

  • Correctly report download percentage when downloading files.

  • Fix issue where heliopy.data.helios.corefit made duplicate .hdf files on days where no data is available.