appletree.plugins package

Submodules

appletree.plugins.common module

class appletree.plugins.common.FixedEnergySpectra(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['batch_size']
provides: List[str] = ['energy']
simulate(key, parameters, batch_size)[source]
takes_config = immutabledict({'energy_spectrum': <appletree.config.Map object>})
class appletree.plugins.common.MonoEnergySpectra(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['batch_size']
provides: List[str] = ['energy']
simulate(key, parameters, batch_size)[source]
takes_config = immutabledict({'mono_energy': <appletree.config.Constant object>})
class appletree.plugins.common.PositionSpectra(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['batch_size']
provides: List[str] = ['x', 'y', 'z']
simulate(key, parameters, batch_size)[source]
takes_config = immutabledict({'z_min': <appletree.config.Constant object>, 'z_max': <appletree.config.Constant object>, 'r_max': <appletree.config.Constant object>})
class appletree.plugins.common.UniformEnergySpectra(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['batch_size']
provides: List[str] = ['energy']
simulate(key, parameters, batch_size)[source]
takes_config = immutabledict({'lower_energy': <appletree.config.Constant object>, 'upper_energy': <appletree.config.Constant object>})

appletree.plugins.detector module

class appletree.plugins.detector.DriftLoss(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['z']
parameters: Tuple = ('drift_velocity', 'elife_sigma')
provides: List[str] = ['drift_survive_prob']
simulate(key, parameters, z)[source]
takes_config = immutabledict({'elife': <appletree.config.Map object>})
class appletree.plugins.detector.ElectronDrifted(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_electron', 'drift_survive_prob']
provides: List[str] = ['num_electron_drifted']
simulate(key, parameters, num_electron, drift_survive_prob)[source]
class appletree.plugins.detector.PhotonDetection(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_photon', 's1_lce']
parameters: Tuple = ('g1', 'p_dpe')
provides: List[str] = ['num_s1_phd']
simulate(key, parameters, num_photon, s1_lce)[source]
class appletree.plugins.detector.S1LCE(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['x', 'y', 'z']
provides: List[str] = ['s1_lce']
simulate(key, parameters, x, y, z)[source]
takes_config = immutabledict({'s1_lce': <appletree.config.Map object>})
class appletree.plugins.detector.S1PE(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_s1_phd']
parameters: Tuple = ('p_dpe',)
provides: List[str] = ['num_s1_pe']
simulate(key, parameters, num_s1_phd)[source]
class appletree.plugins.detector.S2LCE(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['x', 'y']
provides: List[str] = ['s2_lce']
simulate(key, parameters, x, y)[source]
takes_config = immutabledict({'s2_lce': <appletree.config.Map object>})
class appletree.plugins.detector.S2PE(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_electron_drifted', 's2_lce', 'x', 'y']
parameters: Tuple = ('g2', 'gas_gain')
provides: List[str] = ['num_s2_pe']
simulate(key, parameters, num_electron_drifted, s2_lce, x, y)[source]
takes_config = immutabledict({'gas_gain_relative': <appletree.config.Map object>})

appletree.plugins.efficiency module

class appletree.plugins.efficiency.Eff(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['acc_s2_threshold', 'acc_s1_recon_eff', 'cut_acc_s1', 'cut_acc_s2']
provides: List[str] = ['eff']
simulate(key, parameters, acc_s2_threshold, acc_s1_recon_eff, cut_acc_s1, cut_acc_s2)[source]
class appletree.plugins.efficiency.S1CutAccept(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['s1_area']
provides: List[str] = ['cut_acc_s1']
simulate(key, parameters, s1_area)[source]
takes_config = immutabledict({'s1_cut_acc': <appletree.config.SigmaMap object>})
class appletree.plugins.efficiency.S1ReconEff(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_s1_phd']
provides: List[str] = ['acc_s1_recon_eff']
simulate(key, parameters, num_s1_phd)[source]
takes_config = immutabledict({'s1_eff_3f': <appletree.config.SigmaMap object>})
class appletree.plugins.efficiency.S2CutAccept(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['s2_area']
provides: List[str] = ['cut_acc_s2']
simulate(key, parameters, s2_area)[source]
takes_config = immutabledict({'s2_cut_acc': <appletree.config.SigmaMap object>})
class appletree.plugins.efficiency.S2Threshold(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['s2_area']
parameters: Tuple = ('s2_threshold',)
provides: List[str] = ['acc_s2_threshold']
simulate(key, parameters, s2_area)[source]

appletree.plugins.er_microphys module

class appletree.plugins.er_microphys.IonizationER(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_quanta']
parameters: Tuple = ('nex_ni_ratio',)
provides: List[str] = ['num_ion']
simulate(key, parameters, num_quanta)[source]
class appletree.plugins.er_microphys.Quanta(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy']
parameters: Tuple = ('w', 'fano')
provides: List[str] = ['num_quanta']
simulate(key, parameters, energy)[source]
class appletree.plugins.er_microphys.RecombFluct(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy']
parameters: Tuple = ('rf0', 'rf1')
provides: List[str] = ['recomb_std']
simulate(key, parameters, energy)[source]
class appletree.plugins.er_microphys.RecombinationER(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_quanta', 'num_ion', 'recomb']
provides: List[str] = ['num_photon', 'num_electron']
simulate(key, parameters, num_quanta, num_ion, recomb)[source]
class appletree.plugins.er_microphys.TrueRecombER(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['recomb_mean', 'recomb_std']
provides: List[str] = ['recomb']
simulate(key, parameters, recomb_mean, recomb_std)[source]
class appletree.plugins.er_microphys.mTI(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy']
parameters: Tuple = ('w', 'nex_ni_ratio', 'py0', 'py1', 'py2', 'py3', 'py4', 'field')
provides: List[str] = ['recomb_mean']
simulate(key, parameters, energy)[source]

appletree.plugins.lyqy module

class appletree.plugins.lyqy.ChargeYield(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy']
parameters: Tuple = ('t_qy',)
provides: List[str] = ['charge_yield']
simulate(key, parameters, energy)[source]
takes_config = immutabledict({'qy_median': <appletree.config.Map object>})
class appletree.plugins.lyqy.LightYield(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy']
parameters: Tuple = ('t_ly',)
provides: List[str] = ['light_yield']
simulate(key, parameters, energy)[source]
takes_config = immutabledict({'ly_median': <appletree.config.Map object>})
class appletree.plugins.lyqy.NumberElectron(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy', 'charge_yield']
provides: List[str] = ['num_electron']
simulate(key, parameters, energy, charge_yield)[source]
class appletree.plugins.lyqy.NumberPhoton(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy', 'light_yield']
provides: List[str] = ['num_photon']
simulate(key, parameters, energy, light_yield)[source]

appletree.plugins.nestv2 module

class appletree.plugins.nestv2.BandEnergiesClipEff(llh_name: Optional[str] = None)[source]

Bases: Plugin

For band-like yields constrain, we only need a placeholder here.

Because BandEnergySpectra has already selected energy for us.

depends_on: List[str] = ['energy']
provides: List[str] = ['eff']
simulate(key, parameters, energy)[source]
class appletree.plugins.nestv2.LyNR(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy', '_Nq', 'charge_yield']
parameters: Tuple = ('theta', 'iota')
provides: List[str] = ['light_yield']
simulate(key, parameters, energy, _Nq, charge_yield)[source]
class appletree.plugins.nestv2.MeanExcitonIon(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['ThomasImel', '_Nph', '_Ne']
provides: List[str] = ['_Nex', '_Ni', 'nex_ni_ratio', 'alf', 'elecFrac', 'recombProb']
simulate(key, parameters, ThomasImel, _Nph, _Ne)[source]
class appletree.plugins.nestv2.MeanNphNe(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['light_yield', 'charge_yield', 'energy']
provides: List[str] = ['_Nph', '_Ne']
simulate(key, parameters, light_yield, charge_yield, energy)[source]
class appletree.plugins.nestv2.MonoEnergiesClipEff(llh_name: Optional[str] = None)[source]

Bases: Plugin

For mono-energy-like yields constrain, we need to filter out the energies out of range.

The method is set their weights to 0.

depends_on: List[str] = ['energy_center']
provides: List[str] = ['eff']
simulate(key, parameters, energy_center)[source]
takes_config = immutabledict({'clip_lower_energy': <appletree.config.Constant object>, 'clip_upper_energy': <appletree.config.Constant object>})
class appletree.plugins.nestv2.MonoEnergiesSpectra(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['batch_size']
provides: List[str] = ['energy', 'energy_center']
simulate(key, parameters, batch_size)[source]
takes_config = immutabledict({'energy_twohalfnorm': <appletree.config.ConstantSet object>})
class appletree.plugins.nestv2.OmegaNR(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['elecFrac', 'recombProb', 'Ni']
parameters: Tuple = ('A', 'xi', 'omega')
provides: List[str] = ['omega', 'Variance']
simulate(key, parameters, elecFrac, recombProb, Ni)[source]
class appletree.plugins.nestv2.QyNR(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy', 'ThomasImel']
parameters: Tuple = ('epsilon', 'zeta', 'eta')
provides: List[str] = ['charge_yield']
simulate(key, parameters, energy, ThomasImel)[source]
class appletree.plugins.nestv2.ThomasImelBox(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy']
parameters: Tuple = ('gamma', 'delta', 'liquid_xe_density')
provides: List[str] = ['ThomasImel']
simulate(key, parameters, energy)[source]
takes_config = immutabledict({'literature_field': <appletree.config.Constant object>})
class appletree.plugins.nestv2.TotalQuanta(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['energy']
parameters: Tuple = ('alpha', 'beta')
provides: List[str] = ['_Nq']
simulate(key, parameters, energy)[source]
class appletree.plugins.nestv2.TrueExcitonIonNR(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['_Nph', '_Ne', 'nex_ni_ratio', 'alf']
parameters: Tuple = ('fano_ni', 'fano_nex')
provides: List[str] = ['Ni', 'Nex', 'Nq']
simulate(key, parameters, _Nph, _Ne, nex_ni_ratio, alf)[source]
class appletree.plugins.nestv2.TruePhotonElectronNR(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['recombProb', 'Variance', 'Ni', 'Nq']
parameters: Tuple = ('alpha2',)
provides: List[str] = ['num_photon', 'num_electron']
simulate(key, parameters, recombProb, Variance, Ni, Nq)[source]
class appletree.plugins.nestv2.UniformEnergiesSpectra(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['batch_size']
provides: List[str] = ['energy']
simulate(key, parameters, batch_size)[source]
takes_config = immutabledict({'clip_lower_energy': <appletree.config.Constant object>, 'clip_upper_energy': <appletree.config.Constant object>})

appletree.plugins.reconstruction module

class appletree.plugins.reconstruction.PositionRecon(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['x', 'y', 'z', 'num_electron_drifted']
provides: List[str] = ['rec_x', 'rec_y', 'rec_z', 'rec_r']
simulate(key, parameters, x, y, z, num_electron_drifted)[source]
takes_config = immutabledict({'posrec_reso': <appletree.config.Map object>})
class appletree.plugins.reconstruction.S1(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_s1_pe']
provides: List[str] = ['s1_area']
simulate(key, parameters, num_s1_pe)[source]
takes_config = immutabledict({'s1_bias_3f': <appletree.config.Map object>, 's1_smear_3f': <appletree.config.Map object>})
class appletree.plugins.reconstruction.S1Correction(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['rec_x', 'rec_y', 'rec_z']
provides: List[str] = ['s1_correction']
simulate(key, parameters, rec_x, rec_y, rec_z)[source]
takes_config = immutabledict({'s1_correction': <appletree.config.Map object>})
class appletree.plugins.reconstruction.S2(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['num_s2_pe']
provides: List[str] = ['s2_area']
simulate(key, parameters, num_s2_pe)[source]
takes_config = immutabledict({'s2_bias': <appletree.config.Map object>, 's2_smear': <appletree.config.Map object>})
class appletree.plugins.reconstruction.S2Correction(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['rec_x', 'rec_y']
provides: List[str] = ['s2_correction']
simulate(key, parameters, rec_x, rec_y)[source]
takes_config = immutabledict({'s2_correction': <appletree.config.Map object>})
class appletree.plugins.reconstruction.cS1(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['s1_area', 's1_correction']
provides: List[str] = ['cs1']
simulate(key, parameters, s1_area, s1_correction)[source]
class appletree.plugins.reconstruction.cS2(llh_name: Optional[str] = None)[source]

Bases: Plugin

depends_on: List[str] = ['s2_area', 's2_correction', 'drift_survive_prob']
provides: List[str] = ['cs2']
simulate(key, parameters, s2_area, s2_correction, drift_survive_prob)[source]

Module contents