nu_coincidence.populations.aux_samplers module

class nu_coincidence.populations.aux_samplers.CombinedFluxIndexSampler

Bases: AuxiliarySampler

Make a transformed parameter to perform a combined linear selection on energy flux and spectral index.

Selection has the form: index = slope log10(flux) + intercept

So, here we transform to: -(index - slope log10(flux)) such that a constant selection can be made on -intercept. This works with both LowerBound and SoftSelection

See e.g. Fig. 4 in Ajello et al. 2020 (4LAC), default values are set to approximate this.

slope
true_sampler(size)
class nu_coincidence.populations.aux_samplers.FlareAmplitudeAuxSampler(name='flare_amplitudes', observed=False)

Bases: AuxiliarySampler

Sample increase in luminosity of the flares as a multiplicative factor.

alpha
true_sampler(size)
xmin
class nu_coincidence.populations.aux_samplers.FlareDurationAuxSampler(name='flare_durations', observed=False)

Bases: AuxiliarySampler

Sample flare durations given flare times.

alpha
true_sampler(size)
class nu_coincidence.populations.aux_samplers.FlareRateAuxSampler(name='flare_rate', observed=False)

Bases: PowerLawAuxSampler

Sample source flare rate given its variability.

true_sampler(size)
class nu_coincidence.populations.aux_samplers.FlareTimeAuxSampler(name='flare_times', observed=False)

Bases: AuxiliarySampler

Sample flare times for each source give rate and total number of flares.

obs_time
true_sampler(size)
class nu_coincidence.populations.aux_samplers.FluxSampler

Bases: AuxiliarySampler

Sample observed fluxes based on the latent fluxes.

This is equivalent to defining flux_sigma in PopulationSynth.draw_survey(), but also allows to define more complicated selections on the observed flux, such as the CombinedFluxIndexSelection.

observation_sampler(size)
sigma
true_sampler(size)
class nu_coincidence.populations.aux_samplers.SpectralIndexAuxSampler(name='spectral_index', observed=True)

Bases: NormalAuxSampler

Sample the spectral index of a source with a simple power law spectrum.

class nu_coincidence.populations.aux_samplers.VariabilityAuxSampler(name='variability', observed=False)

Bases: AuxiliarySampler

Sample whether a source is variable or not. Boolean outcome.

true_sampler(size)
weight