simulfit
- sherpa.astro.ui.simulfit(id: IdType | None = None, *otherids: IdType, **kwargs) None
Fit a model to one or more data sets.
Use forward fitting to find the best-fit model to one or more data sets, given the chosen statistic and optimization method. The fit proceeds until the results converge or the number of iterations exceeds the maximum value (these values can be changed with
set_method_opt
). An iterative scheme can be added usingset_iter_method
to try and improve the fit. The final fit results are displayed to the screen and can be retrieved withget_fit_results
.Changed in version 4.17.0: The outfile parameter can now be sent a Path object or a file handle instead of a string.
- Parameters:
id (int or str, optional) – The data set that provides the data. If not given then all data sets with an associated model are fit simultaneously.
*otherids (int or str, optional) – Other data sets to use in the calculation.
outfile (str, Path, IO object, or None, optional) – If set, then the fit results will be written to a file with this name. The file contains the per-iteration fit results.
clobber (bool, optional) – This flag controls whether an existing file can be overwritten (
True
) or if it raises an exception (False
, the default setting). This is only used ifoutfile
is set to a string or Path object.
- Raises:
sherpa.utils.err.FitErr – If
filename
already exists andclobber
isFalse
.
See also
conf
Estimate parameter confidence intervals using the confidence method.
contour_fit
Contour the fit to a data set.
covar
Estimate the confidence intervals using the confidence method.
freeze
Fix model parameters so they are not changed by a fit.
get_fit_results
Return the results of the last fit.
plot_fit
Plot the fit results (data, model) for a data set.
image_fit
Display the data, model, and residuals for a data set in the image viewer.
set_stat
Set the statistical method.
set_method
Change the optimization method.
set_method_opt
Change an option of the current optimization method.
set_full_model
Define the convolved model expression for a data set.
set_iter_method
Set the iterative-fitting scheme used in the fit.
set_model
Set the model expression for a data set.
show_fit
Summarize the fit results.
thaw
Allow model parameters to be varied during a fit.
Notes
If outfile is sent a file handle then it is not closed by this routine.
Examples
Simultaneously fit all data sets with models and then store the results in the variable fres:
>>> fit() >>> fres = get_fit_results()
Fit just the data set ‘img’:
>>> fit('img')
Simultaneously fit data sets 1, 2, and 3:
>>> fit(1, 2, 3)
Fit data set ‘jet’ and write the fit results to the text file ‘jet.fit’, over-writing it if it already exists:
>>> fit('jet', outfile='jet.fit', clobber=True)
Store the per-iteration values in a StringIO object and extract the data into the variable txt (this avoids the need to create a file):
>>> from io import StringIO >>> out = StringIO() >>> fit(outfile=out) >>> txt = out.getvalue()