.. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_examples_documentation_fitting_withreport.py: doc_fitting_withreport.py ========================= .. rst-class:: sphx-glr-script-out Out: .. code-block:: none [[Fit Statistics]] # fitting method = leastsq # function evals = 83 # data points = 1001 # variables = 4 chi-square = 498.811759 reduced chi-square = 0.50031270 Akaike info crit = -689.222517 Bayesian info crit = -669.587497 [[Variables]] amp: 13.9121945 +/- 0.14120288 (1.01%) (init = 13) period: 5.48507045 +/- 0.02666492 (0.49%) (init = 2) shift: 0.16203677 +/- 0.01405661 (8.67%) (init = 0) decay: 0.03264538 +/- 3.8014e-04 (1.16%) (init = 0.02) [[Correlations]] (unreported correlations are < 0.100) C(period, shift) = 0.797 C(amp, decay) = 0.582 C(amp, shift) = -0.297 C(amp, period) = -0.243 C(shift, decay) = -0.182 C(period, decay) = -0.150 | .. code-block:: default ## import warnings warnings.filterwarnings("ignore") ## # from numpy import exp, linspace, pi, random, sign, sin from lmfit import Parameters, fit_report, minimize p_true = Parameters() p_true.add('amp', value=14.0) p_true.add('period', value=5.46) p_true.add('shift', value=0.123) p_true.add('decay', value=0.032) def residual(pars, x, data=None): """Model a decaying sine wave and subtract data.""" vals = pars.valuesdict() amp = vals['amp'] per = vals['period'] shift = vals['shift'] decay = vals['decay'] if abs(shift) > pi/2: shift = shift - sign(shift)*pi model = amp * sin(shift + x/per) * exp(-x*x*decay*decay) if data is None: return model return model - data random.seed(0) x = linspace(0.0, 250., 1001) noise = random.normal(scale=0.7215, size=x.size) data = residual(p_true, x) + noise fit_params = Parameters() fit_params.add('amp', value=13.0) fit_params.add('period', value=2) fit_params.add('shift', value=0.0) fit_params.add('decay', value=0.02) out = minimize(residual, fit_params, args=(x,), kws={'data': data}) print(fit_report(out)) # .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 0.025 seconds) .. _sphx_glr_download_examples_documentation_fitting_withreport.py: .. only :: html .. container:: sphx-glr-footer :class: sphx-glr-footer-example .. container:: sphx-glr-download :download:`Download Python source code: fitting_withreport.py ` .. container:: sphx-glr-download :download:`Download Jupyter notebook: fitting_withreport.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_