Hopefully a new maintainer is willing to continue his legacy: Reinhold Bader (1966 - 2024)
I noticed that Reinhold already prepared a 2.0.0 release (GitHub - reinh-bader/fgsl at fgsl_devel_2.0.0), but never got the chance to merge it.
Changes in 2.0.0:
~~~~~~~~~~~~~~~~~
This release restructures the source code by providing multiple
modules, which individually are easier to read, understand, and
maintain. The organization is mostly analogous to the C source code,
i.e., a Fortran module fgsl_interp exists in analogy to the
C header gsl_interp.h. This rule is only ignored in cases of name
collisions. All fgsl_*.?90 files are placed in the
modules folder. For modules that need additional C glue code,
an appropriately named file fgsl_*_c.c exists in the csub folder.
The release also introduces support for gsl 2.8.
Here an overview of the relevant additions:
1. fgsl_complex_math: the legacy complex type has been removed;
interface added: fgsl_complex_polar
2. mappings of the gsl_linalg routines
- gsl_linalg_sv_{solve2, lssolve}
- gsl_linalg_qr_lssolvem_r, gsl_linalg_complex_qr_lssolvem_r
- gsl_linalg_complex_qr_qhmat_r
- gsl_linalg_qr_ud_lssvx,
- gsl_linalg_qr_ur_{lssolve, lssvx, qtvec}
- gsl_linalg_complex_cholesky_{scale, scale_apply, decomp2,
svx2, solve2}
3. mapping of gsl_rstat_norm
4. mappings for Lebedev integration (unit sphere)
5. removed gsl_bspline_eval_nonzero, gsl_bspline_deriv_eval_nonzero
since these do not appear in gsl_bspline.h any more; other
deprecated calls are appropriately marked
6. new mappings from gsl_bspline.h, including the nine example
programs
7. mappings to gsl_linalg_LU_band* from gsl_linalg.h added;
includes limited and non-portable (!) support for gsl_vector_uint
8. Reworked statistics, added TSS functions
Fixes:
- the examples now all use the standard output unit for writes to stdout;
newunit= is used for dynamically creating unit values otherwise.
- unit testing now returns exit status 1 on error, assuring that
failures are signalled.