Last modified: December 2023

AHELP for CIAO 4.16 Sherpa


Context: plotting


Return the data displayed by plot_photon_flux.


get_photon_flux_hist(lo=None, hi=None, id=None, num=7500, bins=75,
correlated=False, numcores=None, bkg_id=None, scales=None, model=None,
otherids=(), recalc=True, clip='hard')

lo - number, optional
hi - optional
id - int or string, optional
num - int, optional
bins - int, optional
correlated - bool, optional
numcores - optional
bkg_id - int or string, optional
scales - array, optional
model - model, optional
otherids - sequence of integer and string ids, optional
recalc - bool, optional
clip - {'hard', 'soft', 'none'}, optional


The get_photon_flux_hist() function calculates a histogram of simulated photon flux values representing the photon flux probability distribution for a model component, accounting for the errors on the model parameters.


Example 1

Get the photon flux distribution for the range 0.5 to 7 for the default data set:

>>> phist = get_photon_flux_hist(0.5, 7, num=1000)
>>> print(phist)

Example 2

Compare the 0.5 to 2 photon flux distribution from the "core" data set to the values from the "jet" data set:

>>> phist1 = get_photon_flux_hist(0.5, 2, id='jet', num=1000)
>>> phist2 = get_photon_flux_hist(0.5, 2, id='core', num=1000)

Example 3

Compare the flux distribution for the full source expression (aflux) to that for just the pl component (uflux); this can be useful to calculate the unabsorbed flux distribution if the full source model contains an absorption component:

>>> aflux = get_photon_flux_hist(0.5, 2, num=1000, bins=20)
>>> uflux = get_photon_flux_hist(0.5, 2, model=pl, num=1000, bins=20)

Example 4

When there are multiple datasets loaded, `get_photon_flux_hist` uses all datasets to evaluate the errors when the `id` parameter is left at its default value of `None` . The `otherids` parameter is used, along with `id` , to specify exactly what datasets are used:

>>> x = get_photon_flux_hist(2, 10, num=1000, bins=20, model=src)
>>> y = get_photon_flux_hist(2, 10, num=1000, bins=20, model=src,
...                          id=1, otherids=(2, 3, 4))


The parameters for this function are:

Parameter Definition
lo The lower limit to use when summing up the signal. If not given then the lower value of the data grid is used.
hi The upper limit to use when summing up the signal. If not given then the upper value of the data grid is used.
id The identifier of the data set to use. If `None` , the default value, then all datasets with associated models are used to calculate the errors and the model evaluation is done using the default dataset.
num The number of samples to create. The default is 7500.
bins The number of bins to use for the histogram.
correlated If True (the default is False ) then scales is the full covariance matrix, otherwise it is just a 1D array containing the variances of the parameters (the diagonal elements of the covariance matrix).
numcores The number of CPU cores to use. The default is to use all the cores on the machine.
bkg_id The identifier of the background component to use. This should only be set when the line to be measured is in the background model.
scales The scales used to define the normal distributions for the parameters. The size and shape of the array depends on the number of free parameters in the fit (n) and the value of the `correlated` parameter. When the parameter is `True` , scales must be given the covariance matrix for the free parameters (a n by n matrix that matches the parameter ordering used by Sherpa). For un-correlated parameters the covariance matrix can be used, or a one-dimensional array of n elements can be used, giving the width (specified as the sigma value of a normal distribution) for each parameter (e.g. the square root of the diagonal elements of the covariance matrix). If the scales parameter is not given then the covariance matrix is evaluated for the current model and best-fit parameters.
model The model to integrate. If left as `None` then the source model for the dataset will be used. This can be used to calculate the unabsorbed flux, as shown in the examples. The model must be part of the source expression.
otherids The list of other datasets that should be included when calculating the errors to draw values from.
recalc If True , the default, then re-calculate the values rather than use the values from the last time the function was run.
clip What clipping strategy should be applied to the sampled parameters. The default ('hard') is to fix values at their hard limits if they exceed them. A value of 'soft' uses the soft limits instead, and 'none' applies no clipping.

Return value

The return value from this function is:

hist -- An object representing the data used to create the plot by `plot_photon_flux` .

Changes in CIAO

Changed in CIAO 4.13

The scales parameter is no longer ignored when set and the model and otherids parameters have been added.


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

See Also

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_fit_resid, prof_model, prof_resid, prof_source
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
normal_sample, t_sample, uniform_sample
get_cdf_plot, get_energy_flux_hist, get_pdf_plot, 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
get_chisqr_plot, get_delchi_plot
sample_energy_flux, sample_flux, sample_photon_flux