Path to this page:
Subject: CVS commit: pkgsrc/math/py-lmfit
From: Adam Ciarcinski
Date: 2021-11-07 12:58:47
Message id: 20211107115848.12E5EFAEC@cvs.NetBSD.org
Log Message:
py-lmfit: updated to 1.0.3
Version 1.0.3 Release Notes (October 14, 2021)
==============================================
Potentially breaking change:
- argument ``x`` is now required for the ``guess`` method of Models
To get reasonable estimates for starting values one should always supply both \
``x`` and ``y`` values; in some cases it would work
when only providing ``data`` (i.e., y-values). With the change above, ``x`` is \
now required in the ``guess`` method call, so scripts might
need to be updated to explicitly supply ``x``.
Bug fixes/enhancements:
- do not overwrite user-specified figure titles in Model.plot() functions and \
allow setting with ``title`` keyword argument
- preserve Parameters subclass in deepcopy
- coerce ``data`` and ``indepdent_vars`` to NumPy array with ``dtype=float64`` \
or ``dtype=complex128`` where applicable
- fix collision between parameter names in built-in models and user-specified \
parameters
- correct error message in PolynomialModel
- improved handling of altered JSON data
- map ``max_nfev`` to ``maxiter`` when using ``differential_evolution``
- correct use of noise versus experimental uncertainty in the documentation
- specify return type of ``eval`` method more precisely and allow for plotting \
of (Complex)ConstantModel by coercing their
``float``, ``int``, or ``complex`` return value to a ``numpy.ndarray``
- fix ``dho`` (Damped Harmonic Oscillator) lineshape
- reset ``Minimizer._abort`` to ``False`` before starting a new fit
- fix typo in ``guess_from_peak2d``
Various:
- update asteval dependency to >= 0.9.22 to avoid DeprecationWarnings from \
NumPy v1.20.0
- remove incorrectly spelled ``DonaichModel`` and ``donaich`` lineshape, \
deprecated in version 1.0.1
- remove occurrences of OrderedDict throughout the code; dict is \
order-preserving since Python 3.6
- update the contributing instructions
- (again) defer import of matplotlib to when it is needed
- fix description of ``name`` argument in ``Parameters.add``
- update dependencies, make sure a functional development environment is \
installed on Windows
- use ``setuptools_scm`` for version info instead of ``versioneer``
- transition to using ``f-strings``
- mark ``test_manypeaks_speed.py`` as flaky to avoid intermittent test failures
- update scipy dependency to >= 1.14.0
- improvement to output of examples in sphinx-gallery and use higher resolution \
figures
- remove deprecated functions ``lmfit.printfuncs.report_errors`` and ``asteval`` \
argument in ``Parameters`` class
.. _whatsnew_102_label:
Version 1.0.2 Release Notes (February 7, 2021)
==============================================
Version 1.0.2 officially supports Python 3.9 and has dropped support for Python \
3.5. The minimum version
of the following dependencies were updated: asteval>=0.9.21, numpy>=1.18, \
and scipy>=1.3.
New features:
- added two-dimensional Gaussian lineshape and model
- all built-in models are now registered in ``lmfit.models.lmfit_models``; new \
Model class attribute ``valid_forms``
- added a SineModel
- add the ``run_mcmc_kwargs argument`` to ``Minimizer.emcee`` to pass to the \
``emcee.EnsembleSampler.run_mcmc`` function
Bug fixes:
- ``ModelResult.eval_uncertainty`` should use provided Parameters
- center in lognormal model can be negative
- restore best-fit values after calculation of covariance matrix
- add helper-function ``not_zero`` to prevent ZeroDivisionError in lineshapes \
and use in exponential lineshape
- save ``last_internal_values`` and use to restore internal values if fit is aborted
- dumping a fit using the ``lbfgsb`` method now works, convert bytes to string \
if needed
- fix use of callable Jacobian for scalar methods
- preserve float/int types when encoding for JSON
- better support for saving/loading of ExpressionModels and assure that \
``init_params`` and ``init_fit`` are set when loading a ``ModelResult``
Various:
- update minimum dependencies
- improvements in coding style, docstrings, CI, and test coverage
- fix typo in Oscillator
- add example using SymPy
- allow better custom pool for emcee()
- update NIST Strd reference functions and tests
- make building of documentation cross-platform
- relax module name check in ``test_check_ast_errors`` for Python 3.9
- fix/update layout of documentation, now uses the sphinx13 theme
- fixed DeprecationWarnings reported by NumPy v1.2.0
- increase value of ``tiny`` and check for it in bounded parameters to avoid \
"parameter not moving from initial value"
- add ``max_nfev`` to ``basinhopping`` and ``brute`` (now supported everywhere \
in lmfit) and set to more uniform default values
- use Azure Pipelines for CI, drop Travis
Files: