Oj BddlZddlZddlZddlmZdZdZdZ dZ dS)N)clopper_pearson_intervalc |dk}|}d||<|S)Ngݾzz$dp_to_TopNumProb..s;SSSTBGC4:: $6R@@@SSSr cg|]\}tjdddttt t|z fz d]S)rNrr)rrrsetrange)rrNmaxrs r rz$dp_to_TopNumProb..s^qqqcgbga#aaac%++6F6FT6R1S1S.S*T&T[]^^^qqqr c:g|]}tj|dSrrnewshaperreshaperP_comb_es r rz$dp_to_TopNumProb.."s'dddxBJx'BBBdddr rc:g|]}tj|dSrr"r$s r rz$dp_to_TopNumProb..$s'hhhbjGDDDhhhr rr ) shaperr itertools combinationsr concatenatesumappendr#) rprobsNcombsP_exist_per_combP_noexist_per_comb P_per_combP probs_arrrs ` @r dp_to_TopNumProbr5sM 9R=D E4!8__66Y+E$KK;;<<TSSSUSSSrqqqqkpqqqedScddd>*:CCChhUghhh^,>QGGG&(::  F:B ' ' '  RZG4445555u1---I r c g}|d|D}||z }|%|d|D}||z }nd|D}||z }|%|d|D}||z }nd|D}||z }|)|||d|D} || z }nd|D} || z }tj|}tj|dddf|} g} tdt |dzD]+} | |ddd f| | k,t j| } t j| d } tj tt j | d t j | d  | z }| |fS) Ncg|] }|D]}| SrrreventpredTops r rzcalc_eff..?s&WWWQVWWgGWWWWr cDg|]}|D]}|ddk|ddSrrr8s r rzcalc_eff..Fl(D(D(Djo(D(D_fsz{|s}BCtCtC! tCtCtCtCr c,g|]}|D] }|dd Srr=rr8s r rzcalc_eff..J/'p'p'pjo'p'p_f! 'p'p'p'pr cDg|]}|D]}|ddk|ddSr<rr8s r rzcalc_eff..Pr>r c,g|]}|D] }|dd Sr@rr8s r rzcalc_eff..TrAr cDg|]}|D]}|ddk|ddSr<rr8s r rzcalc_eff..[sA u u u%\a u uQXelmneostetet1etetetetr c,g|]}|D] }|dd Sr@rr8s r rzcalc_eff.._s/ b b b%\a b bQX1 b b b br rrrrnumdenom rarraydigitizerlenr,akArraymeanabsrr+rG)LUT_boosted_predLUT_semiresolved_qq_predLUT_semiresolved_bq_predLUT_resolved_predbinspredTopspredTops_boostedpredTops_semiresolved_qqpredTops_semiresolved_bqpredTops_resolved predTops_indscorrectTruth_per_binbin_imeanserrss r calc_effr`9sQH#WW1AWWW$$+  '(D(DBZ(D(D(D $ 0 0HH(q'pBZ'p'p'p $ 0 0H+  '(D(DBZ(D(D(D $ 0 0HH(q'pBZ'p'p'p $ 0 0H$  '+C+OSkSw!v u;L u u u  ) )HH!c b;L b b b  ) )Hx!!HKA55Mq#d))a-((LL##HQQQTN=E3I$JKKKK8$899 G(r 2 2 2E 6 RV,@r%J%J%JRTRXYmtvRwRwRwxxx    D $;r c g}|d|D}||z }|%|d|D}||z }nd|D}||z }|%|d|D}||z }nd|D}||z }|)|||d|D} || z }nd|D} || z }tj|}tj|dddf|} g} tdt |dzD]+} | |ddd f| | k,t j| } t j| d } tj tt j | d t j | d  | z }| |fS) Ncg|] }|D]}| Srrrr9 targetTops r rzcalc_pur..~s&___EY^__Ii____r cDg|]}|D]}|ddk|ddSr<rrcs r rzcalc_pur..x*N*N*NUrw*N*Nen|EFG|HLM|M|M)AaC.|M|M|M|Mr c,g|]}|D] }|dd Sr@rrcs r rzcalc_pur../)x)x)xUrw)x)xen)AaC.)x)x)x)xr cDg|]}|D]}|ddk|ddSr<rrcs r rzcalc_pur..rfr c,g|]}|D] }|dd Sr@rrcs r rzcalc_pur..rhr cDg|]}|D]}|ddk|ddSr<rrcs r rzcalc_pur..sA"""edi""W`mvwxmy}~m~m~9QqS>m~m~m~m~r c,g|]}|D] }|dd Sr@rrcs r rzcalc_pur..s/"j"j"jedi"j"jW`9QqS>"j"j"j"jr rrrrrFrI)LUT_boosted_targetLUT_semiresolved_qq_targetLUT_semiresolved_bq_targetLUT_resolved_targetrU targetTopstargetTops_boostedtargetTops_semiresolved_qqtargetTops_semiresolved_bqtargetTops_resolvedtargetTops_indsr\r]r^r_s r calc_purrwwsSJ%__5G___(( !-  )*N*NF`*N*N*N & 4 4JJ*y)xF`)x)x)x & 4 4J!-  )*N*NF`*N*N*N & 4 4JJ*y)xF`)x)x)x & 4 4J&  )-G-SWqW}#@"?R"""  - -JJ#k"j?R"j"j"j  - -J*%%Jk*QQQT"2D99Oq#d))a-((PP##Jqqq!t$4_5M$NOOOO8$899 G(r 2 2 2E 6 RV,@r%J%J%JRTRXYmtvRwRwRwxxx    D $;r ) r(awkwardrMnumpyrhist.intervalsrr r5r`rwrr r r{s333333%%%T:::|:::::r