Recent Releases of Juelich Rapid Spectral Simulation Code
Juelich Rapid Spectral Simulation Code - v1.15
Changes in this release
Documentation & Metadata
- Updated the README, MkDocs manual, Doxygen main page, examples, references,
CITATION.cff, and dependency documentation. - Added a dedicated
DEPENDENCIES.mdfile and clarified mandatory netCDF/HDF5 requirements and installation instructions. - Added a Matrix chat room,
AGENTS.md, a JOSS submission badge, and author metadata including an additional ORCID. - Expanded the manual with figures, including infrared limb-spectrum illustrations, and corrected inconsistencies across the documentation.
- Removed the external
polyfill.iodependency from the manual. - Improved documentation for MPI parallelization, testing, workflows, command-line usage, lookup tables, and file formats.
JOSS Paper
- Added and iteratively revised the JOSS paper.
- Added a concise introduction, a statement of need, updated figures, citations, references, and author information.
- Incorporated reviewer and collaborator feedback and aligned the paper with the current software capabilities and documentation.
Build System, Dependencies & CI/CD
- Updated Makefiles, library build scripts, GitHub Actions workflows, documentation deployment, and coverage configuration.
- Removed the obsolete Coveralls workflow.
- Added and revised CLI, regression, MPI, netCDF, and lookup-table tests in continuous integration.
- Added an optional hybrid MPI retrieval regression test.
- Removed explicit
-lzstdlinking where it caused problems with static builds. - Improved workflow guidance, installation notes, and dependency handling.
Command-Line Interface & Tools
- Added CLI help and usage documentation for all command-line tools.
- Introduced a shared
USAGEmacro and expandedcli_test. - Improved handling and usability of the
-hoption. - Added clearer help text for control parameters.
- Improved runtime timer reporting in the forward model, retrieval, and kernel applications.
- Added or updated tools for zenith geometries, lookup-table reduction, table conversion, and table reading.
netCDF & Binary I/O
- Added netCDF support for atmospheric profiles, observations, lookup tables, retrieval profile lists, and matrices.
- Added binary and netCDF matrix I/O together with a matrix-format conversion tool and tests.
- Added generic profile-index support to shared I/O wrappers.
- Generalized dataset-aware matrix I/O.
- Added MPI-safe shared netCDF retrieval I/O.
- Added shared netCDF profile-list handling for retrieval applications.
- Added macros and common infrastructure for netCDF support.
- Improved atmospheric, observational, table, matrix, and retrieval netCDF test coverage.
- Improved the performance of netCDF lookup-table reading.
- Allowed netCDF readers to skip empty lookup tables safely.
- Added distinct
rad_*andbt_*netCDF variables for radiance and brightness-temperature observation spectra.
Lookup Tables & Interpolation
- Added netCDF reading and writing for lookup tables.
- Added filter functions to binary and netCDF lookup-table files.
- Stored filter functions together with emissivity lookup tables.
- Made emissivity lookup tables dynamically allocatable and added explicit cleanup routines.
- Refactored table writers into per-
(id, ig)functions. - Empty emissivity tables are now skipped with a warning instead of being written.
- Reused common table packing and unpacking functions for binary lookup tables.
- Added tests for lookup-table compression and extended table I/O tests.
- Switched emissivity-curve interpolation to logarithmic space using precomputed
log(u)andlog(eps). - Added log-pressure interpolation and reused precomputed logarithmic pressure values.
- Revised interpolation routines and changed invalid logarithmic interpolation fallbacks to linear interpolation.
- Clamped interpolated segment emissivity to valid bounds.
Retrievals & Parallelization
- Added MPI parallelization to the retrieval code.
- Enabled MPI-safe shared access to netCDF retrieval data.
- Added shared profile-list input and output for retrievals.
- Refactored common retrieval input-target handling.
- Added an optional hybrid MPI retrieval regression test.
- Improved timing reports for retrieval and kernel calculations.
Observation Geometries & RFM Interface
- Added support for zenith observation geometry.
- Added a dedicated zenith geometry tool and example.
- Extended zenith calculations to angles greater than 90 degrees.
- Fixed zenith geometry handling and updated the associated regression tests.
- Added zenith support to the RFM interface.
- Fixed reading of netCDF filter functions through the RFM interface.
- Updated limb, nadir, and zenith examples and their reference outputs.
Atmospheric Profiles & Vertical Grid
- Added an option to refine the near-surface atmospheric layer.
- Modified the vertical grid near the surface.
- Removed an obsolete surface-level validation check.
- Revised atmospheric memory allocation.
- Added and expanded tests for atmospheric profile reading and writing.
Spectroscopy & Physical Parameters
- Updated the refractivity equation to use dry-air Edlén refraction.
- Updated regression data for the revised refractivity calculation.
- Revised the global CO₂ fit using NOAA annual-mean data for 1980–2025.
- Improved interpolation and emissivity handling for radiative-transfer lookup tables.
Code Quality & Refactoring
- Revised memory allocation and lookup-table cleanup.
- Removed unused variables and obsolete code.
- Updated log messages, comments, Doxygen annotations, and API descriptions.
- Refactored shared I/O, retrieval, and lookup-table helper functions.
- Fixed documentation comments, references, manual inconsistencies, and compilation-related issues.
Tests & Examples
- Added dedicated
formod_test,obs_test, andatm_testprograms. - Added tests for atmospheric and observational netCDF files.
- Extended lookup-table, matrix, retrieval, CLI, MPI, and geometry regression tests.
- Updated test scripts and reference datasets for interpolation, refractivity, zenith geometry, netCDF I/O, and examples.
- Added a zenith example and refreshed the limb and nadir examples.
- Updated example documentation and workflows.
Atmosphere - Radiative Transfer
- C
Published by lars2015 about 1 month ago
Juelich Rapid Spectral Simulation Code - v1.14
Changes in this release:
- Update CITATION.cff file.
- Fixed code style.
- Updated headers.
- Added day2doy and doy2day functions and tools.
- Update README.
- Moved optimal estimation retrieval function to library file.
- Added check of magic keys for binary data.
- Added tests for binary file-I/O.
- Added binary format for observation data files.
- Added tool to convert observation file format.
- Added binary format for atmospheric data files.
- Added macros to convert NEDT to NESR and vice versa.
- Added const qualifiers.
- Fixed path for reading observational data.
- Update doxygen comments.
- Update tbl_test.
- Added code to write per-gas emissivity look-up tables.
- Fixed output of step size diagnostics.
- Added code to evaluate forward model results.
- Added test for hydrostatic code.
- Replaced sza() by cos_sza() function.
- Fixed output of raytrace tool.
- Added test for look-up table tools.
- Fix look-up table directory.
- Added CGA test.
- Update limb test.
- Added FOV test.
- Reorganized test data.
- Added tests for tools.
- Added test case for retrieval code.
- Moved retrieval functions to jurassic.* files.
- Removed surface pressure and surface height variables.
- Added check whether local surface is included in atmospheric profiles.
- Update look-up table interpolation.
- Added check for ground height in raytracer.
- Fix HiRSE Code Promo Badge link formatting
- Modified function interface of read_tbl().
- Modified initialization of look-up tables.
- Moved field-of-view data to ctl struct.
- Moved emitter indices for CO2, H2O, N2, and O2 to control parameters.
- Fix N2 continuum code.
- Added climatology data for HCl, HF, CH3OH, and H2CO.
- Added CFC-113 and CFC-114 vertical profiles.
- Added constants for nitrogen and oxygen concentrations.
- Added N2 and O2 to climatology code.
- Fix for reading RFM data.
- Update check of column density.
- Added checks of Curtis-Godson pressure.
- Update examples.
- Added LD_LIBRARY_PATH to tests.
- Update table interpolation functions.
Atmosphere - Radiative Transfer
- C
Published by lars2015 8 months ago
Juelich Rapid Spectral Simulation Code - v1.13
Changes in this version:
- Update user manual.
- Update docs.yml.
- Update README.
- Added link to AI documentation.
- Added DIRLIST option to kernel tool.
- Changed Makefile default to dynamic linking.
- Added code of conduct and contributing guidelines.
- Update codecov.yml
Atmosphere - Radiative Transfer
- C
Published by lars2015 about 1 year ago
Juelich Rapid Spectral Simulation Code - v1.12
- Update documentation.
- Modified compile flags for coverage testing.
- Update to GSL v2.7.1.
- Converted brightness(), planck(), and refractivity() into macros.
- Update loop variables.
- Added const qualifiers.
- Added DEG2RAD and RAD2DEG macros.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 1 year ago
Juelich Rapid Spectral Simulation Code - v1.11
- Removed calls to GSL macros and functions.
- Fix for MATHJAX.
- Update doxygen documentation.
- Fixed some issues with coding style.
- Update docs.yml
- Update tests.yml
- Update codecov.yml
- Update Makefile.
- Added constants to restrict column density and emissivity ranges.
- Update reference list.
- Update of test cases and examples.
- Modified logarithmic interpolation scheme.
- Modified look-up table interpolation for CGA method.
- Revised extrapolation of emissivity.
- Revised log messages.
- Enable redefinition of constants.
- Update README.
- Fixed test case plots.
- Fix of nadir test data.
- Added calculation of kernel functions for nadir test case.
- Added calculation of kernel function to limb test case.
- Fix for reading RFM spectra.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 1 year ago
Juelich Rapid Spectral Simulation Code - v1.10
- Added CGA to forward model.
- Extended size of filter functions.
- Added log messages for look-up tables.
- Fix log messages.
- Update mkdocs.yml.
- Update references.
- Update Doxyfile.
- Update codecov action.
- Update documentation.
- Update README.
- Added logo.
Atmosphere - Radiative Transfer
- C
Published by lars2015 about 2 years ago
Juelich Rapid Spectral Simulation Code - v1.9
- Update README.md
- Added wrapper to JURASSIC-UNIFIED library.
- Fixed bug in array dimensions.
- Added test for code coverage.
- Update Makefile.
- Added citation file.
- Added cppcheck. Minor fixes.
- Added Codacy badge
- Modified vertical raytracing step size.
- Added new plots for test cases.
- Added RFM interface.
- Modified los struct.
Atmosphere - Radiative Transfer
- C
Published by lars2015 about 2 years ago
Juelich Rapid Spectral Simulation Code - v1.8
- Added code to estimate sensitivity on raytracing step size.
- Modified look-up tables for brightness temperature.
- Modified tbl_t data struct.
- Added los_t data struct.
- Modified runtime measurements in formod.
- Added output of git version.
- Code cleaning.
- Modified locate_reg().
- Added specular reflection at the surface.
- Revised interpolation method for look-up tables.
- Revised calculation of source function table.
- Added control parameters for cloud and surface data to climatology tool.
- Added retrieval control parameters for surface data.
- Added surface parameters to retrieval code.
- Revised invert tool.
- Implemented macros for log messages.
- Definition of arrays sizes at compile time. Revised Makefile.
- Revised brightness and planck tools to write table data.
- Different file names for ASCII and binary tables.
- Update to GSL v2.7.
- Added Gaussian filter function.
- Added tool to create look-up tables from absorption spectra.
- Added tool to create radiometric filter functions.
- Added code for look-up tables in binary format.
- Added cloud retrieval parameters.
- Added non-scattering cloud layer.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 4 years ago
Juelich Rapid Spectral Simulation Code - v1.7
- Update README.
- Modified checks of look-up tables.
- Added tool obs2spec to write radiance spectra.
- Update Doxyfile and Makefile.
- Update and rename test_case.yml to testcase.yml
- Added github actions.
- Added invert tool for MPTRAC.
- Update to gsl-2.6.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 4 years ago
Juelich Rapid Spectral Simulation Code - v1.6
- Added output of multiple profiles to limb and nadir tools.
- Revised examples.
- Update reference manual.
- Added constant for standard scale height.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 5 years ago
Juelich Rapid Spectral Simulation Code - v1.5
- Update documentation.
- Added locate function for regular grids.
- Replaced some GSL macros.
- Revised hydrostatic code.
- Update timer code.
- Fix of array sizes in jurassic.c.
- Update of GSL library.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 5 years ago
Juelich Rapid Spectral Simulation Code - v1.4
- Added summary data to raytrace tool.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 5 years ago
Juelich Rapid Spectral Simulation Code - v1.3
- Simplified continua code.
- Added directory for libraries.
- Revised directory structure.
- Use OpenMP to read table data in parallel.
- Reduced maximum number of ray paths and air parcels.
- Added option to calculate multiple profiles.
- Removed 2-D interpolation scheme and CGA method.
- Removed Lagrangian interpolation and RFM interface.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 5 years ago
Juelich Rapid Spectral Simulation Code - v1.2
- Improved extrapolation for look-up tables.
- Fixed ERRMSG and TIMER macros.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 5 years ago
Juelich Rapid Spectral Simulation Code - v1.1
- Update matrix output.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 5 years ago
Juelich Rapid Spectral Simulation Code - v1.0
- Initial version.
Atmosphere - Radiative Transfer
- C
Published by lars2015 over 5 years ago