reg_proj
- sherpa.astro.ui.reg_proj(par0, par1, id: IdType | None = None, otherids: Sequence[IdType] | None = None, replot=False, fast=True, min=None, max=None, nloop=(10, 10), delv=None, fac=4, log=(False, False), sigma=(1, 2, 3), levels=None, numcores=None, overplot=False) None
Plot the statistic value as two parameters are varied.
Create a confidence plot of the fit statistic as a function of parameter value. Dashed lines are added to indicate the current statistic value and the parameter value at this point. The parameter value is varied over a grid of points and the free parameters re-fit. It is expected that this is run after a successful fit, so that the parameter values are at the best-fit location.
- Parameters:
par0 – The parameters to plot on the X and Y axes, respectively.
par1 – The parameters to plot on the X and Y axes, respectively.
id (int, str, or None, optional) – The data set that provides the data. If not given then all data sets with an associated model are used simultaneously.
otherids (sequence of int or str, or None, optional) – Other data sets to use in the calculation.
replot (bool, optional) – Set to
Trueto use the values calculated by the last call toint_proj. The default isFalse.fast (bool, optional) – If
Truethen the fit optimization used may be changed from the current setting (only for the error analysis) to use a faster optimization method. The default isFalse.min (pair of numbers, optional) – The minimum parameter value for the calculation. The default value of
Nonemeans that the limit is calculated from the covariance, using thefacvalue.max (pair of number, optional) – The maximum parameter value for the calculation. The default value of
Nonemeans that the limit is calculated from the covariance, using thefacvalue.nloop (pair of int, optional) – The number of steps to use. This is used when
delvis set toNone.delv (pair of number, optional) – The step size for the parameter. Setting this overrides the
nloopparameter. The default isNone.fac (number, optional) – When
minormaxis not given, multiply the covariance of the parameter by this value to calculate the limit (which is then added or subtracted to the parameter value, as required).log (pair of bool, optional) – Should the step size be logarithmically spaced? The default (
False) is to use a linear grid.sigma (sequence of number, optional) – The levels at which to draw the contours. The units are the change in significance relative to the starting value, in units of sigma.
levels (sequence of number, optional) – The numeric values at which to draw the contours. This overrides the
sigmaparameter, if set (the default isNone).numcores (optional) – The number of CPU cores to use. The default is to use all the cores on the machine.
overplot (bool, optional) – If
Truethen add the data to an existing plot, otherwise create a new plot. The default isFalse.
See also
confEstimate parameter confidence intervals using the confidence method.
covarEstimate the confidence intervals using the covariance method.
get_reg_projReturn the interval-projection object.
int_projCalculate and plot the fit statistic versus fit parameter value.
reg_uncPlot the statistic value as two parameters are varied.
Notes
The difference to
reg_uncis that at each step, a fit is made to the remaining thawed parameters in the source model. This makes the result a more-accurate rendering of the projected shape of the hypersurface formed by the statistic, but the run-time is longer than, the results ofreg_unc, which does not vary any other parameter. If there are no free parameters in the model, other than the parameters being plotted, then the results will be the same.Examples
Vary the
xposandyposparameters of thegsrcmodel component for all data sets with a source expression.>>> reg_proj(gsrc.xpos, gsrc.ypos)
Use only the data in data set 1:
>>> reg_proj(gsrc.xpos, gsrc.ypos, id=1)
Only display the one- and three-sigma contours:
>>> reg_proj(gsrc.xpos, gsrc.ypos, sigma=(1, 3))
Display contours at values of 5, 10, and 20 more than the statistic value of the source model for data set 1:
>>> s0 = calc_stat(id=1) >>> lvls = s0 + np.asarray([5, 10, 20]) >>> reg_proj(gsrc.xpos, gsrc.ypos, levels=lvls, id=1)
Increase the limits of the plot and the number of steps along each axis:
>>> reg_proj(gsrc.xpos, gsrc.ypos, id=1, fac=6, nloop=(41, 41))
Compare the
amplparameters of thegandbmodel components, for data sets ‘core’ and ‘jet’, over the given ranges:>>> reg_proj(g.ampl, b.ampl, min=(0, 1e-4), max=(0.2, 5e-4), ... nloop=(51, 51), id='core', otherids=['jet'])