The SKIRT project
advanced radiative transfer for astrophysics
Recent changes

Introduction

The tables below list the most relevant recent updates to SKIRT and PTS since version 9 was publicly released on May 10, 2019. In case a change comprises multiple commits, the date and commit hash in the table indicate the most recent commit that includes all the changes implied by the corresponding description. For details, refer to the commit history and pull requests in the respective GitHub repositories.

Recent changes in SKIRT

Date Commit Description
Aug 14, 2019 dadfa2d Various minor corrections to Q&A messages and default values
Aug 22, 2019 a1f2ce4 Support column reordering for importing snapshots
Aug 23, 2019 c7a14c2 Various minor performance optimizations
Sep 17, 2019 3799dd5 Add probes for radiation field and dust emission wavelength grid
Oct 11, 2019 1d790e8 Add SED families generated by the stellar population synthesis code FSPS
Oct 21, 2019 7d3db33 Add probes for planar cuts at arbitrary positions in the model
Oct 21, 2019 9c40ce6 Support velocity dispersion for imported sources
Oct 29, 2019 fda5749 Use hydrid parallellization for building Voronoi grids
Jan 17, 2020 8b4920a Introduce a set of basic vector fields, including decorators
Jan 17, 2020 8b4920a Add magnetic fields to geometric and imported media, including probes
Jan 17, 2020 8b4920a Add velocity fields to geometric sources and media, including probes
Jan 28, 2020 d9c0c65 Add SEDs to model Lyman-alpha sources
Feb 20, 2020 d2af8ae Add minimum radius to Sphere1DSpatialGrid
Mar 19, 2020 767fb95 Allow placing models at nonzero redshift
Mar 19, 2020 767fb95 Support dust heating by the CMB radiation
Mar 19, 2020 767fb95 DistantInstrument subclasses output the extent of the spatial axes in angular units
Apr 20, 2020 69b5c6e Fix bug in optimization of instruments with the same line of sight
May 11, 2020 247b3fb Remove the carbon emission lines from the MappingsSEDFamily dust continuum
Jun 10, 2020 efcaaee Add Lyman-alpha photon cycle and import capabilities
Jun 17, 2020 2fb8543 Add HEALPixSkyInstrument
Jul 16, 2020 58c16ec Repeat warnings and non-fatal errors at the end of the simulation log
Jul 29, 2020 9db9d51 Add polarised secondary emission for aligned dust grains
Aug 4, 2020 b1ccc21 Add snapshot import from list of cuboidal cells (as alternative for AMR)
Aug 20, 2020 3503470 Allow assigning a user-provided SED to each individual imported source
Nov 2, 2020 086772b Substantial update to make material mix and medium state code more generic
Nov 2, 2020 086772b Add a decorator to split a dust mix into material type and/or size bin fragments
Nov 2, 2020 086772b Allow distinct density values to be imported from a snapshot for each fragment
Nov 2, 2020 086772b Allow dynamically adjusting the medium state by iterating over the primary radiation field
Nov 2, 2020 086772b Add a basic dust destruction recipe using the dynamic medium state mechanism
Nov 2, 2020 086772b Add probes to output the values of custom state variables such as destruction fractions
Nov 2, 2020 086772b Add the option to use a photon cycle without forced scattering, mainly for Lyman-alpha
Nov 2, 2020 086772b Allow loading a dust grain size distribution from file or configuring it as a list
Nov 2, 2020 086772b The spheroidal dust grain compositions now offer built-in property tables
Nov 9, 2020 787d31a Add geometry that reads density distribution from a 3D FITS data cube
Nov 13, 2020 46f0313 Fix the (tiny) asymmetry in Lyman-alpha SEDs for static spheres
Feb 19, 2021 04f69bd Fix surface brightness calibration and coordinate transforms for "local" instruments
Feb 19, 2021 2c0a6a1 Introduce line emission spectra for normalized sources
Feb 23, 2021 d9ef94a Add circular aperture to SEDInstrument
Mar 3, 2021 9c80c88 Add BPASS SED template family with optional resource pack
Mar 16, 2021 bf69f1b Add optional ionization parameter to FileSSPSEDFamily to support nebular emission
Mar 29, 2021 aecef86 Allow avoiding Voronoi tessellation construction for imported density distributions
Mar 30, 2021 c2a0f31 Add a probe for the radiation field at the positions listed in a user-provided input file
Apr 26, 2021 c70b6ef Upgrade to recent cfitsio library version that properly runs on Apple Silicon
Jun 9, 2021 b37c225 Upgrade to recent Voro++ library version and retry construction after removing invalid cells
Jun 9, 2021 b37c225 Stop Intel compilers from using optimizations that cause non-standard floating point operation
Jun 9, 2021 a3abee9 Support binary stored columns format as faster alternative for column text files
Sep 16, 2021 fc46ce7 Fix incorrect treatment of photon packets originating outside of Cylinder2DSpatialGrid
Sep 16, 2021 2633935 Add probe to output projected surface density (dust) or column density (electrons, gas)
Dec 1, 2021 3133494 ** Enable emission from gas media and streamline execution flow and configuration options
Dec 6, 2021 5451916 Support counts per energy units (e.g. 1/s/keV) and 'wavelength' output as energy (e.g. keV)
Dec 9, 2021 99109f7 Add broadband definitions for the Euclid and Rubin/LSST observatories
Dec 10, 2021 3a210a8 Add new wavelengths grid types (specify spectral resolution; specify outer bin borders)
Dec 16, 2021 e0367b6 Add Compton scattering and velocity dispersion for electron populations
Dec 16, 2021 e0367b6 Fix a bug in velocity dispersion sampling for imported sources
Dec 17, 2021 06cfaac Add 21 cm hydrogen 'spin-flip' line emission and self-absorption
Jan 4, 2022 4a9adf8 Add composite wavelength grid defined by aggregating a list of wavelength grids
Jan 24, 2022 a313a94 Instruments output transparent flux from secondary sources (extra column in SED output files)
Jan 28, 2022 681a39a Add power-law behavior to radial and rotational vector fields
Feb 15, 2022 322f530 Allow multiple media components to change the wavelength during scattering
Feb 16, 2022 9b73b93 Fix random position generation in Torus, Shell, and ConicalShell geometries for exponents p>=3
Feb 24, 2022 ca5ff94 Add photo-absorption and fluorescence by neutral atomic gas at X-ray wavelengths
Mar 3, 2022 4222613 Add "hollow" radial vector field with power-law behavior and central cavity
Mar 10, 2022 d21d1b2 Include information on secondary emission in LaunchedPacketsProbe
Mar 22, 2022 5e3effa Add workaround for extreme forward scattering by dust in the X-ray regime
Apr 4, 2022 86ac8bf Adjust MeanInterstellarDustMix scattering asymmetry parameter for X-ray wavelengths
May 18, 2022 48f28ee ** Substantially revised and augmented probes based on new design with probe forms
May 18, 2022 48f28ee ParticleMedium can read volume-integrated number as an alternative to volume-integrated mass
Jun 9, 2022 5afa2a8 Add scattering by bound electrons to X-ray atomic gas (four implementations)
Jun 9, 2022 5afa2a8 Introduce explicit absorption to support stimulated emission (negative extinction)
Jun 22, 2022 ff684b0 Allow source/medium-colocated clumps in clumpy geometry decorator
Aug 2, 2022 c0b019d Imported source probes always use system aggregation
Aug 3, 2022 4540d38 Support convolution over broadbands in imported source luminosity probe
Aug 3, 2022 0f9447f Allow probing after each iteration over primary or secondary emission
Aug 9, 2022 4dbf6f3 ** Revised dynamic medium state concepts and execution flows
Sep 15, 2022 cfc43be ** Extra flexibility for border wavelength grids loaded from file or list
Sep 19, 2022 2c337c4 Support self-consistent non-LTE line transfer for selected transitions and species
Oct 12, 2022 fbd00c8 Add probe for line luminosity during secondary emission
Nov 4, 2022 edb826e Fix multi-process hang in imaging form probes
Jan 23, 2023 6b8531e Add annulus and donut geometries
Apr 11, 2023 930a240 Add extra fluorescent lines to XRayAtomicGasMix
Apr 29, 2023 352bd26 Support polarization for Compton scattering in ElectronMix and XRayAtomicGasMix
May 19, 2023 cbcac09 Add three new GrainCompositions for AGN dusty torus
Jun 7, 2023 1bba242 Add TODDLERS star-forming region SED template library
Jun 8, 2023 587faab Add temperature probing for individual grain populations in a dust mixture
Aug 23, 2023 9e2c223 Support hydroxyl with hyperfine structure and molecular hydrogen for non-LTE line transfer
Aug 26, 2023 7d463e3 Fix performance issue in photon life cycle without forced scattering
Aug 30, 2023 879e9de Introduce extrapolated optical properties for AGN dust mixes
Sep 20, 2023 2609fd3 Honor wavelength output style for spectral units in ski files, Q&A, and Makeup
Oct 4, 2023 6f61d94 Add Nested Density Tree Policy
Oct 6, 2023 21bd407 Add option for oversampling to ParallelProjectionForm
Oct 20, 2023 0555100 Add convergence criterion to NonLTELineGasMix using global level populations
Oct 20, 2023 9c171a4 Add density and opacity probing for individual grain populations in a dust mixture
Oct 21, 2023 1288661 Update atomic/molecular partitioning scheme in SpinFlipHydrogenGasMix
Oct 21, 2023 1288661 Add separate SpinFlip emission/absorption classes
Nov 9, 2023 8cd4722 Add power law redistribute geometry decorator classes
Nov 23, 2023 e790b9f Add probe for dust luminosity spectrum during secondary emission
Feb 19, 2024 0fced48 Allow negative exponent for ShellGeometry
Feb 28, 2024 2191a4e Add a polarized point source using user-tabulated emission properties
Mar 7, 2024 3c9e4d7 Add observer angles and distance to output of distant instruments
Mar 24, 2024 935d7ea Support ExtraBands resource pack with HST and JWST filters
Jun 7, 2024 c991294 Add intrinsic line shapes for key fluorescent lines in XRayAtomicGasMix
Sep 2, 2024 d3343d6 Add Hirashita (2015) grain size distribution
Oct 11, 2024 8765014 Properly calculate photon energy loss for bound-electron Compton scattering in X-ray gas
Dec 20, 2024 81d2eda Add Tetrahedral spatial grid
Jan 10, 2025 6bafd69 Allow importing a per-particle source bias weight to reduce noise in low-luminosity regions
Jan 22, 2025 828c3d1 Support importing from snapshots in cylindrical coordinates
Feb 3, 2025 1726ed2 ** Add 3D spatial grids in cylindrical and spherical coordinates; add symmetric log mesh
Feb 17, 2025 ba2f74c Support importing from snapshots in spherical coordinates
Mar 6, 2025 56c2a10 Add automatic column order and virtual zero columns for import text column files
Mar 11, 2025 dcb3392 Add quartic spline smoothing kernel

