This version adds improved functionality to SHTOOLS and fixes a couple of minor bugs. In addition, this release will be the first where pre-built wheels for unix/macOS/windows will be distributed via PYPI.
- Added an optional argument
- Coefficients are zero-padded when
lmaxis greater than the maximum degree in
- The method
pad()was added to the
SHCoeffsclass that zero pads or truncates the coefficients to a different
- Fixed the method
SHCoeffs.from_file()such that the maximum spherical harmonic degree of the class is the maximum spherical harmonic degree of the coeffs (and not
- Fixed formatting issues with error messages in
- Removed print statements from the fortran code in
BAtoHilmRohHthat served no purpose.
- Fixed a bug in the argument order of the python wrappers of
- Fixed the makefile to remove the
distdirectory during clean.
- Fixed a bug in the python routine
cross_spectrum(), where the numpy arange function was incorrectly called.
- Fixed the
SHWindowplotting methods to work when the number of rows is equal to 1.
- Conditional tests in the routine
Wigner3jwere reordered to avoid a division by zero.
- Numpy’s auto-configuration is now used to detect the LAPACK libraries.
- Many minor updates to the python documentation and unix man pages.
M. A. Wieczorek, M. Meschede, E. Sales de Andrade, I. Oshchepkov, B. Xu, and A. Walker (2017). SHTOOLS: Version 4.1, Zenodo, doi:10.5281/zenodo.1067108
This is a major update that fixes bugs, adds new functionality, and improves Python error handing. All users are requested to upgrade to 4.0.
- Instead of executing a Fortran STOP, which kills the Python kernel, the Fortran subroutines now return an
exitstatusthat allows Python to raise an exception. This technique does not work with the few Fortran functions that pyshtools calls, but these functions are relatively benign, and will soon be phased out for Python native functions.
- The Fortran
powerspectrumroutines have been removed from pyshtools, and have been replaced with Python native routines
cross_spectrum. The Python routines allow to specify the normalization, whether the output should be power, energy or l2norm, and whether the spectrum is per degree, per coefficient, or per log bandwidth.
- The method
plot_spectrum2d()was added to the class
SHCoeffsto plot the power as a function of degree and order.
- All pyshtools modules have been converted into proper Python subpackages. The subpackage
localizedpsectralanalysishas been merged into
spectralanalysis, and the subpackage
otherhas been renamed
- The Python class method
SHCoeffs.expand()now can evaluate the function either on an SHGrid or for a list of latitude and longitude points. As part of this change, a new fortran function
MakeGridPointCwas created for complex coefficients.
- The majority of the methods for the classes
SHWindowhave been rename for consistency (see documentation!). Also, the classes now give the option of reading or saving to files as numpy arrays.
- Added new Python function
read_icgen_gfcfor reading ICGEM-format gravity coefficient files.
- The operator
powwas added to the class
- All methods in the pyshtools classes now return copies by default, which can be modified by the optional argument
potas a mandatory return argument for the Python routine
- Several minor modifications and bug fixes were made to the makefiles to improve compatibility and to allow the use of
- The routines
other.PreGLQwere removed from pyshtools, as these can be found in other scipy packages.
- The SHTOOLS routine
DHajwas added to the pyshtools subpackage
- Python docstrings have been streamlined and standardized.
- …plus, many minor changes and optimizations…
M. A. Wieczorek, M. Meschede, I. Oshchepkov, E. Sales de Andrade, and heroxbd (2016). SHTOOLS: Version 4.0. Zenodo. doi:10.5281/zenodo.206114Edit me