PlasmaPy v2023.1.0 (2023-01-13)
Backwards Incompatible Changes
Moved the charged particle radiography analysis codes into a new module
charged_particle_radiography
containing synthetic radiography tools insynthetic_radiography
and detector stack calculation tools indetector_stacks
. (#1274)Changed the
gyroradius
function so that it takes relativistic effects into account by default. (#1813)
Deprecations and Removals
Changed the
gyroradius
function so it no longer accepts deprecatedT_i
. (#1824)Removed
plasmapy.formulary.parameters
, which was deprecated in the0.7.0
release. The functionality in that module had previously been migrated to modules that are broken down by physical type, such as:plasmapy.formulary.densities
,plasmapy.formulary.dimensionless
,plasmapy.formulary.frequencies
,plasmapy.formulary.lengths
,plasmapy.formulary.misc
, andplasmapy.formulary.speeds
. (#1833)Deprecated providing a real number to the
charge
parameter ofCustomParticle
to represent the charge number. UseZ
instead. (#1866)
Features
Added the
Stack
andLayer
objects to thecharged_particle_radiography
module, which represent a stack of detector media layers. Thedeposition_curves
andenergy_bands
methods ofStack
calculate the particle energies deposited in each detector layer. (#1274)Tracker
now supports multiple field grids, provided as an iterable. (#1799)Added the
plasmapy.analysis.time_series.running_moments
module including two functions for calculating running moments of time series. (#1803)Added
lorentzfactor
as an optional keyword-only argument togyroradius
. Also addedrelativistic
as an optional keyword-only argument which can be set toFalse
for the non-relativistic approximation. (#1813)Modified
Particle
attributes to returnnan
in the appropriate units when undefined rather than raising exceptions. (#1825)Added the
charge_number
attribute toCustomParticle
. (#1866)Added
Z
as a keyword-only parameter representing the charge number toCustomParticle
. (#1866)
Improved Documentation
Updated docstrings and annotations in
plasmapy.diagnostics.thomson
. (#1756)Updated the discussion on type descriptions and parameter descriptions for docstrings in the Documentation Guide. (#1757)
Updated troubleshooting sections of the Documentation Guide. (#1817)
Added a summary section to the Testing Guide. (#1823)
Updated the Changelog Guide. (#1826)
Reorganized the Coding Guide 👾. (#1856)
Added a documentation page on performance tips. (#1887)
Trivial/Internal Changes
Updated warning messages in
Coulomb_logarithm
. (#1586)Transferred most of the contents of
setup.py
andsetup.cfg
topyproject.toml
(see PEP 518 and PEP 621). Simplifiedextras
requirements (pip install plasmapy[all]
and[extras]
are gone). (#1758)Added blacken-docs to the pre-commit configuration. (#1807)
Removed
pytest-xdist
from the testing requirements. (#1822; see also #750)Refactored tests of
Lorentz_factor
andrelativistic_energy
. (#1844)Applied refactorings from ruff and
refurb
toplasmapy.utils
. (#1845)Applied changes from
refurb
toplasmapy.particles
. (#1846)Applied changes from
refurb
toplasmapy.formulary
. (#1847)Apply changes from ruff and
refurb
toplasmapy.analysis
,plasmapy.diagnostics
,plasmapy.dispersion
, andplasmapy.plasma
. (#1853)Added the
strict
andallowed_physical_types
parameters toplasmapy.utils._units_helpers._get_physical_type_dict
. (#1880)Added a private constructor method to
CustomParticle
with an API that is better suited for use inParticleList
and the particle factory function used byparticle_input()
. (#1881)Dropped the dependency on
cached-property
in favor offunctools.cached_property
. (#1886)