PlasmaPy v2024.10.0 (2024-10-30)
New Features
Added the option to pass
inf
to theionize
method ofParticle
to return the nucleus of the particle. (#2800)Implemented
CFL_limit_electromagnetic_yee
to calculate the CFL condition for electromagnetic simulations. (#2832)synthetic_radiograph
now accepts a file path to an HDF5 file saved byTracker
as input to create a synthetic radiograph. (#2868)Save routines in
save_routines
now take an optional keyword argumentoutput_basename
that sets the basename of the saved file(s).Tracker
now also accepts anoutput_basename
keyword, which is passed to the save routine. (#2868)
Documentation Improvements
Updated the docstring of
beta
to explicitly use definitions of \(p_{th}\) and \(p_{mag}\), and added links tothermal_pressure
andmagnetic_pressure
. (#2822)Restructured sections in the
rot_a_to_b
docstring to be consistent with other docstrings, and added ‘Raises’ and ‘Examples’ sections. (#2824)Added the force-free definition to the Glossary. (#2830)
Updated docstrings in
plasmapy.formulary
to follow the numpydoc standard. (#2831)Added examples to the
ParticleTracker
docstring. (#2833)Added a section in the installation instructions for installing PlasmaPy with uv. (#2861)
Backwards Incompatible Changes
Removed the
optical_density
keyword argument insynthetic_radiography
. (#2843)The property
recognized_quantities
ofAbstractGrid
is now a class method instead of a class property, as usingclassmethod
andproperty
decorators together is no longer allowed in Python 3.13. The syntax for accessing this dictionary has therefore changed fromAbstractGrid.recognized_quantities
toAbstractGrid.recognized_quantities()
. (#2871)
Bug Fixes
Patched a bug in
synthetic_radiography
in which particles stopped before the detector were still included in synthetic radiographs. (#2843)
Internal Changes and Refactorings
Updated the release checklist. (#2784)
Added a Nox session to verify that the pinned requirements files used in continuous integration tests are consistent with the requirements in
pyproject.toml
. (#2794)Fixed a bug in the Nox session for running tests that prevented doctests from being run, and fixed doctest errors that were introduced while doctests were not enabled. (#2834)
Removed Numba as a project dependency. Consequently,
plasma_frequency_lite
andthermal_speed_lite
are no longer just-in-time compiled by Numba. (#2841)Adjusted the Sphinx configuration to account for recent deprecations in Read the Docs. (#2857)
Added testing support for Python 3.13. (#2869)
Updated the versions of Python used in continuous integration workflows. (#2879)