63 iov = Belle2.IntervalOfValidity.always()
66 tmp_calAmp = SVDStripCalAmp()
67 tmp_calAmp.gain = 275 # set after the loop on sensors
68 tmp_calAmp.peakTime = 75 # set after the loop on sensors
69 tmp_calAmp.pulseWidth = pulseWidth
70 calAmp_payload = Belle2.SVDPulseShapeCalibrations.t_calAmp_payload(
71 tmp_calAmp, "PulseShapeCalibrations_default_" + str(now.isoformat()) +
72 "_INFO:_peakTime=fromPhase3calibrations_pulseWidth=130_gain=fromPhase3calibrations")
74 geoCache = Belle2.VXD.GeoCache.getInstance()
76 for layer in geoCache.getLayers(Belle2.VXD.SensorInfoBase.SVD):
77 layerNumber = layer.getLayerNumber()
78 for ladder in geoCache.getLadders(layer):
79 ladderNumber = ladder.getLadderNumber()
80 for sensor in geoCache.getSensors(ladder):
81 sensorNumber = sensor.getSensorNumber()
84 print("setting PulseShape for " +
85 str(layerNumber) + "." + str(ladderNumber) + "." + str(sensorNumber) + "." + str(side))
87 if layerNumber == 3: # L3 V
89 peakTime = peakTime_L3_V
92 if sensorNumber == 1: # FW V
94 peakTime = peakTime_fwd_V
96 if sensorNumber == layerNumber - 1: # FW V
98 peakTime = peakTime_bkw_V
100 gain = gain_origami_V
101 peakTime = peakTime_origami_V
103 if layerNumber == 3: # L3 U
105 peakTime = peakTime_L3_U
107 if sensorNumber == 1: # FW U
109 peakTime = peakTime_fwd_U
111 if sensorNumber == layerNumber - 1: # FW U
113 peakTime = peakTime_bkw_U
115 gain = gain_origami_U
116 peakTime = peakTime_origami_U
118 tmp_calAmp.gain = 1 / gain
119 tmp_calAmp.peakTime = peakTime
121 # print(str(Nstrips))
122 for strip in range(0, Nstrips):
123 # print("setting Gain for strip " + str(strip) + " to " + str(tmp_calAmp.gain))
125 calAmp_payload.set(layerNumber, ladderNumber, sensorNumber, bool(side), strip, tmp_calAmp)
127 Belle2.Database.Instance().storeData(Belle2.SVDPulseShapeCalibrations.calAmp_name, calAmp_payload, iov)