Repository navigation
Releases: maahn/pyOptimalEstimation
Release list
Version 1.4
Bug fixes and CI/docs updates.
Fixes:
- chiSquareTest() and linearityTest() no longer crash with an AttributeError when the retrieval did not converge; they now return the documented NaN/False result instead.
- The deprecated
disturbancekeyword now raises an error pointing toperturbationinstead of being silently discarded. - getJacobian()/getJacobian_external() no longer silently misapply a user-supplied
perturbationdict when its key order differs from x_vars+b_vars. - chiSquareTest() and linearityTest() now use a numerically stable, version-independent eigendecomposition, fixing chi2/linearity results that could previously vary between numpy/scipy versions.
- plotIterations() no longer swallows unrelated errors and fixes an off-by-one in the marked best-iteration index.
Other:
- Tested with Python 3.10-3.14 (CI matrix updated).
- Documentation no longer references Python 2.7; install instructions updated to
python -m pip install ..
Version 1.3
Minor fix to ensure pyOptimalEstimation works with numpy >= 1.24
Version 1.2
Contribution by @deweatherman for computing the Jacobian in a more efficient way. The code applies automatically the selected scheme with the following priority:
userJacobian (if userJacobian function is provided) -> multipleProfiles Jacobian (if multipleForwardKwArgs is provided) -> normal way to estimate the Jacobian iteratively (if none of the new inputs is provided)
The two new capabilities are:
multipleForwardKwArgs: Use the capability of most forward models to simulate several input profiles at the same time: so instead of looping through the perturbed profiles, the forward model is called once for all the perturbed profiles; this simply uses any under the hood optimisations of the forward solver. Requires arguments to set up the forward model for multiple profiles (we call them multipleForwardKwArgs)
userJacobian: If the user has its own function to compute Jacobians in a better way, they can provide it in the same way as for the forward model. This exploits the fact that most forward models include efficient ways to compute Jacobians using the same internal data structures as the forward model. Requires the function definition (e.g. similar to the forward function definition, we call it userJacobian)
Version 1.1
- Added new option
convergenceTestto determine whether convergence test should be done in x or y space. Optionsx,y, orauto(use space of smaller dimension). Defaultx, because experience shows that the retrieval converges faster without a notable change in the quality of the solution. - Added tests ensuring that covariance matrices are symmetric
- Bugfix in the convergence test in x-space