Added the SOHO SPICE kernels to heliopy.data.spice
. (#777)
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)
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.data.cdasrest.get_cdas_url()
and heliopy.data.cdasrest.get_data()
have been generalised, and can now be used to download data in an arbitrary
interval instead of just a single day. (#714)
heliopy.data.ace
functions that download low cadence data (e.g. composition
data) now download yearly instead of daily files, speeding up data download. (#715)
heliopy.data.cdasrest.get_cdas_url()
and heliopy.data.cdasrest.get_data()
now take starttime
and endtime
arguments instead of just a date
argument, and their signatures have changed to reflect this. (#714)
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.
Fixed a bug where not all MMS files were downloaded for a large query.
Correctly removed bad values in heliopy.data.omni
.
The deprecated heliopy.data.wind.swe_h3()
and
heliopy.data.wind.threedp_sfpd()
have been removed.
heliopy.data.wind.swe_h3()
and heliopy.data.wind.threedp_sfpd()
are deprecated and will be removed in version 0.7.0. This is becaue 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.
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.
heliopy.data.spice.get_kernel()
now raises a warning instead of an
error if a kernel can’t be downloaded.
heliopy.data.helios.merged()
now filters out bad values and converts
them to NaNs.
heliopy.spice
now only loads core SPICE kernels once, instead of every
time the module is imported.
heliopy.data.spice.get_kernel()
now prints a warning instead of
raising an error if a kernel cannot be downloaded.
Added the ability for heliopy.spice.Trajectory
objects to compute
and return the body velocity.
Available spice kernels in heliopy.data.spice
are now split into
kernels that have been reconstructed (ie. actual trajectories) and
predicted trajectories.
The predicted Bepi Columbo spice kernel has been added to
heliopy.data.spice
The heliopy.data.ace.swi_h3b()
function has been added.
heliopy.data.cdasrest.get_variables()
and
heliopy.data.cdasrest.get_data()
now have a timeout
keyword
argument, allowing manual specification of the timeout when fetching data
from a server.
Importing heliopy.spice
now automatically loads common heliospheric
coordinate systems.
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:
mitplasma_h0 has been renamed i8_mitplasma()
mag320ms has been renamed i8_mag320ms()
Added Parker Solar Probe spice kernels to heliopy.data.spice
.
Added a generic functions to download MMS data. Available files can be
queried using heliopy.data.mms.available_files()
, and files can be
downloaded using heliopy.data.mms.download_files()
Updated links to the STEREO-A spice kernels.
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
.
Added heliopy.data.mms.fpi_des_moms()
function. #601
Added heliopy.data.wind.threedp_e0_emfits()
function. #606
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
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.
HelioPy now only supports Python versions 3.6 and higher.
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.
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
data.imp.merged()
no longer imports redundant columns.
The new data version number of data.mms.fpi_dis_moms()
has been
updated.
HelioPy can now be installed using conda.
The list of kernels available for automatic download in data.spice
has been updated, and some names changed. #408
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
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
.
heliopy.data.spice.get_kernel()
now returns a list of filenames instead
of a single filename string.
Most of the functions that were in heliopy.data.helper
have been
moved to heliopy.data.util
. The ones the remain in
heliopy.data.helper
are useful for users, and the ones in
heliopy.data.util
are used internally as utility functions for
data import.
heliopy.data.helios.trajectory()
has been removed. To get Helios
trajectory data use the heliopy.spice
and heliopy.data.spice
modules.
swics_abundances()
and
swics_heavy_ions()
methods added for loading SWICS data from the Ulysses mission.
cdfpeek()
method added for peeking inside
CDF files.
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.
HelioPy now contiains code for working with SPICE kernels. See the following modules for more information:
heliopy.data.spice
module for downloading spice kernels
heliopy.spice
module for automatically processing spice kernels
The heliopy.plasma
module has been removed
(see http://www.plasmapy.org/ for the recommended alternative)
heliopy.plot
code removed
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.
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.