[CMSSW] / CMSSW / PhysicsTools / Utilities / interface / SimplifyPower.h Repository:
ViewVC logotype

View of /CMSSW/PhysicsTools/Utilities/interface/SimplifyPower.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.3 - (download) (annotate)
Wed Apr 16 14:15:52 2008 UTC (5 years, 1 month ago) by llista
Branch: MAIN
CVS Tags: V08-01-00-01, CMSSW_3_6_0_patch1, CMSSW_3_6_0_patch2, CMSSW_5_3_4_cand1, CMSSW_5_3_4_cand2, CMSSW_4_2_3_SLHC_pre1, CMSSW_4_1_4, CMSSW_3_9_5_patch2, CMSSW_3_9_5_patch1, V07-01-01, CMSSW_4_2_7_hltpatch3, CMSSW_4_2_7_hltpatch2, CMSSW_4_2_7_hltpatch1, CMSSW_5_3_8_patch3, V06-09-00, CMSSW_2_2_6_HLT, CMSSW_3_0_0_pre10, ZMM28May2008, CMSSW_5_3_4_cand1_patch1, CMSSW_6_1_0_pre6g496cand01, CMSSW_3_2_6, CMSSW_5_2_3_patch3, CMSSW_4_2_8_SLHCtk3, CMSSW_4_2_8_SLHCtk2, CMSSW_3_7_0_patch1, V00-08-02, CMSSW_4_1_8_patch10, CMSSW_4_1_8_patch11, CMSSW_2_1_0_pre8, CMSSW_3_3_3_TSG, CMSSW_5_2_3_patch2, CMSSW_6_1_2_SLHC3, CMSSW_6_1_2_SLHC2, CMSSW_6_1_2_SLHC1, V06-09-03, CMSSW_6_1_2_SLHC4, CMSSW_4_4_3_patch1, CMSSW_3_11_0_pre2, CMSSW_4_2_8_SLHChcal, CMSSW_3_5_0_patch1, CMSSW_5_3_2_patch2, CMSSW_5_3_2_patch1, CMSSW_5_3_2_patch5, CMSSW_5_3_2_patch4, CMSSW_4_1_6, V07-01-00, CMSSW_4_1_8_patch8, V08-01-00, CMSSW_4_1_8_patch4, CMSSW_4_1_8_patch5, CMSSW_4_1_8_patch6, CMSSW_4_1_8_patch7, CMSSW_4_1_8_patch1, CMSSW_4_1_5, CMSSW_6_0_0_patch1, V06-09-07-02, V06-09-07-01, V06-09-07-04, CMSSW_2_1_0, CMSSW_4_2_0_pre4, CMSSW_6_1_X_2012-12-19-0200, CMSSW_2_1_3, CMSSW_2_1_4, CMSSW_5_0_0_pre6g494, CMSSW_2_1_6, CMSSW_4_2_0_pre5, CMSSW_2_1_8, CMSSW_2_1_9, CMSSW_4_2_9_HLT1_patch1, V07-01-03, CMSSW_4_2_0_pre6, CMSSW_5_3_7_patch4, CMSSW_5_3_7_patch5, CMSSW_5_3_7_patch6, V07-04-01, CMSSW_5_3_7_patch1, CMSSW_5_3_7_patch2, CMSSW_5_3_7_patch3, V06-06-05, V06-06-04, V06-06-01, V06-06-00, V06-06-03, V07-04-07, V07-02-08, V07-02-09, CMSSW_2_1_10, CMSSW_2_1_11, V07-04-04, V07-02-00, V07-02-01, V07-02-02, CMSSW_4_2_0_pre3, V07-02-04, V07-02-05, V07-02-06, V07-02-07, V06-06-00-01, CMSSW_4_2_1_patch2, CMSSW_4_2_1_patch1, CMSSW_4_3_0, CMSSW_3_9_9_patch1, CMSSW_4_1_7_patch1, CMSSW_4_2_8_SLHChcal2_patch1, CMSSW_4_1_7_patch3, CMSSW_4_1_7_patch2, CMSSW_5_0_0_pre1, CMSSW_5_0_0_pre3, CMSSW_5_0_0_pre2, CMSSW_5_0_0_pre5, CMSSW_5_0_0_pre4, CMSSW_5_0_0_pre7, CMSSW_5_0_0_pre6, CMSSW_3_10_0, CMSSW_3_10_1, CMSSW_3_9_2_patch3, CMSSW_3_9_2_patch2, CMSSW_3_9_2_patch1, V08-02-00, V07-01-04, CMSSW_4_4_0_pre8, CMSSW_4_4_0_pre9, CMSSW_4_4_0_pre6, CMSSW_4_4_0_pre7, CMSSW_4_4_0_pre4, CMSSW_4_4_0_pre5, CMSSW_4_4_0_pre2, CMSSW_4_4_0_pre3, CMSSW_4_4_0_pre1, CMSSW_3_5_1_patch1, CMSSW_3_8_2_patch1, CMSSW_5_3_8_patch1, branch_for_4_1_X_01, CMSSW_5_3_3_cand1, CMSSW_5_3_8_patch2, SBS, CMSSW_3_2_8, CMSSW_6_1_0_pre3_TS124729, CMSSW_3_2_7, CMSSW_3_2_4, CMSSW_3_2_5, CMSSW_3_2_2, CMSSW_3_2_3, CMSSW_3_2_0, CMSSW_3_2_1, CMSSW_3_1_0_pre11, CMSSW_5_3_2_metpatch1, CMSSW_3_3_0_pre2, CMSSW_3_9_1_patch1, CMSSW_2_1_17, CMSSW_3_3_6, CMSSW_3_8_0, CMSSW_3_8_1, CMSSW_3_8_2, CMSSW_3_8_3, CMSSW_3_8_4, CMSSW_3_8_5, CMSSW_3_8_6, CMSSW_3_8_7, V08-00-00, V06-09-08, CMSSW_3_5_0_pre1, CMSSW_3_5_0_pre2, CMSSW_3_5_0_pre3, CMSSW_3_5_0_pre5, CMSSW_3_6_2, CMSSW_3_6_3, CMSSW_3_6_0, CMSSW_3_6_1, V06-09-04, V06-09-05, V06-09-06, V06-09-07, AP28May2009, CMSSW_6_2_0_pre6, CMSSW_4_2_8_SLHCtk_patch1, CMSSW_4_2_8_SLHCtk_patch2, CMSSW_6_2_0_pre5, CMSSW_6_2_0_pre2, CMSSW_6_2_0_pre3, CMSSW_3_4_2, CMSSW_6_2_0_pre1, CMSSW_3_0_0_pre3, CMSSW_3_0_0_pre2, CMSSW_3_0_0_pre1, CMSSW_3_0_0_pre7, CMSSW_3_0_0_pre6, V07-01-02, CMSSW_3_0_0_pre4, CMSSW_4_2_8_patch5, CMSSW_4_2_8_patch4, CMSSW_4_2_8_patch7, CMSSW_4_2_8_patch6, CMSSW_4_2_8_patch1, CMSSW_4_2_8_patch3, CMSSW_4_2_8_patch2, CMSSW_4_4_0_pre10, CMSSW_3_10_0_pre7g494c1, CMSSW_4_4_X_2011-06-09-0400, CMSSW_5_1_2, CMSSW_5_1_1, CMSSW_6_0_1_PostLS1v2_patch1, CMSSW_2_1_2, CMSSW_6_0_1_PostLS1v2_patch3, CMSSW_6_0_1_PostLS1v2_patch2, CMSSW_6_0_1_PostLS1v2_patch4, CMSSW_5_3_1, CMSSW_5_3_0, CMSSW_5_3_3, CMSSW_5_3_2, CMSSW_5_3_5, CMSSW_5_3_4, CMSSW_5_3_7, CMSSW_5_2_3_patch4, CMSSW_5_3_9, CMSSW_5_3_8, V08-03-20-01, CMSSW_sm120515a, CMSSW_2_2_13_HLT, V06-05-13-01, CMSSW_5_3_6_patch1, CMSSW_6_1_1_SLHCphase1tk1, CMSSW_3_7_0_pre4, CMSSW_4_2_1, CMSSW_3_7_0_pre2, CMSSW_4_2_9_HLT, CMSSW_3_7_0_pre1, CMSSW_4_4_0_patch3, CMSSW_4_4_0_patch2, CMSSW_4_4_0_patch1, CMSSW_2_2_9, CMSSW_5_2_0_pre2, CMSSW_2_1_19, CMSSW_2_2_6, CMSSW_2_2_5, CMSSW_6_1_1_SLHCphase2tk1, CMSSW_2_2_3, CMSSW_4_2_8_SLHC2_patch1, CMSSW_4_2_8_SLHC2_patch2, CMSSW_4_2_8_SLHCstd, CMSSW_2_0_9, CMSSW_4_2_0, CMSSW_2_1_5, CMSSW_5_3_8_HI_patch1, CMSSW_5_3_8_HI_patch2, CMSSW_5_2_0_pre6, CMSSW_5_2_0_pre5, CMSSW_5_2_0_pre4, CMSSW_3_4_2_patch1, V06-09-09, CMSSW_5_0_X_2011-12-18-0200, CMSSW_2_2_0_pre1, CMSSW_4_1_3_patch2, CMSSW_6_0_0_TS123272, CMSSW_3_11_1_hltpatch1, V00-08-08, CMSSW_3_11_1, CMSSW_3_11_0, CMSSW_3_11_3, CMSSW_3_11_2, V06-09-01, V06-07-00, V06-07-01, V06-09-02, CMSSW_4_2_3_SLHC4_patch1, V07-03-00, CMSSW_4_1_4_patch1, CMSSW_4_1_4_patch2, CMSSW_4_1_4_patch3, CMSSW_4_1_4_patch4, CMSSW_3_7_0_patch3, CMSSW_3_7_0_patch2, V00-08-03, V06-05-13, V06-05-12, V06-05-11, V06-05-10, V07-04-00-00, V07-04-00-01, CMSSW_3_3_5, CMSSW_3_3_4, CMSSW_3_3_3, CMSSW_3_3_2, CMSSW_3_3_1, CMSSW_3_3_0, CMSSW_3_7_0_patch4, CMSSW_5_2_6_hltpatch1, CMSSW_4_2_4_patch1, CMSSW_4_2_4_patch2, CMSSW_3_4_0_pre2, V08-03-22, V08-03-23, V08-03-20, V08-03-21, V08-03-26, V08-03-27, V08-03-24, V08-03-25, CMSSW_5_3_7_alcapatch1, CMSSW_2_1_10_patch1, CMSSW_3_4_0_pre7, CMSSW_3_4_0_pre6, CMSSW_3_4_0_pre5, CMSSW_3_4_0_pre4, CMSSW_3_4_0_pre3, CMSSW_5_3_10, CMSSW_3_4_0_pre1, CMSSW_3_9_9, CMSSW_3_9_8, CMSSW_5_2_4_patch4, CMSSW_2_2_8, CMSSW_5_2_4_patch2, CMSSW_5_2_4_patch3, CMSSW_5_2_4_patch1, CMSSW_5_3_9_patch2, CMSSW_5_3_9_patch3, CMSSW_6_0_1_PostLS1v1, CMSSW_5_3_9_patch1, CMSSW_3_9_5, CMSSW_3_9_4, CMSSW_3_9_7, CMSSW_3_9_6, CMSSW_3_1_1, CMSSW_3_1_0, CMSSW_3_1_3, CMSSW_3_1_2, CMSSW_4_4_2_patch9, CMSSW_4_4_2_patch8, CMSSW_4_4_2_patch5, CMSSW_4_4_2_patch4, CMSSW_4_4_2_patch7, CMSSW_4_4_2_patch6, CMSSW_4_4_2_patch1, CMSSW_6_2_0_pre4, CMSSW_4_4_2_patch3, CMSSW_4_4_2_patch2, CMSSW_3_5_8_patch1, CMSSW_3_9_1, CMSSW_3_7_1, CMSSW_3_7_0, CMSSW_3_2_2_patch2, CMSSW_3_5_8_patch4, CMSSW_6_0_1_PostLS1v2, CMSSW_3_4_0, CMSSW_5_0_0_patch1, CMSSW_3_4_1, CMSSW_3_9_2, CMSSW_3_5_8, CMSSW_3_5_5, CMSSW_3_5_4, CMSSW_3_5_7, CMSSW_3_5_6, CMSSW_3_5_1, CMSSW_3_5_0, CMSSW_3_5_3, CMSSW_3_5_2, CMSSW_3_8_4_patch4, CMSSW_3_8_4_patch2, CMSSW_3_8_4_patch3, CMSSW_3_8_4_patch1, CMSSW_5_2_8, CMSSW_5_2_9, V06-08-00, V06-08-07, V06-08-06, V06-08-05, V06-08-04, CMSSW_5_2_0, CMSSW_5_2_1, CMSSW_5_2_2, CMSSW_5_2_3, CMSSW_5_2_4, CMSSW_4_2_4_hltpatch1, CMSSW_5_2_6, CMSSW_5_2_7, CMSSW_5_2_7_hltpatch2, CMSSW_4_1_6_patch1, CMSSW_3_0_0_pre5, CMSSW_3_8_7_patch1, CMSSW_4_2_7_patch1, CMSSW_4_2_7_patch2, CMSSW_3_1_4, V06-06-05-02, V06-06-05-03, CMSSW_3_10_0_pre9, CMSSW_3_10_0_pre8, CMSSW_3_10_0_pre3, CMSSW_3_10_0_pre2, CMSSW_3_10_0_pre1, CMSSW_3_10_0_pre7, CMSSW_3_10_0_pre6, CMSSW_4_2_8_p7rootfix, CMSSW_3_10_0_pre4, CMSSW_3_3_6_patch5, CMSSW_3_3_6_patch4, CMSSW_6_0_0_pre10, CMSSW_6_0_0_pre11, CMSSW_3_3_6_patch1, CMSSW_3_3_6_patch3, CMSSW_3_3_6_patch2, CMSSW_5_2_0_pre1, V06-08-03-01, CMSSW_3_6_1_patch3, CMSSW_3_6_1_patch1, CMSSW_3_8_0_patch1, CMSSW_3_6_1_patch7, CMSSW_3_6_1_patch6, CMSSW_3_6_1_patch5, CMSSW_3_6_1_patch4, CMSSW_3_1_0_pre10, CMSSW_3_5_8_patch3, CMSSW_3_5_7_hltpatch4, CMSSW_5_0_0, CMSSW_5_0_1, CMSSW_3_2_2_patch1, CMSSW_5_1_3, CMSSW_6_1_2_SLHC2_patch1, CMSSW_4_1_7, CMSSW_6_1_2_SLHC2_patch3, CMSSW_6_1_2_SLHC2_patch2, CMSSW_4_1_2, CMSSW_4_1_3, CMSSW_4_1_8, CMSSW_6_2_0_pre5slc6, CMSSW_5_3_10_patch1, CMSSW_5_2_0_pre3HLT, V06-05-04, CMSSW_6_0_0_pre1, CMSSW_6_0_0_pre2, CMSSW_6_0_0_pre3, CMSSW_6_0_0_pre4, CMSSW_6_0_0_pre5, CMSSW_6_0_0_pre6, CMSSW_6_0_0_pre7, CMSSW_6_0_0_pre8, CMSSW_6_0_0_pre9, CMSSW_5_2_3_patch1, CMSSW_4_3_0_pre3, CMSSW_4_3_0_pre2, CMSSW_4_3_0_pre1, CMSSW_4_3_0_pre7, CMSSW_4_3_0_pre6, CMSSW_4_3_0_pre5, CMSSW_4_3_0_pre4, CMSSW_4_4_0_pre7_g494p02, CMSSW_5_3_0_patch1, CMSSW_5_2_5_cand1, V07-02-08-04, CMSSW_5_3_8_HI, CMSSW_2_2_13_offpatch1, CMSSW_4_4_5_patch1, CMSSW_4_4_5_patch2, CMSSW_6_1_0_pre7_TS127013, CMSSW_4_2_2_patch2, CMSSW_4_2_2_patch1, CMSSW_3_6_3_patch1, CMSSW_3_6_3_patch2, V06-09-01-01, CMSSW_4_2_8_SLHCtk, V06-09-01-02, CMSSW_3_8_0_pre2, CMSSW_3_8_0_pre1, CMSSW_3_8_0_pre7, CMSSW_3_8_0_pre6, CMSSW_3_8_0_pre5, CMSSW_3_8_0_pre4, CMSSW_3_8_0_pre8, CMSSW_5_3_4_patch1, CMSSW_4_2_8_SLHCtk3_patch2, CMSSW_4_2_8_SLHCtk3_patch1, CMSSW_3_6_3_SLHC1, V06-09-07-03, V07-05-00, CMSSW_6_0_0_pre6g495p01, CMSSW_4_2_8_SLHChcal4_patch2, CMSSW_4_2_8_SLHChcal4_patch3, V08-01-04, CMSSW_4_2_8_SLHChcal4_patch1, V08-01-02, V08-01-03, CMSSW_4_2_8_SLHChcal4_patch4, V08-01-01, CMSSW_4_2_8_SLHCstd2_patch2, V06-05-05, V06-05-06, CMSSW_4_2_8_SLHCstd2_patch1, V06-05-03, CMSSW_3_3_3_patch1, V06-08-08, CMSSW_6_1_0, CMSSW_6_1_1, CMSSW_6_1_2, CMSSW_2_1_1, CMSSW_4_4_3, CMSSW_4_4_2, CMSSW_4_4_1, CMSSW_4_4_0, CMSSW_3_1_0_pre1, CMSSW_4_4_5, CMSSW_4_4_4, V08-03-17, V08-03-16, V08-03-15, V08-03-14, V08-03-13, V08-03-12, V08-03-11, V08-03-10, CMSSW_3_5_8_patch2, V07-00-03-01, V08-03-19, V08-03-18, CMSSW_2_1_0_pre3, CMSSW_2_1_0_pre7, CMSSW_2_1_0_pre6, CMSSW_2_1_0_pre5, CMSSW_2_1_0_pre4, CMSSW_2_1_0_pre9, CMSSW_2_1_7, CMSSW_5_2_6_patch1, CMSSW_5_2_6_patch2, CMSSW_3_11_0_pre1, CMSSW_6_0_0_SLHCtkpre1, CMSSW_3_11_0_pre3, CMSSW_3_11_0_pre4, CMSSW_3_11_0_pre5, CMSSW_4_2_9_HLT2, CMSSW_4_2_9_HLT3, CMSSW_4_2_9_HLT1, CMSSW_3_1_0_patch1, CMSSW_6_2_0_pre6_patch1, CMSSW_3_0_0_pre9, CMSSW_3_7_0_pre5, CMSSW_6_1_0_pre6_TS126203_TS126341_patch1, CMSSW_3_7_0_pre3, CMSSW_4_2_9_HLT1_hltpatch2, CMSSW_5_2_5, bh090112, CMSSW_3_0_0_pre8, CMSSW_4_2_8, V08-03-20-02, V08-03-20-03, CMSSW_5_2_0_pre3, CMSSW_4_4_2_patch10, CMSSW_4_2_3, CMSSW_4_2_2, CMSSW_4_2_5, CMSSW_4_2_4, CMSSW_4_2_7, CMSSW_4_2_6, CMSSW_2_1_0_pre11, CMSSW_2_1_0_pre10, V06-06-05-01, CMSSW_2_0_11, CMSSW_2_0_10, CMSSW_2_0_12, CMSSW_5_0_0_pre5_root532rc1, V00-08-01, CMSSW_5_1_1_patch1, CMSSW_5_1_1_patch2, CMSSW_5_1_1_patch3, CMSSW_3_8_1_patch4, CMSSW_3_8_1_patch1, CMSSW_3_8_1_patch3, CMSSW_3_8_1_patch2, bh261008, CMSSW_3_1_0_pre7, V06-06-02, CMSSW_3_8_6_patch1, CMSSW_2_2_13, CMSSW_2_2_12, CMSSW_2_2_11, CMSSW_2_2_10, CMSSW_3_5_4_patch1, CMSSW_4_4_0_patch4, CMSSW_2_2_7, CMSSW_3_10_0_pre5, CMSSW_3_6_0_pre5, CMSSW_3_6_0_pre4, CMSSW_3_6_0_pre6, CMSSW_3_6_0_pre1, CMSSW_3_6_0_pre3, CMSSW_3_6_0_pre2, CMSSW_6_0_0_pre7py273, CMSSW_3_3_0_pre1, CMSSW_2_2_2, CMSSW_5_1_2_patch1, CMSSW_3_3_6_patch6, CMSSW_4_2_2_SLHC_pre1, CMSSW_2_2_0, CMSSW_2_1_12, V07-02-03, CMSSW_4_2_9_HLT1_bphpatch1, CMSSW_4_2_9_HLT1_bphpatch2, CMSSW_4_2_9_HLT1_bphpatch3, CMSSW_4_2_9_HLT1_bphpatch4, CMSSW_3_9_0, CMSSW_4_3_0_dqmpatch2, CMSSW_4_3_0_dqmpatch1, CMSSW_3_3_0_pre3, V06-08-03, CMSSW_3_5_4_patch2, CMSSW_3_9_3, CMSSW_3_9_8_patch1, CMSSW_4_2_8_SLHC1, CMSSW_4_2_8_SLHC2, CMSSW_3_9_8_patch2, CMSSW_2_1_10_patch2, CMSSW_2_2_12_HLT, CMSSW_5_2_4_hltpatch4, CMSSW_5_2_4_hltpatch2, CMSSW_3_11_1_hclpatch1, srappocc_LumiWeighting_Version1, CMSSW_3_11_1_patch3, CMSSW_3_11_1_patch1, CMSSW_2_2_11_HLT, V07-00-06, V07-00-07, V07-00-04, V07-00-02, CMSSW_6_0_X, V07-00-00, V07-00-01, CMSSW_5_3_7_25nspatch1, CMSSW_2_2_11_offpatch1, V07-02-08-02, CMSSW_3_3_0_pre6, V07-02-08-03, CMSSW_2_2_4, V07-02-08-01, CMSSW_4_2_8_SLHCstd2, V07-02-08-06, CMSSW_6_0_1, CMSSW_6_0_0, CMSSW_4_2_8_SLHChcal4, CMSSW_4_2_8_SLHChcal5, CMSSW_4_2_8_SLHChcal6, CMSSW_4_2_0_pre7, V07-04-06, CMSSW_4_2_0_pre1, CMSSW_4_2_0_pre2, CMSSW_4_2_8_SLHChcal3, V06-05-08, CMSSW_4_2_0_pre8, V06-05-09, CMSSW_4_2_8_SLHChcal2_patch2, CMSSW_4_2_8_SLHChcal2_patch3, V07-04-07-01, V07-04-07-00, V07-04-07-02, CMSSW_3_3_0_pre4, CMSSW_4_2_5_hltpatch1, CMSSW_5_3_3_patch1, CMSSW_5_3_3_patch2, CMSSW_5_3_3_patch3, V00-08-07, V06-05-07, CMSSW_3_5_2_patch2, CMSSW_3_5_2_patch1, CMSSW_3_3_0_pre5, CMSSW_5_2_5_patch1, CMSSW_5_2_5_patch3, CMSSW_5_2_5_patch2, V07-04-02, CMSSW_5_2_5_ecalpatch1, V07-04-03, CMSSW_5_1_0_pre2, CMSSW_5_2_0_pre2_TS113282, CMSSW_5_1_0_pre1, CMSSW_5_3_4_TC125616patch1, CMSSW_2_2_1, CMSSW_3_9_0_pre4, CMSSW_3_9_0_pre5, CMSSW_3_9_0_pre6, CMSSW_3_9_0_pre7, CMSSW_3_9_0_pre1, CMSSW_3_9_0_pre2, CMSSW_3_9_0_pre3, V07-04-00, CMSSW_6_1_0_pre6_TS126203_TS126341, CMSSW_3_8_5_patch1, CMSSW_3_8_5_patch3, CMSSW_3_8_5_patch2, CMSSW_4_2_9_HLT2_hltpatch1, V08-03-08, V08-03-09, CMSSW_5_3_4_patch2, V08-03-00, V08-03-01, V08-03-02, V08-03-03, V08-03-04, V08-03-05, V08-03-06, V08-03-07, V00-08-06, V06-09-10, CMSSW_3_1_0_pre8, CMSSW_5_2_X_2012-03-08-0200, CMSSW_3_1_0_pre9, CMSSW_3_9_2_patch5, CMSSW_4_1_2_patch1, CMSSW_3_9_2_patch4, CMSSW_3_1_0_pre4, CMSSW_3_5_6_patch1, CMSSW_3_1_0_pre5, CMSSW_4_3_0_pre6_dqmIO, CMSSW_3_1_0_pre6, CMSSW_4_2_3_patch1, CMSSW_4_2_3_patch2, CMSSW_4_2_3_patch3, CMSSW_4_2_3_patch4, CMSSW_4_2_3_patch5, CMSSW_2_2_10_HLT, CMSSW_6_1_0_pre8, CMSSW_6_1_0_pre7, CMSSW_6_1_0_pre6, CMSSW_6_1_0_pre5, CMSSW_6_1_0_pre4, CMSSW_6_1_0_pre3, CMSSW_6_1_0_pre2, CMSSW_6_1_0_pre1, CMSSW_5_2_X_2012-05-03-0200, V07-00-05, CMSSW_3_1_0_pre2, CMSSW_3_1_0_pre3, CMSSW_5_0_1_patch3, CMSSW_5_0_1_patch2, CMSSW_5_0_1_patch1, V07-00-03, CMSSW_6_0_X_2012-08-07-0200, CMSSW_4_2_3_SLHC4, CMSSW_4_2_3_SLHC3, CMSSW_4_2_3_SLHC2, V07-04-05, CMSSW_5_2_0_pre5_TS117504, HEAD
Branch point for: B3_4_X, B_3_X_SelectorMigration, branch_for_4_1_X, B3_3_X, B3_1_X, StringParser_22X, srappocc_LumiWeighting
Changes since 1.2: +0 -13 lines
more tests and simplification cases
#ifndef PhysicsTools_Utilities_SimplifyPower_h
#define PhysicsTools_Utilities_SimplifyPower_h

#include "PhysicsTools/Utilities/interface/Power.h"
#include "PhysicsTools/Utilities/interface/Ratio.h"
#include "PhysicsTools/Utilities/interface/Sum.h"
#include "PhysicsTools/Utilities/interface/Sqrt.h"
#include "PhysicsTools/Utilities/interface/Fraction.h"
#include "PhysicsTools/Utilities/interface/DecomposePower.h"

#include "PhysicsTools/Utilities/interface/Simplify_begin.h"

namespace funct {

  // a ^ 1 = a
  POWER_RULE(TYPT1, A, NUM(1), A, _1);

  // a ^ -1 = 1 / a
  POWER_RULE(TYPT1, A, NUM(-1), RATIO(NUM(1), A), num<1>() / _1); 
  
  // a ^ 1/2 =  sqrt(a)
  POWER_RULE(TYPT1, A, FRACT_S(1, 2), SQRT(A), sqrt(_1));
  
  // a ^ 0 = 1
  POWER_RULE(TYPT1, A, NUM(0), NUM(1), num<1>());

  // (a * b)^ 0 = 1
  POWER_RULE(TYPT2, PROD_S(A, B), NUM(0), NUM(1), num<1>());

  // (a ^ b) ^ c = a ^ (b + c)
  POWER_RULE(TYPT3, POWER_S(A, B), C, POWER(A, SUM(B, C)), pow(_1._1, _1._2 + _2));

  // (a ^ b) ^ n = a ^ (b + n)
  POWER_RULE(TYPN1T2, POWER_S(A, B), NUM(n), POWER(A, SUM(B, NUM(n))),
	     pow(_1._1, _1._2 + _2));

  // a ^ (-n) = 1 / a ^ n
  template<TYPN1T1, bool positive = (n>= 0)>
  struct SimplifySignedPower {
    typedef POWER_S(A, NUM(n)) type;
    COMBINE(A, NUM(n), type(_1, _2));
  };

  TEMPL(N1T1) struct SimplifySignedPower<n, A, false> {
    typedef RATIO(NUM(1), POWER(A, NUM(- n))) type;
    COMBINE(A, NUM(n), num<1>() / pow(_1, num<-n>()));
  };

  TEMPL(T1) struct SimplifySignedPower<0, A, true> {
    typedef NUM(1) type;
    COMBINE(A, NUM(0), num<1>());
  };

  TEMPL(N1T1) struct Power<A, NUM(n)> :
    public SimplifySignedPower<n, A> { };
  
}

#include "PhysicsTools/Utilities/interface/Simplify_end.h"

#endif

CERN LCG CVS service
ViewVC Help
Powered by ViewVC 1.0.9