** This update requires a ski file upgrade

Recent changes in PTS

Date Commit Description
Jun 20, 2019 716613d Command script 'plot_seds' allows specifying an instrument name
Aug 13, 2019 c839f74 Add MovieFile class based on ffmpeg
Aug 13, 2019 c839f74 Provide facilities for making "wavelength movies"
Aug 22, 2019 eae0e63 Add optional title and format to saveColumns() function
Oct 3, 2019 a5767f0 Provide framework for upgrading SKIRT 9 ski files (not needed yet)
Oct 11, 2019 50de868 Support conversion from FSPS output to SKIRT stored table format
Oct 15, 2019 01cd541 Add facilities for plotting the spectral resolution of a wavelength grid
Oct 21, 2019 70b262f Support plotting the new planar cuts at arbitrary positions in the model
Jan 17, 2020 b60c3d8 Allow plotting magnetic field and velocity cuts produced by the respective probes
May 11, 2020 021456b Remove the carbon emission lines from the Mappings dust continuum
Jul 8, 2020 8de8b34 Add script to convert HEALPixSkyInstrument output to a projected image
Dec 10, 2020 4caec70 Add conversion to SKIRT stab format for BPASS stellar population models
Feb 19, 2021 55e86db Update script to convert HEALPixSkyInstrument output to a projected image
Feb 19, 2021 35684ec Augment automated ski file upgrade procedure for line SEDs
Mar 16, 2021 9631f87 Add example script for creating FSPS templates with nebular emission
Jun 9, 2021 1e09625 Support creating and reading files in the SKIRT-specific stored columns format
Nov 30, 2021 8bcfe7f Provide automated ski file upgrade procedure for tomorrow's SKIRT update
Dec 6, 2021 649cd1e Support counts per energy units (e.g. 1/s/keV) and wavelength output style (e.g. keV)
Dec 9, 2021 a50ebfd Add broadband definitions for the Euclid and Rubin/LSST observatories
Jan 4, 2022 93b3eca Allow plotting spectral resolution from any instrument or probe output with a wavelength grid
Apr 4, 2022 b24c59c Adjust MeanInterstellarDustMix scattering asymmetry parameter for X-ray wavelengths
May 18, 2022 f5b3f85 Adjust plotting commands and ski file upgrade to revised probes and probe forms
Aug 9, 2022 49f8d7d Provide automated ski file upgrade procedure for revised execution flows
Sep 15, 2022 06777ab Provide automated ski file upgrade procedure for border wavelength grids
Nov 4, 2022 5937da0 Fix some very minor issues, mostly documentation
Sep 14, 2023 2583d55 Allow specifying the units of the wavelength range in relevant plot commands
Jun 6, 2024 9864d2e Built-in broadband definitions are now taken from SKIRT resources
Feb 3, 2025 f6a2431 Provide automated ski file upgrade procedure for today's SKIRT update (grids and meshes)
Mar 2, 2025 cd3c129 Add function to write FITS file in SKIRT output style