Last modified: June 2019

URL: https://cxc.cfa.harvard.edu/sherpa/ahelp/prof_fit_resid.html
Jump to: Description · Examples · Bugs · See Also


AHELP for CIAO 4.16 Sherpa

prof_fit_resid

Context: contrib

Synopsis

Plot a radial or elliptical profile of the fit (data and model) and residuals (data-model) to imaging data.

Syntax

prof_fit_resid( [id], [model=None, rstep=None, rmin=None, rmax=None,
rlo=None, rhi=None, xpos=None, ypos=None, ellip=None, theta=None,
group_counts=None, group_snr=None, label=True, recalc=True] )

Description

The prof_fit_resid command calculates the radial - or elliptical - profile of the imaging data, model, and residual (data-model), and plots them. It is a combination of the plot_fit() and plot_resid() commands, where the residuals appear in a separate plot below the fit values. The profile is defined by the existing model compenents, although it is possible to over-ride these values.

The residual values are calculated as

data - model

The prof_fit_delchi() command can be used if you want to plot

(data - model) / error

Loading the routine

The routine can be loaded into Sherpa by saying:

from sherpa_contrib.profiles import *

Argument options

The argument options are the same as for the prof_data() command, except for the overplot command which is not supported, and are described in the ahelp page for prof_data().

Changing the plot defaults

The plot created by prof_fit_resid() is controlled by the data, model, and resid preferences - i.e. the values returned by get_data_prof_prefs(), get_model_prof_prefs(), and get_resid_prof_prefs(). Changing these settings will therefore change the appearance of any new plots created by prof_fit_resid(). For example

sherpa> get_data_prof_prefs()["xlog"] = True
sherpa> get_model_prof_prefs()["linecolor"] = "green"
sherpa> get_resid_prof_prefs()["errstyle"] = "capped"

will cause any new fit plots to use logarithmic scaling for the X axis, draw the model using a green line, and use the capped style for drawing the error bars in the residual plot. See the ahelp files for get_data_prof_prefs, get_model_prof_prefs, and get_resid_prof_prefs for the available preference settings.


Examples

Example 1

sherpa> prof_fit_resid()
sherpa> get_data_prof_prefs()["ylog"] = True
sherpa> get_resid_prof_prefs()["xlog"] = True
sherpa> prof_fit_resid()

The plots are created, first with the default settings and then after setting the the Y and X axes to log scaling.

Example 2

sherpa> prof_fit_resid(group_snr=15)

The data is plotted after the bins have been grouped so that each bin has a signal to noise ratio of 15 or more.

Example 3

sherpa> prof_fit_resid(rmin=10, rmax=100, rstep=5)

Calculate the profile in radial bins with low/high limits of 10-15, 15-20, 20-25, ..., 90-95, 95-100. If the group_counts or group_snr option was also given - e.g.

sherpa> prof_fit_resid(rmin=10, rmax=100, rstep=5, group_counts=100)

then the grouping would be applied to these bins.

Example 4

sherpa> prof_fit_resid(rlo=[0,10,20,40,60,100,200])

Calculate the profile in radial bins with low/high limits of 0-10, 10-20, 20-40, 40-60, 60-100, 100-200.

Example 5

sherpa> prof_fit_resid(rstep=[1,10,2,20,5,50,10])

The radii used for the radial bins depends on the radius as shown in the table below:

radius bin width
0 to 10 1
10 to 20 2
20 to 50 5
above 50 10

The minimum and maximum radii used are taken from the data.

Example 6

sherpa> load_image("img.fits")
sherpa> set_source(beta2d.clus + gauss2d.qso + const2d.bgnd)
sherpa> fit()
...
sherpa> prof_fit_resid(model=qso)
sherpa> thaw(clus.ellip)
sherpa> thaw(clus.theta)
sherpa> fit()
...
sherpa> prof_fit_resid(model=clus)

Since the model expression contains two components which have xpos, ypos, ellip, and theta parameters - namely clus and qso - the model argument is used to select the gauss2d (qso) values for the first plot and the beta2d (clus) values for the second plot.

If the clus model has a non-zero ellipticity then the second plot will have used elliptical annuli to calculate the profile. To use circular annuli in this case we can manually override the model's ellipticity parameter by saying:

sherpa> prof_fit_resid(model=clus, ellip=0)

Bugs

See the bugs pages on the Sherpa website for an up-to-date listing of known bugs.

See Also

contrib
get_data_prof, get_data_prof_prefs, get_delchi_prof, get_delchi_prof_prefs, get_fit_prof, get_model_prof, get_model_prof_prefs, get_resid_prof, get_resid_prof_prefs, get_source_prof, get_source_prof_prefs, plot_chart_spectrum, plot_marx_spectrum, prof_data, prof_delchi, prof_fit, prof_fit_delchi, prof_model, prof_resid, prof_source, sherpa_profiles
data
get_arf_plot, get_bkg_chisqr_plot, get_bkg_delchi_plot, get_bkg_fit_plot, get_bkg_model_plot, get_bkg_plot, get_bkg_ratio_plot, get_bkg_resid_plot, get_bkg_source_plot
modeling
normal_sample, t_sample, uniform_sample
plotting
get_cdf_plot, get_energy_flux_hist, get_pdf_plot, get_photon_flux_hist, get_pvalue_plot, get_pvalue_results, get_split_plot, plot, plot_arf, plot_bkg, plot_bkg_chisqr, plot_bkg_delchi, plot_bkg_fit, plot_bkg_fit_delchi, plot_bkg_fit_resid, plot_bkg_model, plot_bkg_ratio, plot_bkg_resid, plot_bkg_source, plot_cdf, plot_chisqr, plot_data, plot_delchi, plot_energy_flux, plot_fit, plot_fit_delchi, plot_fit_resid, plot_model, plot_model_component, plot_order, plot_pdf, plot_photon_flux, plot_pvalue, plot_ratio, plot_resid, plot_scatter, plot_source, plot_source_component, plot_trace, set_xlinear, set_xlog, set_ylinear, set_ylog
psfs
plot_kernel
statistics
get_chisqr_plot, get_delchi_plot
visualization
contour_resid