def test_sumChargedHadronPt(): training_df = as_pandas( f_single.SelectMany(lambda e: e.Muons("muons")).Select( lambda m: (m.pfIsolationR04()).sumChargedHadronPt)) assert training_df.iloc[0]['col1'] == 1.6184179782867432 assert training_df.iloc[1]['col1'] == 0.8745666742324829 assert training_df.iloc[-1]['col1'] == 0.0
def test_select_pt_eta_of_global_muons(): training_df = as_pandas( f_single.SelectMany('lambda e: e.TrackMuons("globalMuons")').Select( 'lambda m: m.pt() + m.eta()')) assert training_df.iloc[0]['col1'] == 8.645097433711282 assert training_df.iloc[1]['col1'] == 1.787438812772764 assert training_df.iloc[-1]['col1'] == 29.686834840131645
def test_select_eta_of_global_muons(): training_df = as_pandas( f_single.SelectMany('lambda e: e.TrackMuons("globalMuons")').Select( 'lambda m: m.eta()')) assert training_df.iloc[0]['col1'] == -1.8779354371325043 assert training_df.iloc[1]['col1'] == -2.127157548674547 assert training_df.iloc[-1]['col1'] == 0.29603168003675756
def test_select_twice_pt_of_global_muons(): training_df = as_pandas( f_single.SelectMany('lambda e: e.TrackMuons("globalMuons")').Select( 'lambda m: m.pt() * 2')) assert training_df.iloc[0]['col1'] == 21.04606574168757 assert training_df.iloc[1]['col1'] == 7.829192722894622 assert training_df.iloc[-1]['col1'] == 58.78160632018977
def test_select_pt_of_global_muons(): training_df = as_pandas( f_single.SelectMany('lambda e: e.TrackMuons("globalMuons")').Select( 'lambda m: m.pt()')) assert training_df.iloc[0]['col1'] == 10.523032870843785 assert training_df.iloc[1]['col1'] == 3.914596361447311 assert training_df.iloc[-1]['col1'] == 29.390803160094887
def test_isnonull_call(): ''' Make sure the non null call works properly. This is tricky because of the way objects are used here - both as a pointer and an object, so the code has to work just right. ''' training_df = as_pandas( f_single.Select(lambda e: e.Muons("muons")).Select( lambda muons: muons.Where(lambda m: isNonnull(m.globalTrack()))). Select(lambda muons: muons.Count())) assert training_df.iloc[0]['col1'] == 3
def test_select_hitpattern_of_global_muons(): sys.setrecursionlimit(10000) training_df = as_pandas( f_single.SelectMany(lambda e: e.TrackMuons("globalMuons")).Select( lambda m: m.hitPattern()).Select(lambda hp: Range( 0, hp.numberOfHits()).Select(lambda i: hp.getHitPattern(i)))) assert training_df.iloc[0]['col1'] == 1160.0 assert training_df.iloc[1]['col1'] == 1168.0 assert training_df.iloc[-1]['col1'] == 248.0