diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7c8891a --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +productions/d2hll +*.xml diff --git a/file_list.txt b/file_list.txt new file mode 100644 index 0000000..f211df4 --- /dev/null +++ b/file_list.txt @@ -0,0 +1,137 @@ +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000001_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000002_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000003_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000004_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000005_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000006_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000007_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000008_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000009_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000010_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000011_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000012_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000013_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000014_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000015_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000016_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000017_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000018_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000019_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000020_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000021_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000022_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000023_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000024_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000025_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000026_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000027_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000028_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000029_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000030_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000031_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000032_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000033_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000034_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000035_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000036_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000037_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000038_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000039_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000040_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000041_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000042_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000043_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000044_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000045_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000046_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000047_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000048_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000049_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000050_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000051_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000052_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000053_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000054_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000055_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000056_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000057_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000058_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000059_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000060_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000061_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000062_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000063_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000064_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000065_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000066_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000067_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000068_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000069_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000070_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000071_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000072_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000073_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000074_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000075_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000076_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000077_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000078_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000079_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000080_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000081_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000082_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000083_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000084_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000085_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000086_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000087_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000088_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000089_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000090_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000091_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000092_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000093_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000094_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000096_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000097_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000098_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000099_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000100_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000101_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000102_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000103_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000104_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000105_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000106_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000107_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000108_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000109_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000110_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000111_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000112_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000113_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000114_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000115_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000116_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000117_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000118_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000119_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000120_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000121_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000122_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000123_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000124_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000125_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000126_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000127_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000128_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000129_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000130_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000131_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000132_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000133_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000134_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000135_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000136_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000137_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000138_1.charm_d2hll_dvntuple.root diff --git a/file_list_short.txt b/file_list_short.txt new file mode 100644 index 0000000..c40f87a --- /dev/null +++ b/file_list_short.txt @@ -0,0 +1,30 @@ +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000001_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000002_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000003_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000004_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000005_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000006_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000007_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000008_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000009_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000010_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000011_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000012_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000013_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000014_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000015_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000016_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000017_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000018_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000019_1.charm_d2hll_dvntuple.root +root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/LHCb/Collision17/CHARM_D2HLL_DVNTUPLE.ROOT/00075545/0000/00075545_00000020_1.charm_d2hll_dvntuple.root + + + + + +TChain *chain = new TChain("DpTopimumu_OS/DecayTree") +TFileCollection *fc = new TFileCollection("dum","","file_list_short.txt") +chain->AddFileInfoList(fc->GetList()) +TFile *file = TFile::Open("DpTopimumu_OS","RECREATE") +chain->CloneTree(-1,"fast") diff --git a/productions/d2hll/._main_options.py b/productions/d2hll/._main_options.py new file mode 100644 index 0000000..a22518f --- /dev/null +++ b/productions/d2hll/._main_options.py Binary files differ diff --git a/productions/d2hll/config.py b/productions/d2hll/config.py new file mode 100644 index 0000000..0dcb7a9 --- /dev/null +++ b/productions/d2hll/config.py @@ -0,0 +1,102 @@ +tuple_tools = [ + 'TupleToolGeometry', + 'TupleToolKinematic', + 'TupleToolPid', + 'TupleToolANNPID', + 'TupleToolPrimaries', + 'TupleToolTrackInfo', + 'TupleToolBremInfo' +] + +basic_loki_vars = { + 'ETA': 'ETA', + 'Loki_BPVIPCHI2': 'BPVIPCHI2()' +} + +mother_loki_vars = { + 'Loki_BPVVDCHI2': 'BPVVDCHI2', + 'Loki_BPVDIRA': 'BPVDIRA', + 'Loki_BPVIPCHI2': 'BPVIPCHI2()', + 'Loki_DOCAMAX': 'DOCAMAX', + 'Loki_AMAXDOCA': "LoKi.Particles.PFunA(AMAXDOCA(''))", + 'Loki_AMINDOCA': "LoKi.Particles.PFunA(AMINDOCA(''))", + 'Loki_DOCACHI2MAX': 'DOCACHI2MAX', + 'Loki_VCHI2': 'VFASPF(VCHI2)', + 'Loki_VDOF': 'VFASPF(VDOF)', + 'Loki_VX': 'VFASPF(VX)', + 'Loki_VY': 'VFASPF(VY)', + 'Loki_VZ': 'VFASPF(VZ)', + 'Loki_SUMPT': 'SUMTREE(PT, ISBASIC)', + 'Loki_BPVLTIME': "BPVLTIME()", + 'Loki_M12': 'M12', + 'Loki_M13': 'M13', + 'Loki_M23': 'M23', +} + +cone_angles = [1.0, 1.5, 2.0] +cone_vars = [ + 'CONEANGLE', + 'CONEMULT', + 'CONEPX', + 'CONEPY', + 'CONEPZ', + 'CONEPT', + 'CONEPXASYM', + 'CONEPYASYM', + 'CONEPZASYM', + 'CONEPASYM', + 'CONEPTASYM', + 'CONEDELTAETA', + 'CONEDELTAPHI' +] +ew_cone_angles = [0.0, 0.5, 1.0, 1.5] +ew_cone_vars = [ + 'EWCONEANGLE', + 'EWCONEMULT', + 'EWCONEPX', + 'EWCONEPY', + 'EWCONEPZ', + 'EWCONEVP', + 'EWCONEVPT', + 'EWCONESPT', + 'EWCONETPT', + 'EWCONEMINPTE', + 'EWCONEMAXPTE', + 'EWCONEMINPTMU', + 'EWCONEMAXPTMU', + 'EWCONENMULT', + 'EWCONENPX', + 'EWCONENPY', + 'EWCONENPZ', + 'EWCONENVP', + 'EWCONENVPT', + 'EWCONENSP', + 'EWCONENSPT', +] +vertex_iso_variables = [ + 'VTXISONUMVTX', + 'VTXISODCHI2ONETRACK', + 'VTXISODCHI2MASSONETRACK', + 'VTXISODCHI2TWOTRACK', + 'VTXISODCHI2MASSTWOTRACK' +] +vertex_iso_bdt_variables = [ + 'VTXISOBDTHARDFIRSTVALUE', + 'VTXISOBDTHARDSECONDVALUE', + 'VTXISOBDTHARDTHIRDVALUE' +] +track_iso_bdt_variables = [ + 'TRKISOBDTFIRSTVALUE', + 'TRKISOBDTSECONDVALUE', + 'TRKISOBDTTHIRDVALUE' +] +Bs2MuMuTrackIsolation_variables = [ + 'BSMUMUTRACKPLUSISO', + 'BSMUMUTRACKPLUSISOTWO', + 'ISOTWOBODYQPLUS', + 'ISOTWOBODYMASSISOPLUS', + 'ISOTWOBODYCHI2ISOPLUS', + 'ISOTWOBODYISO5PLUS', + 'BSMUMUTRACKID', + 'BSMUMUTRACKTOPID' +] diff --git a/productions/d2hll/config.pyc b/productions/d2hll/config.pyc new file mode 100644 index 0000000..f484f67 --- /dev/null +++ b/productions/d2hll/config.pyc Binary files differ diff --git a/productions/d2hll/decay_parser/__init__.py b/productions/d2hll/decay_parser/__init__.py new file mode 100644 index 0000000..0604fa9 --- /dev/null +++ b/productions/d2hll/decay_parser/__init__.py @@ -0,0 +1,36 @@ +from __future__ import print_function + +import os +import json + +from .decay import Decay +from .particle import Particle +from .parser import make_parser +from . import utils + + +__all__ = [ + 'Decay', + 'Particle', + 'parse_decay', + 'particles', + 'symbols', + 'utils' +] + + +def parse_decay(decay_string): + result = parser.parseString(decay_string, parseAll=True) + assert len(result) == 1 + return result[0] + + +data_path = os.path.abspath(os.path.join(os.path.dirname(__file__), 'data')) + +with open(os.path.join(data_path, 'particles.json')) as f: + particles = json.load(f) + +with open(os.path.join(data_path, 'symbols.json')) as f: + symbols = json.load(f) + +parser = make_parser(particles, symbols) diff --git a/productions/d2hll/decay_parser/__init__.pyc b/productions/d2hll/decay_parser/__init__.pyc new file mode 100644 index 0000000..2991f37 --- /dev/null +++ b/productions/d2hll/decay_parser/__init__.pyc Binary files differ diff --git a/productions/d2hll/decay_parser/data/particles.json b/productions/d2hll/decay_parser/data/particles.json new file mode 100644 index 0000000..d97622a --- /dev/null +++ b/productions/d2hll/decay_parser/data/particles.json @@ -0,0 +1 @@ +{"Omega*_bbb-": ["Omega*_bbb-", "Omega*_bbb~+", 15110.609999999999, -1.0, 0.0, 0.0, 5554, 5554], "Delta(1700)~--": ["Delta(1700)~--", "Delta(1700)++", 1700.0, -2.0, 2.194041e-15, 299.9999555472927, -12224, 0], "chi_b0(1P)": ["chi_b0(1P)", "chi_b0(1P)", 9859.439999999999, 0.0, 0.0, 0.0, 10551, 10551], "psi(2S)": ["psi(2S)", "psi(2S)", 3686.109, 0.0, 2.201378e-12, 0.29900008197998595, 100443, 100443], "h_b(3P)": ["h_b(3P)", "h_b(3P)", 10516.0, 0.0, 0.0, 0.0, 210553, 210553], "Xi_bb-": ["Xi_bb-", "Xi_bb~+", 10422.72, -1.0, 0.001290893, 5.09889047712659e-10, 5512, 5512], "sd_0": ["sd_0", "anti-sd_0", 0.0, -0.7, 0.0, 0.0, 3101, 3101], "sd_1": ["sd_1", "anti-sd_1", 0.0, -0.7, 0.0, 0.0, 3103, 3103], "anti-cs_1": ["anti-cs_1", "cs_1", 0.0, -0.3, 0.0, 0.0, -4303, -4303], "anti-cs_0": ["anti-cs_0", "cs_0", 0.0, -0.3, 0.0, 0.0, -4301, -4301], "H_L--": ["H_L--", "H_L++", 200000.0, -2.0, 0.0, 0.0, -9900041, -9900041], "Mo95[0.0]": ["Mo95[0.0]", null, 88404.21, 42.0, 0.0, 0.0, 1000420950, 0], "Lambda(1810)~0": ["Lambda(1810)~0", "Lambda(1810)0", 1810.0, 0.0, 4.388081e-15, 150.00001195714884, -53122, 0], "K*_2(1980)~0": ["K*_2(1980)~0", "K*_2(1980)0", 1973.0, 0.0, 0.0, 0.0, -100315, 0], "Xi_bb0": ["Xi_bb0", "Xi_bb~0", 10422.72, 0.0, 0.001290893, 5.09889047712659e-10, 5522, 5522], "B_c*+": ["B_c*+", "B_c*-", 6602.0, 1.0, 0.0, 0.0, 543, 543], "Delta(1930)++": ["Delta(1930)++", "Delta(1930)~--", 1950.0, 2.0, 1.828367e-15, 360.00004510524286, 12226, 0], "Upsilon(10860)": ["Upsilon(10860)", "Upsilon(10860)", 10876.0, 0.0, 1.196749e-14, 55.00002109623133, 9000553, 0], "Upsilon(4S)": ["Upsilon(4S)", "Upsilon(4S)", 10579.4, 0.0, 3.210791e-14, 20.500001478418795, 300553, 300553], "B_c*-": ["B_c*-", "B_c*+", 6602.0, -1.0, 0.0, 0.0, -543, -543], "Upsilon_2(2D)": ["Upsilon_2(2D)", "Upsilon_2(2D)", 10440.6, 0.0, 0.0, 0.0, 120555, 120555], "Xi_c*+": ["Xi_c*+", "Xi_c*~-", 2645.9, 1.0, 0.0, 0.0, 4324, 4324], "Upsilon(11020)": ["Upsilon(11020)", "Upsilon(11020)", 11019.0, 0.0, 8.3318e-15, 79.00000029632703, 9010553, 0], "Sigma_b0": ["Sigma_b0", "Sigma_b~0", 5807.8, 0.0, 1e-10, 0.006582122024689376, 5212, 5212], "N(1520)~0": ["N(1520)~0", "N(1520)0", 1515.0, 0.0, 5.723584000000001e-15, 115.00000741999025, -1214, 0], "Delta(1930)~+": ["Delta(1930)~+", "Delta(1930)-", 1950.0, 1.0, 1.828367e-15, 360.00004510524286, -11116, 0], "Sigma_c~--": ["Sigma_c~--", "Sigma_c++", 2453.98, -2.0, 2.912443e-13, 2.2600002900277794, -4222, -4222], "Xi(1950)0": ["Xi(1950)0", "Xi(1950)~0", 1950.0, 0.0, 1.09702e-14, 60.00001845626675, 103326, 0], "psi(3770)": ["psi(3770)", "psi(3770)", 3773.1499999999996, 0.0, 2.4198979999999998e-14, 27.19999778787939, 30443, 30443], "D_s1(2536)-": ["D_s1(2536)-", "D_s1(2536)+", 2535.1, -1.0, 7.15448e-13, 0.9200000593599221, -10433, -10433], "Xi(1950)-": ["Xi(1950)-", "Xi(1950)~+", 1950.0, -1.0, 1.09702e-14, 60.00001845626675, 103316, 0], "nu_tau": ["nu_tau", "nu_tau~", 0.0, 0.0, 1e+25, 6.582122024689376e-38, 16, 16], "Xi_c(2790)0": ["Xi_c(2790)0", "Xi_c(2790)~0", 2791.7999999999997, 0.0, 0.0, 0.0, 104314, 0], "N(1520)~-": ["N(1520)~-", "N(1520)+", 1515.0, -1.0, 5.723584000000001e-15, 115.00000741999025, -2124, 0], "chi_b0(2P)": ["chi_b0(2P)", "chi_b0(2P)", 10232.5, 0.0, 0.0, 0.0, 110551, 110551], "Xi_c*0": ["Xi_c*0", "Xi_c*~0", 2645.9, 0.0, 0.0, 0.0, 4314, 4314], "Delta(1930)~0": ["Delta(1930)~0", "Delta(1930)0", 1950.0, 0.0, 1.828367e-15, 360.00004510524286, -11216, 0], "anti-b'": ["anti-b'", "b'", 400000.0, 0.3, 0.0, 0.0, -7, -7], "Z''0": ["Z''0", "Z''0", 900000.0, 0.0, 0.0, 0.0, 33, 33], "Delta(1930)0": ["Delta(1930)0", "Delta(1930)~0", 1950.0, 0.0, 1.828367e-15, 360.00004510524286, 11216, 0], "Cr52[0.0]": ["Cr52[0.0]", null, 48370.1, 24.0, 0.0, 0.0, 1000240520, 0], "string": ["string", "string", 0.0, 0.0, 0.0, 0.0, 92, 92], "Delta(1900)~-": ["Delta(1900)~-", "Delta(1900)+", 1840.0, -1.0, 0.0, 0.0, -12122, 0], "pi_tc0": ["pi_tc0", "pi_tc0", 110000.0, 0.0, 0.0, 0.0, 3000111, 3000111], "Omega~+": ["Omega~+", "Omega-", 1672.45, 1.0, 0.0821, 8.017201004493757e-12, -3334, -3334], "rho_11_tc": ["rho_11_tc", "rho_11_tc", 400000.0, 0.0, 0.0, 0.0, 3100113, 3100113], "Delta(1930)+": ["Delta(1930)+", "Delta(1930)~-", 1950.0, 1.0, 1.828367e-15, 360.00004510524286, 12126, 0], "eta_2(1870)": ["eta_2(1870)", "eta_2(1870)", 1854.0, 0.0, 0.0, 0.0, 10335, 0], "anti-cc_1": ["anti-cc_1", "cc_1", 0.0, -1.3, 0.0, 0.0, -4403, -4403], "Omega_b-": ["Omega_b-", "Omega_b~+", 6048.8, -1.0, 0.0010999999999999998, 5.98374729517216e-10, 5332, 5332], "D*_s2-": ["D*_s2-", "D*_s2+", 2571.8999999999996, -1.0, 3.8718359999999997e-14, 17.000002129969804, -435, -435], "Delta(1910)~-": ["Delta(1910)~-", "Delta(1910)+", 1890.0, -1.0, 2.350758e-15, 279.9999840344849, -22122, 0], "N(1675)0": ["N(1675)0", "N(1675)~0", 1675.0, 0.0, 4.388081e-15, 150.00001195714884, 2116, 0], "D*_s2+": ["D*_s2+", "D*_s2-", 2571.8999999999996, 1.0, 3.8718359999999997e-14, 17.000002129969804, 435, 435], "Be9[0.0]": ["Be9[0.0]", null, 8394.792000000001, 4.0, 0.0, 0.0, 1000040090, 0], "X_2(3872)": ["X_2(3872)", "X_2(3872)", 3871.69, 0.0, 2.07634e-12, 0.3170059828683826, 9910445, 9910445], "b_1(1235)0": ["b_1(1235)0", "b_1(1235)0", 1229.5, 0.0, 4.635297e-15, 142.00000614177205, 10113, 10113], "phi_3(1850)": ["phi_3(1850)", "phi_3(1850)", 1854.0, 0.0, 7.565657e-15, 87.00000574556017, 337, 0], "b_1(1235)-": ["b_1(1235)-", "b_1(1235)+", 1229.5, -1.0, 4.635297e-15, 142.00000614177205, -10213, -10213], "t'": ["t'", "anti-t'", 500000.0, 0.7, 0.0, 0.0, 8, 8], "Mo96[0.0]": ["Mo96[0.0]", null, 89334.621, 42.0, 0.0, 0.0, 1000420960, 0], "eta_2(1645)": ["eta_2(1645)", "eta_2(1645)", 1617.0, 0.0, 3.636531e-15, 181.0000251528002, 10225, 0], "N(1675)+": ["N(1675)+", "N(1675)~-", 1675.0, 1.0, 4.388081e-15, 150.00001195714884, 2216, 0], "D_1(H)~0": ["D_1(H)~0", "D_1(H)0", 2445.0, 0.0, 2.6299999999999997e-15, 250.270799417847, -20423, -20423], "~t_2bar": ["~t_2bar", "~t_2", 500000.0, -0.7, 0.0, 0.0, -2000006, -2000006], "Sigma(1670)~+": ["Sigma(1670)~+", "Sigma(1670)-", 1670.0, 1.0, 1.09702e-14, 60.00001845626675, -13114, 0], "Fe59[0.0]": ["Fe59[0.0]", null, 54897.48, 26.0, 0.0, 0.0, 1000260590, 0], "Sigma_c*++": ["Sigma_c*++", "Sigma_c*~--", 2517.9, 2.0, 4.417531e-14, 14.900001889492966, 4224, 4224], "B_1(L)~0": ["B_1(L)~0", "B_1(L)0", 5723.4, 0.0, 3.134e-14, 21.00230384393547, -10513, -10513], "Sigma(1670)~-": ["Sigma(1670)~-", "Sigma(1670)+", 1670.0, -1.0, 1.09702e-14, 60.00001845626675, -13224, 0], "e*bar+": ["e*bar+", "e*-", 400000.0, 1.0, 0.0, 0.0, -4000011, -4000011], "~c_Lbar": ["~c_Lbar", "~c_L", 500000.0, -0.7, 0.0, 0.0, -1000004, -1000004], "~e_R+": ["~e_R+", "~e_R-", 500000.0, 1.0, 0.0, 0.0, -2000011, -2000011], "Sigma(1670)~0": ["Sigma(1670)~0", "Sigma(1670)0", 1670.0, 0.0, 1.09702e-14, 60.00001845626675, -13214, 0], "~e_R-": ["~e_R-", "~e_R+", 500000.0, -1.0, 0.0, 0.0, 2000011, 2000011], "Lambda_b~0": ["Lambda_b~0", "Lambda_b0", 5619.5, 0.0, 0.001451, 4.5362660404475367e-10, -5122, -5122], "B_1(H)~0": ["B_1(H)~0", "B_1(H)0", 5757.0, 0.0, 2.6299999999999997e-15, 250.270799417847, -20513, -20513], "O19[0.0]": ["O19[0.0]", null, 17701.716999999997, 8.0, 0.0, 0.0, 1000080190, 0], "B~0": ["B~0", "B0", 5279.58, 0.0, 0.0015190000000000002, 4.3331942229686473e-10, -511, -511], "Mo100[0.0]": ["Mo100[0.0]", null, 93063.20300000001, 42.0, 0.0, 0.0, 1000421000, 0], "cs_1": ["cs_1", "anti-cs_1", 0.0, 0.3, 0.0, 0.0, 4303, 4303], "Upsilon_3(2D)": ["Upsilon_3(2D)", "Upsilon_3(2D)", 10444.3, 0.0, 0.0, 0.0, 100557, 100557], "indep": ["indep", "indep", 0.0, 0.0, 0.0, 0.0, 93, 93], "phi(1680)": ["phi(1680)", "phi(1680)", 1680.0, 0.0, 4.388081e-15, 150.00001195714884, 100333, 0], "D_1(2420)0": ["D_1(2420)0", "D_1(2420)~0", 2421.4, 0.0, 2.428827e-14, 27.10000351893888, 10423, 10423], "D_1(2420)-": ["D_1(2420)-", "D_1(2420)+", 2423.0, -1.0, 3.2900000000000004e-14, 20.006449923068008, -10413, -10413], "Graviton": ["Graviton", "Graviton", 0.0, 0.0, 0.0, 0.0, 39, 39], "Sigma~+": ["Sigma~+", "Sigma-", 1197.449, 1.0, 0.1479, 4.450386764495859e-12, -3112, -3112], "D_1(2420)+": ["D_1(2420)+", "D_1(2420)-", 2423.0, 1.0, 3.2900000000000004e-14, 20.006449923068008, 10413, 10413], "pi(1800)+": ["pi(1800)+", "pi(1800)-", 1812.0, 1.0, 3.164482e-15, 207.99998308378358, 9010211, 0], "anti-t-hadron": ["anti-t-hadron", "t-hadron", 175000.0, -0.7, 0.0, 0.0, -86, 0], "Z0": ["Z0", "Z0", 91187.6, 0.0, 2.637914e-16, 2495.1996254196974, 23, 23], "~nu_muRbar": ["~nu_muRbar", "~nu_muR", 500000.0, 0.0, 0.0, 0.0, -2000014, -2000014], "Xi_b*~+": ["Xi_b*~+", "Xi_b*-", 5970.0, 1.0, 0.0, 0.0, -5314, -5314], "Sigma_c++": ["Sigma_c++", "Sigma_c~--", 2453.98, 2.0, 2.912443e-13, 2.2600002900277794, 4222, 4222], "Delta(1930)~-": ["Delta(1930)~-", "Delta(1930)+", 1950.0, -1.0, 1.828367e-15, 360.00004510524286, -12126, 0], "nu_mu~": ["nu_mu~", "nu_mu", 0.0, 0.0, 1e+25, 6.582122024689376e-38, -14, -14], "CLUSjet": ["CLUSjet", "CLUSjet", 0.0, 0.0, 0.0, 0.0, 97, 97], "Sigma(2030)0": ["Sigma(2030)0", "Sigma(2030)~0", 2029.9999999999998, 0.0, 3.656734e-15, 180.00002255262143, 3218, 0], "eta_b2(1D)": ["eta_b2(1D)", "eta_b2(1D)", 10157.0, 0.0, 0.0, 0.0, 10555, 10555], "D*_0+": ["D*_0+", "D*_0-", 2318.0, 1.0, 2.465213e-15, 267.00013445853875, 10411, 10411], "D*_0-": ["D*_0-", "D*_0+", 2318.0, -1.0, 2.465213e-15, 267.00013445853875, -10411, -10411], "D*_00": ["D*_00", "D*_0~0", 2318.0, 0.0, 2.465213e-15, 267.00013445853875, 10421, 10421], "K*_4(2045)~0": ["K*_4(2045)~0", "K*_4(2045)0", 2045.0, 0.0, 3.324304e-15, 198.00000314921186, -319, 0], "uu_1": ["uu_1", "anti-uu_1", 0.0, 1.3, 0.0, 0.0, 2203, 2203], "psi(4040)": ["psi(4040)", "psi(4040)", 4038.9999999999995, 0.0, 8.227652e-15, 80.00000516173236, 9000443, 0], "D*_2(2460)~0": ["D*_2(2460)~0", "D*_2(2460)0", 2462.6, 0.0, 1.34329e-14, 49.00000762820668, -425, -425], "pi(1800)-": ["pi(1800)-", "pi(1800)+", 1812.0, -1.0, 3.164482e-15, 207.99998308378358, -9010211, 0], "Sigma(2030)+": ["Sigma(2030)+", "Sigma(2030)~-", 2029.9999999999998, 1.0, 3.656734e-15, 180.00002255262143, 3228, 0], "Lambda_b(5920)0": ["Lambda_b(5920)0", "Lambda_b(5920)~0", 5919.7699999999995, 0.0, 1.316e-12, 0.5001612480767003, 5124, 5124], "Sigma-": ["Sigma-", "Sigma~+", 1197.449, -1.0, 0.1479, 4.450386764495859e-12, 3112, 3112], "B*_0~0": ["B*_0~0", "B*_00", 5738.0, 0.0, 4.39e-15, 149.93444247583997, -10511, -10511], "f_0(980)": ["f_0(980)", "f_0(980)", 990.0, 0.0, 9.403031e-15, 70.00000345302888, 9010221, 10221], "~b_1bar": ["~b_1bar", "~b_1", 500000.0, 0.3, 0.0, 0.0, -1000005, -1000005], "Sigma+": ["Sigma+", "Sigma~-", 1189.3700000000001, 1.0, 0.08018, 8.209181871650505e-12, 3222, 3222], "Xi_cc++": ["Xi_cc++", "Xi_cc~--", 3597.98, 2.0, 0.0003335641, 1.973270512231195e-09, 4422, 4422], "Sigma(2250)~+": ["Sigma(2250)~+", "Sigma(2250)-", 2250.0, 1.0, 6.58e-15, 100.03224961534006, -103112, 0], "Xi*_bb~0": ["Xi*_bb~0", "Xi*_bb0", 10441.44, 0.0, 0.0, 0.0, -5524, -5524], "~nu_eR": ["~nu_eR", "~nu_eRbar", 500000.0, 0.0, 0.0, 0.0, 2000012, 2000012], "Mg26[0.0]": ["Mg26[0.0]", null, 24202.626, 12.0, 0.0, 0.0, 1000120260, 0], "Xi*_bb~+": ["Xi*_bb~+", "Xi*_bb-", 10441.44, 1.0, 0.0, 0.0, -5514, -5514], "B*_2~0": ["B*_2~0", "B*_20", 5743.0, 0.0, 2.8617920000000004e-14, 23.000001483998048, -515, -515], "Omega'_bc0": ["Omega'_bc0", "Omega'_bc~0", 7211.01, 0.0, 0.0, 0.0, 5432, 5432], "N(1990)~0": ["N(1990)~0", "N(1990)0", 1950.0, 0.0, 0.0, 0.0, -12118, 0], "D_1(H)0": ["D_1(H)0", "D_1(H)~0", 2445.0, 0.0, 2.6299999999999997e-15, 250.270799417847, 20423, 20423], "Lambda_c(2880)~-": ["Lambda_c(2880)~-", "Lambda_c(2880)+", 2881.53, -1.0, 1.134849e-13, 5.799998083171749, -204126, 0], "~mu_R-": ["~mu_R-", "~mu_R+", 500000.0, -1.0, 0.0, 0.0, 2000013, 2000013], "Sigma0": ["Sigma0", "Sigma~0", 1192.642, 0.0, 7.4e-11, 0.00889475949282348, 3212, 3212], "W_R-": ["W_R-", "W_R+", 750000.0, -1.0, 0.0, 0.0, -9900024, -9900024], "J/psi(1S)": ["J/psi(1S)", "J/psi(1S)", 3096.9159999999997, 0.0, 7.085169e-12, 0.09290000033435161, 443, 443], "Upsilon_2(1D)": ["Upsilon_2(1D)", "Upsilon_2(1D)", 10156.2, 0.0, 0.0, 0.0, 20555, 20555], "Delta~0": ["Delta~0", "Delta0", 1232.0, 0.0, 5.6257450000000005e-15, 117.00000666026234, -2114, -2114], "Delta~-": ["Delta~-", "Delta+", 1232.0, -1.0, 5.6257450000000005e-15, 117.00000666026234, -2214, -2214], "Ar36[0.0]": ["Ar36[0.0]", null, 33503.549, 18.0, 0.0, 0.0, 1000180360, 0], "Delta~+": ["Delta~+", "Delta-", 1232.0, 1.0, 5.6257450000000005e-15, 117.00000666026234, -1114, -1114], "anti-cu_0": ["anti-cu_0", "cu_0", 0.0, -1.3, 0.0, 0.0, -4201, -4201], "Lambda(1405)~0": ["Lambda(1405)~0", "Lambda(1405)0", 1405.1, 0.0, 1.316424e-14, 50.0000153802223, -13122, 0], "rho_tc-": ["rho_tc-", "rho_tc+", 210000.0, -1.0, 0.0, 0.0, -3000213, -3000213], "K*(1680)-": ["K*(1680)-", "K*(1680)+", 1717.0, -1.0, 2.056913e-15, 320.00002064692944, -30323, 0], "Delta(1920)++": ["Delta(1920)++", "Delta(1920)~--", 1920.0, 2.0, 2.531585e-15, 260.0000404761987, 22224, 0], "Pb207[0.0]": ["Pb207[0.0]", null, 192796.76499999998, 82.0, 0.0, 0.0, 1000822070, 0], "Fe57[0.0]": ["Fe57[0.0]", null, 53034.975000000006, 26.0, 0.0, 0.0, 1000260570, 0], "CELLjet": ["CELLjet", "CELLjet", 0.0, 0.0, 0.0, 0.0, 98, 98], "anti-bs_0": ["anti-bs_0", "bs_0", 0.0, 0.7, 0.0, 0.0, -5301, -5301], "tau+": ["tau+", "tau-", 1776.8200000000002, 1.0, 0.0002903, 2.267351713637401e-09, -15, -15], "~nu_tauLbar": ["~nu_tauLbar", "~nu_tauL", 500000.0, 0.0, 0.0, 0.0, -1000016, -1000016], "Omega_b~+": ["Omega_b~+", "Omega_b-", 6048.8, 1.0, 0.0010999999999999998, 5.98374729517216e-10, -5332, -5332], "Xi*0": ["Xi*0", "Xi*~0", 1531.8, 0.0, 7.233101e-14, 9.100000158561834, 3324, 3324], "Xi*-": ["Xi*-", "Xi*~+", 1535.0, -1.0, 6.648608e-14, 9.900000157460592, 3314, 3314], "chi_b0(3P)": ["chi_b0(3P)", "chi_b0(3P)", 10500.400000000001, 0.0, 0.0, 0.0, 210551, 210551], "K*_0(1430)~0": ["K*_0(1430)~0", "K*_0(1430)0", 1425.0, 0.0, 2.437823e-15, 269.9999969107427, -10311, -10311], "rho(1450)+": ["rho(1450)+", "rho(1450)-", 1465.0, 1.0, 1.64553e-15, 400.0001230417784, 100213, 0], "Lambda(1690)0": ["Lambda(1690)0", "Lambda(1690)~0", 1690.0, 0.0, 1.09702e-14, 60.00001845626675, 13124, 0], "pi_1(1600)+": ["pi_1(1600)+", "pi_1(1600)-", 1662.0, 1.0, 2.742551e-15, 239.99998631527274, 9010213, 0], "D_s1(2536)+": ["D_s1(2536)+", "D_s1(2536)-", 2535.1, 1.0, 7.15448e-13, 0.9200000593599221, 10433, 10433], "psi(4160)": ["psi(4160)", "psi(4160)", 4191.0, 0.0, 9.403029e-15, 70.00001834184894, 9010443, 0], "rho(770)0": ["rho(770)0", "rho(770)0", 775.26, 0.0, 4.4145690000000004e-15, 149.09999197406077, 113, 113], "Upsilon_1(1D)": ["Upsilon_1(1D)", "Upsilon_1(1D)", 10163.7, 0.0, 0.0, 0.0, 30553, 30553], "Xi_b*0": ["Xi_b*0", "Xi_b*~0", 5970.0, 0.0, 0.0, 0.0, 5324, 5324], "K*(1410)+": ["K*(1410)+", "K*(1410)-", 1414.0, 1.0, 2.837122e-15, 231.99996421336044, 100323, 0], "rho(770)+": ["rho(770)+", "rho(770)-", 775.26, 1.0, 4.4145690000000004e-15, 149.09999197406077, 213, 213], "Xi_b*-": ["Xi_b*-", "Xi_b*~+", 5970.0, -1.0, 0.0, 0.0, 5314, 5314], "rho(770)-": ["rho(770)-", "rho(770)+", 775.26, -1.0, 4.4145690000000004e-15, 149.09999197406077, -213, -213], "Ni58[0.0]": ["Ni58[0.0]", null, 53966.422, 28.0, 0.0, 0.0, 1000280580, 0], "Sigma_b+": ["Sigma_b+", "Sigma_b~-", 5811.3, 1.0, 6.785693e-14, 9.699999726909802, 5222, 5222], "KS0": ["KS0", "KS0", 497.614, 0.0, 0.08956399999999999, 7.349071082900916e-12, 310, 310], "K*(892)~0": ["K*(892)~0", "K*(892)0", 895.81, 0.0, 1.388633e-14, 47.40001155589257, -313, -313], "chi_c2(2P)": ["chi_c2(2P)", "chi_c2(2P)", 3927.2, 0.0, 2.7425510000000003e-14, 23.999998631527273, 100445, 0], "Sigma~0": ["Sigma~0", "Sigma0", 1192.642, 0.0, 7.4e-11, 0.00889475949282348, -3212, -3212], "C12[0.0]": ["C12[0.0]", null, 11174.9, 6.0, 0.0, 0.0, 1000060120, 0], "K*_3(1780)~0": ["K*_3(1780)~0", "K*_3(1780)0", 1776.0, 0.0, 4.139699e-15, 159.00001484864904, -317, 0], "Xi_c(2790)~-": ["Xi_c(2790)~-", "Xi_c(2790)+", 2789.1, -1.0, 0.0, 0.0, -104324, 0], "Delta(1700)0": ["Delta(1700)0", "Delta(1700)~0", 1700.0, 0.0, 2.194041e-15, 299.9999555472927, 12114, 0], "anti-bd_1": ["anti-bd_1", "bd_1", 0.0, 0.7, 0.0, 0.0, -5103, -5103], "Delta(1700)-": ["Delta(1700)-", "Delta(1700)~+", 1700.0, -1.0, 2.194041e-15, 299.9999555472927, 11114, 0], "Sigma(1750)~+": ["Sigma(1750)~+", "Sigma(1750)-", 1750.0, 1.0, 7.313469000000001e-15, 89.99999897024757, -23112, 0], "Omega*_cc+": ["Omega*_cc+", "Omega*_cc~-", 3824.6600000000003, 1.0, 0.0, 0.0, 4434, 4434], "B*_s00": ["B*_s00", "B*_s0~0", 5841.0, 0.0, 4.39e-15, 149.93444247583997, 10531, 10531], "Sigma~-": ["Sigma~-", "Sigma+", 1189.3700000000001, -1.0, 0.08018, 8.209181871650505e-12, -3222, -3222], "Delta(1700)+": ["Delta(1700)+", "Delta(1700)~-", 1700.0, 1.0, 2.194041e-15, 299.9999555472927, 12214, 0], "anti-bc_0": ["anti-bc_0", "bc_0", 0.0, -0.3, 0.0, 0.0, -5401, -5401], "anti-bc_1": ["anti-bc_1", "bc_1", 0.0, -0.3, 0.0, 0.0, -5403, -5403], "Sigma_b-": ["Sigma_b-", "Sigma_b~+", 5815.5, -1.0, 1.34329e-13, 4.900000762820668, 5112, 5112], "Delta(1920)~--": ["Delta(1920)~--", "Delta(1920)++", 1920.0, -2.0, 2.531585e-15, 260.0000404761987, -22224, 0], "N(1700)~0": ["N(1700)~0", "N(1700)0", 1700.0, 0.0, 4.388081e-15, 150.00001195714884, -21214, 0], "Sigma(1940)~+": ["Sigma(1940)~+", "Sigma(1940)-", 1940.0, 1.0, 2.991874e-15, 219.99997408612046, -23114, 0], "triton~": ["triton~", "triton", 2809.25, -1.0, 0.0, 0.0, -1000010030, 0], "Sigma(1940)~-": ["Sigma(1940)~-", "Sigma(1940)+", 1940.0, -1.0, 2.991874e-15, 219.99997408612046, -23224, 0], "a_1(1260)0": ["a_1(1260)0", "a_1(1260)0", 1230.0, 0.0, 1.567172e-15, 419.99997605172734, 20113, 20113], "W'-": ["W'-", "W'+", 500000.0, -1.0, 0.0, 0.0, -34, -34], "C13[0.0]": ["C13[0.0]", null, 12112.545, 6.0, 0.0, 0.0, 1000060130, 0], "B_1(H)0": ["B_1(H)0", "B_1(H)~0", 5757.0, 0.0, 2.6299999999999997e-15, 250.270799417847, 20513, 20513], "psi(4415)": ["psi(4415)", "psi(4415)", 4421.0, 0.0, 1.061633e-14, 61.999975741987825, 9020443, 0], "W'+": ["W'+", "W'-", 500000.0, 1.0, 0.0, 0.0, 34, 34], "N(1900)0": ["N(1900)0", "N(1900)~0", 1850.0, 0.0, 0.0, 0.0, 41214, 0], "N(1900)+": ["N(1900)+", "N(1900)~-", 1850.0, 1.0, 0.0, 0.0, 42124, 0], "Ni61[0.0]": ["Ni61[0.0]", null, 56756.909, 28.0, 0.0, 0.0, 1000280610, 0], "a_1(1260)-": ["a_1(1260)-", "a_1(1260)+", 1230.0, -1.0, 1.567172e-15, 419.99997605172734, -20213, -20213], "Sigma(1940)~0": ["Sigma(1940)~0", "Sigma(1940)0", 1940.0, 0.0, 2.991874e-15, 219.99997408612046, -23214, 0], "eta(1405)0": ["eta(1405)0", "eta(1405)0", 1408.8, 0.0, 1.290612e-14, 51.00000638990941, 9020221, 0], "N(1700)~-": ["N(1700)~-", "N(1700)+", 1700.0, -1.0, 4.388081e-15, 150.00001195714884, -22124, 0], "a_1(1260)+": ["a_1(1260)+", "a_1(1260)-", 1230.0, 1.0, 1.567172e-15, 419.99997605172734, 20213, 20213], "N(1900)~0": ["N(1900)~0", "N(1900)0", 1850.0, 0.0, 0.0, 0.0, -41214, 0], "a_0(1450)-": ["a_0(1450)-", "a_0(1450)+", 1474.0, -1.0, 2.48382e-15, 264.9999607334418, -10211, 0], "N(1440)0": ["N(1440)0", "N(1440)~0", 1430.0, 0.0, 2.194041e-15, 299.9999555472927, 12112, 0], "anti-c": ["anti-c", "c", 1350.0, -0.7, 0.0, 0.0, -4, -4], "a_0(1450)+": ["a_0(1450)+", "a_0(1450)-", 1474.0, 1.0, 2.48382e-15, 264.9999607334418, 10211, 0], "N(1720)0": ["N(1720)0", "N(1720)~0", 1720.0, 0.0, 2.632849e-15, 249.99998194690906, 31214, 0], "N(1440)+": ["N(1440)+", "N(1440)~-", 1430.0, 1.0, 2.194041e-15, 299.9999555472927, 12212, 0], "anti-bd_0": ["anti-bd_0", "bd_0", 0.0, 0.7, 0.0, 0.0, -5101, -5101], "N(1720)+": ["N(1720)+", "N(1720)~-", 1720.0, 1.0, 2.632849e-15, 249.99998194690906, 32124, 0], "a_0(1450)0": ["a_0(1450)0", "a_0(1450)0", 1474.0, 0.0, 2.48382e-15, 264.9999607334418, 10111, 0], "nu_Rtau": ["nu_Rtau", "nu_Rtau", 500000.0, 0.0, 0.0, 0.0, 9900016, 9900016], "Ni62[0.0]": ["Ni62[0.0]", null, 57685.877, 28.0, 0.0, 0.0, 1000280620, 0], "~t_1bar": ["~t_1bar", "~t_1", 500000.0, -0.7, 0.0, 0.0, -1000006, -1000006], "pi_2(1670)+": ["pi_2(1670)+", "pi_2(1670)-", 1672.1999999999998, 1.0, 2.531585e-15, 260.0000404761987, 10215, 0], "H_20": ["H_20", "H_20", 310000.0, 0.0, 9.4e-17, 7002.257473073804, 35, 35], "N(1720)~0": ["N(1720)~0", "N(1720)0", 1720.0, 0.0, 2.632849e-15, 249.99998194690906, -31214, 0], "Upsilon(3S)": ["Upsilon(3S)", "Upsilon(3S)", 10355.2, 0.0, 3.242425e-11, 0.020299997763061215, 200553, 200553], "Sigma(1750)~-": ["Sigma(1750)~-", "Sigma(1750)+", 1750.0, -1.0, 7.313469000000001e-15, 89.99999897024757, -23222, 0], "L-": ["L-", "L+", 400000.0, -1.0, 0.0, 0.0, 17, 17], "bb_1": ["bb_1", "anti-bb_1", 0.0, -0.7, 0.0, 0.0, 5503, 5503], "L+": ["L+", "L-", 400000.0, 1.0, 0.0, 0.0, -17, -17], "Sigma(1750)0": ["Sigma(1750)0", "Sigma(1750)~0", 1750.0, 0.0, 7.313469000000001e-15, 89.99999897024757, 23212, 0], "f_1(1420)": ["f_1(1420)", "f_1(1420)", 1426.3999999999999, 0.0, 1.1989290000000001e-14, 54.90001513592026, 20333, 20333], "Sigma(1750)-": ["Sigma(1750)-", "Sigma(1750)~+", 1750.0, -1.0, 7.313469000000001e-15, 89.99999897024757, 23112, 0], "~nu_muLbar": ["~nu_muLbar", "~nu_muL", 500000.0, 0.0, 0.0, 0.0, -1000014, -1000014], "Sigma(1750)+": ["Sigma(1750)+", "Sigma(1750)~-", 1750.0, 1.0, 7.313469000000001e-15, 89.99999897024757, 23222, 0], "Delta(1905)++": ["Delta(1905)++", "Delta(1905)~--", 1880.0, 2.0, 1.9945819999999998e-15, 330.0000714279672, 2226, 0], "anti-bu_0": ["anti-bu_0", "bu_0", 0.0, -0.3, 0.0, 0.0, -5201, -5201], "anti-b-hadron": ["anti-b-hadron", "b-hadron", 5000.0, 0.3, 0.001290893, 5.09889047712659e-10, -85, -85], "Upsilon_1(2D)": ["Upsilon_1(2D)", "Upsilon_1(2D)", 10434.900000000001, 0.0, 0.0, 0.0, 130553, 130553], "N(1720)~-": ["N(1720)~-", "N(1720)+", 1720.0, -1.0, 2.632849e-15, 249.99998194690906, -32124, 0], "W_R+": ["W_R+", "W_R-", 750000.0, 1.0, 0.0, 0.0, 9900024, 9900024], "~nu_tauRbar": ["~nu_tauRbar", "~nu_tauR", 500000.0, 0.0, 0.0, 0.0, -2000016, -2000016], "Delta(1620)~--": ["Delta(1620)~--", "Delta(1620)++", 1630.0, -2.0, 4.701516e-15, 139.99999201724245, -2222, 0], "Delta(1900)++": ["Delta(1900)++", "Delta(1900)~--", 1840.0, 2.0, 0.0, 0.0, 12222, 0], "geantino": ["geantino", "geantino", 0.0, 0.0, 1e+24, 6.582122024689375e-37, 480000000, 0], "D(2S)-": ["D(2S)-", "D(2S)+", 2580.0, -1.0, 0.0, 0.0, -100411, 0], "chi_b2(2P)": ["chi_b2(2P)", "chi_b2(2P)", 10268.65, 0.0, 0.0, 0.0, 100555, 100555], "pi_22_1_tc": ["pi_22_1_tc", "pi_22_1_tc", 125000.0, 0.0, 0.0, 0.0, 3100111, 3100111], "Lambda(1800)0": ["Lambda(1800)0", "Lambda(1800)~0", 1800.0, 0.0, 2.194041e-15, 299.9999555472927, 43122, 0], "P31[0.0]": ["P31[0.0]", null, 28851.869000000002, 15.0, 0.0, 0.0, 1000150310, 0], "Xi*_cc~-": ["Xi*_cc~-", "Xi*_cc+", 3656.48, -1.0, 0.0, 0.0, -4414, -4414], "K_1(1400)~0": ["K_1(1400)~0", "K_1(1400)0", 1403.0, 0.0, 3.782829e-15, 173.9999884924583, -20313, -20313], "Lambda(1600)~0": ["Lambda(1600)~0", "Lambda(1600)0", 1600.0, 0.0, 4.388081e-15, 150.00001195714884, -23122, 0], "~chi_30": ["~chi_30", "~chi_30", 500000.0, 0.0, 0.0, 0.0, 1000025, 1000025], "ud_0": ["ud_0", "anti-ud_0", 0.0, 0.3, 0.0, 0.0, 2101, 2101], "Lambda_c+": ["Lambda_c+", "Lambda_c~-", 2286.46, 1.0, 0.0002, 3.291061012344688e-09, 4122, 4122], "anti-dd_1": ["anti-dd_1", "dd_1", 0.0, 0.7, 0.0, 0.0, -1103, -1103], "anti-rndmflav": ["anti-rndmflav", "rndmflav", 0.0, 0.0, 0.0, 0.0, -82, -82], "K_1(1270)~0": ["K_1(1270)~0", "K_1(1270)0", 1272.0, 0.0, 7.313469000000001e-15, 89.99999897024757, -10313, -10313], "nu_e": ["nu_e", "nu_e~", 0.0, 0.0, 1e+25, 6.582122024689376e-38, 12, 12], "Delta(1950)0": ["Delta(1950)0", "Delta(1950)~0", 1930.0, 0.0, 2.350758e-15, 279.9999840344849, 2118, 0], "deutron~": ["deutron~", "deuteron", 1875.613, -1.0, 0.0, 0.0, -1000010020, 0], "N(1535)~0": ["N(1535)~0", "N(1535)0", 1535.0, 0.0, 4.388081e-15, 150.00001195714884, -22112, 0], "Sigma_b~+": ["Sigma_b~+", "Sigma_b-", 5815.5, 1.0, 1.34329e-13, 4.900000762820668, -5112, -5112], "Delta(1950)+": ["Delta(1950)+", "Delta(1950)~-", 1930.0, 1.0, 2.350758e-15, 279.9999840344849, 2218, 0], "Delta(1950)-": ["Delta(1950)-", "Delta(1950)~+", 1930.0, -1.0, 2.350758e-15, 279.9999840344849, 1118, 0], "B_s1(H)~0": ["B_s1(H)~0", "B_s1(H)0", 5859.0, 0.0, 2.6299999999999997e-15, 250.270799417847, -20533, -20533], "anti-cd_0": ["anti-cd_0", "cd_0", 0.0, -0.3, 0.0, 0.0, -4101, -4101], "anti-cd_1": ["anti-cd_1", "cd_1", 0.0, -0.3, 0.0, 0.0, -4103, -4103], "Delta0": ["Delta0", "Delta~0", 1232.0, 0.0, 5.6257450000000005e-15, 117.00000666026234, 2114, 2114], "~b_1": ["~b_1", "~b_1bar", 500000.0, -0.3, 0.0, 0.0, 1000005, 1000005], "Lambda(1830)0": ["Lambda(1830)0", "Lambda(1830)~0", 1830.0, 0.0, 6.928549e-15, 95.00000685120904, 13126, 0], "Omega_bc~0": ["Omega_bc~0", "Omega_bc0", 7190.99, 0.0, 0.0005, 1.316424404937875e-09, -5342, -5342], "~nu_eLbar": ["~nu_eLbar", "~nu_eL", 500000.0, 0.0, 0.0, 0.0, -1000012, -1000012], "N(2190)~0": ["N(2190)~0", "N(2190)0", 2190.0, 0.0, 1.316424e-15, 500.00015380222294, -1218, 0], "Delta(1930)-": ["Delta(1930)-", "Delta(1930)~+", 1950.0, -1.0, 1.828367e-15, 360.00004510524286, 11116, 0], "nu_L": ["nu_L", "anti-nu_L", 0.0, 0.0, 0.0, 0.0, 18, 18], "~e_L+": ["~e_L+", "~e_L-", 500000.0, 1.0, 0.0, 0.0, -1000011, -1000011], "Sigma(2250)0": ["Sigma(2250)0", "Sigma(2250)~0", 2250.0, 0.0, 6.58e-15, 100.03224961534006, 103212, 0], "N(2190)~-": ["N(2190)~-", "N(2190)+", 2190.0, -1.0, 1.316424e-15, 500.00015380222294, -2128, 0], "~e_L-": ["~e_L-", "~e_L+", 500000.0, -1.0, 0.0, 0.0, 1000011, 1000011], "X_1(3872)": ["X_1(3872)", "X_1(3872)", 3871.69, 0.0, 2.07634e-12, 0.3170059828683826, 9920443, 9920443], "Omega*_bbc~0": ["Omega*_bbc~0", "Omega*_bbc0", 11711.470000000001, 0.0, 0.0, 0.0, -5544, -5544], "Delta+": ["Delta+", "Delta~-", 1232.0, 1.0, 5.6257450000000005e-15, 117.00000666026234, 2214, 2214], "Delta-": ["Delta-", "Delta~+", 1232.0, -1.0, 5.6257450000000005e-15, 117.00000666026234, 1114, 1114], "bd_1": ["bd_1", "anti-bd_1", 0.0, -0.7, 0.0, 0.0, 5103, 5103], "bd_0": ["bd_0", "anti-bd_0", 0.0, -0.7, 0.0, 0.0, 5101, 5101], "Delta(1905)~--": ["Delta(1905)~--", "Delta(1905)++", 1880.0, -2.0, 1.9945819999999998e-15, 330.0000714279672, -2226, 0], "K*(1680)~0": ["K*(1680)~0", "K*(1680)0", 1717.0, 0.0, 2.056913e-15, 320.00002064692944, -30313, 0], "a_2(1320)+": ["a_2(1320)+", "a_2(1320)-", 1318.3, 1.0, 6.151516e-15, 106.99999845061566, 215, 215], "Lambda(1820)~0": ["Lambda(1820)~0", "Lambda(1820)0", 1820.0, 0.0, 8.227652e-15, 80.00000516173236, -3126, 0], "R0": ["R0", "anti-R0", 5000000.0, 0.0, 0.0, 0.0, 41, 41], "a_0(980)0": ["a_0(980)0", "a_0(980)0", 980.0, 0.0, 8.776163e-15, 74.99999743269781, 9000111, 10111], "Xi_c~0": ["Xi_c~0", "Xi_c0", 2470.88, 0.0, 0.000112, 5.876894664901228e-09, -4132, -4132], "pi(1300)0": ["pi(1300)0", "pi(1300)0", 1300.0, 0.0, 1.64553e-15, 400.0001230417784, 100111, 0], "Lambda_c(2595)~-": ["Lambda_c(2595)~-", "Lambda_c(2595)+", 2592.25, -1.0, 2.531585e-13, 2.600000404761987, -14122, 0], "~nu_eL": ["~nu_eL", "~nu_eLbar", 500000.0, 0.0, 0.0, 0.0, 1000012, 1000012], "Omega*_bc~0": ["Omega*_bc~0", "Omega*_bc0", 7219.0, 0.0, 0.0, 0.0, -5434, -5434], "Xi_bc+": ["Xi_bc+", "Xi_bc~-", 6900.0, 1.0, 0.0005, 1.316424404937875e-09, 5242, 5242], "Omega*_bbc0": ["Omega*_bbc0", "Omega*_bbc~0", 11711.470000000001, 0.0, 0.0, 0.0, 5544, 5544], "chi_b2(1P)": ["chi_b2(1P)", "chi_b2(1P)", 9912.21, 0.0, 0.0, 0.0, 555, 555], "pi(1300)-": ["pi(1300)-", "pi(1300)+", 1300.0, -1.0, 1.64553e-15, 400.0001230417784, -100211, 0], "Xi_bc0": ["Xi_bc0", "Xi_bc~0", 6900.0, 0.0, 0.0005, 1.316424404937875e-09, 5142, 5142], "Lambda(1690)~0": ["Lambda(1690)~0", "Lambda(1690)0", 1690.0, 0.0, 1.09702e-14, 60.00001845626675, -13124, 0], "Be10[0.0]": ["Be10[0.0]", null, 9327.545, 4.0, 0.0, 0.0, 1000040100, 0], "a_2(1320)0": ["a_2(1320)0", "a_2(1320)0", 1318.3, 0.0, 6.151516e-15, 106.99999845061566, 115, 115], "Delta~--": ["Delta~--", "Delta++", 1232.0, -2.0, 5.6257450000000005e-15, 117.00000666026234, -2224, -2224], "N(1990)0": ["N(1990)0", "N(1990)~0", 1950.0, 0.0, 0.0, 0.0, 12118, 0], "D*(2007)~0": ["D*(2007)~0", "D*(2007)0", 2006.9599999999998, 0.0, 1.000003e-10, 0.006582102278382541, -423, -423], "anti-b'-hadron": ["anti-b'-hadron", "b'-hadron", 400000.0, 0.3, 0.0, 0.0, -87, 0], "Lambda(2110)~0": ["Lambda(2110)~0", "Lambda(2110)0", 2110.0, 0.0, 3.291061e-15, 200.000000750195, -23126, 0], "Sigma_c0": ["Sigma_c0", "Sigma_c~0", 2453.74, 0.0, 3.047279e-13, 2.159999798078671, 4112, 4112], "K*(892)-": ["K*(892)-", "K*(892)+", 891.66, -1.0, 1.295693e-14, 50.80001223043866, -323, -323], "B_c1(L)-": ["B_c1(L)-", "B_c1(L)+", 7300.0, -1.0, 0.0, 0.0, -10543, -10543], "pi_1(1600)-": ["pi_1(1600)-", "pi_1(1600)+", 1662.0, -1.0, 2.742551e-15, 239.99998631527274, -9010213, 0], "B_c1(H)+": ["B_c1(H)+", "B_c1(H)-", 7400.0, 1.0, 0.0, 0.0, 20543, 20543], "K*(892)+": ["K*(892)+", "K*(892)-", 891.66, 1.0, 1.295693e-14, 50.80001223043866, 323, 323], "N(1710)~0": ["N(1710)~0", "N(1710)0", 1710.0, 0.0, 6.582122e-15, 100.0000003750975, -42112, 0], "K*(892)0": ["K*(892)0", "K*(892)~0", 895.81, 0.0, 1.388633e-14, 47.40001155589257, 313, 313], "N(1900)~-": ["N(1900)~-", "N(1900)+", 1850.0, -1.0, 0.0, 0.0, -42124, 0], "Sigma_c+": ["Sigma_c+", "Sigma_c~-", 2452.9, 1.0, 3.999999e-13, 1.6455309175550732, 4212, 4212], "B12[0.0]": ["B12[0.0]", null, 11191.295, 5.0, 0.0, 0.0, 1000050120, 0], "anti-bb_1": ["anti-bb_1", "bb_1", 0.0, 0.7, 0.0, 0.0, -5503, -5503], "B*_s0~0": ["B*_s0~0", "B*_s00", 5841.0, 0.0, 4.39e-15, 149.93444247583997, -10531, -10531], "Xi(1820)~+": ["Xi(1820)~+", "Xi(1820)-", 1823.0, 1.0, 2.7425510000000003e-14, 23.999998631527273, -13314, 0], "Omega_c0": ["Omega_c0", "Omega_c~0", 2695.2, 0.0, 6.9e-05, 9.539307282158515e-09, 4332, 4332], "K*_0(1430)-": ["K*_0(1430)-", "K*_0(1430)+", 1425.0, -1.0, 2.437823e-15, 269.9999969107427, -10321, -10321], "Lambda(1820)0": ["Lambda(1820)0", "Lambda(1820)~0", 1820.0, 0.0, 8.227652e-15, 80.00000516173236, 3126, 0], "Mg24[0.0]": ["Mg24[0.0]", null, 22341.92, 12.0, 0.0, 0.0, 1000120240, 0], "Delta(1900)~--": ["Delta(1900)~--", "Delta(1900)++", 1840.0, -2.0, 0.0, 0.0, -12222, 0], "Xi_cc~-": ["Xi_cc~-", "Xi_cc+", 3597.98, -1.0, 0.0003335641, 1.973270512231195e-09, -4412, -4412], "~d_Rbar": ["~d_Rbar", "~d_R", 500000.0, 0.3, 0.0, 0.0, -2000001, -2000001], "B_c-": ["B_c-", "B_c+", 6273.7, -1.0, 0.000507, 1.2982489200570762e-09, -541, -541], "B*_s0": ["B*_s0", "B*_s~0", 5415.4, 0.0, 1e-10, 0.006582122024689376, 533, 533], "B_c+": ["B_c+", "B_c-", 6273.7, 1.0, 0.000507, 1.2982489200570762e-09, 541, 541], "Mn55[0.0]": ["Mn55[0.0]", null, 51174.456999999995, 25.0, 0.0, 0.0, 1000250550, 0], "cd_0": ["cd_0", "anti-cd_0", 0.0, 0.3, 0.0, 0.0, 4101, 4101], "cd_1": ["cd_1", "anti-cd_1", 0.0, 0.3, 0.0, 0.0, 4103, 4103], "Xi_c(2815)~-": ["Xi_c(2815)~-", "Xi_c(2815)+", 2816.6000000000004, -1.0, 0.0, 0.0, -104322, 0], "Xi(1820)~0": ["Xi(1820)~0", "Xi(1820)0", 1823.0, 0.0, 2.7425510000000003e-14, 23.999998631527273, -13324, 0], "sigma_0": ["sigma_0", "sigma_0", 475.0, 0.0, 1.196749e-15, 550.0002109623134, 9000221, 0], "b_1(1235)+": ["b_1(1235)+", "b_1(1235)-", 1229.5, 1.0, 4.635297e-15, 142.00000614177205, 10213, 10213], "N15[0.0]": ["N15[0.0]", null, 13043.778, 7.0, 0.0, 0.0, 1000070150, 0], "K*_3(1780)-": ["K*_3(1780)-", "K*_3(1780)+", 1776.0, -1.0, 4.139699e-15, 159.00001484864904, -327, 0], "K*_3(1780)+": ["K*_3(1780)+", "K*_3(1780)-", 1776.0, 1.0, 4.139699e-15, 159.00001484864904, 327, 0], "chi_c2(1P)": ["chi_c2(1P)", "chi_c2(1P)", 3556.2, 0.0, 3.410425e-13, 1.9300005203719113, 445, 445], "Delta(1900)~+": ["Delta(1900)~+", "Delta(1900)-", 1840.0, 1.0, 0.0, 0.0, -11112, 0], "phi(1020)": ["phi(1020)", "phi(1020)", 1019.4609999999999, 0.0, 1.545099e-13, 4.260000184253162, 333, 333], "K*_3(1780)0": ["K*_3(1780)0", "K*_3(1780)~0", 1776.0, 0.0, 4.139699e-15, 159.00001484864904, 317, 0], "N(1535)~-": ["N(1535)~-", "N(1535)+", 1535.0, -1.0, 4.388081e-15, 150.00001195714884, -22212, 0], "phasespa": ["phasespa", "phasespa", 1000.0, 0.0, 0.0, 0.0, 83, 83], "e-": ["e-", "e+", 0.5109999999999999, -1.0, 1e+25, 6.582122024689376e-38, 11, 11], "B_s0L": ["B_s0L", "B_s0L", 5366.7699999999995, 0.0, 0.001405, 4.684784359209521e-10, 350, 0], "B_s0H": ["B_s0H", "B_s0H", 5366.7699999999995, 0.0, 0.0016610000000000001, 3.9627465530941453e-10, 530, 0], "e+": ["e+", "e-", 0.5109999999999999, 1.0, 1e+25, 6.582122024689376e-38, -11, -11], "cs_0": ["cs_0", "anti-cs_0", 0.0, 0.3, 0.0, 0.0, 4301, 4301], "D_1(H)-": ["D_1(H)-", "D_1(H)+", 2445.0, -1.0, 2.6299999999999997e-15, 250.270799417847, -20413, -20413], "anti-nu_L": ["anti-nu_L", "nu_L", 0.0, 0.0, 0.0, 0.0, -18, -18], "Cr53[0.0]": ["Cr53[0.0]", null, 49313.894, 24.0, 0.0, 0.0, 1000240530, 0], "D_1(H)+": ["D_1(H)+", "D_1(H)-", 2445.0, 1.0, 2.6299999999999997e-15, 250.270799417847, 20413, 20413], "junction": ["junction", "junction", 0.0, 0.0, 0.0, 0.0, 88, 88], "pi(1800)0": ["pi(1800)0", "pi(1800)0", 1812.0, 0.0, 3.164482e-15, 207.99998308378358, 9010111, 0], "opticalphoton": ["opticalphoton", "opticalphoton", 0.0, 0.0, 1e+25, 6.582122024689376e-38, 20022, 0], "cu_1": ["cu_1", "anti-cu_1", 0.0, 1.3, 0.0, 0.0, 4203, 4203], "cu_0": ["cu_0", "anti-cu_0", 0.0, 1.3, 0.0, 0.0, 4201, 4201], "Xi_cc+": ["Xi_cc+", "Xi_cc~-", 3597.98, 1.0, 0.0003335641, 1.973270512231195e-09, 4412, 4412], "anti-Xss": ["anti-Xss", "Xss", 1800.0, 0.0, 0.0, 0.0, -30363, -30363], "anti-s": ["anti-s", "s", 199.0, 0.3, 0.0, 0.0, -3, -3], "anti-u": ["anti-u", "u", 5.6, -0.7, 0.0, 0.0, -2, -2], "anti-t": ["anti-t", "t", 173500.0, -0.7, 3.291061e-16, 2000.0000075019502, -6, -6], "g": ["g", "g", 0.0, 0.0, 1e+25, 6.582122024689376e-38, 21, 21], "anti-Xsu": ["anti-Xsu", "Xsu", 1600.0, -1.0, 0.0, 0.0, -30353, -30353], "Lambda0": ["Lambda0", "Lambda~0", 1115.683, 0.0, 0.2632, 2.5008062403835015e-12, 3122, 3122], "K_2(1770)~0": ["K_2(1770)~0", "K_2(1770)0", 1773.0, 0.0, 3.538775e-15, 186.00001482686451, -10315, 0], "alpha~": ["alpha~", "alpha", 3727.417, -2.0, 0.0, 0.0, -1000020040, 0], "pi_2(1670)0": ["pi_2(1670)0", "pi_2(1670)0", 1672.1999999999998, 0.0, 2.531585e-15, 260.0000404761987, 10115, 0], "B*_s2~0": ["B*_s2~0", "B*_s20", 5839.96, 0.0, 4.113825e-13, 1.6000004921671134, -535, -535], "D*_s+": ["D*_s+", "D*_s-", 2112.1, 1.0, 1.000003e-10, 0.006582102278382541, 433, 433], "anti-b": ["anti-b", "b", 5000.0, 0.3, 0.0, 0.0, -5, -5], "D*_s-": ["D*_s-", "D*_s+", 2112.1, -1.0, 1.000003e-10, 0.006582102278382541, -433, -433], "anti-d": ["anti-d", "d", 9.9, 0.3, 0.0, 0.0, -1, -1], "anti-Xsd": ["anti-Xsd", "Xsd", 1600.0, 0.0, 0.0, 0.0, -30343, -30343], "nu*_e0": ["nu*_e0", "nu*_ebar0", 400000.0, 0.0, 0.0, 0.0, 4000012, 4000012], "Cr54[0.0]": ["Cr54[0.0]", null, 50243.741, 24.0, 0.0, 0.0, 1000240540, 0], "pi_tc-": ["pi_tc-", "pi_tc+", 110000.0, -1.0, 0.0, 0.0, -3000211, -3000211], "Delta(1910)~0": ["Delta(1910)~0", "Delta(1910)0", 1890.0, 0.0, 2.350758e-15, 279.9999840344849, -21212, 0], "pi_tc+": ["pi_tc+", "pi_tc-", 110000.0, 1.0, 0.0, 0.0, 3000211, 3000211], "rho_tc0": ["rho_tc0", "rho_tc0", 210000.0, 0.0, 0.0, 0.0, 3000113, 3000113], "Xi(1690)~+": ["Xi(1690)~+", "Xi(1690)-", 1690.0, 1.0, 0.0, 0.0, -203312, 0], "Lambda_c(2625)~-": ["Lambda_c(2625)~-", "Lambda_c(2625)+", 2628.11, -1.0, 0.0, 0.0, -104124, 0], "Sigma_c*+": ["Sigma_c*+", "Sigma_c*~-", 2517.5, 1.0, 3.291061e-13, 2.0000000075019497, 4214, 4214], "K+": ["K+", "K-", 493.67699999999996, 1.0, 12.38, 5.3167383075035345e-14, 321, 321], "pi_1(1400)-": ["pi_1(1400)-", "pi_1(1400)+", 1354.0, -1.0, 1.9945819999999998e-15, 330.0000714279672, -9000213, 0], "K-": ["K-", "K+", 493.67699999999996, -1.0, 12.38, 5.3167383075035345e-14, -321, -321], "K0": ["K0", "K~0", 497.614, 0.0, 0.0, 0.0, 311, 311], "Delta(1910)~--": ["Delta(1910)~--", "Delta(1910)++", 1890.0, -2.0, 2.350758e-15, 279.9999840344849, -22222, 0], "H_10": ["H_10", "H_10", 125700.0, 0.0, 9.4e-17, 7002.257473073804, 25, 25], "Omega*_bbb~+": ["Omega*_bbb~+", "Omega*_bbb-", 15110.609999999999, 1.0, 0.0, 0.0, -5554, -5554], "Sigma_c*0": ["Sigma_c*0", "Sigma_c*~0", 2518.8, 0.0, 4.539394e-14, 14.500001596445198, 4114, 4114], "Sigma(1750)~0": ["Sigma(1750)~0", "Sigma(1750)0", 1750.0, 0.0, 7.313469000000001e-15, 89.99999897024757, -23212, 0], "~s_Lbar": ["~s_Lbar", "~s_L", 500000.0, 0.3, 0.0, 0.0, -1000003, -1000003], "K(1460)+": ["K(1460)+", "K(1460)-", 1432.3999999999999, 1.0, 0.0, 0.0, 100321, 0], "anti-bu_1": ["anti-bu_1", "bu_1", 0.0, -0.3, 0.0, 0.0, -5203, -5203], "d*bar": ["d*bar", "d*", 400000.0, 0.3, 0.0, 0.0, -4000001, -4000001], "B_s1(H)0": ["B_s1(H)0", "B_s1(H)~0", 5859.0, 0.0, 2.6299999999999997e-15, 250.270799417847, 20533, 20533], "K(1460)~0": ["K(1460)~0", "K(1460)0", 1432.3999999999999, 0.0, 0.0, 0.0, -100311, 0], "K*_4(2045)0": ["K*_4(2045)0", "K*_4(2045)~0", 2045.0, 0.0, 3.324304e-15, 198.00000314921186, 319, 0], "Xi(2030)0": ["Xi(2030)0", "Xi(2030)~0", 2025.0, 0.0, 3.291061e-14, 20.000000075019503, 203326, 0], "system": ["system", "system", 0.0, 0.0, 0.0, 0.0, 90, 90], "rndmflav": ["rndmflav", "anti-rndmflav", 0.0, 0.0, 0.0, 0.0, 82, 82], "rho_tc+": ["rho_tc+", "rho_tc-", 210000.0, 1.0, 0.0, 0.0, 3000213, 3000213], "K*_4(2045)+": ["K*_4(2045)+", "K*_4(2045)-", 2045.0, 1.0, 3.324304e-15, 198.00000314921186, 329, 0], "Xi(1820)-": ["Xi(1820)-", "Xi(1820)~+", 1823.0, -1.0, 2.7425510000000003e-14, 23.999998631527273, 13314, 0], "K*_4(2045)-": ["K*_4(2045)-", "K*_4(2045)+", 2045.0, -1.0, 3.324304e-15, 198.00000314921186, -329, 0], "Xi(2030)-": ["Xi(2030)-", "Xi(2030)~+", 2025.0, -1.0, 3.291061e-14, 20.000000075019503, 203316, 0], "Delta(1950)~--": ["Delta(1950)~--", "Delta(1950)++", 1930.0, -2.0, 2.350758e-15, 279.9999840344849, -2228, 0], "Sigma(1915)~-": ["Sigma(1915)~-", "Sigma(1915)+", 1915.0, -1.0, 5.485102e-15, 119.99999315763637, -13226, 0], "N14[0.0]": ["N14[0.0]", null, 13043.78, 7.0, 0.0, 0.0, 1000070140, 0], "Omega-": ["Omega-", "Omega~+", 1672.45, -1.0, 0.0821, 8.017201004493757e-12, 3334, 3334], "Delta(1900)-": ["Delta(1900)-", "Delta(1900)~+", 1840.0, -1.0, 0.0, 0.0, 11112, 0], "Omega_c*~0": ["Omega_c*~0", "Omega_c*0", 2765.8999999999996, 0.0, 0.0, 0.0, -4334, -4334], "Sigma(1775)0": ["Sigma(1775)0", "Sigma(1775)~0", 1775.0, 0.0, 5.485102e-15, 119.99999315763637, 3216, 0], "bc_1": ["bc_1", "anti-bc_1", 0.0, 0.3, 0.0, 0.0, 5403, 5403], "He3~[0.0]": ["He3~[0.0]", "He3[0.0]", 2809.23, -2.0, 0.0, 0.0, -1000020030, 0], "K*_2(1980)-": ["K*_2(1980)-", "K*_2(1980)+", 1973.0, -1.0, 0.0, 0.0, -100325, 0], "N(1700)0": ["N(1700)0", "N(1700)~0", 1700.0, 0.0, 4.388081e-15, 150.00001195714884, 21214, 0], "f_2(2010)": ["f_2(2010)", "f_2(2010)", 2011.0000000000002, 0.0, 3.291061e-15, 200.000000750195, 9060225, 0], "Graviton*": ["Graviton*", "Graviton*", 1000000.0, 0.0, 0.0, 0.0, 5000039, 5000039], "Sigma(1775)-": ["Sigma(1775)-", "Sigma(1775)~+", 1775.0, -1.0, 5.485102e-15, 119.99999315763637, 3116, 0], "nu*_ebar0": ["nu*_ebar0", "nu*_e0", 400000.0, 0.0, 0.0, 0.0, -4000012, -4000012], "Sigma(1775)+": ["Sigma(1775)+", "Sigma(1775)~-", 1775.0, 1.0, 5.485102e-15, 119.99999315763637, 3226, 0], "dd_1": ["dd_1", "anti-dd_1", 0.0, -0.7, 0.0, 0.0, 1103, 1103], "b": ["b", "anti-b", 5000.0, -0.3, 0.0, 0.0, 5, 5], "K*_2(1980)0": ["K*_2(1980)0", "K*_2(1980)~0", 1973.0, 0.0, 0.0, 0.0, 100315, 0], "Mg25[0.0]": ["Mg25[0.0]", null, 23274.154, 12.0, 0.0, 0.0, 1000120250, 0], "O18[0.0]": ["O18[0.0]", null, 16766.108, 8.0, 0.0, 0.0, 1000080180, 0], "Omega_bbc0": ["Omega_bbc0", "Omega_bbc~0", 11707.67, 0.0, 0.001290893, 5.09889047712659e-10, 5542, 5542], "Omega(2250)~+": ["Omega(2250)~+", "Omega(2250)-", 2252.0, 1.0, 1.196749e-14, 55.00002109623133, -203338, 0], "B_s1(L)~0": ["B_s1(L)~0", "B_s1(L)0", 5828.700000000001, 0.0, 1.316424e-13, 5.00000153802223, -10533, -10533], "Delta(1910)~+": ["Delta(1910)~+", "Delta(1910)-", 1890.0, 1.0, 2.350758e-15, 279.9999840344849, -21112, 0], "Xu0": ["Xu0", "Xu0", 1000.0, 0.0, 0.0, 0.0, 43, 43], "Lambda(2100)0": ["Lambda(2100)0", "Lambda(2100)~0", 2100.0, 0.0, 3.291061e-15, 200.000000750195, 3128, 0], "bu_1": ["bu_1", "anti-bu_1", 0.0, 0.3, 0.0, 0.0, 5203, 5203], "~mu_L-": ["~mu_L-", "~mu_L+", 500000.0, -1.0, 0.0, 0.0, 1000013, 1000013], "Xi(1690)-": ["Xi(1690)-", "Xi(1690)~+", 1690.0, -1.0, 0.0, 0.0, 203312, 0], "Lambda_c~-": ["Lambda_c~-", "Lambda_c+", 2286.46, -1.0, 0.0002, 3.291061012344688e-09, -4122, -4122], "Xi*_bb0": ["Xi*_bb0", "Xi*_bb~0", 10441.44, 0.0, 0.0, 0.0, 5524, 5524], "Xi*_bb-": ["Xi*_bb-", "Xi*_bb~+", 10441.44, -1.0, 0.0, 0.0, 5514, 5514], "bs_0": ["bs_0", "anti-bs_0", 0.0, -0.7, 0.0, 0.0, 5301, 5301], "bs_1": ["bs_1", "anti-bs_1", 0.0, -0.7, 0.0, 0.0, 5303, 5303], "O16[0.0]": ["O16[0.0]", null, 14895.099999999999, 8.0, 0.0, 0.0, 1000080160, 0], "Xi(1690)0": ["Xi(1690)0", "Xi(1690)~0", 1690.0, 0.0, 0.0, 0.0, 203322, 0], "Xu-": ["Xu-", "Xu+", 1000.0, -1.0, 0.0, 0.0, -44, -44], "K_1(1400)0": ["K_1(1400)0", "K_1(1400)~0", 1403.0, 0.0, 3.782829e-15, 173.9999884924583, 20313, 20313], "Xu+": ["Xu+", "Xu-", 1000.0, 1.0, 0.0, 0.0, 44, 44], "pi_1(1400)0": ["pi_1(1400)0", "pi_1(1400)0", 1354.0, 0.0, 1.9945819999999998e-15, 330.0000714279672, 9000113, 0], "rho(1700)+": ["rho(1700)+", "rho(1700)-", 1720.0, 1.0, 2.632849e-15, 249.99998194690906, 30213, 0], "rho(1450)-": ["rho(1450)-", "rho(1450)+", 1465.0, -1.0, 1.64553e-15, 400.0001230417784, -100213, 0], "D~0": ["D~0", "D0", 1864.8400000000001, 0.0, 0.0004101, 1.6050041513507378e-09, -421, -421], "Omega*_bb-": ["Omega*_bb-", "Omega*_bb~+", 10614.26, -1.0, 0.0, 0.0, 5534, 5534], "~Gravitino": ["~Gravitino", "~Gravitino", 500000.0, 0.0, 0.0, 0.0, 1000039, 1000039], "f_2(2340)": ["f_2(2340)", "f_2(2340)", 2339.0, 0.0, 2.063361e-15, 319.00002106705404, 9090225, 0], "chi_c0(1P)": ["chi_c0(1P)", "chi_c0(1P)", 3414.75, 0.0, 6.328963e-14, 10.400000797428229, 10441, 10441], "cc_1": ["cc_1", "anti-cc_1", 0.0, 1.3, 0.0, 0.0, 4403, 4403], "D*(2640)~0": ["D*(2640)~0", "D*(2640)0", 2640.0, 0.0, 0.0, 0.0, -100423, 0], "anti-R0": ["anti-R0", "R0", 5000000.0, 0.0, 0.0, 0.0, -41, -41], "rho(1700)0": ["rho(1700)0", "rho(1700)0", 1720.0, 0.0, 2.632849e-15, 249.99998194690906, 30113, 0], "pi_1(1400)+": ["pi_1(1400)+", "pi_1(1400)-", 1354.0, 1.0, 1.9945819999999998e-15, 330.0000714279672, 9000213, 0], "Omega_c*0": ["Omega_c*0", "Omega_c*~0", 2765.8999999999996, 0.0, 0.0, 0.0, 4334, 4334], "Xi(2030)~0": ["Xi(2030)~0", "Xi(2030)0", 2025.0, 0.0, 3.291061e-14, 20.000000075019503, -203326, 0], "rho(1450)0": ["rho(1450)0", "rho(1450)0", 1465.0, 0.0, 1.64553e-15, 400.0001230417784, 100113, 0], "omega_3(1670)": ["omega_3(1670)", "omega_3(1670)", 1667.0, 0.0, 3.91793e-15, 167.9999904206909, 227, 0], "chi_b1(3P)": ["chi_b1(3P)", "chi_b1(3P)", 10515.7, 0.0, 0.0, 0.0, 220553, 220553], "Si28[0.0]": ["Si28[0.0]", null, 26053.2, 14.0, 0.0, 0.0, 1000140280, 0], "omega(1420)": ["omega(1420)", "omega(1420)", 1425.0, 0.0, 3.061452e-15, 215.00000733930747, 100223, 0], "~nu_eRbar": ["~nu_eRbar", "~nu_eR", 500000.0, 0.0, 0.0, 0.0, -2000012, -2000012], "eta_b(2S)": ["eta_b(2S)", "eta_b(2S)", 9997.0, 0.0, 0.0, 0.0, 100551, 0], "Ni64[0.0]": ["Ni64[0.0]", null, 59548.512, 28.0, 0.0, 0.0, 1000280640, 0], "Omega*_ccc++": ["Omega*_ccc++", "Omega*_ccc~--", 4915.94, 2.0, 0.0, 0.0, 4444, 4444], "Lambda_b(5912)~0": ["Lambda_b(5912)~0", "Lambda_b(5912)0", 5911.97, 0.0, 1.316e-12, 0.5001612480767003, -15122, -15122], "Sigma_c*~--": ["Sigma_c*~--", "Sigma_c*++", 2517.9, -2.0, 4.417531e-14, 14.900001889492966, -4224, -4224], "alpha": ["alpha", "alpha~", 3727.417, 2.0, 1e+24, 6.582122024689375e-37, 1000020040, 0], "Al27[0.0]": ["Al27[0.0]", null, 25126.5, 13.0, 0.0, 0.0, 1000130270, 0], "Xi_b*~0": ["Xi_b*~0", "Xi_b*0", 5970.0, 0.0, 0.0, 0.0, -5324, -5324], "Xi'_bc0": ["Xi'_bc0", "Xi'_bc~0", 7037.24, 0.0, 0.0, 0.0, 5412, 5412], "Xi'_c+": ["Xi'_c+", "Xi'_c~-", 2575.6, 1.0, 0.0, 0.0, 4322, 4322], "rho_3(1690)0": ["rho_3(1690)0", "rho_3(1690)0", 1688.8000000000002, 0.0, 4.088274e-15, 161.00002163967915, 117, 0], "D+": ["D+", "D-", 1869.61, 1.0, 0.00104, 6.328963485278246e-10, 411, 411], "Lambda~0": ["Lambda~0", "Lambda0", 1115.683, 0.0, 0.2632, 2.5008062403835015e-12, -3122, -3122], "D*_s0+": ["D*_s0+", "D*_s0-", 2317.7, 1.0, 6.5821e-13, 1.0000033461493103, 10431, 10431], "Xi*_bc~-": ["Xi*_bc~-", "Xi*_bc+", 7048.5, -1.0, 0.0, 0.0, -5424, -5424], "~chi_10": ["~chi_10", "~chi_10", 500000.0, 0.0, 0.0, 0.0, 1000022, 1000022], "Mg27[0.0]": ["Mg27[0.0]", null, 25135.748, 12.0, 0.0, 0.0, 1000120270, 0], "SPHEaxis": ["SPHEaxis", "SPHEaxis", 0.0, 0.0, 0.0, 0.0, 95, 95], "Omega_bcc~-": ["Omega_bcc~-", "Omega_bcc+", 8309.45, -1.0, 0.001290893, 5.09889047712659e-10, -5442, -5442], "Sigma_b*0": ["Sigma_b*0", "Sigma_b*~0", 5829.0, 0.0, 0.0, 0.0, 5214, 5214], "Xi'_c0": ["Xi'_c0", "Xi'_c~0", 2577.9, 0.0, 0.0, 0.0, 4312, 4312], "rho_3(1690)-": ["rho_3(1690)-", "rho_3(1690)+", 1688.8000000000002, -1.0, 4.088274e-15, 161.00002163967915, -217, 0], "Xi'_bc+": ["Xi'_bc+", "Xi'_bc~-", 7037.24, 1.0, 0.0, 0.0, 5422, 5422], "ud_1": ["ud_1", "anti-ud_1", 0.0, 0.3, 0.0, 0.0, 2103, 2103], "nu_Re": ["nu_Re", "nu_Re", 500000.0, 0.0, 0.0, 0.0, 9900012, 9900012], "Xi_cc~--": ["Xi_cc~--", "Xi_cc++", 3597.98, -2.0, 0.0003335641, 1.973270512231195e-09, -4422, -4422], "rho_3(1690)+": ["rho_3(1690)+", "rho_3(1690)-", 1688.8000000000002, 1.0, 4.088274e-15, 161.00002163967915, 217, 0], "B*_2-": ["B*_2-", "B*_2+", 5743.0, -1.0, 2.8617920000000004e-14, 23.000001483998048, -525, -525], "Omega_bb~+": ["Omega_bb~+", "Omega_bb-", 10602.09, 1.0, 0.001290893, 5.09889047712659e-10, -5532, -5532], "d*": ["d*", "d*bar", 400000.0, -0.3, 0.0, 0.0, 4000001, 4000001], "Xsd": ["Xsd", "anti-Xsd", 1600.0, 0.0, 0.0, 0.0, 30343, 30343], "B*_2+": ["B*_2+", "B*_2-", 5743.0, 1.0, 2.8617920000000004e-14, 23.000001483998048, 525, 525], "eta_c(1S)": ["eta_c(1S)", "eta_c(1S)", 2983.6, 0.0, 2.216203e-14, 29.699996005281896, 441, 441], "Xi_bb~0": ["Xi_bb~0", "Xi_bb0", 10422.72, 0.0, 0.001290893, 5.09889047712659e-10, -5522, -5522], "K_2(1770)+": ["K_2(1770)+", "K_2(1770)-", 1773.0, 1.0, 3.538775e-15, 186.00001482686451, 10325, 0], "B*_20": ["B*_20", "B*_2~0", 5743.0, 0.0, 2.8617920000000004e-14, 23.000001483998048, 515, 515], "Omega*_bb~+": ["Omega*_bb~+", "Omega*_bb-", 10614.26, 1.0, 0.0, 0.0, -5534, -5534], "~chi_2+": ["~chi_2+", "~chi_2-", 500000.0, 1.0, 0.0, 0.0, 1000037, 1000037], "K*(1410)0": ["K*(1410)0", "K*(1410)~0", 1414.0, 0.0, 2.837122e-15, 231.99996421336044, 100313, 0], "Lambda_c(2625)+": ["Lambda_c(2625)+", "Lambda_c(2625)~-", 2628.11, 1.0, 0.0, 0.0, 104124, 0], "~chi_2-": ["~chi_2-", "~chi_2+", 500000.0, -1.0, 0.0, 0.0, -1000037, -1000037], "K*(1680)+": ["K*(1680)+", "K*(1680)-", 1717.0, 1.0, 2.056913e-15, 320.00002064692944, 30323, 0], "anti-ud_0": ["anti-ud_0", "ud_0", 0.0, -0.3, 0.0, 0.0, -2101, -2101], "Xi_c*~0": ["Xi_c*~0", "Xi_c*0", 2645.9, 0.0, 0.0, 0.0, -4314, -4314], "n~0": ["n~0", "n0", 939.56538, 0.0, 880300000000.0, 7.477135095637141e-25, -2112, -2112], "Sigma_b~-": ["Sigma_b~-", "Sigma_b+", 5811.3, -1.0, 6.785693e-14, 9.699999726909802, -5222, -5222], "K*(1680)0": ["K*(1680)0", "K*(1680)~0", 1717.0, 0.0, 2.056913e-15, 320.00002064692944, 30313, 0], "Xi_c*~-": ["Xi_c*~-", "Xi_c*+", 2645.9, -1.0, 0.0, 0.0, -4324, -4324], "f_0(1370)": ["f_0(1370)", "f_0(1370)", 1350.0, 0.0, 1.880606e-15, 350.00005448719065, 10221, 10331], "Xi*_cc~--": ["Xi*_cc~--", "Xi*_cc++", 3656.48, -2.0, 0.0, 0.0, -4424, -4424], "Omega_cc+": ["Omega_cc+", "Omega_cc~-", 3786.63, 1.0, 0.0003335641, 1.973270512231195e-09, 4432, 4432], "K_2(1770)0": ["K_2(1770)0", "K_2(1770)~0", 1773.0, 0.0, 3.538775e-15, 186.00001482686451, 10315, 0], "~chi_20": ["~chi_20", "~chi_20", 500000.0, 0.0, 0.0, 0.0, 1000023, 1000023], "Delta(1950)++": ["Delta(1950)++", "Delta(1950)~--", 1930.0, 2.0, 2.350758e-15, 279.9999840344849, 2228, 0], "K*(1410)-": ["K*(1410)-", "K*(1410)+", 1414.0, -1.0, 2.837122e-15, 231.99996421336044, -100323, 0], "Ne23[0.0]": ["Ne23[0.0]", null, 21419.205, 10.0, 0.0, 0.0, 1000100230, 0], "Si29[0.0]": ["Si29[0.0]", null, 26991.427000000003, 14.0, 0.0, 0.0, 1000140290, 0], "Lambda(1890)~0": ["Lambda(1890)~0", "Lambda(1890)0", 1890.0, 0.0, 6.582122e-15, 100.0000003750975, -23124, 0], "Xi-": ["Xi-", "Xi~+", 1321.71, -1.0, 0.1639, 4.015937781994738e-12, 3312, 3312], "f_0(1500)": ["f_0(1500)", "f_0(1500)", 1505.0, 0.0, 6.038644e-15, 109.00000107125666, 9030221, 0], "Xi0": ["Xi0", "Xi~0", 1314.86, 0.0, 0.29, 2.269697249892888e-12, 3322, 3322], "Cl40[0.0]": ["Cl40[0.0]", null, 37232.201, 17.0, 0.0, 0.0, 1000170400, 0], "N(1700)+": ["N(1700)+", "N(1700)~-", 1700.0, 1.0, 4.388081e-15, 150.00001195714884, 22124, 0], "Delta(1900)+": ["Delta(1900)+", "Delta(1900)~-", 1840.0, 1.0, 0.0, 0.0, 12122, 0], "h_1(1170)": ["h_1(1170)", "h_1(1170)", 1170.0, 0.0, 1.828367e-15, 360.00004510524286, 10223, 10223], "Cr50[0.0]": ["Cr50[0.0]", null, 46524.439, 24.0, 0.0, 0.0, 1000240500, 0], "B_c1(L)+": ["B_c1(L)+", "B_c1(L)-", 7300.0, 1.0, 0.0, 0.0, 10543, 10543], "D*_2(2460)0": ["D*_2(2460)0", "D*_2(2460)~0", 2462.6, 0.0, 1.34329e-14, 49.00000762820668, 425, 425], "W-": ["W-", "W+", 80385.0, -1.0, 3.156893e-16, 2085.0000379136623, -24, -24], "Fe56[0.0]": ["Fe56[0.0]", null, 52103.056000000004, 26.0, 0.0, 0.0, 1000260560, 0], "W+": ["W+", "W-", 80385.0, 1.0, 3.156893e-16, 2085.0000379136623, 24, 24], "Lambda(1670)0": ["Lambda(1670)0", "Lambda(1670)~0", 1670.0, 0.0, 1.880606e-14, 35.00000544871906, 33122, 0], "D*_2(2460)-": ["D*_2(2460)-", "D*_2(2460)+", 2464.3, -1.0, 1.778952e-14, 36.99999789027121, -415, -415], "D*_2(2460)+": ["D*_2(2460)+", "D*_2(2460)-", 2464.3, 1.0, 1.778952e-14, 36.99999789027121, 415, 415], "specflav": ["specflav", "specflav", 0.0, 0.0, 0.0, 0.0, 81, 81], "Sigma_b~0": ["Sigma_b~0", "Sigma_b0", 5807.8, 0.0, 1e-10, 0.006582122024689376, -5212, -5212], "deuteron": ["deuteron", "deutron~", 1875.613, 1.0, 1e+24, 6.582122024689375e-37, 1000010020, 0], "Omega*_bcc+": ["Omega*_bcc+", "Omega*_bcc~-", 8313.25, 1.0, 0.0, 0.0, 5444, 5444], "B*_s20": ["B*_s20", "B*_s2~0", 5839.96, 0.0, 4.113825e-13, 1.6000004921671134, 535, 535], "K_2(1770)-": ["K_2(1770)-", "K_2(1770)+", 1773.0, -1.0, 3.538775e-15, 186.00001482686451, -10325, 0], "Sigma(1915)~+": ["Sigma(1915)~+", "Sigma(1915)-", 1915.0, 1.0, 5.485102e-15, 119.99999315763637, -13116, 0], "Delta(1600)-": ["Delta(1600)-", "Delta(1600)~+", 1600.0, -1.0, 2.056913e-15, 320.00002064692944, 31114, 0], "Delta(1600)0": ["Delta(1600)0", "Delta(1600)~0", 1600.0, 0.0, 2.056913e-15, 320.00002064692944, 32114, 0], "~d_Lbar": ["~d_Lbar", "~d_L", 500000.0, 0.3, 0.0, 0.0, -1000001, -1000001], "Sigma(1915)~0": ["Sigma(1915)~0", "Sigma(1915)0", 1915.0, 0.0, 5.485102e-15, 119.99999315763637, -13216, 0], "bc_0": ["bc_0", "anti-bc_0", 0.0, 0.3, 0.0, 0.0, 5401, 5401], "Omega_bcc+": ["Omega_bcc+", "Omega_bcc~-", 8309.45, 1.0, 0.001290893, 5.09889047712659e-10, 5442, 5442], "chi_b1(1P)": ["chi_b1(1P)", "chi_b1(1P)", 9892.78, 0.0, 0.0, 0.0, 20553, 20553], "Delta(1620)-": ["Delta(1620)-", "Delta(1620)~+", 1630.0, -1.0, 4.701516e-15, 139.99999201724245, 1112, 0], "Delta(1620)+": ["Delta(1620)+", "Delta(1620)~-", 1630.0, 1.0, 4.701516e-15, 139.99999201724245, 2122, 0], "Omega_bc0": ["Omega_bc0", "Omega_bc~0", 7190.99, 0.0, 0.0005, 1.316424404937875e-09, 5342, 5342], "B0H": ["B0H", "B0H", 5279.58, 0.0, 0.0015190000000000002, 4.3331942229686473e-10, 510, 0], "omega(1650)": ["omega(1650)", "omega(1650)", 1670.0, 0.0, 2.0895630000000002e-15, 314.9999317890571, 30223, 0], "B0L": ["B0L", "B0L", 5279.58, 0.0, 0.0015190000000000002, 4.3331942229686473e-10, 150, 0], "Delta(1620)++": ["Delta(1620)++", "Delta(1620)~--", 1630.0, 2.0, 4.701516e-15, 139.99999201724245, 2222, 0], "Xi(1820)0": ["Xi(1820)0", "Xi(1820)~0", 1823.0, 0.0, 2.7425510000000003e-14, 23.999998631527273, 13324, 0], "nu_e~": ["nu_e~", "nu_e", 0.0, 0.0, 1e+25, 6.582122024689376e-38, -12, -12], "anti-ud_1": ["anti-ud_1", "ud_1", 0.0, -0.3, 0.0, 0.0, -2103, -2103], "Sigma_b*-": ["Sigma_b*-", "Sigma_b*~+", 5835.099999999999, -1.0, 8.77616e-14, 7.500002307033344, 5114, 5114], "Xi_bb~+": ["Xi_bb~+", "Xi_bb-", 10422.72, 1.0, 0.001290893, 5.09889047712659e-10, -5512, -5512], "Delta(1620)0": ["Delta(1620)0", "Delta(1620)~0", 1630.0, 0.0, 4.701516e-15, 139.99999201724245, 1212, 0], "Xi'_bc~0": ["Xi'_bc~0", "Xi'_bc0", 7037.24, 0.0, 0.0, 0.0, -5412, -5412], "Xi(1950)~+": ["Xi(1950)~+", "Xi(1950)-", 1950.0, 1.0, 1.09702e-14, 60.00001845626675, -103316, 0], "N(1675)~-": ["N(1675)~-", "N(1675)+", 1675.0, -1.0, 4.388081e-15, 150.00001195714884, -2216, 0], "~s_L": ["~s_L", "~s_Lbar", 500000.0, -0.3, 0.0, 0.0, 1000003, 1000003], "Sigma*-": ["Sigma*-", "Sigma*~+", 1387.2, -1.0, 1.670589e-14, 39.40000816891153, 3114, 3114], "H_L++": ["H_L++", "H_L--", 200000.0, 2.0, 0.0, 0.0, 9900041, 9900041], "Sigma*+": ["Sigma*+", "Sigma*~-", 1382.8, 1.0, 1.828367e-14, 36.000004510524285, 3224, 3224], "~c_L": ["~c_L", "~c_Lbar", 500000.0, 0.7, 0.0, 0.0, 1000004, 1000004], "Sigma*0": ["Sigma*0", "Sigma*~0", 1383.6999999999998, 0.0, 1.828367e-14, 36.000004510524285, 3214, 3214], "eta_b(3S)": ["eta_b(3S)", "eta_b(3S)", 10335.0, 0.0, 0.0, 0.0, 200551, 0], "Na24[0.0]": ["Na24[0.0]", null, 22347.435, 11.0, 0.0, 0.0, 1000110240, 0], "~c_Rbar": ["~c_Rbar", "~c_R", 500000.0, -0.7, 0.0, 0.0, -2000004, -2000004], "~s_R": ["~s_R", "~s_Rbar", 500000.0, -0.3, 0.0, 0.0, 2000003, 2000003], "Xi'_bc~-": ["Xi'_bc~-", "Xi'_bc+", 7037.24, -1.0, 0.0, 0.0, -5422, -5422], "N(1675)~0": ["N(1675)~0", "N(1675)0", 1675.0, 0.0, 4.388081e-15, 150.00001195714884, -2116, 0], "~c_R": ["~c_R", "~c_Rbar", 500000.0, 0.7, 0.0, 0.0, 2000004, 2000004], "c": ["c", "anti-c", 1350.0, 0.7, 0.0, 0.0, 4, 4], "Sigma(1670)+": ["Sigma(1670)+", "Sigma(1670)~-", 1670.0, 1.0, 1.09702e-14, 60.00001845626675, 13224, 0], "Sigma(1670)-": ["Sigma(1670)-", "Sigma(1670)~+", 1670.0, -1.0, 1.09702e-14, 60.00001845626675, 13114, 0], "b-hadron": ["b-hadron", "anti-b-hadron", 5000.0, -0.3, 0.001290893, 5.09889047712659e-10, 85, 85], "nu_tau~": ["nu_tau~", "nu_tau", 0.0, 0.0, 1e+25, 6.582122024689376e-38, -16, -16], "anti-sd_0": ["anti-sd_0", "sd_0", 0.0, 0.7, 0.0, 0.0, -3101, -3101], "anti-sd_1": ["anti-sd_1", "sd_1", 0.0, 0.7, 0.0, 0.0, -3103, -3103], "Sigma(2030)~-": ["Sigma(2030)~-", "Sigma(2030)+", 2029.9999999999998, -1.0, 3.656734e-15, 180.00002255262143, -3228, 0], "Sigma(2250)+": ["Sigma(2250)+", "Sigma(2250)~-", 2250.0, 1.0, 6.58e-15, 100.03224961534006, 103222, 0], "Sigma(2030)~0": ["Sigma(2030)~0", "Sigma(2030)0", 2029.9999999999998, 0.0, 3.656734e-15, 180.00002255262143, -3218, 0], "eta": ["eta", "eta", 547.862, 0.0, 5.063171e-10, 0.0012999999456248617, 221, 221], "Omega_bbc~0": ["Omega_bbc~0", "Omega_bbc0", 11707.67, 0.0, 0.001290893, 5.09889047712659e-10, -5542, -5542], "mu-": ["mu-", "mu+", 105.65837, -1.0, 2196.981, 2.9959849560325623e-16, 13, 13], "Omega_b*-": ["Omega_b*-", "Omega_b*~+", 6130.0, -1.0, 0.0, 0.0, 5334, 5334], "mu+": ["mu+", "mu-", 105.65837, 1.0, 2196.981, 2.9959849560325623e-16, -13, -13], "LQ_ue": ["LQ_ue", "LQ_uebar", 200000.0, -0.3, 0.0, 0.0, 42, 42], "~d_L": ["~d_L", "~d_Lbar", 500000.0, -0.3, 0.0, 0.0, 1000001, 1000001], "Omega_b*~+": ["Omega_b*~+", "Omega_b*-", 6130.0, 1.0, 0.0, 0.0, -5334, -5334], "Sigma_c~-": ["Sigma_c~-", "Sigma_c+", 2452.9, -1.0, 3.999999e-13, 1.6455309175550732, -4212, -4212], "f_0(1710)": ["f_0(1710)", "f_0(1710)", 1722.0, 0.0, 4.875646e-15, 134.99999845537135, 10331, 0], "Sigma_c~0": ["Sigma_c~0", "Sigma_c0", 2453.74, 0.0, 3.047279e-13, 2.159999798078671, -4112, -4112], "Lambda_b(5912)0": ["Lambda_b(5912)0", "Lambda_b(5912)~0", 5911.97, 0.0, 1.316e-12, 0.5001612480767003, 15122, 15122], "Sigma(2250)-": ["Sigma(2250)-", "Sigma(2250)~+", 2250.0, -1.0, 6.58e-15, 100.03224961534006, 103112, 0], "table": ["table", "table", 0.0, 0.0, 0.0, 0.0, 99, 99], "B*~0": ["B*~0", "B*0", 5325.2, 0.0, 1.000019e-10, 0.006581996966747007, -513, -513], "Sigma(2030)-": ["Sigma(2030)-", "Sigma(2030)~+", 2029.9999999999998, -1.0, 3.656734e-15, 180.00002255262143, 3118, 0], "Al28[0.0]": ["Al28[0.0]", null, 26064.978, 13.0, 0.0, 0.0, 1000130280, 0], "Mo97[0.0]": ["Mo97[0.0]", null, 90267.365, 42.0, 0.0, 0.0, 1000420970, 0], "Xi'_b~+": ["Xi'_b~+", "Xi'_b-", 5960.0, 1.0, 1e-10, 0.006582122024689376, -5312, -5312], "bu_0": ["bu_0", "anti-bu_0", 0.0, 0.3, 0.0, 0.0, 5201, 5201], "K*_2(1430)0": ["K*_2(1430)0", "K*_2(1430)~0", 1432.3999999999999, 0.0, 6.038644e-15, 109.00000107125666, 315, 315], "Xi_b-": ["Xi_b-", "Xi_b~+", 5794.900000000001, -1.0, 0.00156, 4.219308990185497e-10, 5132, 5132], "K_1(1270)0": ["K_1(1270)0", "K_1(1270)~0", 1272.0, 0.0, 7.313469000000001e-15, 89.99999897024757, 10313, 10313], "~b_2": ["~b_2", "~b_2bar", 500000.0, -0.3, 0.0, 0.0, 2000005, 2000005], "K_1(1270)-": ["K_1(1270)-", "K_1(1270)+", 1272.0, -1.0, 7.313469000000001e-15, 89.99999897024757, -10323, -10323], "omega_tc": ["omega_tc", "omega_tc", 210000.0, 0.0, 0.0, 0.0, 3000223, 3000223], "Z(4430)-": ["Z(4430)-", "Z(4430)+", 4433.0, -1.0, 2.07634e-12, 0.3170059828683826, -9042413, -9042413], "Xi_b0": ["Xi_b0", "Xi_b~0", 5793.1, 0.0, 0.00149, 4.417531560194212e-10, 5232, 5232], "Lambda(1520)~0": ["Lambda(1520)~0", "Lambda(1520)0", 1519.5, 0.0, 4.219309e-14, 15.599999963712959, -3124, 0], "Xi'_b~0": ["Xi'_b~0", "Xi'_b0", 5960.0, 0.0, 1e-10, 0.006582122024689376, -5322, -5322], "K*_2(1430)-": ["K*_2(1430)-", "K*_2(1430)+", 1425.6, -1.0, 6.682357e-15, 98.50000568196785, -325, -325], "K*_2(1430)+": ["K*_2(1430)+", "K*_2(1430)-", 1425.6, 1.0, 6.682357e-15, 98.50000568196785, 325, 325], "Delta(1920)+": ["Delta(1920)+", "Delta(1920)~-", 1920.0, 1.0, 2.531585e-15, 260.0000404761987, 22214, 0], "~u_R": ["~u_R", "~u_Rbar", 500000.0, 0.7, 0.0, 0.0, 2000002, 2000002], "N(1440)~-": ["N(1440)~-", "N(1440)+", 1430.0, -1.0, 2.194041e-15, 299.9999555472927, -12212, 0], "H_R--": ["H_R--", "H_R++", 200000.0, -2.0, 0.0, 0.0, -9900042, -9900042], "Fe54[0.0]": ["Fe54[0.0]", null, 50244.421, 26.0, 0.0, 0.0, 1000260540, 0], "N(2090)0": ["N(2090)0", "N(2090)~0", 2000.0, 0.0, 0.0, 0.0, 52114, 0], "eta_prime": ["eta_prime", "eta_prime", 957.78, 0.0, 3.324303e-12, 0.19800006271057047, 331, 331], "~mu_L+": ["~mu_L+", "~mu_L-", 500000.0, 1.0, 0.0, 0.0, -1000013, -1000013], "Ni60[0.0]": ["Ni60[0.0]", null, 55825.164000000004, 28.0, 0.0, 0.0, 1000280600, 0], "N(2090)+": ["N(2090)+", "N(2090)~-", 2000.0, 1.0, 0.0, 0.0, 52214, 0], "B10[0.0]": ["B10[0.0]", null, 9326.989, 5.0, 0.0, 0.0, 1000050100, 0], "~u_L": ["~u_L", "~u_Lbar", 500000.0, 0.7, 0.0, 0.0, 1000002, 1000002], "eta(1475)": ["eta(1475)", "eta(1475)", 1476.0, 0.0, 7.743673e-15, 84.99999967314444, 100331, 0], "Delta(1950)~0": ["Delta(1950)~0", "Delta(1950)0", 1930.0, 0.0, 2.350758e-15, 279.9999840344849, -2118, 0], "e*-": ["e*-", "e*bar+", 400000.0, -1.0, 0.0, 0.0, 4000011, 4000011], "~chi_1+": ["~chi_1+", "~chi_1-", 500000.0, 1.0, 0.0, 0.0, 1000024, 1000024], "Xi_bc~-": ["Xi_bc~-", "Xi_bc+", 6900.0, -1.0, 0.0005, 1.316424404937875e-09, -5242, -5242], "Delta(1905)~+": ["Delta(1905)~+", "Delta(1905)-", 1880.0, 1.0, 1.9945819999999998e-15, 330.0000714279672, -1116, 0], "Delta(1700)~+": ["Delta(1700)~+", "Delta(1700)-", 1700.0, 1.0, 2.194041e-15, 299.9999555472927, -11114, 0], "Delta(1905)~-": ["Delta(1905)~-", "Delta(1905)+", 1880.0, -1.0, 1.9945819999999998e-15, 330.0000714279672, -2126, 0], "Delta(1700)~-": ["Delta(1700)~-", "Delta(1700)+", 1700.0, -1.0, 2.194041e-15, 299.9999555472927, -12214, 0], "~chi_1-": ["~chi_1-", "~chi_1+", 500000.0, -1.0, 0.0, 0.0, -1000024, -1000024], "~tau_2+": ["~tau_2+", "~tau_2-", 500000.0, 1.0, 0.0, 0.0, -2000015, -2000015], "Delta(1700)~0": ["Delta(1700)~0", "Delta(1700)0", 1700.0, 0.0, 2.194041e-15, 299.9999555472927, -12114, 0], "Delta(1905)~0": ["Delta(1905)~0", "Delta(1905)0", 1880.0, 0.0, 1.9945819999999998e-15, 330.0000714279672, -1216, 0], "Delta(1600)++": ["Delta(1600)++", "Delta(1600)~--", 1600.0, 2.0, 2.056913e-15, 320.00002064692944, 32224, 0], "O17[0.0]": ["O17[0.0]", null, 15834.587000000001, 8.0, 0.0, 0.0, 1000080170, 0], "B_s~0": ["B_s~0", "B_s0", 5366.7699999999995, 0.0, 0.001512, 4.3532553073342427e-10, -531, -531], "Delta(1950)~+": ["Delta(1950)~+", "Delta(1950)-", 1930.0, 1.0, 2.350758e-15, 279.9999840344849, -1118, 0], "p+": ["p+", "p~-", 938.27205, 1.0, 1e+25, 6.582122024689376e-38, 2212, 2212], "Omega*_bcc~-": ["Omega*_bcc~-", "Omega*_bcc+", 8313.25, -1.0, 0.0, 0.0, -5444, -5444], "N(1990)~-": ["N(1990)~-", "N(1990)+", 1950.0, -1.0, 0.0, 0.0, -12218, 0], "Delta(1950)~-": ["Delta(1950)~-", "Delta(1950)+", 1930.0, -1.0, 2.350758e-15, 279.9999840344849, -2218, 0], "K_2(1820)-": ["K_2(1820)-", "K_2(1820)+", 1816.0, -1.0, 2.384827e-15, 275.99997923075244, -20325, 0], "anti-su_1": ["anti-su_1", "su_1", 0.0, -0.3, 0.0, 0.0, -3203, -3203], "anti-su_0": ["anti-su_0", "su_0", 0.0, -0.3, 0.0, 0.0, -3201, -3201], "K_2(1820)+": ["K_2(1820)+", "K_2(1820)-", 1816.0, 1.0, 2.384827e-15, 275.99997923075244, 20325, 0], "Upsilon(2S)": ["Upsilon(2S)", "Upsilon(2S)", 10023.26, 0.0, 2.058199e-11, 0.03198000788402567, 100553, 100553], "Delta(1600)+": ["Delta(1600)+", "Delta(1600)~-", 1600.0, 1.0, 2.056913e-15, 320.00002064692944, 32214, 0], "eta_tc0": ["eta_tc0", "eta_tc0", 350000.0, 0.0, 0.0, 0.0, 3000331, 3000331], "cluster": ["cluster", "cluster", 0.0, 0.0, 0.0, 0.0, 91, 91], "Intermediate": ["Intermediate", null, 0.0, 0.0, 0.0, 0.0, -99000000, 0], "f_2(1270)": ["f_2(1270)", "f_2(1270)", 1275.1, 0.0, 3.5559819999999995e-15, 185.09998151535572, 225, 225], "a_2(1320)-": ["a_2(1320)-", "a_2(1320)+", 1318.3, -1.0, 6.151516e-15, 106.99999845061566, -215, -215], "K_2(1820)0": ["K_2(1820)0", "K_2(1820)~0", 1816.0, 0.0, 2.384827e-15, 275.99997923075244, 20315, 0], "Omega*_ccc~--": ["Omega*_ccc~--", "Omega*_ccc++", 4915.94, -2.0, 0.0, 0.0, -4444, -4444], "N(1710)~-": ["N(1710)~-", "N(1710)+", 1710.0, -1.0, 6.582122e-15, 100.0000003750975, -42212, 0], "chi_b2(3P)": ["chi_b2(3P)", "chi_b2(3P)", 10526.199999999999, 0.0, 0.0, 0.0, 200555, 200555], "Xi~0": ["Xi~0", "Xi0", 1314.86, 0.0, 0.29, 2.269697249892888e-12, -3322, -3322], "N(2090)~0": ["N(2090)~0", "N(2090)0", 2000.0, 0.0, 0.0, 0.0, -52114, 0], "D*(2640)0": ["D*(2640)0", "D*(2640)~0", 2640.0, 0.0, 0.0, 0.0, 100423, 0], "D_s1(2460)+": ["D_s1(2460)+", "D_s1(2460)-", 2459.5, 1.0, 6.5821e-13, 1.0000033461493103, 20433, 20433], "~nu_muR": ["~nu_muR", "~nu_muRbar", 500000.0, 0.0, 0.0, 0.0, 2000014, 2000014], "N(1990)+": ["N(1990)+", "N(1990)~-", 1950.0, 1.0, 0.0, 0.0, 12218, 0], "B11[0.0]": ["B11[0.0]", null, 10255.101, 5.0, 0.0, 0.0, 1000050110, 0], "s": ["s", "anti-s", 199.0, -0.3, 0.0, 0.0, 3, 3], "Sigma(2250)~0": ["Sigma(2250)~0", "Sigma(2250)0", 2250.0, 0.0, 6.58e-15, 100.03224961534006, -103212, 0], "Xi_c(2790)+": ["Xi_c(2790)+", "Xi_c(2790)~-", 2789.1, 1.0, 0.0, 0.0, 104324, 0], "D_s+": ["D_s+", "D_s-", 1968.3, 1.0, 0.0005, 1.316424404937875e-09, 431, 431], "D*(2640)+": ["D*(2640)+", "D*(2640)-", 2640.0, 1.0, 0.0, 0.0, 100413, 0], "D*(2640)-": ["D*(2640)-", "D*(2640)+", 2640.0, -1.0, 0.0, 0.0, -100413, 0], "D_s-": ["D_s-", "D_s+", 1968.3, -1.0, 0.0005, 1.316424404937875e-09, -431, -431], "Xi~+": ["Xi~+", "Xi-", 1321.71, 1.0, 0.1639, 4.015937781994738e-12, -3312, -3312], "N(2090)~-": ["N(2090)~-", "N(2090)+", 2000.0, -1.0, 0.0, 0.0, -52214, 0], "B_c0*+": ["B_c0*+", "B_c0*-", 7250.0, 1.0, 0.0, 0.0, 10541, 10541], "Ni63[0.0]": ["Ni63[0.0]", null, 58618.605, 28.0, 0.0, 0.0, 1000280630, 0], "B_c0*-": ["B_c0*-", "B_c0*+", 7250.0, -1.0, 0.0, 0.0, -10541, -10541], "anti-ss_1": ["anti-ss_1", "ss_1", 0.0, 0.7, 0.0, 0.0, -3303, -3303], "Lambda(1520)0": ["Lambda(1520)0", "Lambda(1520)~0", 1519.5, 0.0, 4.219309e-14, 15.599999963712959, 3124, 0], "h_1(1380)": ["h_1(1380)", "h_1(1380)", 1400.0, 0.0, 0.0, 0.0, 10333, 10333], "K*_0(1430)+": ["K*_0(1430)+", "K*_0(1430)-", 1425.0, 1.0, 2.437823e-15, 269.9999969107427, 10321, 10321], "Delta(1620)~0": ["Delta(1620)~0", "Delta(1620)0", 1630.0, 0.0, 4.701516e-15, 139.99999201724245, -1212, 0], "Xi*_bc0": ["Xi*_bc0", "Xi*_bc~0", 7048.5, 0.0, 0.0, 0.0, 5414, 5414], "Lambda(1810)0": ["Lambda(1810)0", "Lambda(1810)~0", 1810.0, 0.0, 4.388081e-15, 150.00001195714884, 53122, 0], "D(2S)~0": ["D(2S)~0", "D(2S)0", 2580.0, 0.0, 0.0, 0.0, -100421, 0], "Z_R0": ["Z_R0", "Z_R0", 1200000.0, 0.0, 0.0, 0.0, 9900023, 9900023], "Sigma(1670)0": ["Sigma(1670)0", "Sigma(1670)~0", 1670.0, 0.0, 1.09702e-14, 60.00001845626675, 13214, 0], "Delta(1620)~+": ["Delta(1620)~+", "Delta(1620)-", 1630.0, 1.0, 4.701516e-15, 139.99999201724245, -1112, 0], "Delta(1620)~-": ["Delta(1620)~-", "Delta(1620)+", 1630.0, -1.0, 4.701516e-15, 139.99999201724245, -2122, 0], "Xi*_bc+": ["Xi*_bc+", "Xi*_bc~-", 7048.5, 1.0, 0.0, 0.0, 5424, 5424], "f_4(2050)": ["f_4(2050)", "f_4(2050)", 2017.9999999999998, 0.0, 2.777267e-15, 236.99997244375047, 229, 0], "omega(782)": ["omega(782)", "omega(782)", 782.65, 0.0, 7.752793999999999e-14, 8.489999895120878, 223, 223], "Mo92[0.0]": ["Mo92[0.0]", null, 85610.63, 42.0, 0.0, 0.0, 1000420920, 0], "Delta(1930)~--": ["Delta(1930)~--", "Delta(1930)++", 1950.0, -2.0, 1.828367e-15, 360.00004510524286, -12226, 0], "Pd108[0.0]": ["Pd108[0.0]", null, 100511.81599999999, 46.0, 0.0, 0.0, 1000461080, 0], "Lambda_c(2595)+": ["Lambda_c(2595)+", "Lambda_c(2595)~-", 2592.25, 1.0, 2.531585e-13, 2.600000404761987, 14122, 0], "rho(1700)-": ["rho(1700)-", "rho(1700)+", 1720.0, -1.0, 2.632849e-15, 249.99998194690906, -30213, 0], "pi(1300)+": ["pi(1300)+", "pi(1300)-", 1300.0, 1.0, 1.64553e-15, 400.0001230417784, 100211, 0], "B_1(L)0": ["B_1(L)0", "B_1(L)~0", 5723.4, 0.0, 3.134e-14, 21.00230384393547, 10513, 10513], "N(1440)~0": ["N(1440)~0", "N(1440)0", 1430.0, 0.0, 2.194041e-15, 299.9999555472927, -12112, 0], "K_1(1400)-": ["K_1(1400)-", "K_1(1400)+", 1403.0, -1.0, 3.782829e-15, 173.9999884924583, -20323, -20323], "B_1(L)-": ["B_1(L)-", "B_1(L)+", 5723.4, -1.0, 3.134e-14, 21.00230384393547, -10523, -10523], "K_1(1400)+": ["K_1(1400)+", "K_1(1400)-", 1403.0, 1.0, 3.782829e-15, 173.9999884924583, 20323, 20323], "B_1(L)+": ["B_1(L)+", "B_1(L)-", 5723.4, 1.0, 3.134e-14, 21.00230384393547, 10523, 10523], "Omega*_bc0": ["Omega*_bc0", "Omega*_bc~0", 7219.0, 0.0, 0.0, 0.0, 5434, 5434], "Au197[0.0]": ["Au197[0.0]", null, 183433.36, 79.0, 0.0, 0.0, 1000791970, 0], "~b_2bar": ["~b_2bar", "~b_2", 500000.0, 0.3, 0.0, 0.0, -2000005, -2000005], "He3[0.0]": ["He3[0.0]", "He3~[0.0]", 2809.23, 2.0, 1e+24, 6.582122024689375e-37, 1000020030, 0], "Xi*_cc++": ["Xi*_cc++", "Xi*_cc~--", 3656.48, 2.0, 0.0, 0.0, 4424, 4424], "Z'0": ["Z'0", "Z'0", 500000.0, 0.0, 0.0, 0.0, 32, 32], "anti-uu_1": ["anti-uu_1", "uu_1", 0.0, -1.3, 0.0, 0.0, -2203, -2203], "Omega_cc~-": ["Omega_cc~-", "Omega_cc+", 3786.63, -1.0, 0.0003335641, 1.973270512231195e-09, -4432, -4432], "~nu_tauL": ["~nu_tauL", "~nu_tauLbar", 500000.0, 0.0, 0.0, 0.0, 1000016, 1000016], "~nu_tauR": ["~nu_tauR", "~nu_tauRbar", 500000.0, 0.0, 0.0, 0.0, 2000016, 2000016], "K*(1410)~0": ["K*(1410)~0", "K*(1410)0", 1414.0, 0.0, 2.837122e-15, 231.99996421336044, -100313, 0], "Xi_c~-": ["Xi_c~-", "Xi_c+", 2467.8, -1.0, 0.000442, 1.489167878888999e-09, -4232, -4232], "Xss": ["Xss", "anti-Xss", 1800.0, 0.0, 0.0, 0.0, 30363, 30363], "Be8[0.0]": ["Be8[0.0]", null, 7456.893, 4.0, 0.0, 0.0, 1000040080, 0], "Xi_c(2815)+": ["Xi_c(2815)+", "Xi_c(2815)~-", 2816.6000000000004, 1.0, 0.0, 0.0, 104322, 0], "Xi'_b0": ["Xi'_b0", "Xi'_b~0", 5960.0, 0.0, 1e-10, 0.006582122024689376, 5322, 5322], "t-hadron": ["t-hadron", "anti-t-hadron", 175000.0, 0.7, 0.0, 0.0, 86, 0], "Omega'_bc~0": ["Omega'_bc~0", "Omega'_bc0", 7211.01, 0.0, 0.0, 0.0, -5432, -5432], "f_2(2300)": ["f_2(2300)", "f_2(2300)", 2297.0, 0.0, 4.41753e-15, 149.0000526241899, 9080225, 0], "Delta(1910)++": ["Delta(1910)++", "Delta(1910)~--", 1890.0, 2.0, 2.350758e-15, 279.9999840344849, 22222, 0], "pi'_tc0": ["pi'_tc0", "pi'_tc0", 110000.0, 0.0, 0.0, 0.0, 3000221, 3000221], "Xi'_b-": ["Xi'_b-", "Xi'_b~+", 5960.0, -1.0, 1e-10, 0.006582122024689376, 5312, 5312], "~tau_2-": ["~tau_2-", "~tau_2+", 500000.0, -1.0, 0.0, 0.0, 2000015, 2000015], "Xi_c(2815)0": ["Xi_c(2815)0", "Xi_c(2815)~0", 2819.6, 0.0, 0.0, 0.0, 104312, 0], "nu_Rmu": ["nu_Rmu", "nu_Rmu", 500000.0, 0.0, 0.0, 0.0, 9900014, 9900014], "N(1520)+": ["N(1520)+", "N(1520)~-", 1515.0, 1.0, 5.723584000000001e-15, 115.00000741999025, 2124, 0], "~nu_muL": ["~nu_muL", "~nu_muLbar", 500000.0, 0.0, 0.0, 0.0, 1000014, 1000014], "~chi_40": ["~chi_40", "~chi_40", 500000.0, 0.0, 0.0, 0.0, 1000035, 1000035], "D*(2010)-": ["D*(2010)-", "D*(2010)+", 2010.2600000000002, -1.0, 7.89223e-12, 0.0834000279349357, -413, -413], "h_b(1P)": ["h_b(1P)", "h_b(1P)", 9899.300000000001, 0.0, 0.0, 0.0, 10553, 10553], "H_R++": ["H_R++", "H_R--", 200000.0, 2.0, 0.0, 0.0, 9900042, 9900042], "D*(2010)+": ["D*(2010)+", "D*(2010)-", 2010.2600000000002, 1.0, 7.89223e-12, 0.0834000279349357, 413, 413], "pi_2(1670)-": ["pi_2(1670)-", "pi_2(1670)+", 1672.1999999999998, -1.0, 2.531585e-15, 260.0000404761987, -10215, 0], "N(1520)0": ["N(1520)0", "N(1520)~0", 1515.0, 0.0, 5.723584000000001e-15, 115.00000741999025, 1214, 0], "~u_Lbar": ["~u_Lbar", "~u_L", 500000.0, -0.7, 0.0, 0.0, -1000002, -1000002], "f_2(1950)": ["f_2(1950)", "f_2(1950)", 1944.0, 0.0, 1.394517e-15, 472.00012797903327, 9050225, 0], "d": ["d", "anti-d", 9.9, -0.3, 0.0, 0.0, 1, 1], "B-": ["B-", "B+", 5279.26, -1.0, 0.0016380000000000001, 4.018389514462378e-10, -521, -521], "B*-": ["B*-", "B*+", 5325.2, -1.0, 1.000019e-10, 0.006581996966747007, -523, -523], "Sigma_b*~+": ["Sigma_b*~+", "Sigma_b*-", 5835.099999999999, 1.0, 8.77616e-14, 7.500002307033344, -5114, -5114], "B*+": ["B*+", "B*-", 5325.2, 1.0, 1.000019e-10, 0.006581996966747007, 523, 523], "Sigma_b*~-": ["Sigma_b*~-", "Sigma_b*+", 5832.099999999999, -1.0, 5.723583e-14, 11.500002751230086, -5224, -5224], "B+": ["B+", "B-", 5279.26, 1.0, 0.0016380000000000001, 4.018389514462378e-10, 521, 521], "Sigma_b*~0": ["Sigma_b*~0", "Sigma_b*0", 5829.0, 0.0, 0.0, 0.0, -5214, -5214], "N(1710)+": ["N(1710)+", "N(1710)~-", 1710.0, 1.0, 6.582122e-15, 100.0000003750975, 42212, 0], "B0": ["B0", "B~0", 5279.58, 0.0, 0.0015190000000000002, 4.3331942229686473e-10, 511, 511], "LQ_uebar": ["LQ_uebar", "LQ_ue", 200000.0, 0.3, 0.0, 0.0, -42, -42], "Lambda(1830)~0": ["Lambda(1830)~0", "Lambda(1830)0", 1830.0, 0.0, 6.928549e-15, 95.00000685120904, -13126, 0], "B*0": ["B*0", "B*~0", 5325.2, 0.0, 1.000019e-10, 0.006581996966747007, 513, 513], "anti-cu_1": ["anti-cu_1", "cu_1", 0.0, -1.3, 0.0, 0.0, -4203, -4203], "THRUaxis": ["THRUaxis", "THRUaxis", 0.0, 0.0, 0.0, 0.0, 96, 96], "N(1710)0": ["N(1710)0", "N(1710)~0", 1710.0, 0.0, 6.582122e-15, 100.0000003750975, 42112, 0], "Xi_c(2790)~0": ["Xi_c(2790)~0", "Xi_c(2790)0", 2791.7999999999997, 0.0, 0.0, 0.0, -104314, 0], "b'": ["b'", "anti-b'", 400000.0, -0.3, 0.0, 0.0, 7, 7], "Delta(1905)0": ["Delta(1905)0", "Delta(1905)~0", 1880.0, 0.0, 1.9945819999999998e-15, 330.0000714279672, 1216, 0], "N(1650)0": ["N(1650)0", "N(1650)~0", 1655.0, 0.0, 4.7015139999999994e-15, 140.00005157252272, 32112, 0], "Omega_bb-": ["Omega_bb-", "Omega_bb~+", 10602.09, -1.0, 0.001290893, 5.09889047712659e-10, 5532, 5532], "pi_22_8_tc": ["pi_22_8_tc", "pi_22_8_tc", 250000.0, 0.0, 0.0, 0.0, 3200111, 3200111], "nu_mu": ["nu_mu", "nu_mu~", 0.0, 0.0, 1e+25, 6.582122024689376e-38, 14, 14], "V8_tc": ["V8_tc", "V8_tc", 500000.0, 0.0, 0.0, 0.0, 3100021, 3100021], "Pb208[0.0]": ["Pb208[0.0]", null, 193728.962, 82.0, 0.0, 0.0, 1000822080, 0], "~d_R": ["~d_R", "~d_Rbar", 500000.0, -0.3, 0.0, 0.0, 2000001, 2000001], "Lambda_c(2880)+": ["Lambda_c(2880)+", "Lambda_c(2880)~-", 2881.53, 1.0, 1.134849e-13, 5.799998083171749, 204126, 0], "C14[0.0]": ["C14[0.0]", null, 13043.934, 6.0, 0.0, 0.0, 1000060140, 0], "rho_21_tc": ["rho_21_tc", "rho_21_tc", 350000.0, 0.0, 0.0, 0.0, 3300113, 3300113], "Delta(1905)-": ["Delta(1905)-", "Delta(1905)~+", 1880.0, -1.0, 1.9945819999999998e-15, 330.0000714279672, 1116, 0], "N(1650)+": ["N(1650)+", "N(1650)~-", 1655.0, 1.0, 4.7015139999999994e-15, 140.00005157252272, 32212, 0], "Delta(1905)+": ["Delta(1905)+", "Delta(1905)~-", 1880.0, 1.0, 1.9945819999999998e-15, 330.0000714279672, 2126, 0], "N16[0.0]": ["N16[0.0]", null, 14909.585, 7.0, 0.0, 0.0, 1000070160, 0], "Omega*_cc~-": ["Omega*_cc~-", "Omega*_cc+", 3824.6600000000003, -1.0, 0.0, 0.0, -4434, -4434], "su_1": ["su_1", "anti-su_1", 0.0, 0.3, 0.0, 0.0, 3203, 3203], "su_0": ["su_0", "anti-su_0", 0.0, 0.3, 0.0, 0.0, 3201, 3201], "Xi*_cc+": ["Xi*_cc+", "Xi*_cc~-", 3656.48, 1.0, 0.0, 0.0, 4414, 4414], "D*_0~0": ["D*_0~0", "D*_00", 2318.0, 0.0, 2.465213e-15, 267.00013445853875, -10421, -10421], "~t_2": ["~t_2", "~t_2bar", 500000.0, 0.7, 0.0, 0.0, 2000006, 2000006], "~t_1": ["~t_1", "~t_1bar", 500000.0, 0.7, 0.0, 0.0, 1000006, 1000006], "N(1680)~-": ["N(1680)~-", "N(1680)+", 1685.0, -1.0, 5.0631710000000004e-15, 129.99999456248614, -12216, 0], "Sigma(1775)~0": ["Sigma(1775)~0", "Sigma(1775)0", 1775.0, 0.0, 5.485102e-15, 119.99999315763637, -3216, 0], "Upsilon(1S)": ["Upsilon(1S)", "Upsilon(1S)", 9460.3, 0.0, 1.218911e-11, 0.05400002153306825, 553, 553], "Lambda(2100)~0": ["Lambda(2100)~0", "Lambda(2100)0", 2100.0, 0.0, 3.291061e-15, 200.000000750195, -3128, 0], "Sigma(1775)~-": ["Sigma(1775)~-", "Sigma(1775)+", 1775.0, -1.0, 5.485102e-15, 119.99999315763637, -3226, 0], "N(1680)~0": ["N(1680)~0", "N(1680)0", 1685.0, 0.0, 5.0631710000000004e-15, 129.99999456248614, -12116, 0], "Sigma(1775)~+": ["Sigma(1775)~+", "Sigma(1775)-", 1775.0, 1.0, 5.485102e-15, 119.99999315763637, -3116, 0], "u*bar": ["u*bar", "u*", 400000.0, -0.7, 0.0, 0.0, -4000002, -4000002], "N(1650)~0": ["N(1650)~0", "N(1650)0", 1655.0, 0.0, 4.7015139999999994e-15, 140.00005157252272, -32112, 0], "c-hadron": ["c-hadron", "anti-c-hadron", 2000.0, 0.7, 0.0003335641, 1.973270512231195e-09, 84, 84], "B*_s~0": ["B*_s~0", "B*_s0", 5415.4, 0.0, 1e-10, 0.006582122024689376, -533, -533], "t": ["t", "anti-t", 173500.0, 0.7, 3.291061e-16, 2000.0000075019502, 6, 6], "D_1(2420)~0": ["D_1(2420)~0", "D_1(2420)0", 2421.4, 0.0, 2.428827e-14, 27.10000351893888, -10423, -10423], "Delta(1700)++": ["Delta(1700)++", "Delta(1700)~--", 1700.0, 2.0, 2.194041e-15, 299.9999555472927, 12224, 0], "rho_12_tc": ["rho_12_tc", "rho_12_tc", 350000.0, 0.0, 0.0, 0.0, 3200113, 3200113], "Delta(1600)~0": ["Delta(1600)~0", "Delta(1600)0", 1600.0, 0.0, 2.056913e-15, 320.00002064692944, -32114, 0], "N(1535)0": ["N(1535)0", "N(1535)~0", 1535.0, 0.0, 4.388081e-15, 150.00001195714884, 22112, 0], "Sigma(2250)~-": ["Sigma(2250)~-", "Sigma(2250)+", 2250.0, -1.0, 6.58e-15, 100.03224961534006, -103222, 0], "Delta(1600)~+": ["Delta(1600)~+", "Delta(1600)-", 1600.0, 1.0, 2.056913e-15, 320.00002064692944, -31114, 0], "K*_2(1430)~0": ["K*_2(1430)~0", "K*_2(1430)0", 1432.3999999999999, 0.0, 6.038644e-15, 109.00000107125666, -315, -315], "Delta(1600)~-": ["Delta(1600)~-", "Delta(1600)+", 1600.0, -1.0, 2.056913e-15, 320.00002064692944, -32214, 0], "Li7[0.0]": ["Li7[0.0]", null, 6535.365, 3.0, 0.0, 0.0, 1000030070, 0], "eta_b(1S)": ["eta_b(1S)", "eta_b(1S)", 9403.0, 0.0, 0.0, 0.0, 551, 551], "B_s0": ["B_s0", "B_s~0", 5366.7699999999995, 0.0, 0.001512, 4.3532553073342427e-10, 531, 531], "Ar40[0.0]": ["Ar40[0.0]", null, 37224.715000000004, 18.0, 0.0, 0.0, 1000180400, 0], "Delta(1920)0": ["Delta(1920)0", "Delta(1920)~0", 1920.0, 0.0, 2.531585e-15, 260.0000404761987, 22114, 0], "D(2S)0": ["D(2S)0", "D(2S)~0", 2580.0, 0.0, 0.0, 0.0, 100421, 0], "pi_1(1600)0": ["pi_1(1600)0", "pi_1(1600)0", 1662.0, 0.0, 2.742551e-15, 239.99998631527274, 9010113, 0], "Sigma_c*~0": ["Sigma_c*~0", "Sigma_c*0", 2518.8, 0.0, 4.539394e-14, 14.500001596445198, -4114, -4114], "anti-bs_1": ["anti-bs_1", "bs_1", 0.0, 0.7, 0.0, 0.0, -5303, -5303], "H+": ["H+", "H-", 310000.0, 1.0, 9.4e-17, 7002.257473073804, 37, 37], "Sigma(1940)-": ["Sigma(1940)-", "Sigma(1940)~+", 1940.0, -1.0, 2.991874e-15, 219.99997408612046, 23114, 0], "~u_Rbar": ["~u_Rbar", "~u_R", 500000.0, -0.7, 0.0, 0.0, -2000002, -2000002], "Sigma_c*~-": ["Sigma_c*~-", "Sigma_c*+", 2517.5, -1.0, 3.291061e-13, 2.0000000075019497, -4214, -4214], "H-": ["H-", "H+", 310000.0, -1.0, 9.4e-17, 7002.257473073804, -37, -37], "D(2S)+": ["D(2S)+", "D(2S)-", 2580.0, 1.0, 0.0, 0.0, 100411, 0], "B_s1(L)0": ["B_s1(L)0", "B_s1(L)~0", 5828.700000000001, 0.0, 1.3164239999999998e-12, 0.5000001538022231, 10533, 10533], "gamma": ["gamma", "gamma", 0.0, 0.0, 1e+25, 6.582122024689376e-38, 22, 22], "Delta(1920)~-": ["Delta(1920)~-", "Delta(1920)+", 1920.0, -1.0, 2.531585e-15, 260.0000404761987, -22214, 0], "triton": ["triton", "triton~", 2809.25, 1.0, 1e+24, 6.582122024689375e-37, 1000010030, 0], "Xi(1950)~0": ["Xi(1950)~0", "Xi(1950)0", 1950.0, 0.0, 1.09702e-14, 60.00001845626675, -103326, 0], "a_4(2040)-": ["a_4(2040)-", "a_4(2040)+", 1996.0, -1.0, 2.5812240000000002e-15, 255.000031949547, -219, 0], "h_b(2P)": ["h_b(2P)", "h_b(2P)", 10255.0, 0.0, 0.0, 0.0, 110553, 110553], "a_4(2040)+": ["a_4(2040)+", "a_4(2040)-", 1996.0, 1.0, 2.5812240000000002e-15, 255.000031949547, 219, 0], "~s_Rbar": ["~s_Rbar", "~s_R", 500000.0, 0.3, 0.0, 0.0, -2000003, -2000003], "D_s1(2460)-": ["D_s1(2460)-", "D_s1(2460)+", 2459.5, -1.0, 6.5821e-13, 1.0000033461493103, -20433, -20433], "eta_c(2S)": ["eta_c(2S)", "eta_c(2S)", 3639.4, 0.0, 6.582122e-14, 10.000000037509752, 100441, 100441], "Lambda(1670)~0": ["Lambda(1670)~0", "Lambda(1670)0", 1670.0, 0.0, 1.880606e-14, 35.00000544871906, -33122, 0], "Omega(2250)-": ["Omega(2250)-", "Omega(2250)~+", 2252.0, -1.0, 1.196749e-14, 55.00002109623133, 203338, 0], "Lambda(1600)0": ["Lambda(1600)0", "Lambda(1600)~0", 1600.0, 0.0, 4.388081e-15, 150.00001195714884, 23122, 0], "h_c(1P)": ["h_c(1P)", "h_c(1P)", 3525.38, 0.0, 9.403029e-13, 0.7000001834184895, 10443, 10443], "Cu63[0.0]": ["Cu63[0.0]", null, 58618.6, 29.0, 0.0, 0.0, 1000290630, 0], "tau-": ["tau-", "tau+", 1776.8200000000002, -1.0, 0.0002903, 2.267351713637401e-09, 15, 15], "Ne22[0.0]": ["Ne22[0.0]", null, 20484.841, 10.0, 0.0, 0.0, 1000100220, 0], "a_4(2040)0": ["a_4(2040)0", "a_4(2040)0", 1996.0, 0.0, 2.5812240000000002e-15, 255.000031949547, 119, 0], "p~-": ["p~-", "p+", 938.27205, -1.0, 1e+25, 6.582122024689376e-38, -2212, -2212], "Xi'_c~0": ["Xi'_c~0", "Xi'_c0", 2577.9, 0.0, 0.0, 0.0, -4312, -4312], "CMshower": ["CMshower", "CMshower", 0.0, 0.0, 0.0, 0.0, 94, 94], "K(1460)0": ["K(1460)0", "K(1460)~0", 1432.3999999999999, 0.0, 0.0, 0.0, 100311, 0], "Sigma*~0": ["Sigma*~0", "Sigma*0", 1383.6999999999998, 0.0, 1.828367e-14, 36.000004510524285, -3214, -3214], "Omega_c~0": ["Omega_c~0", "Omega_c0", 2695.2, 0.0, 6.9e-05, 9.539307282158515e-09, -4332, -4332], "Sigma*~-": ["Sigma*~-", "Sigma*+", 1382.8, -1.0, 1.828367e-14, 36.000004510524285, -3224, -3224], "Z(4430)+": ["Z(4430)+", "Z(4430)-", 4433.0, 1.0, 2.07634e-12, 0.3170059828683826, 9042413, 9042413], "Sigma*~+": ["Sigma*~+", "Sigma*-", 1387.2, 1.0, 1.670589e-14, 39.40000816891153, -3114, -3114], "K(1460)-": ["K(1460)-", "K(1460)+", 1432.3999999999999, -1.0, 0.0, 0.0, -100321, 0], "u*": ["u*", "u*bar", 400000.0, 0.7, 0.0, 0.0, 4000002, 4000002], "Xi'_c~-": ["Xi'_c~-", "Xi'_c+", 2575.6, -1.0, 0.0, 0.0, -4322, -4322], "Sigma(2030)~+": ["Sigma(2030)~+", "Sigma(2030)-", 2029.9999999999998, 1.0, 3.656734e-15, 180.00002255262143, -3118, 0], "K*_0(1430)0": ["K*_0(1430)0", "K*_0(1430)~0", 1425.0, 0.0, 2.437823e-15, 269.9999969107427, 10311, 10311], "Pb204[0.0]": ["Pb204[0.0]", null, 189999.627, 82.0, 0.0, 0.0, 1000822040, 0], "Xi*~+": ["Xi*~+", "Xi*-", 1535.0, 1.0, 6.648608e-14, 9.900000157460592, -3314, -3314], "Xi_b~0": ["Xi_b~0", "Xi_b0", 5793.1, 0.0, 0.00149, 4.417531560194212e-10, -5232, -5232], "Sigma(1660)0": ["Sigma(1660)0", "Sigma(1660)~0", 1660.0, 0.0, 6.582122e-15, 100.0000003750975, 13212, 0], "~g": ["~g", "~g", 500000.0, 0.0, 0.0, 0.0, 1000021, 1000021], "Upsilon_3(1D)": ["Upsilon_3(1D)", "Upsilon_3(1D)", 10159.9, 0.0, 0.0, 0.0, 557, 557], "N(2190)+": ["N(2190)+", "N(2190)~-", 2190.0, 1.0, 1.316424e-15, 500.00015380222294, 2128, 0], "Xsu": ["Xsu", "anti-Xsu", 1600.0, 1.0, 0.0, 0.0, 30353, 30353], "anti-t'": ["anti-t'", "t'", 500000.0, -0.7, 0.0, 0.0, -8, -8], "Xi(1690)~0": ["Xi(1690)~0", "Xi(1690)0", 1690.0, 0.0, 0.0, 0.0, -203322, 0], "K_1(1270)+": ["K_1(1270)+", "K_1(1270)-", 1272.0, 1.0, 7.313469000000001e-15, 89.99999897024757, 10323, 10323], "Sigma(1915)0": ["Sigma(1915)0", "Sigma(1915)~0", 1915.0, 0.0, 5.485102e-15, 119.99999315763637, 13216, 0], "~mu_R+": ["~mu_R+", "~mu_R-", 500000.0, 1.0, 0.0, 0.0, -2000013, -2000013], "Sigma(1915)-": ["Sigma(1915)-", "Sigma(1915)~+", 1915.0, -1.0, 5.485102e-15, 119.99999315763637, 13116, 0], "B_c1(H)-": ["B_c1(H)-", "B_c1(H)+", 7400.0, -1.0, 0.0, 0.0, -20543, -20543], "D-": ["D-", "D+", 1869.61, -1.0, 0.00104, 6.328963485278246e-10, -411, -411], "ss_1": ["ss_1", "anti-ss_1", 0.0, -0.7, 0.0, 0.0, 3303, 3303], "Sigma(1915)+": ["Sigma(1915)+", "Sigma(1915)~-", 1915.0, 1.0, 5.485102e-15, 119.99999315763637, 13226, 0], "Sigma(1660)+": ["Sigma(1660)+", "Sigma(1660)~-", 1660.0, 1.0, 6.582122e-15, 100.0000003750975, 13222, 0], "Xi_b~+": ["Xi_b~+", "Xi_b-", 5794.900000000001, 1.0, 0.00156, 4.219308990185497e-10, -5132, -5132], "Xi*~0": ["Xi*~0", "Xi*0", 1531.8, 0.0, 7.233101e-14, 9.100000158561834, -3324, -3324], "N(2190)0": ["N(2190)0", "N(2190)~0", 2190.0, 0.0, 1.316424e-15, 500.00015380222294, 1218, 0], "Sigma(1660)-": ["Sigma(1660)-", "Sigma(1660)~+", 1660.0, -1.0, 6.582122e-15, 100.0000003750975, 13112, 0], "Lambda(1800)~0": ["Lambda(1800)~0", "Lambda(1800)0", 1800.0, 0.0, 2.194041e-15, 299.9999555472927, -43122, 0], "~tau_1-": ["~tau_1-", "~tau_1+", 500000.0, -1.0, 0.0, 0.0, 1000015, 1000015], "Sigma(1660)~-": ["Sigma(1660)~-", "Sigma(1660)+", 1660.0, -1.0, 6.582122e-15, 100.0000003750975, -13222, 0], "~tau_1+": ["~tau_1+", "~tau_1-", 500000.0, 1.0, 0.0, 0.0, -1000015, -1000015], "Sigma(1660)~+": ["Sigma(1660)~+", "Sigma(1660)-", 1660.0, 1.0, 6.582122e-15, 100.0000003750975, -13112, 0], "eta(1295)": ["eta(1295)", "eta(1295)", 1294.0, 0.0, 1.196749e-14, 55.00002109623133, 100221, 0], "Xi_c+": ["Xi_c+", "Xi_c~-", 2467.8, 1.0, 0.000442, 1.489167878888999e-09, 4232, 4232], "Delta(1600)~--": ["Delta(1600)~--", "Delta(1600)++", 1600.0, -2.0, 2.056913e-15, 320.00002064692944, -32224, 0], "Xi_c0": ["Xi_c0", "Xi_c~0", 2470.88, 0.0, 0.000112, 5.876894664901228e-09, 4132, 4132], "chi_c1(1P)": ["chi_c1(1P)", "chi_c1(1P)", 3510.6600000000003, 0.0, 7.835857e-13, 0.8400002737019544, 20443, 20443], "Cl39[0.0]": ["Cl39[0.0]", null, 36298.46, 17.0, 0.0, 0.0, 1000170390, 0], "Sigma(1940)+": ["Sigma(1940)+", "Sigma(1940)~-", 1940.0, 1.0, 2.991874e-15, 219.99997408612046, 23224, 0], "Pb206[0.0]": ["Pb206[0.0]", null, 191863.937, 82.0, 0.0, 0.0, 1000822060, 0], "Sigma(1660)~0": ["Sigma(1660)~0", "Sigma(1660)0", 1660.0, 0.0, 6.582122e-15, 100.0000003750975, -13212, 0], "Mo98[0.0]": ["Mo98[0.0]", null, 91198.287, 42.0, 0.0, 0.0, 1000420980, 0], "Delta(1900)0": ["Delta(1900)0", "Delta(1900)~0", 1930.0, 0.0, 1.880606e-15, 350.00005448719065, 11212, 0], "b'-hadron": ["b'-hadron", "anti-b'-hadron", 400000.0, -0.3, 0.0, 0.0, 87, 0], "H_30": ["H_30", "H_30", 310000.0, 0.0, 9.4e-17, 7002.257473073804, 36, 36], "B*_0-": ["B*_0-", "B*_0+", 5738.0, -1.0, 4.39e-15, 149.93444247583997, -10521, -10521], "B*_0+": ["B*_0+", "B*_0-", 5738.0, 1.0, 4.39e-15, 149.93444247583997, 10521, 10521], "B*_00": ["B*_00", "B*_0~0", 5738.0, 0.0, 4.39e-15, 149.93444247583997, 10511, 10511], "B_1(H)+": ["B_1(H)+", "B_1(H)-", 5757.0, 1.0, 2.6299999999999997e-15, 250.270799417847, 20523, 20523], "D*_s0-": ["D*_s0-", "D*_s0+", 2317.7, -1.0, 6.5821e-13, 1.0000033461493103, -10431, -10431], "Sigma_b*+": ["Sigma_b*+", "Sigma_b*~-", 5832.099999999999, 1.0, 5.723583e-14, 11.500002751230086, 5224, 5224], "f'_2(1525)": ["f'_2(1525)", "f'_2(1525)", 1525.0, 0.0, 9.016605e-15, 73.00000415554831, 335, 335], "B_1(H)-": ["B_1(H)-", "B_1(H)+", 5757.0, -1.0, 2.6299999999999997e-15, 250.270799417847, -20523, -20523], "Xi_bc~0": ["Xi_bc~0", "Xi_bc0", 6900.0, 0.0, 0.0005, 1.316424404937875e-09, -5142, -5142], "Lambda_b0": ["Lambda_b0", "Lambda_b~0", 5619.5, 0.0, 0.001451, 4.5362660404475367e-10, 5122, 5122], "Xi(2030)~+": ["Xi(2030)~+", "Xi(2030)-", 2025.0, 1.0, 3.291061e-14, 20.000000075019503, -203316, 0], "Cu65[0.0]": ["Cu65[0.0]", null, 60479.842, 29.0, 0.0, 0.0, 1000290650, 0], "anti-c-hadron": ["anti-c-hadron", "c-hadron", 2000.0, -0.7, 0.0003335641, 1.973270512231195e-09, -84, -84], "B_c2*+": ["B_c2*+", "B_c2*-", 7350.0, 1.0, 0.0, 0.0, 545, 545], "K_2(1820)~0": ["K_2(1820)~0", "K_2(1820)0", 1816.0, 0.0, 2.384827e-15, 275.99997923075244, -20315, 0], "KL0": ["KL0", "KL0", 497.614, 0.0, 51.160000000000004, 1.2865758453263047e-14, 130, 130], "B_c2*-": ["B_c2*-", "B_c2*+", 7350.0, -1.0, 0.0, 0.0, -545, -545], "N(1535)+": ["N(1535)+", "N(1535)~-", 1535.0, 1.0, 4.388081e-15, 150.00001195714884, 22212, 0], "K*_2(1980)+": ["K*_2(1980)+", "K*_2(1980)-", 1973.0, 1.0, 0.0, 0.0, 100325, 0], "Lambda_b(5920)~0": ["Lambda_b(5920)~0", "Lambda_b(5920)0", 5919.7699999999995, 0.0, 1.316e-12, 0.5001612480767003, -5124, -5124], "Delta(1920)-": ["Delta(1920)-", "Delta(1920)~+", 1920.0, -1.0, 2.531585e-15, 260.0000404761987, 21114, 0], "F19[0.0]": ["F19[0.0]", null, 17696.896, 9.0, 0.0, 0.0, 1000090190, 0], "pi+": ["pi+", "pi-", 139.57018, 1.0, 26.032999999999998, 2.528376301113731e-14, 211, 211], "pi-": ["pi-", "pi+", 139.57018, -1.0, 26.032999999999998, 2.528376301113731e-14, -211, -211], "Delta(1920)~0": ["Delta(1920)~0", "Delta(1920)0", 1920.0, 0.0, 2.531585e-15, 260.0000404761987, -22114, 0], "Delta(1910)-": ["Delta(1910)-", "Delta(1910)~+", 1890.0, -1.0, 2.350758e-15, 279.9999840344849, 21112, 0], "Xi*_bc~0": ["Xi*_bc~0", "Xi*_bc0", 7048.5, 0.0, 0.0, 0.0, -5414, -5414], "rho_22_tc": ["rho_22_tc", "rho_22_tc", 300000.0, 0.0, 0.0, 0.0, 3400113, 3400113], "Sigma(1940)0": ["Sigma(1940)0", "Sigma(1940)~0", 1940.0, 0.0, 2.991874e-15, 219.99997408612046, 23214, 0], "Delta(1910)+": ["Delta(1910)+", "Delta(1910)~-", 1890.0, 1.0, 2.350758e-15, 279.9999840344849, 22122, 0], "Delta(1920)~+": ["Delta(1920)~+", "Delta(1920)-", 1920.0, 1.0, 2.531585e-15, 260.0000404761987, -21114, 0], "Delta(1910)0": ["Delta(1910)0", "Delta(1910)~0", 1890.0, 0.0, 2.350758e-15, 279.9999840344849, 21212, 0], "f_1(1285)": ["f_1(1285)", "f_1(1285)", 1281.9, 0.0, 2.7198850000000002e-14, 24.20000119376141, 20223, 20223], "pi0": ["pi0", "pi0", 134.9766, 0.0, 8.52e-08, 7.72549533414246e-06, 111, 111], "D*(2007)0": ["D*(2007)0", "D*(2007)~0", 2006.9599999999998, 0.0, 1.000003e-10, 0.006582102278382541, 423, 423], "Si30[0.0]": ["Si30[0.0]", null, 27920.383, 14.0, 0.0, 0.0, 1000140300, 0], "Delta++": ["Delta++", "Delta~--", 1232.0, 2.0, 5.6257450000000005e-15, 117.00000666026234, 2224, 2224], "Lambda(2110)0": ["Lambda(2110)0", "Lambda(2110)~0", 2110.0, 0.0, 3.291061e-15, 200.000000750195, 23126, 0], "Lambda(1405)0": ["Lambda(1405)0", "Lambda(1405)~0", 1405.1, 0.0, 1.316424e-14, 50.0000153802223, 13122, 0], "Lambda(1890)0": ["Lambda(1890)0", "Lambda(1890)~0", 1890.0, 0.0, 6.582122e-15, 100.0000003750975, 23124, 0], "N(1680)0": ["N(1680)0", "N(1680)~0", 1685.0, 0.0, 5.0631710000000004e-15, 129.99999456248614, 12116, 0], "eta_b2(2D)": ["eta_b2(2D)", "eta_b2(2D)", 10441.0, 0.0, 0.0, 0.0, 110555, 110555], "N(1650)~-": ["N(1650)~-", "N(1650)+", 1655.0, -1.0, 4.7015139999999994e-15, 140.00005157252272, -32212, 0], "K~0": ["K~0", "K0", 497.614, 0.0, 0.0, 0.0, -311, -311], "a_0(980)+": ["a_0(980)+", "a_0(980)-", 980.0, 1.0, 8.776163e-15, 74.99999743269781, 9000211, 10211], "vpho": ["vpho", "vpho", 0.0, 0.0, 0.0, 0.0, 10022, 0], "N(1680)+": ["N(1680)+", "N(1680)~-", 1685.0, 1.0, 5.0631710000000004e-15, 129.99999456248614, 12216, 0], "u": ["u", "anti-u", 5.6, 0.7, 0.0, 0.0, 2, 2], "D0": ["D0", "D~0", 1864.8400000000001, 0.0, 0.0004101, 1.6050041513507378e-09, 421, 421], "a_0(980)-": ["a_0(980)-", "a_0(980)+", 980.0, -1.0, 8.776163e-15, 74.99999743269781, -9000211, -10211], "n0": ["n0", "n~0", 939.56538, 0.0, 880300000000.0, 7.477135095637141e-25, 2112, 2112], "Xi_c(2815)~0": ["Xi_c(2815)~0", "Xi_c(2815)0", 2819.6, 0.0, 0.0, 0.0, -104312, 0], "chi_b1(2P)": ["chi_b1(2P)", "chi_b1(2P)", 10255.46, 0.0, 0.0, 0.0, 120553, 120553], "Delta(1900)~0": ["Delta(1900)~0", "Delta(1900)0", 1930.0, 0.0, 1.880606e-15, 350.00005448719065, -11212, 0]} \ No newline at end of file diff --git a/productions/d2hll/decay_parser/data/symbols.json b/productions/d2hll/decay_parser/data/symbols.json new file mode 100644 index 0000000..52725ba --- /dev/null +++ b/productions/d2hll/decay_parser/data/symbols.json @@ -0,0 +1 @@ +["Xu", true, "Any particle with u-quark", ["Delta(1700)~--", "Lambda(1810)~0", "Xi_bb0", "Delta(1930)++", "Xi_c*+", "Sigma_b0", "N(1520)~0", "Sigma_c~--", "Xi(1950)0", "N(1520)~-", "Delta(1930)~0", "Delta(1930)0", "Delta(1900)~-", "Delta(1930)+", "Delta(1910)~-", "N(1675)0", "b_1(1235)-", "eta_2(1645)", "N(1675)+", "D_1(H)~0", "Sigma_c*++", "Sigma(1670)~-", "Sigma(1670)~0", "Lambda_b~0", "D_1(2420)0", "pi(1800)+", "Sigma_c++", "Delta(1930)~-", "Sigma(2030)0", "D*_00", "uu_1", "D*_2(2460)~0", "pi(1800)-", "Sigma(2030)+", "Lambda_b(5920)0", "f_0(980)", "Sigma+", "Xi_cc++", "Xi*_bb~0", "N(1990)~0", "D_1(H)0", "Lambda_c(2880)~-", "Sigma0", "Delta~0", "Delta~-", "anti-cu_0", "Lambda(1405)~0", "rho_tc-", "K*(1680)-", "Delta(1920)++", "Xi*0", "rho(1450)+", "Lambda(1690)0", "pi_1(1600)+", "Xi_b*0", "K*(1410)+", "rho(770)+", "rho(770)-", "Sigma_b+", "Sigma~0", "Xi_c(2790)~-", "Delta(1700)0", "Sigma~-", "Delta(1700)+", "Delta(1920)~--", "N(1700)~0", "Sigma(1940)~-", "N(1900)0", "N(1900)+", "a_1(1260)-", "Sigma(1940)~0", "eta(1405)0", "N(1700)~-", "a_1(1260)+", "N(1900)~0", "a_0(1450)-", "N(1440)0", "a_0(1450)+", "N(1720)0", "N(1440)+", "N(1720)+", "pi_2(1670)+", "N(1720)~0", "Sigma(1750)~-", "Sigma(1750)0", "Sigma(1750)+", "Delta(1905)++", "anti-bu_0", "N(1720)~-", "Delta(1620)~--", "Delta(1900)++", "Lambda(1800)0", "Lambda(1600)~0", "ud_0", "Lambda_c+", "Delta(1950)0", "N(1535)~0", "Delta(1950)+", "Delta0", "Lambda(1830)0", "N(2190)~0", "Sigma(2250)0", "N(2190)~-", "Delta+", "Delta(1905)~--", "a_2(1320)+", "Lambda(1820)~0", "Lambda_c(2595)~-", "Xi_bc+", "pi(1300)-", "Lambda(1690)~0", "Delta~--", "N(1990)0", "D*(2007)~0", "Lambda(2110)~0", "K*(892)-", "pi_1(1600)-", "K*(892)+", "N(1710)~0", "N(1900)~-", "Sigma_c+", "K*_0(1430)-", "Lambda(1820)0", "Delta(1900)~--", "Xi_c(2815)~-", "Xi(1820)~0", "sigma_0", "b_1(1235)+", "K*_3(1780)-", "K*_3(1780)+", "N(1535)~-", "opticalphoton", "cu_1", "cu_0", "anti-u", "Lambda0", "pi_tc-", "Delta(1910)~0", "pi_tc+", "Lambda_c(2625)~-", "Sigma_c*+", "K+", "pi_1(1400)-", "K-", "Delta(1910)~--", "Sigma(1750)~0", "K(1460)+", "anti-bu_1", "Xi(2030)0", "rho_tc+", "K*_4(2045)+", "K*_4(2045)-", "Delta(1950)~--", "Sigma(1915)~-", "Sigma(1775)0", "K*_2(1980)-", "N(1700)0", "f_2(2010)", "Sigma(1775)+", "Lambda(2100)0", "bu_1", "Lambda_c~-", "Xi*_bb0", "Xi(1690)0", "rho(1700)+", "rho(1450)-", "D~0", "f_2(2340)", "D*(2640)~0", "pi_1(1400)+", "Xi(2030)~0", "omega_3(1670)", "omega(1420)", "Lambda_b(5912)~0", "Sigma_c*~--", "Xi_b*~0", "Xi'_c+", "Lambda~0", "Xi*_bc~-", "Sigma_b*0", "rho_3(1690)-", "Xi'_bc+", "ud_1", "Xi_cc~--", "rho_3(1690)+", "B*_2-", "B*_2+", "Xi_bb~0", "K_2(1770)+", "Lambda_c(2625)+", "K*(1680)+", "anti-ud_0", "n~0", "Sigma_b~-", "Xi_c*~-", "f_0(1370)", "Xi*_cc~--", "Delta(1950)++", "K*(1410)-", "Lambda(1890)~0", "f_0(1500)", "Xi0", "N(1700)+", "Delta(1900)+", "h_1(1170)", "D*_2(2460)0", "Lambda(1670)0", "Sigma_b~0", "K_2(1770)-", "Delta(1600)0", "Sigma(1915)~0", "Delta(1620)+", "omega(1650)", "Delta(1620)++", "Xi(1820)0", "anti-ud_1", "Delta(1620)0", "N(1675)~-", "Sigma*+", "Sigma*0", "Xi'_bc~-", "N(1675)~0", "Sigma(1670)+", "Sigma(2030)~-", "Sigma(2250)+", "Sigma(2030)~0", "eta", "Sigma_c~-", "Lambda_b(5912)0", "bu_0", "K_1(1270)-", "omega_tc", "Z(4430)-", "Xi_b0", "Lambda(1520)~0", "Xi'_b~0", "K*_2(1430)-", "K*_2(1430)+", "Delta(1920)+", "N(1440)~-", "N(2090)0", "N(2090)+", "Delta(1950)~0", "Xi_bc~-", "Delta(1905)~-", "Delta(1700)~-", "Delta(1700)~0", "Delta(1905)~0", "Delta(1600)++", "p+", "N(1990)~-", "Delta(1950)~-", "K_2(1820)-", "anti-su_1", "anti-su_0", "K_2(1820)+", "Delta(1600)+", "f_2(1270)", "a_2(1320)-", "N(1710)~-", "Xi~0", "N(2090)~0", "D*(2640)0", "N(1990)+", "Sigma(2250)~0", "Xi_c(2790)+", "N(2090)~-", "Lambda(1520)0", "K*_0(1430)+", "Delta(1620)~0", "Lambda(1810)0", "D(2S)~0", "Sigma(1670)0", "Delta(1620)~-", "Xi*_bc+", "f_4(2050)", "omega(782)", "Delta(1930)~--", "Lambda_c(2595)+", "rho(1700)-", "pi(1300)+", "N(1440)~0", "K_1(1400)-", "B_1(L)-", "K_1(1400)+", "B_1(L)+", "Xi*_cc++", "anti-uu_1", "Xi_c~-", "Xi_c(2815)+", "Xi'_b0", "f_2(2300)", "Delta(1910)++", "pi'_tc0", "N(1520)+", "pi_2(1670)-", "N(1520)0", "f_2(1950)", "B-", "B*-", "B*+", "Sigma_b*~-", "B+", "Sigma_b*~0", "N(1710)+", "Lambda(1830)~0", "anti-cu_1", "N(1710)0", "Delta(1905)0", "N(1650)0", "Lambda_c(2880)+", "N(1650)+", "Delta(1905)+", "su_1", "su_0", "D*_0~0", "N(1680)~-", "Sigma(1775)~0", "Lambda(2100)~0", "Sigma(1775)~-", "N(1680)~0", "N(1650)~0", "D_1(2420)~0", "Delta(1700)++", "Delta(1600)~0", "N(1535)0", "Sigma(2250)~-", "Delta(1600)~-", "Delta(1920)0", "D(2S)0", "Sigma_c*~-", "Delta(1920)~-", "Xi(1950)~0", "a_4(2040)-", "a_4(2040)+", "Lambda(1670)~0", "Lambda(1600)0", "p~-", "Sigma*~0", "Sigma*~-", "Z(4430)+", "K(1460)-", "Xi'_c~-", "Xi_b~0", "Sigma(1660)0", "N(2190)+", "Xi(1690)~0", "K_1(1270)+", "Sigma(1915)0", "Sigma(1915)+", "Sigma(1660)+", "Xi*~0", "N(2190)0", "Lambda(1800)~0", "Sigma(1660)~-", "eta(1295)", "Xi_c+", "Delta(1600)~--", "Sigma(1940)+", "Sigma(1660)~0", "Delta(1900)0", "B*_0-", "B*_0+", "B_1(H)+", "Sigma_b*+", "B_1(H)-", "Lambda_b0", "N(1535)+", "K*_2(1980)+", "Lambda_b(5920)~0", "pi+", "pi-", "Delta(1920)~0", "Sigma(1940)0", "Delta(1910)+", "Delta(1910)0", "f_1(1285)", "D*(2007)0", "Delta++", "Lambda(2110)0", "Lambda(1405)0", "Lambda(1890)0", "N(1680)0", "N(1650)~-", "a_0(980)+", "vpho", "N(1680)+", "u", "D0", "a_0(980)-", "n0", "Delta(1900)~0"]] \ No newline at end of file diff --git a/productions/d2hll/decay_parser/decay.py b/productions/d2hll/decay_parser/decay.py new file mode 100644 index 0000000..a366307 --- /dev/null +++ b/productions/d2hll/decay_parser/decay.py @@ -0,0 +1,43 @@ +from .particle import Particle + + +class Decay(Particle): + def __init__(self, name, search_type, children, cc=False, marked=False): + super(Decay, self).__init__(name, cc=cc, marked=marked) + self.children = children + self.search_type = search_type + + @property + def children(self): + return self._children + + @children.setter + def children(self, children): + self._children = children + + @property + def search_type(self): + return self._search_type + + @search_type.setter + def search_type(self, search_type): + self._search_type = search_type + + def __str__(self): + def convert_child(child): + if isinstance(child, Decay) and not child.cc: + return '(' + str(child) + ')' + else: + return str(child) + + return ( + ['', '^'][self.marked] + ['', '['][self.cc] + self.name + ' ' + + self.search_type + ' ' + + ' '.join(map(convert_child, self.children)) + ['', ']CC'][self.cc] + ).replace('(^', '^(') + + def __repr__(self): + return ( + 'Decay(' + self.name + ', ' + self.search_type + ', ' + + repr(self.children) + ', ' + str(self.cc) + ')' + ) diff --git a/productions/d2hll/decay_parser/decay.pyc b/productions/d2hll/decay_parser/decay.pyc new file mode 100644 index 0000000..236b51b --- /dev/null +++ b/productions/d2hll/decay_parser/decay.pyc Binary files differ diff --git a/productions/d2hll/decay_parser/parser.py b/productions/d2hll/decay_parser/parser.py new file mode 100644 index 0000000..add5574 --- /dev/null +++ b/productions/d2hll/decay_parser/parser.py @@ -0,0 +1,48 @@ +import pyparsing as pp + +from .decay import Decay +from .particle import Particle + + +__all__ = [ + 'make_parser' +] + + +def make_parser(particles, symbols): + # Make the inputs to the parser + particle_literals = map(lambda s: pp.Literal(s).setName(s), particles.keys()) + + # Make the parser + element = pp.Forward().setName('Element') + + particle = pp.Or(particle_literals).setName('Particle') + particle = particle.setParseAction(lambda x: Particle(x[0])) + + decay = element + pp.Or(['->', '-->', '=>']) + pp.OneOrMore(element) + decay = decay.setParseAction(lambda x: Decay(x[0], x[1], x[2:])) + decay = decay.setName('Decay') + + element_cc = supress('[', pp.Or([element, decay]), ']CC') + element_cc = element_cc.setParseAction(lambda x: x[0]._enable_cc() or x[0]) + + element << pp.Or([ + supress('(', element, ')'), mark(supress('(', element, ')')), + supress('(', decay, ')'), mark(supress('(', decay, ')')), + element_cc, mark(element_cc), + particle, mark(particle) + ]) + + return pp.Or([decay, element_cc]) + + +def supress(prefix, body, suffix): + prefix = pp.Literal(prefix).suppress().setName(prefix) + suffix = pp.Literal(suffix).suppress().setName(suffix) + return prefix + body + suffix + + +def mark(obj): + marked_obj = pp.Literal('^').suppress().setName('^') + obj + marked_obj = marked_obj.setParseAction(lambda x: x[0]._enable_marked() or x[0]) + return marked_obj diff --git a/productions/d2hll/decay_parser/parser.pyc b/productions/d2hll/decay_parser/parser.pyc new file mode 100644 index 0000000..3a4ec4b --- /dev/null +++ b/productions/d2hll/decay_parser/parser.pyc Binary files differ diff --git a/productions/d2hll/decay_parser/particle.py b/productions/d2hll/decay_parser/particle.py new file mode 100644 index 0000000..5ed25c7 --- /dev/null +++ b/productions/d2hll/decay_parser/particle.py @@ -0,0 +1,63 @@ +class Particle(object): + def __init__(self, name, cc=False, marked=False): + self.name = name + self.cc = cc + self.marked = marked + + def _enable_cc(self): + if self.cc: + raise ValueError(self.name, 'has been charge conjugated twice') + self.cc = True + + def _enable_marked(self): + if self.marked: + raise ValueError(self.name, 'has been marked twice') + self.marked = True + + @property + def name(self): + return self._name + + @name.setter + def name(self, name): + self._name = str(name) + + @property + def cc(self): + return self._cc + + @cc.setter + def cc(self, cc): + self._cc = cc + + @property + def marked(self): + return self._marked + + @marked.setter + def marked(self, marked): + self._marked = marked + + def __str__(self): + if self.cc: + prefix, suffix = '[', ']CC' + else: + prefix, suffix = '', '' + return ['', '^'][self.marked] + prefix + self.name + suffix + + def __repr__(self): + return ( + 'Particle(' + + self.name + ', ' + + str(self.cc) + ', ' + + str(self.marked) + ')' + ) + + def __eq__(self, other): + return all([ + isinstance(other, self.__class__) or isinstance(self, other.__class__), + self.__dict__ == other.__dict__ + ]) + + def __ne__(self, other): + return not self.__eq__(other) diff --git a/productions/d2hll/decay_parser/particle.pyc b/productions/d2hll/decay_parser/particle.pyc new file mode 100644 index 0000000..26d963e --- /dev/null +++ b/productions/d2hll/decay_parser/particle.pyc Binary files differ diff --git a/productions/d2hll/decay_parser/utils.py b/productions/d2hll/decay_parser/utils.py new file mode 100644 index 0000000..add0dfc --- /dev/null +++ b/productions/d2hll/decay_parser/utils.py @@ -0,0 +1,47 @@ +from copy import deepcopy + + +def mark_all(decay): + marked_decay = deepcopy(decay) + + marked_decay.children[0].marked = True + marked_decay.children[1].marked = True + marked_decay.children[2].marked = True + # marked_decay.children[1].marked = True + # marked_decay.children[1].children[0].marked = True + # marked_decay.children[1].children[1].marked = True + + return marked_decay + + +def get_branches(decay): + decay = deepcopy(decay) + + branches = {} + branches['Dp'] = str(decay) + + decay.children[0].marked = True + branches['Dp_h'] = str(decay) + decay.children[0].marked = False + + decay.children[1].marked = True + branches['Dp_l1'] = str(decay) + decay.children[1].marked = False + + decay.children[2].marked = True + branches['Dp_l2'] = str(decay) + decay.children[2].marked = False + + # decay.children[1].marked = True + # branches['Dp_phi'] = str(decay) + # decay.children[1].marked = False + + # decay.children[1].children[0].marked = True + # branches['Dp_l1'] = str(decay) + # decay.children[1].children[0].marked = False + + # decay.children[1].children[1].marked = True + # branches['Dp_l2'] = str(decay) + # decay.children[1].children[1].marked = False + + return branches diff --git a/productions/d2hll/decay_parser/utils.pyc b/productions/d2hll/decay_parser/utils.pyc new file mode 100644 index 0000000..ecd946e --- /dev/null +++ b/productions/d2hll/decay_parser/utils.pyc Binary files differ diff --git a/productions/d2hll/info.json b/productions/d2hll/info.json new file mode 100644 index 0000000..95bfb8c --- /dev/null +++ b/productions/d2hll/info.json @@ -0,0 +1,50 @@ +{ + "2015_MagDown": { + "options": ["main_options.py"], + "bookkeeping_path": "/LHCb/Collision15/Beam6500GeV-VeloClosed-MagDown/Real Data/Reco15a/Stripping24r1/90000000/CHARM.MDST", + "dq_flag": "OK", + "application": "DaVinci", + "application_version": "v44r2", + "output_type": "CHARM_D2HLL_DVNTUPLE.ROOT" + }, + "2015_MagUp": { + "options": ["main_options.py"], + "bookkeeping_path": "/LHCb/Collision15/Beam6500GeV-VeloClosed-MagUp/Real Data/Reco15a/Stripping24r1/90000000/CHARM.MDST", + "dq_flag": "OK", + "application": "DaVinci", + "application_version": "v44r2", + "output_type": "CHARM_D2HLL_DVNTUPLE.ROOT" + }, + "2016_MagDown": { + "options": ["main_options.py"], + "bookkeeping_path": "/LHCb/Collision16/Beam6500GeV-VeloClosed-MagDown/Real Data/Reco16/Stripping28r1/90000000/CHARM.MDST", + "dq_flag": "OK", + "application": "DaVinci", + "application_version": "v44r2", + "output_type": "CHARM_D2HLL_DVNTUPLE.ROOT" + }, + "2016_MagUp": { + "options": ["main_options.py"], + "bookkeeping_path": "/LHCb/Collision16/Beam6500GeV-VeloClosed-MagUp/Real Data/Reco16/Stripping28r1/90000000/CHARM.MDST", + "dq_flag": "OK", + "application": "DaVinci", + "application_version": "v44r2", + "output_type": "CHARM_D2HLL_DVNTUPLE.ROOT" + }, + "2017_MagDown": { + "options": ["main_options.py"], + "bookkeeping_path": "/LHCb/Collision17/Beam6500GeV-VeloClosed-MagDown/Real Data/Reco17/Stripping29r2/90000000/CHARM.MDST", + "dq_flag": "OK", + "application": "DaVinci", + "application_version": "v44r2", + "output_type": "CHARM_D2HLL_DVNTUPLE.ROOT" + }, + "2017_MagUp": { + "options": ["main_options.py"], + "bookkeeping_path": "/LHCb/Collision17/Beam6500GeV-VeloClosed-MagUp/Real Data/Reco17/Stripping29r2/90000000/CHARM.MDST", + "dq_flag": "OK", + "application": "DaVinci", + "application_version": "v44r2", + "output_type": "CHARM_D2HLL_DVNTUPLE.ROOT" + } +} diff --git a/productions/d2hll/main_options.py b/productions/d2hll/main_options.py new file mode 100644 index 0000000..87ab955 --- /dev/null +++ b/productions/d2hll/main_options.py @@ -0,0 +1,220 @@ +from collections import namedtuple +import subprocess +import re +import json +import glob +import os +from os.path import normpath, join, isfile +import sys + +from Configurables import DaVinci, CondDB, MCDecayTreeTuple + +if "CHARMWGPRODROOT" in os.environ: + # We are running a released version + sys.path.append(join(os.environ["CHARMWGPRODROOT"], 'productions/d2hll')) +elif "CI_PROJECT_DIR" in os.environ: + # We are running inside the CI + sys.path.append(join(os.environ["CI_PROJECT_DIR"], 'productions/d2hll')) +else: + # We are running with a local version + sys.path.append(normpath(os.getcwd())) + +try: + from make_decay_tree_tuples import make_decay_tree_tuple + from decay_parser import parse_decay + from decay_parser import utils as decay_utils +except ImportError as e: + raise Exception(str(os.listdir(os.getcwd())) + '\n' + repr(e)) + +# Keep the linter happy +if False: + unicode = str + + +Decay = namedtuple('Decay', ['name', 'decay_descriptor', 'stripping_line', 'dp_event_type', 'dsp_event_type']) + +decays = [ + Decay('DpToKmumu_OS', '[D+ -> K+ mu+ mu-]CC', 'D2XMuMuSS_KOSLine', '21113001', '23113001'), + Decay('DpToKmumu_SS', '[D+ -> K- mu+ mu+]CC', 'D2XMuMuSS_KSSLine', '21113003', '23113004'), + Decay('DpToKmue_OS', '[D+ -> K+ mu+ e-]CC', 'D2XMuMuSS_K_MuE_OSLine', '21113015', '23113015'), + Decay('DpToKmue_SS', '[D+ -> K- mu+ e+]CC', 'D2XMuMuSS_K_MuE_SSLine', '21113035', '23113035'), + Decay('DpToKemu_OS', '[D+ -> K+ e+ mu-]CC', 'D2XMuMuSS_K_EMu_OSLine', '21113005', '23113010'), + Decay('DpToKee_OS', '[D+ -> K+ e+ e-]CC', 'D2XMuMuSS_K_EE_OSLine', '21123000', '23123000'), + Decay('DpToKee_SS', '[D+ -> K- e+ e+]CC', 'D2XMuMuSS_K_EE_SSLine', '21123010', '23123010'), + Decay('DpTopimumu_OS', '[D+ -> pi+ mu+ mu-]CC', 'D2XMuMuSS_PiOSLine', '21113000', '23113000'), + Decay('DpTopimumu_SS', '[D+ -> pi- mu+ mu+]CC', 'D2XMuMuSS_PiSSLine', '21113002', '23113003'), + Decay('DpTopimue_OS', '[D+ -> pi+ mu+ e-]CC', 'D2XMuMuSS_Pi_MuE_OSLine', '21113016', '23113016'), + Decay('DpTopimue_SS', '[D+ -> pi- mu+ e+]CC', 'D2XMuMuSS_Pi_MuE_SSLine', '21113036', '23113036'), + Decay('DpTopiemu_OS', '[D+ -> pi+ e+ mu-]CC', 'D2XMuMuSS_Pi_EMu_OSLine', '21113006', '23113011'), + Decay('DpTopiee_OS', '[D+ -> pi+ e+ e-]CC', 'D2XMuMuSS_Pi_EE_OSLine', '21123001', '23123001'), + Decay('DpTopiee_SS', '[D+ -> pi- e+ e+]CC', 'D2XMuMuSS_Pi_EE_SSLine', '21123011', '23123011'), + # Unphysical channels + Decay('DpTopimumu_WS', '[D+ -> pi+ mu+ mu+]CC', 'D2XMuMuSS_PiMuMuCalLine', None, None), + Decay('DpTopimue_WS', '[D+ -> pi+ mu+ e+]CC', 'D2XMuMuSS_PiEMuCalLine', None, None), + Decay('DpTopiee_WS', '[D+ -> pi+ e+ e+]CC', 'D2XMuMuSS_PiEECalLine', None, None), + Decay('DpToKmumu_WS', '[D+ -> K+ mu+ mu+]CC', 'D2XMuMuSS_KMuMuCalLine', None, None), + Decay('DpToKmue_WS', '[D+ -> K+ mu+ e+]CC', 'D2XMuMuSS_KEMuCalLine', None, None), + Decay('DpToKee_WS', '[D+ -> K+ e+ e+]CC', 'D2XMuMuSS_KEECalLine', None, None), + # Calibration channels + Decay('DpToKKpi_SS', '[D+ -> K- K+ pi+]CC', 'D2XMuMuSS_2KPiLine', None, None), + Decay('DpToKpipi_SS', '[D+ -> K- pi+ pi+]CC', 'D2XMuMuSS_K2PiLine', None, None), + Decay('DpTopipipi_SS', '[D+ -> pi- pi+ pi+]CC', 'D2XMuMuSS_PiCalLine', None, None), +] + +norms = [ + Decay('DpToKphi_phiTomumu_OS', '[D+ -> K+ mu+ mu-]CC', 'D2XMuMuSS_KOSLine', None, '23113002'), + Decay('DpTopiphi_phiTomumu_OS', '[D+ -> pi+ mu+ mu-]CC', 'D2XMuMuSS_PiOSLine', '21173001', '23173001'), + Decay('DpTopiphi_phiToemu_OS', '[D+ -> pi+ e+ mu-]CC', 'D2XMuMuSS_Pi_EMu_OSLine', '21313000', None), + Decay('DpTopiphi_phiToee_OS', '[D+ -> pi+ e+ e-]CC', 'D2XMuMuSS_Pi_EE_OSLine', '21123020', '23123022'), + + Decay('DspToXphi_phiToemu_OS', '[D+ -> pi+ e+ mu-]CC', 'D2XMuMuSS_Pi_EMu_OSLine', None, '23712012'), + Decay('DspToXphi_phiTomumu_OS', '[D+ -> pi+ mu+ mu-]CC', 'D2XMuMuSS_PiOSLine', None, '23712020'), + Decay('DspToXphi_phiToee_OS', '[D+ -> pi+ e+ e-]CC', 'D2XMuMuSS_Pi_EE_OSLine', None, '23722012'), +] + + +def get_file_info_using_bender(): + file_info_fn = 'file_info_from_bender.json' + if not isfile(file_info_fn): + # Load the production configuration so we know what to do + prod_conf_matches = glob.glob('prodConf_DaVinci_*.py') + assert len(prod_conf_matches) == 1, prod_conf_matches + with open(prod_conf_matches[0], 'rt') as fp: + prod_conf = fp.read() + + # Find the XMLFileCatalog filename + matches = re.findall("XMLFileCatalog=['\"]([^'\"]+\.xml)['\"]", prod_conf) + assert len(matches) == 1, (matches, prod_conf) + xml_catalog_fn = matches[0] + + # Find the LFNs + lfns = re.findall("['\"](LFN:/[^'\"]+)['\"]", prod_conf) + assert lfns, (lfns, prod_conf) + + # Use Bender to find the event type, DB tag and data type + subprocess.check_call( + "lb-run Bender/latest bender -c '" + 'import json; ' + 'from BenderTools.Parser import dataType; ' + 'data_type, simulation, input_type = dataType("' + lfns[0] + '"); ' + 'json.dump({' + '"event_type": str(evt["/Event/Gen/Header"].evType()) if simulation else None, ' + '"db_tags": dict(evt["/Event/MC/Header"].condDBTags()) if simulation else None, ' + '"data_type": data_type, ' + '"simulation": simulation, ' + '"input_type": input_type' + '}, open("file_info_from_bender.json", "wt"))' + "' --no-color --xml '" + xml_catalog_fn + "' -b " + "'" + lfns[0] + "'", + shell=True + ) + with open('file_info_from_bender.json', 'rt') as fp: + _file_info = json.load(fp) + + # Convert everything to Python 2 strings to keep Gaudi happy + file_info = {} + for k, v in _file_info.items(): + k = str(k) + if isinstance(v, unicode): + v = str(v) + elif isinstance(v, dict): + v = {str(_k): str(_v) for _k, _v in v.items()} + file_info[k] = v + + return file_info + + +file_info = get_file_info_using_bender() + +# Finally configure DaVinci +DaVinci().InputType = file_info['input_type'] +DaVinci().TupleFile = 'Charm_D2hll_DVntuple.root' +DaVinci().PrintFreq = 100 +# DaVinci().EvtMax = 2000 +DaVinci().DataType = file_info['data_type'] +DaVinci().Simulation = file_info['simulation'] +# Only ask for luminosity information when not using simulated data +DaVinci().Lumi = not DaVinci().Simulation + +#decay tree location Lb line 61 +if DaVinci().Simulation: + DaVinci().CondDBtag = file_info['db_tags']['SIMCOND'] + DaVinci().DDDBtag = file_info['db_tags']['DDDB'] + if file_info['input_type'] == 'MDST': + DaVinci().RootInTES = '/Event/AllStreams' + elif file_info['input_type'] == 'DST': + pass + else: + raise ValueError(file_info) +else: + db = CondDB(LatestGlobalTagByDataType=file_info['data_type']) + DaVinci().RootInTES = '/Event/Charm' + + +# Setup the needed DecayTreeTuples +decays_to_consider = decays[:] + +dtts = [] +for decay in decays_to_consider: + dtt_name = decay_descriptor = None + + if DaVinci().Simulation: + if file_info['event_type'] == decay.dp_event_type: + dtt_name = decay.name + decay_descriptor = decay.decay_descriptor + elif file_info['event_type'] == decay.dsp_event_type: + dtt_name = decay.name.replace('Dp', 'Dsp') + decay_descriptor = decay.decay_descriptor.replace('D+', 'D_s+') + else: + matches = [norm_decay for norm_decay in norms + if file_info['event_type'] == norm_decay.dp_event_type or + file_info['event_type'] == norm_decay.dsp_event_type] + if matches: + assert len(matches) == 1, matches + if file_info['event_type'] == matches[0].dp_event_type: + dtt_name = decay.name + decay_descriptor = decay.decay_descriptor + elif file_info['event_type'] == matches[0].dsp_event_type: + dtt_name = decay.name.replace('Dp', 'Dsp') + decay_descriptor = decay.decay_descriptor.replace('D+', 'D_s+') + else: + raise RuntimeError(file_info['event_type']) + else: + # Nothing should be added to dtts + continue + else: + dtt_name = decay.name + decay_descriptor = decay.decay_descriptor + + assert dtt_name and decay_descriptor + dtts.append(make_decay_tree_tuple( + name=dtt_name, + line=decay.stripping_line, + decay_descriptor=decay_descriptor, + input_type=file_info['input_type'], + year=file_info['data_type'], + mc=DaVinci().Simulation + )) + + # Add MCDecayTreeTuple so we can get the Generator+Reconstruction+Stripping efficiency + if DaVinci().Simulation: + mctuple = MCDecayTreeTuple("MC"+dtt_name) + assert decay_descriptor.count('->') == 1, decay_descriptor + _decay = parse_decay(decay_descriptor) + mctuple.Decay = str(decay_utils.mark_all(_decay)).replace('->', '==>') + mctuple.addBranches({k: v.replace('->', '==>') + for k, v in decay_utils.get_branches(_decay).items()}) + + mctuple.ToolList = [ + "MCTupleToolHierarchy", + "LoKi::Hybrid::MCTupleTool/LoKi_Photos" + ] + # Add a 'number of photons' branch + mctuple.addTupleTool("MCTupleToolKinematic").Verbose = True + mctuple.addTupleTool("LoKi::Hybrid::TupleTool/LoKi_Photos").Variables = { + "nPhotos": "MCNINTREE(('gamma' == MCABSID))" + } + dtts.append(mctuple) + +assert dtts, file_info +DaVinci().UserAlgorithms += dtts diff --git a/productions/d2hll/make_decay_tree_tuples.py b/productions/d2hll/make_decay_tree_tuples.py new file mode 100644 index 0000000..13e723e --- /dev/null +++ b/productions/d2hll/make_decay_tree_tuples.py @@ -0,0 +1,727 @@ +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +from copy import deepcopy +from collections import defaultdict +from itertools import product + +from Configurables import DecayTreeTuple +from Configurables import MCMatchObjP2MCRelator +from Configurables import SubstitutePID +# This import is required even when not using GaudiSequencer +from DecayTreeTuple.Configuration import GaudiSequencer # NOQA +from PhysSelPython.Wrappers import AutomaticData +from PhysSelPython.Wrappers import Selection +from PhysSelPython.Wrappers import SelectionSequence + +from decay_parser import parse_decay +from decay_parser import utils as decay_utils + +import config + + +def make_decay_tree_tuple(name, line, decay_descriptor, input_type, year, mc=False): + assert str(year)[:2] == '20', year + decay = parse_decay(decay_descriptor.replace('D_s', 'D')) + + if input_type == 'MDST': + input_location = 'Phys/{line}/Particles' + else: + assert input_type == 'DST' and mc, input_type + input_location = '/Event/AllStreams/Phys/{line}/Particles' + + # Create an ntuple + dtt = DecayTreeTuple(name) + dtt.Inputs = [input_location.format(line=line)] + dtt.Decay = str(decay_utils.mark_all(decay)) + + # Add the branches + dtt.addBranches(decay_utils.get_branches(decay)) + + # Add the basic tools + if mc: + dtt.ToolList = config.tuple_tools + ['TupleToolMCBackgroundInfo'] # 'TupleToolMCTruth'] + + # Add TupleToolMCTruth with fix for "Fatal error No valid data at '/Event/Hlt2/Long/Protos'" + default_rel_locs = MCMatchObjP2MCRelator().getDefaultProperty('RelTableLocations') + rel_locs = [loc for loc in default_rel_locs if 'Turbo' not in loc] + + mctruth = dtt.addTupleTool('TupleToolMCTruth') + mctruth.addTool(MCMatchObjP2MCRelator) + mctruth.MCMatchObjP2MCRelator.RelTableLocations = rel_locs + else: + dtt.ToolList = config.tuple_tools + ['TupleToolEventInfo'] + + # Add verbose reconstruction information + dtt.addTupleTool('TupleToolRecoStats').Verbose = True + + # Setup for the related info variables + parent_vars = deepcopy(config.mother_loki_vars) + child_vars = defaultdict(dict) + add_related_info(parent_vars, child_vars, line, mc) + + # Extra information from LoKi + loki = dtt.addTupleTool('LoKi::Hybrid::TupleTool/basicLoKiTT') + loki.Variables = config.basic_loki_vars + loki.Preambulo = ['from LoKiTracks.decorators import TrIDC'] + + # Add mother-specific varaibles + loki = dtt.Dp.addTupleTool('LoKi::Hybrid::TupleTool/Dp_LoKiTT') + loki.Variables = parent_vars + if mc: + # Add secondary info if a particle has a parent with lifetime > 1e-7 ns + mctruth = dtt.Dp.addTupleTool('TupleToolMCTruth') + mctruth.addTool(MCMatchObjP2MCRelator) + mctruth.MCMatchObjP2MCRelator.RelTableLocations = rel_locs + mctruth.ToolList = ['MCTupleToolPrompt'] + + # Related info variables + for child in ['Dp_h', 'Dp_l1', 'Dp_l2']: + dtt.Dp.addTupleTool( + 'LoKi::Hybrid::TupleTool/{0}LoKiTT'.format(child) + ).Variables = child_vars[child] + + # Add trigger information + trigger = dtt.addTupleTool('TupleToolTISTOS') + trigger.VerboseL0 = True + trigger.VerboseHlt1 = True + trigger.VerboseHlt2 = True + trigger.TriggerList = get_triggers(mc, year) + + # Add calorimeter information + l0_calo_tool = dtt.addTupleTool('TupleToolL0Calo') + l0_calo_tool.WhichCalo = 'ECAL' + + # Add a decay tree fit to constrain the phi mass + # dtt.Dp.addTupleTool('TupleToolDecayTreeFitter/DTFphi') + # dtt.Dp.DTFphi.constrainToOriginVertex = False + # dtt.Dp.DTFphi.Verbose = True + # dtt.Dp.DTFphi.daughtersToConstrain = ['Dp_phi'] + + return dtt + + +def make_substitute_pid(name, decay_descriptor, decay, input_location): + raise NotImplementedError('Broken for uDST, see "Tupling MicroDSTs issue"') + + subs = SubstitutePID( + 'SubPID_' + name, + Code="DECTREE('{0}')".format(decay_descriptor.replace('D_s', 'D')), + Substitutions={ + 'D+ -> X+ l+ l-': 'D_s+', + 'D+ -> X- l+ l+': 'D_s+', + 'D- -> X- l+ l-': 'D_s-', + 'D- -> X+ l- l-': 'D_s-' + }, + MaxChi2PerDoF=-1 + ) + + selSub = Selection( + 'Sel_' + name, + Algorithm=subs, + RequiredSelections=[AutomaticData(Location=input_location)] + ) + + return SelectionSequence('SelSeq_' + name, TopSelection=selSub) + + +def add_related_info(parent_vars, child_vars, line, mc): + def add_relinfo(location, functor, prefix=None, parent=True, child=True): + var_name = '_'.join(filter(None, ['Loki', str(prefix or ''), functor])) + + loki_var = "RELINFO('{location}', '{functor}', -42)".format( + location='/'.join(filter(None, [ + '/Event', 'AllStreams' if mc else 'Charm', 'Phys', line, 'RelInfo'+location + ])), + functor=functor + ) + + if parent: + parent_vars[var_name] = loki_var + if child: + for child in ['Dp_h', 'Dp_l1', 'Dp_l2']: + child_vars[child][var_name] = loki_var.replace(location, location+'_'+child) + + for func, angle in product(config.cone_vars, config.cone_angles): + add_relinfo('ConeVariables_{}'.format(angle), func, prefix=angle) + + # for func, angle in product(config.ew_cone_vars, config.ew_cone_angles): + # add_relinfo('ConeVariablesForEW_{}'.format(angle), func, prefix=angle) + + # add_relinfo('BstautauCDFIso', 'BSTAUTAUCDFISO', child=False) + + # for var in config.vertex_iso_variables: + # add_relinfo('VertexIsolation', var, child=False) + + # for var in config.vertex_iso_bdt_variables: + # add_relinfo('VertexIsolationBDT', var, child=False) + + # for var in config.track_iso_bdt_variables: + # add_relinfo('TrackIsolationBDT', var) + + # for var in config.Bs2MuMuTrackIsolation_variables: + # add_relinfo('Bs2MuMuTrackIsolations', var, parent=False) + + +def get_triggers(is_mc, year): + # getL0Channels(0x6138160F) + L0_LINES = [ + 'L0B1gasDecision', + 'L0B2gasDecision', + 'L0CALODecision', + 'L0DiEM,lowMultDecision', + 'L0DiHadron,lowMultDecision', + 'L0DiMuonDecision', + 'L0DiMuon,lowMultDecision', + 'L0ElectronDecision', + 'L0Electron,lowMultDecision', + 'L0HadronDecision', + 'L0JetElDecision', + 'L0JetPhDecision', + 'L0MuonDecision', + 'L0Muon,lowMultDecision', + 'L0MuonEWDecision', + 'L0PhotonDecision', + 'L0Photon,lowMultDecision', + ] + # getHlt1Lines(0x11321609) + HLT1_LINES = [ + 'Hlt1TrackMVADecision', + 'Hlt1TwoTrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt1TwoTrackMVALooseDecision', + 'Hlt1TrackMuonDecision', + 'Hlt1DiMuonHighMassDecision', + 'Hlt1DiMuonLowMassDecision', + 'Hlt1SingleMuonHighPTDecision', + 'Hlt1DiMuonNoL0Decision', + 'Hlt1B2GammaGammaDecision', + 'Hlt1B2HH_LTUNB_KKDecision', + 'Hlt1B2HH_LTUNB_KPiDecision', + 'Hlt1B2HH_LTUNB_PiPiDecision', + 'Hlt1B2PhiGamma_LTUNBDecision', + 'Hlt1B2PhiPhi_LTUNBDecision', + 'Hlt1BeamGasBeam1Decision', + 'Hlt1BeamGasBeam1VeloOpenDecision', + 'Hlt1BeamGasBeam2Decision', + 'Hlt1BeamGasBeam2VeloOpenDecision', + 'Hlt1BeamGasHighRhoVerticesDecision', + 'Hlt1Bottomonium2KstarKstarDecision', + 'Hlt1Bottomonium2PhiPhiDecision', + 'Hlt1CalibHighPTLowMultTrksDecision', + 'Hlt1CalibMuonAlignJpsiDecision', + 'Hlt1CalibRICHMirrorRICH1Decision', + 'Hlt1CalibRICHMirrorRICH2Decision', + 'Hlt1CalibTrackingKKDecision', + 'Hlt1CalibTrackingKPiDecision', + 'Hlt1CalibTrackingKPiDetachedDecision', + 'Hlt1CalibTrackingPiPiDecision', + 'Hlt1DiMuonNoIPDecision', + 'Hlt1DiProtonDecision', + 'Hlt1DiProtonLowMultDecision', + 'Hlt1IncPhiDecision', + 'Hlt1L0AnyDecision', + 'Hlt1L0AnyNoSPDDecision', + 'Hlt1LowMultDecision', + 'Hlt1LowMultMaxVeloCutDecision', + 'Hlt1LowMultPassThroughDecision', + 'Hlt1LowMultVeloAndHerschel_HadronsDecision', + 'Hlt1LowMultVeloCut_HadronsDecision', + 'Hlt1LowMultVeloCut_LeptonsDecision', + 'Hlt1LumiDecision', + 'Hlt1MBNoBiasDecision', + 'Hlt1MultiDiMuonNoIPDecision', + 'Hlt1MultiMuonNoL0Decision', + 'Hlt1NoBiasNonBeamBeamDecision', + 'Hlt1ODINTechnicalDecision', + 'Hlt1SingleElectronNoIPDecision', + 'Hlt1SingleMuonNoIPDecision', + 'Hlt1Tell1ErrorDecision', + 'Hlt1VeloClosingMicroBiasDecision', + 'Hlt1ErrorEventDecision', + ] + # getHlt2Lines(0x6138160F) + if str(year) == '2015': + HLT2_LINES = [ + 'Hlt2RareCharmD2KeeFilterDecision', + 'Hlt2RareCharmD2KeeSSFilterDecision', + 'Hlt2RareCharmD2KMueFilterDecision', + 'Hlt2RareCharmD2KMueSSFilterDecision', + 'Hlt2RareCharmD2KMuMuFilterDecision', + 'Hlt2RareCharmD2KMuMuSSFilterDecision', + 'Hlt2RareCharmD2PieeFilterDecision', + 'Hlt2RareCharmD2PieeSSFilterDecision', + 'Hlt2RareCharmD2PiMueFilterDecision', + 'Hlt2RareCharmD2PiMueSSFilterDecision', + 'Hlt2RareCharmD2PiMuMuFilterDecision', + 'Hlt2RareCharmD2PiMuMuSSFilterDecision', + 'Hlt2SingleMuonDecision', + ] + else: + HLT2_LINES = [ + 'Hlt2RareCharmD2KEEOSDecision', + 'Hlt2RareCharmD2KEESSDecision', + 'Hlt2RareCharmD2KEEWSDecision', + 'Hlt2RareCharmD2KEMuOSDecision', + 'Hlt2RareCharmD2KMuEOSDecision', + 'Hlt2RareCharmD2KMuESSDecision', + 'Hlt2RareCharmD2KMuEWSDecision', + 'Hlt2RareCharmD2KMuMuOSDecision', + 'Hlt2RareCharmD2KMuMuSSDecision', + 'Hlt2RareCharmD2KMuMuWSDecision', + 'Hlt2RareCharmD2PiEEOSDecision', + 'Hlt2RareCharmD2PiEESSDecision', + 'Hlt2RareCharmD2PiEEWSDecision', + 'Hlt2RareCharmD2PiEMuOSDecision', + 'Hlt2RareCharmD2PiMuEOSDecision', + 'Hlt2RareCharmD2PiMuESSDecision', + 'Hlt2RareCharmD2PiMuEWSDecision', + 'Hlt2RareCharmD2PiMuMuOSDecision', + 'Hlt2RareCharmD2PiMuMuSSDecision', + 'Hlt2RareCharmD2PiMuMuWSDecision', + 'Hlt2SingleMuonDecision', + ] + + if is_mc: + # Add all HLT2 lines to MC + HLT2_LINES += [ + 'Hlt2B2HH_B2HHDecision', + 'Hlt2B2HH_B2KKDecision', + 'Hlt2B2HH_B2KPiDecision', + 'Hlt2B2HH_B2PiPiDecision', + 'Hlt2B2HH_Lb2PKDecision', + 'Hlt2B2HH_Lb2PPiDecision', + 'Hlt2B2Kpi0_B2K0pi0Decision', + 'Hlt2B2Kpi0_B2Kpi0Decision', + 'Hlt2BHadB02PpPpPmPmDecision', + 'Hlt2Bc2JpsiXTFBc2JpsiMuXDecision', + 'Hlt2BeamGasDecision', + 'Hlt2BottomoniumDiKstarTurboDecision', + 'Hlt2BottomoniumDiPhiDecision', + 'Hlt2CcDiHadronDiPhiDecision', + 'Hlt2CcDiHadronDiProtonDecision', + 'Hlt2CcDiHadronDiProtonLowMultDecision', + 'Hlt2CharmHadD02KmPipTurboDecision', + 'Hlt2CharmHadDp2EtaKp_Eta2EmEpGDecision', + 'Hlt2CharmHadDp2EtaKp_Eta2PimPipGDecision', + 'Hlt2CharmHadDp2EtaKp_Eta2PimPipPi0_Pi0MDecision', + 'Hlt2CharmHadDp2EtaKp_Eta2PimPipPi0_Pi0RDecision', + 'Hlt2CharmHadDp2EtaPip_Eta2EmEpGDecision', + 'Hlt2CharmHadDp2EtaPip_Eta2PimPipGDecision', + 'Hlt2CharmHadDp2EtaPip_Eta2PimPipPi0_Pi0MDecision', + 'Hlt2CharmHadDp2EtaPip_Eta2PimPipPi0_Pi0RDecision', + 'Hlt2CharmHadDp2EtapKp_Etap2EtaPimPip_EtaRDecision', + 'Hlt2CharmHadDp2EtapKp_Etap2PimPipGDecision', + 'Hlt2CharmHadDp2EtapPip_Etap2EtaPimPip_EtaRDecision', + 'Hlt2CharmHadDp2EtapPip_Etap2PimPipGDecision', + 'Hlt2CharmHadDp2KS0KS0KpTurboDecision', + 'Hlt2CharmHadDp2KS0KS0PipTurboDecision', + 'Hlt2CharmHadDp2KS0KmKpPip_KS0DDTurboDecision', + 'Hlt2CharmHadDp2KS0KmKpPip_KS0LLTurboDecision', + 'Hlt2CharmHadDp2KS0KmPipPip_KS0DDTurboDecision', + 'Hlt2CharmHadDp2KS0KmPipPip_KS0LLTurboDecision', + 'Hlt2CharmHadDp2KS0KpKpPim_KS0DDTurboDecision', + 'Hlt2CharmHadDp2KS0KpKpPim_KS0LLTurboDecision', + 'Hlt2CharmHadDp2KS0KpPimPip_KS0DDTurboDecision', + 'Hlt2CharmHadDp2KS0KpPimPip_KS0LLTurboDecision', + 'Hlt2CharmHadDp2KS0Kp_KS0DDTurboDecision', + 'Hlt2CharmHadDp2KS0Kp_KS0LLTurboDecision', + 'Hlt2CharmHadDp2KS0PimPipPip_KS0DDTurboDecision', + 'Hlt2CharmHadDp2KS0PimPipPip_KS0LLTurboDecision', + 'Hlt2CharmHadDp2KS0Pip_KS0DDTurboDecision', + 'Hlt2CharmHadDp2KS0Pip_KS0LLTurboDecision', + 'Hlt2CharmHadDp2KmKmKpPipPipTurboDecision', + 'Hlt2CharmHadDp2KmKpPimPipPipTurboDecision', + 'Hlt2CharmHadDp2KmPimPipPipPipTurboDecision', + 'Hlt2CharmHadDp2KpPi0_Pi02EmEpGDecision', + 'Hlt2CharmHadDp2PipPi0_Pi02EmEpGDecision', + 'Hlt2CharmHadDpDsp2KmKpKpPi0Decision', + 'Hlt2CharmHadDpDsp2KmKpPipPi0Decision', + 'Hlt2CharmHadDpDsp2KmPipPipPi0Decision', + 'Hlt2CharmHadDpDsp2KpKpPimPi0Decision', + 'Hlt2CharmHadDpDsp2KpPimPipPi0Decision', + 'Hlt2CharmHadDpDsp2PimPipPipPi0Decision', + 'Hlt2CharmHadDpToKmKpKpTurboDecision', + 'Hlt2CharmHadDpToKmKpPipTurboDecision', + 'Hlt2CharmHadDpToKmPipPipTurboDecision', + 'Hlt2CharmHadDpToKmPipPip_ForKPiAsymTurboDecision', + 'Hlt2CharmHadDpToKmPipPip_LTUNBTurboDecision', + 'Hlt2CharmHadDpToKpKpPimTurboDecision', + 'Hlt2CharmHadDpToKpPimPipTurboDecision', + 'Hlt2CharmHadDpToPimPipPipTurboDecision', + 'Hlt2CharmHadDsp2KS0KS0KpTurboDecision', + 'Hlt2CharmHadDsp2KS0KS0PipTurboDecision', + 'Hlt2CharmHadDsp2KS0KmKpPip_KS0DDTurboDecision', + 'Hlt2CharmHadDsp2KS0KmKpPip_KS0LLTurboDecision', + 'Hlt2CharmHadDsp2KS0KmPipPip_KS0DDTurboDecision', + 'Hlt2CharmHadDsp2KS0KmPipPip_KS0LLTurboDecision', + 'Hlt2CharmHadDsp2KS0KpKpPim_KS0DDTurboDecision', + 'Hlt2CharmHadDsp2KS0KpKpPim_KS0LLTurboDecision', + 'Hlt2CharmHadDsp2KS0KpPimPip_KS0DDTurboDecision', + 'Hlt2CharmHadDsp2KS0KpPimPip_KS0LLTurboDecision', + 'Hlt2CharmHadDsp2KS0PimPipPip_KS0DDTurboDecision', + 'Hlt2CharmHadDsp2KS0PimPipPip_KS0LLTurboDecision', + 'Hlt2CharmHadDsp2KmKmKpPipPipTurboDecision', + 'Hlt2CharmHadDsp2KmKpPimPipPipTurboDecision', + 'Hlt2CharmHadDsp2KmPimPipPipPipTurboDecision', + 'Hlt2CharmHadDspToKmKpKpTurboDecision', + 'Hlt2CharmHadDspToKmKpPipDecision', + 'Hlt2CharmHadDspToKmKpPipTurboDecision', + 'Hlt2CharmHadDspToKmKpPip_LTUNBTurboDecision', + 'Hlt2CharmHadDspToKmPipPipTurboDecision', + 'Hlt2CharmHadDspToKpKpPimTurboDecision', + 'Hlt2CharmHadDspToKpPimPipTurboDecision', + 'Hlt2CharmHadDspToPimPipPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02EmEpDecision', + 'Hlt2CharmHadDstp2D0Pip_D02GG_G2EmEpDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KS0_KS0DDTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KS0_KS0LLTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KS0_KS0LL_KS0DDTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmKp_KS0DDTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmKp_KS0DD_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmKp_KS0LLTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmKp_KS0LL_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmPip_KS0DDTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmPip_KS0DD_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmPip_KS0LLTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KmPip_KS0LL_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KpPim_KS0DDTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KpPim_KS0DD_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KpPim_KS0LLTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0KpPim_KS0LL_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0PimPip_KS0DDTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0PimPip_KS0DD_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0PimPip_KS0LLTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KS0PimPip_KS0LL_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmKmKpPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmKpKpPimTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmKpPi0_Pi0MDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmKpPi0_Pi0RDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmKpPimPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmKpTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmKp_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmPimPipPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmPipPi0_Pi0MDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmPipPi0_Pi0RDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KmPip_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KpPimPi0_Pi0MDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KpPimPi0_Pi0RDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KpPimPimPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KpPimTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02KpPim_LTUNBTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02PimPimPipPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02PimPipPi0_Pi0MDecision', + 'Hlt2CharmHadDstp2D0Pip_D02PimPipPi0_Pi0RDecision', + 'Hlt2CharmHadDstp2D0Pip_D02PimPipTurboDecision', + 'Hlt2CharmHadDstp2D0Pip_D02PimPip_LTUNBTurboDecision', + 'Hlt2CharmHadInclDst2PiD02HHXBDTDecision', + 'Hlt2CharmHadInclSigc2PiLc2HHXBDTDecision', + 'Hlt2CharmHadLcp2KS0KS0PpTurboDecision', + 'Hlt2CharmHadLcp2LamKmKpPip_Lam2PpPimTurboDecision', + 'Hlt2CharmHadLcp2LamKmPipPip_Lam2PpPimTurboDecision', + 'Hlt2CharmHadLcp2LamKp_LamDDTurboDecision', + 'Hlt2CharmHadLcp2LamKp_LamLLTurboDecision', + 'Hlt2CharmHadLcp2LamPip_LamDDTurboDecision', + 'Hlt2CharmHadLcp2LamPip_LamLLTurboDecision', + 'Hlt2CharmHadLcpToPpKmKmPipPipTurboDecision', + 'Hlt2CharmHadLcpToPpKmKpPimPipTurboDecision', + 'Hlt2CharmHadLcpToPpKmKpTurboDecision', + 'Hlt2CharmHadLcpToPpKmPimPipPipTurboDecision', + 'Hlt2CharmHadLcpToPpKmPipTurboDecision', + 'Hlt2CharmHadLcpToPpKmPip_LTUNBTurboDecision', + 'Hlt2CharmHadLcpToPpKpKpPimPimTurboDecision', + 'Hlt2CharmHadLcpToPpKpPimPimPipTurboDecision', + 'Hlt2CharmHadLcpToPpKpPimTurboDecision', + 'Hlt2CharmHadLcpToPpPimPimPipPipTurboDecision', + 'Hlt2CharmHadLcpToPpPimPipTurboDecision', + 'Hlt2CharmHadOmm2LamKm_DDDTurboDecision', + 'Hlt2CharmHadOmm2LamKm_DDLTurboDecision', + 'Hlt2CharmHadOmm2LamKm_LLLTurboDecision', + 'Hlt2CharmHadPentaToPhiPpPimTurboDecision', + 'Hlt2CharmHadPromptH2LamLamBar_LamDDTurboDecision', + 'Hlt2CharmHadPromptH2LamLamBar_LamLLTurboDecision', + 'Hlt2CharmHadPromptH2LamLamBar_LamLL_LamDDTurboDecision', + 'Hlt2CharmHadPromptH2LamLam_LamDDTurboDecision', + 'Hlt2CharmHadPromptH2LamLam_LamLLTurboDecision', + 'Hlt2CharmHadPromptH2LamLam_LamLL_LamDDTurboDecision', + 'Hlt2CharmHadSecondaryH2LamPipPmDDDDTurboDecision', + 'Hlt2CharmHadSecondaryH2LamPipPmDDLLTurboDecision', + 'Hlt2CharmHadSecondaryH2LamPipPmLLLLTurboDecision', + 'Hlt2CharmHadSecondaryH2LamPpPimDDDDTurboDecision', + 'Hlt2CharmHadSecondaryH2LamPpPimDDLLTurboDecision', + 'Hlt2CharmHadSecondaryH2LamPpPimLLLLTurboDecision', + 'Hlt2CharmHadXic0ToPpKmKmPipTurboDecision', + 'Hlt2CharmHadXic0ToPpKmKmPip_LTUNBTurboDecision', + 'Hlt2CharmHadXiccp2D0PpKmPim_D02KmPipTurboDecision', + 'Hlt2CharmHadXiccp2D0PpKmPip_D02KmPipTurboDecision', + 'Hlt2CharmHadXiccp2D0PpKpPim_D02KmPipTurboDecision', + 'Hlt2CharmHadXiccp2DpPpKm_Dp2KmPipPipTurboDecision', + 'Hlt2CharmHadXiccp2DpPpKp_Dp2KmPipPipTurboDecision', + 'Hlt2CharmHadXiccp2LcpKmPim_Lcp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccp2LcpKmPip_Lcp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccp2LcpKpPim_Lcp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccp2Xic0Pim_Xic0ToPpKmKmPipTurboDecision', + 'Hlt2CharmHadXiccp2Xic0Pip_Xic0ToPpKmKmPipTurboDecision', + 'Hlt2CharmHadXiccp2XicpPimPim_Xicp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccp2XicpPimPip_Xicp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccpp2D0PpKmPimPip_D02KmPipTurboDecision', + 'Hlt2CharmHadXiccpp2D0PpKmPipPip_D02KmPipTurboDecision', + 'Hlt2CharmHadXiccpp2D0PpKpPimPip_D02KmPipTurboDecision', + 'Hlt2CharmHadXiccpp2DpPpKmPim_Dp2KmPipPipTurboDecision', + 'Hlt2CharmHadXiccpp2DpPpKmPip_Dp2KmPipPipTurboDecision', + 'Hlt2CharmHadXiccpp2DpPpKpPip_Dp2KmPipPipTurboDecision', + 'Hlt2CharmHadXiccpp2LcpKmPimPip_Lcp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccpp2LcpKmPipPip_Lcp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccpp2LcpKpPimPip_Lcp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccpp2Xic0PimPip_Xic0ToPpKmKmPipTurboDecision', + 'Hlt2CharmHadXiccpp2Xic0PipPip_Xic0ToPpKmKmPipTurboDecision', + 'Hlt2CharmHadXiccpp2XicpPim_Xicp2PpKmPipTurboDecision', + 'Hlt2CharmHadXiccpp2XicpPip_Xicp2PpKmPipTurboDecision', + 'Hlt2CharmHadXicpToPpKmPipTurboDecision', + 'Hlt2CharmHadXim2LamPim_DDDTurboDecision', + 'Hlt2CharmHadXim2LamPim_DDLTurboDecision', + 'Hlt2CharmHadXim2LamPim_LLLTurboDecision', + 'Hlt2DPS2muHcDecision', + 'Hlt2DPS2x2muDecision', + 'Hlt2DPS2xHcDecision', + 'Hlt2DebugEventDecision', + 'Hlt2DiElectronElSoftDecision', + 'Hlt2DiMuonBDecision', + 'Hlt2DiMuonBTurboDecision', + 'Hlt2DiMuonDetachedDecision', + 'Hlt2DiMuonDetachedHeavyDecision', + 'Hlt2DiMuonDetachedJPsiDecision', + 'Hlt2DiMuonDetachedPsi2SDecision', + 'Hlt2DiMuonJPsiDecision', + 'Hlt2DiMuonJPsiHighPTDecision', + 'Hlt2DiMuonJPsiTurboDecision', + 'Hlt2DiMuonPsi2SDecision', + 'Hlt2DiMuonPsi2SHighPTDecision', + 'Hlt2DiMuonPsi2STurboDecision', + 'Hlt2DiMuonSoftDecision', + 'Hlt2DiMuonZDecision', + 'Hlt2DisplVerticesDoubleDecision', + 'Hlt2DisplVerticesDoublePSDecision', + 'Hlt2DisplVerticesSingleDecision', + 'Hlt2DisplVerticesSingleHighFDDecision', + 'Hlt2DisplVerticesSingleHighMassDecision', + 'Hlt2DisplVerticesSingleLoosePSDecision', + 'Hlt2DisplVerticesSinglePSDecision', + 'Hlt2DisplVerticesSingleVeryHighFDDecision', + 'Hlt2EWDiElectronDYDecision', + 'Hlt2EWDiElectronHighMassDecision', + 'Hlt2EWDiMuonDY1Decision', + 'Hlt2EWDiMuonDY2Decision', + 'Hlt2EWDiMuonDY3Decision', + 'Hlt2EWDiMuonDY4Decision', + 'Hlt2EWDiMuonZDecision', + 'Hlt2EWSingleElectronHighPtDecision', + 'Hlt2EWSingleElectronLowPtDecision', + 'Hlt2EWSingleElectronVHighPtDecision', + 'Hlt2EWSingleMuonHighPtDecision', + 'Hlt2EWSingleMuonLowPtDecision', + 'Hlt2EWSingleMuonVHighPtDecision', + 'Hlt2EWSingleTauHighPt2ProngDecision', + 'Hlt2EWSingleTauHighPt3ProngDecision', + 'Hlt2ExoticaDiMuonNoIPTurboDecision', + 'Hlt2ExoticaDiRHNuDecision', + 'Hlt2ExoticaDisplDiMuonDecision', + 'Hlt2ExoticaDisplDiMuonNoPointDecision', + 'Hlt2ExoticaDisplPhiPhiDecision', + 'Hlt2ExoticaPrmptDiMuonHighMassDecision', + 'Hlt2ExoticaPrmptDiMuonSSTurboDecision', + 'Hlt2ExoticaPrmptDiMuonTurboDecision', + 'Hlt2ExoticaQuadMuonNoIPDecision', + 'Hlt2ExoticaRHNuDecision', + 'Hlt2ExoticaRHNuHighMassDecision', + 'Hlt2ForwardDecision', + 'Hlt2JetsDiJetDecision', + 'Hlt2JetsDiJetLowPtDecision', + 'Hlt2JetsDiJetMVLowPtDecision', + 'Hlt2JetsDiJetMuMuDecision', + 'Hlt2JetsDiJetMuMuLowPtDecision', + 'Hlt2JetsDiJetSVDecision', + 'Hlt2JetsDiJetSVLowPtDecision', + 'Hlt2JetsDiJetSVMuDecision', + 'Hlt2JetsDiJetSVMuLowPtDecision', + 'Hlt2JetsDiJetSVSVDecision', + 'Hlt2JetsDiJetSVSVLowPtDecision', + 'Hlt2JetsJetLowPtDecision', + 'Hlt2JetsJetMuLowPtDecision', + 'Hlt2JetsJetSVLowPtDecision', + 'Hlt2LFVJpsiMuETurboDecision', + 'Hlt2LFVPhiMuETurboDecision', + 'Hlt2LFVPromptPhiMuETurboDecision', + 'Hlt2LFVUpsilonMuETurboDecision', + 'Hlt2LowMultChiC2HHDecision', + 'Hlt2LowMultChiC2HHHHDecision', + 'Hlt2LowMultChiC2HHHHWSDecision', + 'Hlt2LowMultChiC2HHWSDecision', + 'Hlt2LowMultChiC2PPDecision', + 'Hlt2LowMultChiC2PPWSDecision', + 'Hlt2LowMultD2K3PiDecision', + 'Hlt2LowMultD2K3PiWSDecision', + 'Hlt2LowMultD2KKPiDecision', + 'Hlt2LowMultD2KKPiWSDecision', + 'Hlt2LowMultD2KPiDecision', + 'Hlt2LowMultD2KPiPiDecision', + 'Hlt2LowMultD2KPiPiWSDecision', + 'Hlt2LowMultD2KPiWSDecision', + 'Hlt2LowMultDiElectronDecision', + 'Hlt2LowMultDiElectron_noTrFiltDecision', + 'Hlt2LowMultDiMuonDecision', + 'Hlt2LowMultDiMuon_PSDecision', + 'Hlt2LowMultDiPhotonDecision', + 'Hlt2LowMultDiPhoton_HighMassDecision', + 'Hlt2LowMultHadron_noTrFiltDecision', + 'Hlt2LowMultL2pPiDecision', + 'Hlt2LowMultL2pPiWSDecision', + 'Hlt2LowMultLMR2HHDecision', + 'Hlt2LowMultLMR2HHHHDecision', + 'Hlt2LowMultLMR2HHHHWSDecision', + 'Hlt2LowMultLMR2HHWSDecision', + 'Hlt2LowMultMuonDecision', + 'Hlt2LowMultPi0Decision', + 'Hlt2LowMultTechnical_MinBiasDecision', + 'Hlt2LumiDecision', + 'Hlt2MBNoBiasDecision', + 'Hlt2MajoranaBLambdaMuDDDecision', + 'Hlt2MajoranaBLambdaMuLLDecision', + 'Hlt2NoBiasNonBeamBeamDecision', + 'Hlt2PIDB2KJPsiEENegTaggedTurboCalibDecision', + 'Hlt2PIDB2KJPsiEEPosTaggedTurboCalibDecision', + 'Hlt2PIDB2KJPsiMuMuNegTaggedTurboCalibDecision', + 'Hlt2PIDB2KJPsiMuMuPosTaggedTurboCalibDecision', + 'Hlt2PIDD02KPiTagTurboCalibDecision', + 'Hlt2PIDDetJPsiMuMuNegTaggedTurboCalibDecision', + 'Hlt2PIDDetJPsiMuMuPosTaggedTurboCalibDecision', + 'Hlt2PIDDs2KKPiSSTaggedTurboCalibDecision', + 'Hlt2PIDDs2MuMuPiNegTaggedTurboCalibDecision', + 'Hlt2PIDDs2MuMuPiPosTaggedTurboCalibDecision', + 'Hlt2PIDDs2PiPhiKKNegTaggedTurboCalibDecision', + 'Hlt2PIDDs2PiPhiKKPosTaggedTurboCalibDecision', + 'Hlt2PIDDs2PiPhiMuMuNegTaggedTurboCalibDecision', + 'Hlt2PIDDs2PiPhiMuMuPosTaggedTurboCalibDecision', + 'Hlt2PIDKs2PiPiLLTurboCalibDecision', + 'Hlt2PIDLambda2PPiLLTurboCalibDecision', + 'Hlt2PIDLambda2PPiLLhighPTTurboCalibDecision', + 'Hlt2PIDLambda2PPiLLisMuonTurboCalibDecision', + 'Hlt2PIDLambda2PPiLLveryhighPTTurboCalibDecision', + 'Hlt2PIDLb2LcMuNuTurboCalibDecision', + 'Hlt2PIDLb2LcPiTurboCalibDecision', + 'Hlt2PIDLc2KPPiTurboCalibDecision', + 'Hlt2PassThroughDecision', + 'Hlt2PhiBs2PhiPhiDecision', + 'Hlt2PhiIncPhiDecision', + 'Hlt2PhiPhi2EETurboDecision', + 'Hlt2PhiPhi2KsKsDecision', + 'Hlt2PhiPhi2KsKsD0CtrlDecision', + 'Hlt2PhiPromptPhi2EETurboDecision', + 'Hlt2RadiativeB2GammaGammaDecision', + 'Hlt2RadiativeB2GammaGammaDDDecision', + 'Hlt2RadiativeB2GammaGammaDoubleDecision', + 'Hlt2RadiativeB2GammaGammaLLDecision', + 'Hlt2RadiativeBd2KstGammaDecision', + 'Hlt2RadiativeBd2KstGammaULUnbiasedDecision', + 'Hlt2RadiativeBs2PhiGammaDecision', + 'Hlt2RadiativeBs2PhiGammaUnbiasedDecision', + 'Hlt2RadiativeHypb2L0HGammaOmDecision', + 'Hlt2RadiativeHypb2L0HGammaOmEEDecision', + 'Hlt2RadiativeHypb2L0HGammaXiDecision', + 'Hlt2RadiativeHypb2L0HGammaXiEEDecision', + 'Hlt2RadiativeIncHHGammaDecision', + 'Hlt2RadiativeIncHHGammaEEDecision', + 'Hlt2RadiativeIncHHHGammaDecision', + 'Hlt2RadiativeIncHHHGammaEEDecision', + 'Hlt2RadiativeLb2L0GammaEELLDecision', + 'Hlt2RadiativeLb2L0GammaLLDecision', + 'Hlt2RareCharmD02EMuDecision', + 'Hlt2RareCharmD02KKMuMuDecision', + 'Hlt2RareCharmD02KKMueDecision', + 'Hlt2RareCharmD02KKeeDecision', + 'Hlt2RareCharmD02KMuDecision', + 'Hlt2RareCharmD02KPiDecision', + 'Hlt2RareCharmD02KPiMuMuDecision', + 'Hlt2RareCharmD02KPiMuMuSSDecision', + 'Hlt2RareCharmD02KPiMueDecision', + 'Hlt2RareCharmD02KPieeDecision', + 'Hlt2RareCharmD02MuMuDecision', + 'Hlt2RareCharmD02PiPiDecision', + 'Hlt2RareCharmD02PiPiMuMuDecision', + 'Hlt2RareCharmD02PiPiMueDecision', + 'Hlt2RareCharmD02PiPieeDecision', + 'Hlt2RareCharmLc2PMuMuDecision', + 'Hlt2RareCharmLc2PMuMuSSDecision', + 'Hlt2RareCharmLc2PMueDecision', + 'Hlt2RareCharmLc2PeeDecision', + 'Hlt2RareStrangeKPiMuMuDecision', + 'Hlt2RareStrangeKPiMuMuSSDecision', + 'Hlt2RareStrangeSigmaPMuMuDecision', + 'Hlt2SLB_B2D0Mu_D02KmKpTurboDecision', + 'Hlt2SLB_B2D0Mu_D02KmPipTurboDecision', + 'Hlt2SLB_B2D0Mu_D02PimPipTurboDecision', + 'Hlt2SLB_B2DstMu_D02KmKpTurboDecision', + 'Hlt2SLB_B2DstMu_D02KmPipTurboDecision', + 'Hlt2SLB_B2DstMu_D02PimPipTurboDecision', + 'Hlt2SingleMuonHighPTDecision', + 'Hlt2SingleMuonLowPTDecision', + 'Hlt2SingleMuonRareDecision', + 'Hlt2SingleMuonVHighPTDecision', + 'Hlt2StrangeKPiPiPiTurboDecision', + 'Hlt2StrangeLFVMuonElectronSoftDecision', + 'Hlt2Topo2BodyDecision', + 'Hlt2Topo3BodyDecision', + 'Hlt2Topo4BodyDecision', + 'Hlt2TopoE2BodyDecision', + 'Hlt2TopoE3BodyDecision', + 'Hlt2TopoE4BodyDecision', + 'Hlt2TopoEE2BodyDecision', + 'Hlt2TopoEE3BodyDecision', + 'Hlt2TopoEE4BodyDecision', + 'Hlt2TopoMu2BodyDecision', + 'Hlt2TopoMu3BodyDecision', + 'Hlt2TopoMu4BodyDecision', + 'Hlt2TopoMuE2BodyDecision', + 'Hlt2TopoMuE3BodyDecision', + 'Hlt2TopoMuE4BodyDecision', + 'Hlt2TopoMuMu2BodyDecision', + 'Hlt2TopoMuMu3BodyDecision', + 'Hlt2TopoMuMu4BodyDecision', + 'Hlt2TopoMuMuDDDecision', + 'Hlt2TrackEffDiMuonDownstreamMinusHighStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonDownstreamMinusHighStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonDownstreamMinusLowStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonDownstreamMinusLowStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonDownstreamPlusHighStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonDownstreamPlusHighStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonDownstreamPlusLowStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonDownstreamPlusLowStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTMinusHighStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTMinusHighStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTMinusLowStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTMinusLowStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTPlusHighStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTPlusHighStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTPlusLowStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonMuonTTPlusLowStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonMinusHighStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonMinusHighStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonMinusLowStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonMinusLowStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonPlusHighStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonPlusHighStatTaggedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonPlusLowStatMatchedTurboCalibDecision', + 'Hlt2TrackEffDiMuonVeloMuonPlusLowStatTaggedTurboCalibDecision', + 'Hlt2TrackEff_D0ToKpiKaonProbeTurboDecision', + 'Hlt2TrackEff_D0ToKpiPionProbeTurboDecision', + 'Hlt2TransparentDecision', + 'Hlt2TriMuonDetachedDecision', + 'Hlt2TriMuonTau23MuDecision', + 'Hlt2XcMuXForTauB2XcFakeMuDecision', + 'Hlt2XcMuXForTauB2XcMuDecision', + 'Hlt2ErrorEventDecision', + ] + + return L0_LINES + HLT1_LINES + HLT2_LINES diff --git a/productions/d2hll/make_decay_tree_tuples.pyc b/productions/d2hll/make_decay_tree_tuples.pyc new file mode 100644 index 0000000..d2d734c --- /dev/null +++ b/productions/d2hll/make_decay_tree_tuples.pyc Binary files differ diff --git a/productions/local_test_data/._Ds_eepi_data.py b/productions/local_test_data/._Ds_eepi_data.py new file mode 100644 index 0000000..c474c16 --- /dev/null +++ b/productions/local_test_data/._Ds_eepi_data.py Binary files differ diff --git a/productions/local_test_data/._Ds_mumupi_data.py b/productions/local_test_data/._Ds_mumupi_data.py new file mode 100644 index 0000000..ed257c7 --- /dev/null +++ b/productions/local_test_data/._Ds_mumupi_data.py Binary files differ diff --git a/productions/local_test_data/.ipynb_checkpoints/Untitled-checkpoint.ipynb b/productions/local_test_data/.ipynb_checkpoints/Untitled-checkpoint.ipynb new file mode 100644 index 0000000..2fd6442 --- /dev/null +++ b/productions/local_test_data/.ipynb_checkpoints/Untitled-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/productions/local_test_data/Ds_eepi_data.py b/productions/local_test_data/Ds_eepi_data.py new file mode 100644 index 0000000..ae7920e --- /dev/null +++ b/productions/local_test_data/Ds_eepi_data.py @@ -0,0 +1,255 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2piMuMuOSDecision', + 'Hlt2RareCharmD2piEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSee = "[D_s+ -> ^(phi(1020) -> ^e+ ^e-) ^pi+]CC" + +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + +#for mc /Event/ +# find my own decay_tree_location using main_opt and make_decay_tree_tuples.py +decay_tree_location_Dplus_electrons = 'Phys/D2XMuMuSS_Pi_EE_OSLine/Particles' +#decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' + +#ACCESSING TO THE DECAY DAUGHTERS +StrippingSel = AutomaticData(decay_tree_location_Dplus_electrons) + + +electron_from_Ds = FilterInTrees('electron_from_Ds', Code="('e-' == ABSID)") +electron_from_Ds_sel = Selection("electron_from_Ds_sel", + Algorithm=electron_from_Ds, + RequiredSelections=[StrippingSel]) + +electron_Filter = FilterDesktop('electron_Filter', Code="PPINFO(PROBNNe)>0.05")# +electron_Filter_sel = Selection("Filtered_electron_sel", + Algorithm=electron_Filter, + RequiredSelections=[electron_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") +pionFilter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> e+ e-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[electron_from_Ds_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pionFilter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) + + +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSee +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "e_plus":"[D+ -> (phi(1020) -> ^e+ e-) pi+]CC", + "e_minus":"[D+ -> (phi(1020) -> e+ ^e-) pi+]CC", + + +}) +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = -1 # 200 # Number of events +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = False +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/Charm' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_eepi.root" +#DaVinci().Input = ['PFN:/disk/data12/lhcb/davide/Rphipi/00070442_00006584_1.charm.mdst'] + + +DaVinci().DataType = "2016" diff --git a/productions/local_test_data/Ds_mumupi_data.py b/productions/local_test_data/Ds_mumupi_data.py new file mode 100644 index 0000000..1b9f222 --- /dev/null +++ b/productions/local_test_data/Ds_mumupi_data.py @@ -0,0 +1,256 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2piMuMuOSDecision', + 'Hlt2RareCharmD2piEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSmumu = "[D_s+ -> ^(phi(1020) -> ^mu+ ^mu-) ^pi+]CC" +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + +#for mc /Event/ +#decay_tree_location_Dplus_electrons = 'Phys/D2XMuMuSS_Pi_EE_OSLine/Particles' +decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' + + +StrippingSel = AutomaticData(decay_tree_location_Dplus_muons) +#ACCESSING TO THE DECAY DAUGHTERS + +muon_from_Ds = FilterInTrees('muon_from_Ds', Code="('mu-' == ABSID)") +muon_from_Ds_sel = Selection("muon_from_Ds_sel", + Algorithm=muon_from_Ds, + RequiredSelections=[StrippingSel]) + +#muon_Filter = FilterDesktop('muon_Filter', Code="ALL") +#aplying cuts to the muons prob NN in order to filter out background events +muon_Filter = FilterDesktop('muon_Filter', Code="PPINFO(PROBNNmu)>0.1") + +muon_Filter_sel = Selection("Filtered_muon_sel", + Algorithm=muon_Filter, + RequiredSelections=[muon_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +# pion_Filter = FilterDesktop('pionFilter', Code="ALL") +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") + +pionFilter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> mu+ mu-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[muon_from_Ds_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pionFilter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSmumu +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "e_plus":"[D+ -> (phi(1020) -> ^mu+ mu-) pi+]CC", + "e_minus":"[D+ -> (phi(1020) -> mu+ ^mu-) pi+]CC", + + +}) +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = -1 # # Number of events set to all of them +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = False +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/Charm' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_mumupi.root" +#DaVinci().Input = ['PFN:/disk/data12/lhcb/davide/Rphipi/00070442_00006584_1.charm.mdst'] +#remove this for the grid and specify in ganga j.inputdata + +DaVinci().DataType = "2016" diff --git a/productions/local_test_mc/._Ds_eepi_mc_local.py b/productions/local_test_mc/._Ds_eepi_mc_local.py new file mode 100644 index 0000000..b88ca8a --- /dev/null +++ b/productions/local_test_mc/._Ds_eepi_mc_local.py Binary files differ diff --git a/productions/local_test_mc/._Ds_mumupi_mc_local.py b/productions/local_test_mc/._Ds_mumupi_mc_local.py new file mode 100644 index 0000000..fde2def --- /dev/null +++ b/productions/local_test_mc/._Ds_mumupi_mc_local.py Binary files differ diff --git a/productions/local_test_mc/.bender_history b/productions/local_test_mc/.bender_history new file mode 100644 index 0000000..975fbec --- /dev/null +++ b/productions/local_test_mc/.bender_history @@ -0,0 +1 @@ +y diff --git a/productions/local_test_mc/Ds_eepi.root b/productions/local_test_mc/Ds_eepi.root new file mode 100644 index 0000000..0179105 --- /dev/null +++ b/productions/local_test_mc/Ds_eepi.root Binary files differ diff --git a/productions/local_test_mc/Ds_eepi_mc_local.py b/productions/local_test_mc/Ds_eepi_mc_local.py new file mode 100644 index 0000000..083d51a --- /dev/null +++ b/productions/local_test_mc/Ds_eepi_mc_local.py @@ -0,0 +1,265 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2piMuMuOSDecision', + 'Hlt2RareCharmD2piEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSee = "[D_s+ -> ^(phi(1020) -> ^e+ ^e-) ^pi+]CC" + +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + +# find my own decay_tree_location using main_opt and make_decay_tree_tuples.py +decay_tree_location_Dplus_electrons = 'Phys/D2XMuMuSS_Pi_EE_OSLine/Particles' +#decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' + +#ACCESSING TO THE DECAY DAUGHTERS +StrippingSel = AutomaticData(decay_tree_location_Dplus_electrons) + + +electron_from_Ds = FilterInTrees('electron_from_Ds', Code="('e-' == ABSID)") +electron_from_Ds_sel = Selection("electron_from_Ds_sel", + Algorithm=electron_from_Ds, + RequiredSelections=[StrippingSel]) + +electron_Filter = FilterDesktop('electron_Filter', Code="PPINFO(PROBNNe)>0.05")# +electron_Filter_sel = Selection("Filtered_electron_sel", + Algorithm=electron_Filter, + RequiredSelections=[electron_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") +pionFilter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> e+ e-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[electron_from_Ds_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pionFilter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) + + +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSee +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "e_plus":"[D_s+ -> (phi(1020) -> ^e+ e-) pi+]CC", + "e_minus":"[D_s+ -> (phi(1020) -> e+ ^e-) pi+]CC", + + +}) + +Ds_OfflineTree.Ds.addTupleTool('TupleToolDecayTreeFitter/ConsD') + +#Ds_OfflineTree.Ds.ConsD.constrainToOriginVertex = True +Ds_OfflineTree.Ds.ConsD.Verbose = True +Ds_OfflineTree.Ds.ConsD.daughtersToConstrain = ['phi(1020)'] +Ds_OfflineTree.Ds.ConsD.UpdateDaughters = True + +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = 2000 # 200 # Number of events +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = True +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/AllStreams' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +DaVinci().DDDBtag= "dddb-20170721-3" +DaVinci().CondDBtag= "sim-20170721-2-vc-md100" + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_eepi.root" +DaVinci().Input = ['PFN:/disk/gangadir/davide/workspace/davide/local_MC/Ds_phipi_ee/00071955_00000002_7.AllStreams.mdst'] + + +DaVinci().DataType = "2016" diff --git a/productions/local_test_mc/Ds_mumupi.root b/productions/local_test_mc/Ds_mumupi.root new file mode 100644 index 0000000..02dcef2 --- /dev/null +++ b/productions/local_test_mc/Ds_mumupi.root Binary files differ diff --git a/productions/local_test_mc/Ds_mumupi_mc_local.py b/productions/local_test_mc/Ds_mumupi_mc_local.py new file mode 100644 index 0000000..0a54b19 --- /dev/null +++ b/productions/local_test_mc/Ds_mumupi_mc_local.py @@ -0,0 +1,265 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2PiMuMuOSDecision', + 'Hlt2RareCharmD2PiEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSmumu = "[D_s+ -> ^(phi(1020) -> ^mu+ ^mu-) ^pi+]CC" +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + +#for mc /Event/ +#decay_tree_location_Dplus_electrons = 'Phys/D2XMuMuSS_Pi_EE_OSLine/Particles' +decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' + + +StrippingSel = AutomaticData(decay_tree_location_Dplus_muons) +#ACCESSING TO THE DECAY DAUGHTERS + +muon_from_Ds = FilterInTrees('muon_from_Ds', Code="('mu-' == ABSID)") +muon_from_Ds_sel = Selection("muon_from_Ds_sel", + Algorithm=muon_from_Ds, + RequiredSelections=[StrippingSel]) + +#muon_Filter = FilterDesktop('muon_Filter', Code="ALL") +#aplying cuts to the muons prob NN in order to filter out background events +muon_Filter = FilterDesktop('muon_Filter', Code="PPINFO(PROBNNmu)>0.1") + +muon_Filter_sel = Selection("Filtered_muon_sel", + Algorithm=muon_Filter, + RequiredSelections=[muon_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +# pion_Filter = FilterDesktop('pionFilter', Code="ALL") +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") + +pion_Filter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> mu+ mu-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[muon_Filter_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pion_Filter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSmumu +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "mu_plus":"[D_s+ -> (phi(1020) -> ^mu+ mu-) pi+]CC", + "mu_minus":"[D_s+ -> (phi(1020) -> mu+ ^mu-) pi+]CC", + + +}) + +Ds_OfflineTree.Ds.addTupleTool('TupleToolDecayTreeFitter/ConsD') + +#Ds_OfflineTree.Ds.ConsD.constrainToOriginVertex = True +Ds_OfflineTree.Ds.ConsD.Verbose = True +Ds_OfflineTree.Ds.ConsD.daughtersToConstrain = ['phi(1020)'] +Ds_OfflineTree.Ds.ConsD.UpdateDaughters = True + +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = 2000 # # Number of events set to all of them +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = True +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/AllStreams' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +DaVinci().DDDBtag= "dddb-20170721-3" +DaVinci().CondDBtag= "sim-20170721-2-vc-md100" + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_mumupi.root" +DaVinci().Input = ['PFN:/disk/gangadir/davide/workspace/davide/local_MC/Ds_phipi_mumu/00071953_00000001_7.AllStreams.mdst'] +# + +DaVinci().DataType = "2016" diff --git a/productions/local_test_mc/first.py b/productions/local_test_mc/first.py new file mode 100644 index 0000000..d21bd0f --- /dev/null +++ b/productions/local_test_mc/first.py @@ -0,0 +1,44 @@ +import sys + +import GaudiPython as GP +from GaudiConf import IOHelper +from Configurables import DaVinci + +dv = DaVinci() +dv.DataType = '2016' +dv.Simulation = True + +# Pass file to open as first command line argument +inputFiles = [sys.argv[-1]] +IOHelper('ROOT').inputFiles(inputFiles) + +appMgr = GP.AppMgr() +evt = appMgr.evtsvc() + +appMgr.run(1) +evt.dump() + + +def nodes(evt, node=None): + """List all nodes in `evt`""" + nodenames = [] + + if node is None: + root = evt.retrieveObject('') + node = root.registry() + + if node.object(): + nodenames.append(node.identifier()) + for l in evt.leaves(node): + # skip a location that takes forever to load + # XXX How to detect these automatically?? + if 'Swum' in l.identifier(): + continue + + temp = evt[l.identifier()] + nodenames += nodes(evt, l) + + else: + nodenames.append(node.identifier()) + + return nodenames diff --git a/productions/local_test_mc/summary.xml b/productions/local_test_mc/summary.xml new file mode 100644 index 0000000..05ec376 --- /dev/null +++ b/productions/local_test_mc/summary.xml @@ -0,0 +1,17 @@ + + + + True + finalize + + 2233024.0 + + + 1 + + + + 2 + + + diff --git a/productions/online_test_data/._Ds_eepi_data_online.py b/productions/online_test_data/._Ds_eepi_data_online.py new file mode 100644 index 0000000..cfb9b4f --- /dev/null +++ b/productions/online_test_data/._Ds_eepi_data_online.py Binary files differ diff --git a/productions/online_test_data/._Ds_mumupi_data_online.py b/productions/online_test_data/._Ds_mumupi_data_online.py new file mode 100644 index 0000000..48b68ba --- /dev/null +++ b/productions/online_test_data/._Ds_mumupi_data_online.py Binary files differ diff --git a/productions/online_test_data/.ipynb_checkpoints/Untitled-checkpoint.ipynb b/productions/online_test_data/.ipynb_checkpoints/Untitled-checkpoint.ipynb new file mode 100644 index 0000000..2fd6442 --- /dev/null +++ b/productions/online_test_data/.ipynb_checkpoints/Untitled-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/productions/online_test_data/Ds_eepi_data_online.py b/productions/online_test_data/Ds_eepi_data_online.py new file mode 100644 index 0000000..2292590 --- /dev/null +++ b/productions/online_test_data/Ds_eepi_data_online.py @@ -0,0 +1,264 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2PiMuMuOSDecision', + 'Hlt2RareCharmD2PiEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSee = "[D_s+ -> ^(phi(1020) -> ^e+ ^e-) ^pi+]CC" + +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + +#for mc /Event/ +# find my own decay_tree_location using main_opt and make_decay_tree_tuples.py +decay_tree_location_Dplus_electrons = 'Phys/D2XMuMuSS_Pi_EE_OSLine/Particles' +#decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' + +#ACCESSING TO THE DECAY DAUGHTERS +StrippingSel = AutomaticData(decay_tree_location_Dplus_electrons) + + +electron_from_Ds = FilterInTrees('electron_from_Ds', Code="('e-' == ABSID)") +electron_from_Ds_sel = Selection("electron_from_Ds_sel", + Algorithm=electron_from_Ds, + RequiredSelections=[StrippingSel]) + +electron_Filter = FilterDesktop('electron_Filter', Code="PPINFO(PROBNNe)>0.05")# +electron_Filter_sel = Selection("Filtered_electron_sel", + Algorithm=electron_Filter, + RequiredSelections=[electron_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") +pion_Filter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> e+ e-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[electron_Filter_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pion_Filter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) + + +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSee +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "e_plus":"[D_s+ -> (phi(1020) -> ^e+ e-) pi+]CC", + "e_minus":"[D_s+ -> (phi(1020) -> e+ ^e-) pi+]CC", + + +}) + + +Ds_OfflineTree.Ds.addTupleTool('TupleToolDecayTreeFitter/ConsD') + +#Ds_OfflineTree.Ds.ConsD.constrainToOriginVertex = True +Ds_OfflineTree.Ds.ConsD.Verbose = True +Ds_OfflineTree.Ds.ConsD.daughtersToConstrain = ['phi(1020)'] +Ds_OfflineTree.Ds.ConsD.UpdateDaughters = True + +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = -1 # 200 # Number of events +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = False +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/Charm' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_eepi.root" +#DaVinci().Input = ['PFN:/disk/data12/lhcb/davide/Rphipi/00070442_00006584_1.charm.mdst'] + + +DaVinci().DataType = "2016" diff --git a/productions/online_test_data/Ds_mumupi_data_online.py b/productions/online_test_data/Ds_mumupi_data_online.py new file mode 100644 index 0000000..e1db977 --- /dev/null +++ b/productions/online_test_data/Ds_mumupi_data_online.py @@ -0,0 +1,262 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2PiMuMuOSDecision', + 'Hlt2RareCharmD2PiEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSmumu = "[D_s+ -> ^(phi(1020) -> ^mu+ ^mu-) ^pi+]CC" +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + + +decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' + + +StrippingSel = AutomaticData(decay_tree_location_Dplus_muons) +#ACCESSING TO THE DECAY DAUGHTERS + +muon_from_Ds = FilterInTrees('muon_from_Ds', Code="('mu-' == ABSID)") +muon_from_Ds_sel = Selection("muon_from_Ds_sel", + Algorithm=muon_from_Ds, + RequiredSelections=[StrippingSel]) + +#muon_Filter = FilterDesktop('muon_Filter', Code="ALL") +#aplying cuts to the muons prob NN in order to filter out background events +muon_Filter = FilterDesktop('muon_Filter', Code="PPINFO(PROBNNmu)>0.1") +muon_Filter_sel = Selection("Filtered_muon_sel", + Algorithm=muon_Filter, + RequiredSelections=[muon_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +# pion_Filter = FilterDesktop('pionFilter', Code="ALL") +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") + +pion_Filter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> mu+ mu-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[muon_Filter_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pion_Filter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSmumu +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "mu_plus":"[D_s+ -> (phi(1020) -> ^mu+ mu-) pi+]CC", + "mu_minus":"[D_s+ -> (phi(1020) -> mu+ ^mu-) pi+]CC", + + +}) + +Ds_OfflineTree.Ds.addTupleTool('TupleToolDecayTreeFitter/ConsD') + +#Ds_OfflineTree.Ds.ConsD.constrainToOriginVertex = True +Ds_OfflineTree.Ds.ConsD.Verbose = True +Ds_OfflineTree.Ds.ConsD.daughtersToConstrain = ['phi(1020)'] +Ds_OfflineTree.Ds.ConsD.UpdateDaughters = True + +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = -1 # # Number of events set to all of them +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = False +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/Charm' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_mumupi.root" +#DaVinci().Input = ['PFN:/disk/data12/lhcb/davide/Rphipi/00070442_00006584_1.charm.mdst'] +#remove this for the grid and specify in ganga j.inputdata + +DaVinci().DataType = "2016" diff --git a/productions/online_test_mc/._Ds_eepi_mc_online.py b/productions/online_test_mc/._Ds_eepi_mc_online.py new file mode 100644 index 0000000..54d42c5 --- /dev/null +++ b/productions/online_test_mc/._Ds_eepi_mc_online.py Binary files differ diff --git a/productions/online_test_mc/._Ds_mumupi_mc_online.py b/productions/online_test_mc/._Ds_mumupi_mc_online.py new file mode 100644 index 0000000..7894309 --- /dev/null +++ b/productions/online_test_mc/._Ds_mumupi_mc_online.py Binary files differ diff --git a/productions/online_test_mc/.bender_history b/productions/online_test_mc/.bender_history new file mode 100644 index 0000000..975fbec --- /dev/null +++ b/productions/online_test_mc/.bender_history @@ -0,0 +1 @@ +y diff --git a/productions/online_test_mc/Ds_eepi_mc_online.py b/productions/online_test_mc/Ds_eepi_mc_online.py new file mode 100644 index 0000000..abea48c --- /dev/null +++ b/productions/online_test_mc/Ds_eepi_mc_online.py @@ -0,0 +1,265 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2PiMuMuOSDecision', + 'Hlt2RareCharmD2PiEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSee = "[D_s+ -> ^(phi(1020) -> ^e+ ^e-) ^pi+]CC" +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + + +#decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' +decay_tree_location_Dplus_electrons = 'Phys/D2XMuMuSS_Pi_EE_OSLine/Particles' + + +#ACCESSING TO THE DECAY DAUGHTERS +StrippingSel = AutomaticData(decay_tree_location_Dplus_electrons) + + +electron_from_Ds = FilterInTrees('electron_from_Ds', Code="('e-' == ABSID)") +electron_from_Ds_sel = Selection("electron_from_Ds_sel", + Algorithm=electron_from_Ds, + RequiredSelections=[StrippingSel]) + +electron_Filter = FilterDesktop('electron_Filter', Code="PPINFO(PROBNNe)>0.05")# +electron_Filter_sel = Selection("Filtered_electron_sel", + Algorithm=electron_Filter, + RequiredSelections=[electron_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") +pion_Filter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> e+ e-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[electron_Filter_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pion_Filter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) + + +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSee +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "e_plus":"[D_s+ -> (phi(1020) -> ^e+ e-) pi+]CC", + "e_minus":"[D_s+ -> (phi(1020) -> e+ ^e-) pi+]CC", + + +}) + +Ds_OfflineTree.Ds.addTupleTool('TupleToolDecayTreeFitter/ConsD') + +#Ds_OfflineTree.Ds.ConsD.constrainToOriginVertex = True +Ds_OfflineTree.Ds.ConsD.Verbose = True +Ds_OfflineTree.Ds.ConsD.daughtersToConstrain = ['phi(1020)'] +Ds_OfflineTree.Ds.ConsD.UpdateDaughters = True + +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = -1 # 200 # Number of events +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = True +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/AllStreams' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +DaVinci().DDDBtag= "dddb-20170721-3" +DaVinci().CondDBtag= "sim-20170721-2-vc-md100" + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_eepi.root" +#DaVinci().Input = ['PFN:/disk/gangadir/davide/workspace/davide/00071955_00000002_7.AllStreams.mdst'] + + +DaVinci().DataType = "2016" diff --git a/productions/online_test_mc/Ds_mumupi_mc_online.py b/productions/online_test_mc/Ds_mumupi_mc_online.py new file mode 100644 index 0000000..a894ae5 --- /dev/null +++ b/productions/online_test_mc/Ds_mumupi_mc_online.py @@ -0,0 +1,263 @@ +# -*- coding: utf-8 -*- +# @Author: Marcin Chrzaszcz +# @Date: 2016-08-27 +# @Last Modified by: Anna Lupato +# @Last Modified time: 2016-09-28 +######################################################################## +from os import environ +import math + + +# use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect('stripping28') + + +from Gaudi.Configuration import * +#from GaudiPython import AppMgr +from Configurables import DecayTreeTuple, BTaggingTool, SubstitutePID, TrackScaleState +from Configurables import CombineParticles, FilterDesktop, TupleToolDecayTreeFitter, TupleToolDecay +from Configurables import TupleToolTrigger, BackgroundCategory, TupleToolTISTOS, TupleToolRecoStats, TupleToolTagging +from Configurables import DaVinci, HltSelReportsDecoder, HltVertexReportsDecoder, HltDecReportsDecoder, LoKi__Hybrid__TupleTool, TupleToolJets +from DecayTreeTuple.Configuration import * +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams, cloneLinesFromStream +from Configurables import CombineParticles +from StrippingArchive import strippingArchive +from Configurables import FilterInTrees +from PhysSelPython.Wrappers import Selection, DataOnDemand, AutomaticData, SelectionSequence +msgSvc = getConfigurable("MessageSvc") +msgSvc.Format = "% F%60W%S%7W%R%T %0W%M" + +#try and match it with what is in main_opt.py + +trigger_list = [ + 'L0MuonDecision', + 'L0ElectronDecision', + 'L0HadronDecision', + 'Hlt1TrackMVADecision', + 'Hlt1TrackMVALooseDecision', + 'Hlt2RareCharmD2PiMuMuOSDecision', + 'Hlt2RareCharmD2PiEEOSDecision', +] + +#StdPions = DataOnDemand(Location = "Phys/StdAllLoosePions/Particles") + +particle_list = [] + +#no need for a WS decay so get rid of it + + +decay_OSmumu = "[D_s+ -> ^(phi(1020) -> ^mu+ ^mu-) ^pi+]CC" +#decay_OSmumu = "[D+ -> ^pi+ ^mu+ ^mu-]CC" + + +#decay_tree_location_Dplus_electrons = 'Phys/D2XMuMuSS_Pi_EE_OSLine/Particles' +decay_tree_location_Dplus_muons = 'Phys/D2XMuMuSS_PiOSLine/Particles' + +#ACCESSING TO THE DECAY DAUGHTERS +StrippingSel = AutomaticData(decay_tree_location_Dplus_muons) + +muon_from_Ds = FilterInTrees('muon_from_Ds', Code="('mu-' == ABSID)") +muon_from_Ds_sel = Selection("muon_from_Ds_sel", + Algorithm=muon_from_Ds, + RequiredSelections=[StrippingSel]) + +#muon_Filter = FilterDesktop('muon_Filter', Code="ALL") +#aplying cuts to the muons prob NN in order to filter out background events +muon_Filter = FilterDesktop('muon_Filter', Code="PPINFO(PROBNNmu)>0.1") + +muon_Filter_sel = Selection("Filtered_muon_sel", + Algorithm=muon_Filter, + RequiredSelections=[muon_from_Ds_sel]) + + +pion_from_Ds = FilterInTrees('pion_from_Ds', Code="('pi+' == ABSID)") +pion_from_Ds_sel = Selection("pion_from_Ds_sel", + Algorithm=pion_from_Ds, + RequiredSelections=[StrippingSel]) + +# pion_Filter = FilterDesktop('pionFilter', Code="ALL") +pion_Filter = FilterDesktop('pionFilter', Code="PPINFO(PROBNNpi)>0.2") +pion_Filter_sel = Selection("Filtered_pion_sel", + Algorithm=pion_Filter, + RequiredSelections=[pion_from_Ds_sel]) + + +############################################################################# +#RECOMBINE THE LEPTONS TO A PHI + + +phi = CombineParticles("phi") + +phi.DecayDescriptors = ["phi(1020) -> mu+ mu-"] #no cc here +#phi.MotherCut = "ALL" #"(VFASPF(VCHI2/VDOF) < 6.0) " #leaving the chisquared cut +phi.MotherCut = "BPVDIRA>0.999" #in order to cut uninteresting events from the data BPV = Best Primary Vertex + + +phi_sel = Selection("phi_sel", + Algorithm=phi, + RequiredSelections=[muon_Filter_sel]) + +############ +#Remake the Ds + + +Ds = CombineParticles("D_s+") +Ds.DecayDescriptors = ["[D_s+ -> phi(1020) pi+]cc"] +Ds.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" +Ds_sel = Selection("Ds_sel", + Algorithm=Ds, + RequiredSelections=[phi_sel, pion_Filter_sel]) #the order matters!! It makes sense to put the rarer decay first in order to + #save time -> put the most distinctive decay first + +Ds_phi_pi_sel_seq = SelectionSequence('Ds_phi_pi_selection_seq', + TopSelection=Ds_sel + ) +############################################################################# +# Now WS: +# Lb_SL_WS = CombineParticles("Lb_SL_WS") +# Lb_SL_WS.DecayDescriptors = ["[Lambda_b0 -> Lambda_c(2595)+ mu+]cc"] +# Lb_SL_WS.MotherCut = "(M<6500) & (VFASPF(VCHI2/VDOF) < 6.0) & (BPVDIRA>0.999)" + + + +# Creating the DecayTreeTuple objects +decay_trees = [] + +#replace thedecays you're intereste in here +Ds_OfflineTree = DecayTreeTuple("Ds_OfflineTree") +Ds_OfflineTree.Inputs = Ds_phi_pi_sel_seq.outputLocations() +Ds_OfflineTree.Decay = decay_OSmumu +Ds_OfflineTree.addBranches({ + "Ds":"[D_s+ -> phi(1020) pi+]CC", + + "phi":"[D_s+ -> ^phi(1020) pi+]CC", + "pi":"[D_s+ -> phi(1020) ^pi+]CC", + + "mu_plus":"[D_s+ -> (phi(1020) -> ^mu+ mu-) pi+]CC", + "mu_minus":"[D_s+ -> (phi(1020) -> mu+ ^mu-) pi+]CC", + + +}) + +Ds_OfflineTree.Ds.addTupleTool('TupleToolDecayTreeFitter/ConsD') + +#Ds_OfflineTree.Ds.ConsD.constrainToOriginVertex = True +Ds_OfflineTree.Ds.ConsD.Verbose = True +Ds_OfflineTree.Ds.ConsD.daughtersToConstrain = ['phi(1020)'] +Ds_OfflineTree.Ds.ConsD.UpdateDaughters = True + +decay_trees.append(Ds_OfflineTree) + +# Lb_SL_OfflineTree_WS = DecayTreeTuple("Lb_SL_OfflineTree_WS") +# Lb_SL_OfflineTree_WS.Inputs = ["Phys/Lb_SL_WS/Particles"] +# Lb_SL_OfflineTree_WS.Decay = decay0_WS +# Lb_SL_OfflineTree_WS.addBranches({ +# "Lambda_b0": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "Lambda_c_STAR": "[Lambda_b0 -> ^(Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "mu": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ pi-) ^mu+ ]CC", +# "Lambda_c": "[Lambda_b0 -> (Lambda_c(2595)+ -> ^(Lambda_c+ -> K- p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_plus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) ^pi+ pi-) mu+ ]CC", +# "pi_minus": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ pi+ ) pi+ ^pi-) mu+ ]CC", +# "p": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- ^p+ pi+ ) pi+ pi-) mu+ ]CC", +# "pi_Lc": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> K- p+ ^pi+ ) pi+ pi-) mu+ ]CC", +# "K": "[Lambda_b0 -> (Lambda_c(2595)+ -> (Lambda_c+ -> ^K- p+ pi+ ) pi+ pi-) mu+ ]CC" +# }) +# decay_trees.append(Lb_SL_OfflineTree_WS) +# Lambda_b from wrong sign Lambda_c* tree + +# Lambda_b from wrong sign Lambda_c* tree + +# Double charm tree + + +from Configurables import TupleToolNeutrinoReco +from Configurables import TupleToolKinematic +from Configurables import TupleToolGeometry +from Configurables import TupleToolTrackIsolation +from Configurables import TupleToolANNPID +# from Configurables import Rich__Rec__DetailedTrSegMakerFromRecoTracks +# from Configurables import TupleToolRICHPid +#from Configurables import TupleToolApplyIsolation + +#from Configurables import TupleToolSLTools + +for DTT in decay_trees: + DTT.ToolList = [ + "TupleToolKinematic", + "TupleToolGeometry", + "TupleToolTrackInfo", + "TupleToolEventInfo", + "TupleToolRecoStats", + "TupleToolANNPID", + "TupleToolPid", + # "TupleToolMCTruth", + # 'TupleToolTrigger', + # 'TupleToolTISTOS', + # 'TupleToolRICHPid', + ] + # DTT.pi_plus.addTool(TupleToolANNPID,name='TupleToolANNPID') + # DTT.pi_plus.ToolList+=['TupleToolANNPID'] + # DTT.pi_plus.TupleToolANNPID.ANNPIDTunes = ['MC15TuneV1','MC15TuneDNNV1','MC15TuneFLAT4dV1','MC15TuneCatBoostV1'] + # print 'PID tunes',DTT.pi_plus.TupleToolANNPID.ANNPIDTunes + DTT.Ds.addTool(TupleToolTrigger, name='TupleToolTrigger') + DTT.Ds.TupleToolTrigger.Verbose = True + DTT.Ds.TupleToolTrigger.TriggerList = trigger_list + DTT.Ds.addTool(TupleToolTISTOS, name='TupleToolTISTOS') + DTT.Ds.TupleToolTISTOS.Verbose = True + DTT.Ds.TupleToolTISTOS.TriggerList = trigger_list + DTT.Ds.ToolList += ["TupleToolTISTOS"] + #DTT.Lambda_b0.addTool(TupleToolSLTools, name='TupleToolSLTools') + #DTT.Lambda_b0.ToolList += ["TupleToolSLTools"] + +# Isolation from the R(D*) SL analysis +#for DTT in decay_trees: + + #toolIso = DTT.Lambda_b0.addTupleTool( + # TupleToolApplyIsolation, name="TupleToolApplyIsolation") + #toolIso.WeightsFile = "weights.xml" + #DTT.Lambda_b0.ToolList += ["TupleToolApplyIsolation/TupleToolApplyIsolation"] + +# Isolation from the R(D*) SL analysis (adding VELO tracks) +# from Configurables import ChargedProtoParticleMaker +# veloprotos = ChargedProtoParticleMaker("myProtoPMaker") +# veloprotos.Inputs = ["Rec/Track/Best"] +# veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# DaVinci().appendToMainSequence([veloprotos]) +from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker +from CommonParticles.Utils import * +# algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion',) +# algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles" +# selector = trackSelector(algorithm, trackTypes=['Velo']) +# locations = updateDoD(algorithm) +# DaVinci().appendToMainSequence([algorithm]) +from PhysConf.Filters import LoKi_Filters +# fltrs = LoKi_Filters( +# STRIP_Code = "HLT_PASS('Strippingb2LcMuXB2DMuForTauMuLineDecision')") +################################################## +from Configurables import DaVinci +# DaVinci().EventPreFilters = fltrs.filters('Filters') +DaVinci().EvtMax = -1 # # Number of events set to all of them +DaVinci().SkipEvents = 0 # Events to skip +DaVinci().PrintFreq = 10000 +DaVinci().Simulation = True +DaVinci().Lumi = True +DaVinci().RootInTES = '/Event/AllStreams' +DaVinci().InputType = 'MDST' +#DaVinci().appendToMainSequence([muons_from_Lc_sel_seq.sequence(), +# muons_from_Lc_sel_WC_seq.sequence()]) +DaVinci().appendToMainSequence([Ds_phi_pi_sel_seq.sequence()]) +DaVinci().appendToMainSequence(decay_trees) + +DaVinci().DDDBtag= "dddb-20170721-3" +DaVinci().CondDBtag= "sim-20170721-2-vc-md100" + +#DaVinci().UserAlgorithms.extend(decay_trees) + +DaVinci().TupleFile = "Ds_mumupi.root" +#DaVinci().Input = ['PFN:/disk/gangadir/davide/workspace/davide/00071953_00000001_7.AllStreams.mdst'] +# + +DaVinci().DataType = "2016" diff --git a/productions/online_test_mc/first.py b/productions/online_test_mc/first.py new file mode 100644 index 0000000..d21bd0f --- /dev/null +++ b/productions/online_test_mc/first.py @@ -0,0 +1,44 @@ +import sys + +import GaudiPython as GP +from GaudiConf import IOHelper +from Configurables import DaVinci + +dv = DaVinci() +dv.DataType = '2016' +dv.Simulation = True + +# Pass file to open as first command line argument +inputFiles = [sys.argv[-1]] +IOHelper('ROOT').inputFiles(inputFiles) + +appMgr = GP.AppMgr() +evt = appMgr.evtsvc() + +appMgr.run(1) +evt.dump() + + +def nodes(evt, node=None): + """List all nodes in `evt`""" + nodenames = [] + + if node is None: + root = evt.retrieveObject('') + node = root.registry() + + if node.object(): + nodenames.append(node.identifier()) + for l in evt.leaves(node): + # skip a location that takes forever to load + # XXX How to detect these automatically?? + if 'Swum' in l.identifier(): + continue + + temp = evt[l.identifier()] + nodenames += nodes(evt, l) + + else: + nodenames.append(node.identifier()) + + return nodenames diff --git a/productions/online_test_mc/summary.xml b/productions/online_test_mc/summary.xml new file mode 100644 index 0000000..05ec376 --- /dev/null +++ b/productions/online_test_mc/summary.xml @@ -0,0 +1,17 @@ + + + + True + finalize + + 2233024.0 + + + 1 + + + + 2 + + +