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
True
to use the values calculated by the last call toint_proj
. The default isFalse
.fast (bool, optional) – If
True
then 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
None
means that the limit is calculated from the covariance, using thefac
value.max (pair of number, optional) – The maximum parameter value for the calculation. The default value of
None
means that the limit is calculated from the covariance, using thefac
value.nloop (pair of int, optional) – The number of steps to use. This is used when
delv
is set toNone
.delv (pair of number, optional) – The step size for the parameter. Setting this overrides the
nloop
parameter. The default isNone
.fac (number, optional) – When
min
ormax
is 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
sigma
parameter, 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
True
then add the data to an existing plot, otherwise create a new plot. The default isFalse
.
See also
conf
Estimate parameter confidence intervals using the confidence method.
covar
Estimate the confidence intervals using the covariance method.
get_reg_proj
Return the interval-projection object.
int_proj
Calculate and plot the fit statistic versus fit parameter value.
reg_unc
Plot the statistic value as two parameters are varied.
Notes
The difference to
reg_unc
is 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
xpos
andypos
parameters of thegsrc
model 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
ampl
parameters of theg
andb
model 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'])