From 16bb59d09276c33df5e060714b8e4a2901d2d488 Mon Sep 17 00:00:00 2001 From: Cedric Engler <cedric.engler@desy.de> Date: Mon, 15 Apr 2024 09:25:32 +0200 Subject: [PATCH] Updated version with better allocations --- AdditionalPDFs.py | 2 +- Example.png | Bin 25881 -> 32743 bytes Example.py | 66 ++++++++++----------- LightSimtastic.py | 55 ++--------------- __pycache__/AdditionalPDFs.cpython-310.pyc | Bin 0 -> 4351 bytes __pycache__/LightSimtastic.cpython-310.pyc | Bin 0 -> 19284 bytes 6 files changed, 40 insertions(+), 83 deletions(-) create mode 100644 __pycache__/AdditionalPDFs.cpython-310.pyc create mode 100644 __pycache__/LightSimtastic.cpython-310.pyc diff --git a/AdditionalPDFs.py b/AdditionalPDFs.py index 2934d4c..ba373ef 100644 --- a/AdditionalPDFs.py +++ b/AdditionalPDFs.py @@ -5,7 +5,7 @@ import matplotlib.pyplot as plt from scipy.stats._distn_infrastructure import ( - rv_discrete, _ncx2_pdf, _ncx2_cdf, get_distribution_names) + rv_discrete, get_distribution_names) class gpd_gen(rv_discrete): diff --git a/Example.png b/Example.png index f6e165d7f9a83aeb4e4875c1243cb9c9d6fc1f98..f38ff251b7ccdf5cc52ea4ee48c05303f3f70091 100644 GIT binary patch literal 32743 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 literal 25881 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 E0C0zes{jB1 diff --git a/Example.py b/Example.py index 69f0d7c..8e6ce5c 100644 --- a/Example.py +++ b/Example.py @@ -9,38 +9,38 @@ import numpy as np ################################# variables={ -"Name_Sim":[0], #THIS CAN BE ANYTHING YOU LIKE -"mu":[7], # MEAN NUMBER OF GEIGER DISCHARGES -"ppXT":[0.0], # PROBABILITY OF PROMPT CROSS-TALK -"pdXT":[0.2], #PROBABILITY OF DELAYED CROSS-TALK -"taudXT":[25], #TIME CONSTANT FOR DELAYED CROSS-TALK (NS) -"rdXT":[0.5], #FRACTION OF DELAYED CROSS-TALK FROM ADJACENT CELLS -"pAp":[0.15], #PROBABILITY OF AFTERPULSE -"tauAp":[7.5], #TIME CONSTANT OF AFTERPULSE -"taur":[20], # SIPM RECOVERY TIME CONSTANT -"Sig0":[0.075], #WIDTH OF PEDESTAL [NORMALISED ADC] -"Sig1":[0.02], # INCREASE IN PEAK WIDTH PER ADDITIONAL DISCHARGE [NORMALISED ADC] -"DCR":[0.0], # DARK COUNT RATE [GHZ] -"Sigt":[0.02], # ELECTRONICS NOISE FOR CURRENT TRANSIENT (FOR TRANSIENT) -"GSig":[0.75], # WIDTH OF ELECTRONICS NOISE TRANSFER FUNCTION (FOR TRANSIENT) -"tslow":[20], # TIME CONSTANT FOR SLOW PART OF PULSE -"tfast":[1.5], # TIME CONSTANT FOR FAST PART OF PULSE -"rfast":[0.2], # PROPORTION OF SLOW/FAST -"start_tgate":[-5], # GATE START TIME [NS] -"len_tgate":[100], # LENGTH OF GATE -"t0":[100,], # STARTING POINT OF GATE -"tl0":[0], #GAUSSIAN MEAN OF PRIMARY GEIGER DICHARGE TIME DISTRIBUTION -"tl1":[0.1], #GAUSSIAN WIDTH OF PRIMARY GEIGER DICHARGE TIME DISTRIBUTION -"tl2":[0], #FREE PARAMETER -"Gen_mu":["Poisson"], # NUMBER PRIMARY GEIGER DISCHARGE PDF -"Gen_tmu":["Gauss"], # TIME OF PRIMARY GEIGER DISCHARGE PDF -"Gen_gain":["Gauss"], # GAIN PDF (FOR TRANSIENT) -"Gen_npXT":["Binomial"], #NUMBER PROMPT X-TALK DISCHARGE DISTRIBUTION -"Gen_ndXT":["Binomial"], #NUMBER PROMPT X-TALK DISCHARGE DISTRIBUTION -"Gen_tdXT":["Exp"], #TIME DELAYED X-TALK DISTRIBUTION -"Gen_nAP":["Binom"], #NUMBER AFTER DISTRIBUTION -"Gen_tAP":["Exp"], #AFTERPULSE TIME DISTRIBUTION -"Gen_noise":["Gauss"] #ELECTRONIC NOISE DISTRIBUTION (FOR TRANSIENT) +"Name_Sim":[0], #THIS CAN BE ANYTHING YOU LIKE +"mu":[7], #MEAN NUMBER OF GEIGER DISCHARGES +"ppXT":[0.0], #PROBABILITY OF PROMPT CROSS-TALK +"pdXT":[0.2], #PROBABILITY OF DELAYED CROSS-TALK +"taudXT":[25], #TIME CONSTANT FOR DELAYED CROSS-TALK (NS) +"rdXT":[0.5], #FRACTION OF DELAYED CROSS-TALK FROM ADJACENT CELLS +"pAp":[0.15], #PROBABILITY OF AFTERPULSE +"tauAp":[7.5], #TIME CONSTANT OF AFTERPULSE +"taur":[20], #SIPM RECOVERY TIME CONSTANT +"Sig0":[0.075], #WIDTH OF PEDESTAL [NORMALISED ADC] +"Sig1":[0.02], #INCREASE IN PEAK WIDTH PER ADDITIONAL DISCHARGE [NORMALISED ADC] +"DCR":[0.0], #DARK COUNT RATE [GHZ] +"Sigt":[0.02], #ELECTRONICS NOISE FOR CURRENT TRANSIENT (FOR TRANSIENT) +"GSig":[0.75], #WIDTH OF ELECTRONICS NOISE TRANSFER FUNCTION (FOR TRANSIENT) +"tslow":[20], #TIME CONSTANT FOR SLOW PART OF PULSE +"tfast":[1.5], #TIME CONSTANT FOR FAST PART OF PULSE +"rfast":[0.2], #PROPORTION OF SLOW/FAST +"start_tgate":[-5], #GATE START TIME [NS] +"len_tgate":[100], #LENGTH OF GATE +"t0":[100,], #STARTING POINT OF GATE +"tl0":[0], #GAUSSIAN MEAN OF PRIMARY GEIGER DICHARGE TIME DISTRIBUTION +"tl1":[0.1], #GAUSSIAN WIDTH OF PRIMARY GEIGER DICHARGE TIME DISTRIBUTION +"tl2":[0], #FREE PARAMETER +"Gen_mu":["Poisson"], #NUMBER PRIMARY GEIGER DISCHARGE PDF +"Gen_tmu":["Gauss"], #TIME OF PRIMARY GEIGER DISCHARGE PDF +"Gen_gain":["Gauss"], #GAIN PDF (FOR TRANSIENT) +"Gen_npXT":["Binomial"], #NUMBER PROMPT X-TALK DISCHARGE DISTRIBUTION +"Gen_ndXT":["Binomial"], #NUMBER PROMPT X-TALK DISCHARGE DISTRIBUTION +"Gen_tdXT":["Exp"], #TIME DELAYED X-TALK DISTRIBUTION +"Gen_nAP":["Binom"], #NUMBER AFTER DISTRIBUTION +"Gen_tAP":["Exp"], #AFTERPULSE TIME DISTRIBUTION +"Gen_noise":["Gauss"] #ELECTRONIC NOISE DISTRIBUTION (FOR TRANSIENT) } ################################# @@ -55,7 +55,7 @@ s = SiPMSimulation() s.AddVariables(variables) -n_events = int(1e5) +n_events = int(1e2) ################################# diff --git a/LightSimtastic.py b/LightSimtastic.py index c09d042..1808e67 100644 --- a/LightSimtastic.py +++ b/LightSimtastic.py @@ -250,7 +250,7 @@ class SiPMSimulation: line = _RemoveNonAscii(line) elems = line.replace('"', "").split(",") elems = _ToFloats(elems) - + t0 = 0 #ns if elems[0] in self.VariableDictionary: variables[elems[0]] = elems[1::] @@ -304,18 +304,7 @@ class SiPMSimulation: partialSum = 0 for _i in dXT_n: temp = [] - for _ii in _i: - temp.append(dXT_nt[partialSum:partialSum+_ii]) - partialSum += _ii - output.append(temp) - return output - - - - def AllGeiger(self, ns): - - pbar = tqdm(range(len(self.pb_ag_text)-1)) - pbar.set_description("{0}".format(self.pb_ag_text[0])) + for _ii in _i:t0 = 0 #ns nlight = np.asarray(ns.dist_flight.rvs(size=ns.n_sim)) nDC = np.asarray(ns.dist_fDC.rvs(size=ns.n_sim)) @@ -327,16 +316,7 @@ class SiPMSimulation: nPG = nDC + nlight - pbar.update(1) - pbar.set_description("{0}".format(self.pb_ag_text[1])) - - nlight_sum = np.sum(nlight) - nDC_sum = np.sum(nDC) - nPG_sum = nlight_sum + nDC_sum - - npXT = np.array(ns.dist_fpXT.rvs(size=nPG_sum)) - ndXT = np.array(ns.dist_fdXT.rvs(size=nPG_sum)) - + pbar.update(1)t0 = 0 #ns npXT_sum = np.sum(npXT) nPG_pXT_sum = nPG_sum + npXT_sum @@ -356,13 +336,7 @@ class SiPMSimulation: pg_l_d = np.split(pg_l_d, nlight_cumsum)[:-1] pg_l_t = np.split(pg_l_t, nlight_cumsum)[:-1] pg_dc_d = np.split(pg_dc_d, nDC_cumsum)[:-1] - pg_dc_t = np.split(pg_dc_t, nDC_cumsum)[:-1] - - pXT_n = np.split(npXT, nPG_cumsum)[:-1] - dXT_n = np.split(ndXT, nPG_cumsum)[:-1] - - pg_d = [np.concatenate(elem) for elem in zip(pg_l_d, pg_dc_d)] - pg_t = [np.concatenate(elem) for elem in zip(pg_l_t, pg_dc_t)] + pg_dc_t = np.split(pg_dc_t, nDC_cumsum)[:-1]t0 = 0 #ns pbar.update(1) @@ -492,23 +466,7 @@ class SiPMSimulation: - pbar.update(1) - pbar.set_description("{0}".format(self.pb_ag_text[5])) - - ag_d = [ - np.concatenate( (list_pg_d, list_pXT_d, list_dXT_d, list_Ap_d)) - for list_pg_d, list_pXT_d, list_dXT_d, list_Ap_d, in zip(pg_d, pXT_d, dXT_d, Ap_d) - ] - - ag_t = [ - np.concatenate( (list_pg_t, list_pXT_t, list_dXT_t, list_Ap_t)) - for list_pg_t, list_pXT_t, list_dXT_t, list_Ap_t, in zip(pg_t, pXT_t, dXT_t, Ap_t) - ] - - ns.ag_d = ag_d - ns.ag_t = ag_t - - pbar.update(1) + pbar.update(1)t0 = 0 #ns pbar.set_description("{0}".format(self.pb_ag_text[6])) @@ -729,8 +687,7 @@ class SiPMSimulation: end_time = time.time() - self.pars.at[index, "GeigerArray"] = np.vstack([ns.ag_d, ns.ag_t]) -# self.pars.at[index, "TimeElapsed_GeigerArray"] = end_time-start_time + self.pars.at[index, "GeigerArray"] = np.vstack([ns.ag_d, ns.ag_t]) # self.pars.at[index, "TimeElapsed_GeigerArray"] = end_time-start_time self.pars.at[index, "ChargeSpectrum"] = Qs diff --git a/__pycache__/AdditionalPDFs.cpython-310.pyc b/__pycache__/AdditionalPDFs.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ee86b019f37fd574ba07d2f101f3083319470d3e GIT binary patch literal 4351 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 K6XRp#VFCcs5QnA! literal 0 HcmV?d00001 diff --git a/__pycache__/LightSimtastic.cpython-310.pyc b/__pycache__/LightSimtastic.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bcf12a3a0a70470199e386ba5fce1d374b77d0c7 GIT binary patch literal 19284 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 GLQDYG5ro(P literal 0 HcmV?d00001 -- GitLab