Belle II Software  release-08-01-10
create_magneticfield_payloads_constant.py
1 #!/usr/bin/env python3
2 
3 
10 
11 import math
12 from ROOT import Belle2
13 
14 if __name__ == "__main__":
15  # parameters for the field
16  b_field = (0, 0, 0)
17  range_r = (0, math.inf)
18  range_z = (-math.inf, math.inf)
19 
20  # and for the payload
22  # iov = Belle2.IntervalOfValidity(5,0,-1,-1)
23 
24  # create field map instance
25  field = Belle2.MagneticField()
26  # and if we have a non-zero field, add it as component
27  if max(abs(e) for e in b_field) > 0:
28  field_vector = Belle2.B2Vector3D(*(e * Belle2.Unit.T for e in b_field))
29  field.addComponent(Belle2.MagneticFieldComponentConstant(field_vector, *range_r, *range_z))
30 
31  # and save in localdb/, ready for upload
32  Belle2.Database.Instance().storeData("MagneticField", field, iov)
static IntervalOfValidity always()
Function that returns an interval of validity that is always valid, c.f.
Describe one component of the Geometry.
Magnetic field map.
Definition: MagneticField.h:32
static Database & Instance()
Instance of a singleton Database.
Definition: Database.cc:42