FHCouplings - compute the Higgs couplings, decay widths, and branching ratios #include "FHCouplings.h" integer error double complex couplings(ncouplings), couplingsms(ncouplingsms) double precision gammas(ngammas), gammasms(ngammasms) integer fast subroutine FHCouplings(error, couplings, couplingsms, gammas, gammasms, fast) FHCouplings[fast:1] FHCouplings computes the Higgs couplings, decay widths, and branching ratios. It uses the Higgs masses and mixings computed during the last invocation of FHHiggsCorr(1). The flags and parameters must have been set before with FHSetFlags(1) and FHSetPara(1)/FHSetSLHA(1). The arrays passed to FHCouplings should never be accessed directly, but only through the preprocessor macros defined in FHCouplings.h, which needs to be included once per file. error (output) zero if successful, otherwise the line number in Couplings.F from which the error message was emitted couplings(i) (output) the MSSM Higgs couplings. This array is indexed with preproces- sor macros (see below). couplingsms(i) (output) the couplings of a Standard Model Higgs with the same mass as the respective MSSM Higgs. This array is indexed with pre- processor macros (see below). gammas(i) (output) the Higgs decay widths and branching ratios. This array is in- dexed with preprocessor macros (see below). gammasms(i) (output) the decay widths and branching ratios of a Standard Model Higgs with the same mass as the respective MSSM Higgs. This array is indexed with preprocessor macros (see below). fast (input) a flag indicating whether the off-diagonal fermion decays shall be computed. Unless the decays h_i -> f_j f_k (j != k) are ex- plicitly needed, they may safely be ignored, as they hardly con- tribute to the total cross-section. The total decay widths are accessed as GammaTot(h) the total width of the (MSSM) Higgs boson, where h = 1..4 Higgs: h0, HH, A0, Hp GammaSMTot(h) the total width of a Standard Model Higgs boson with the same mass as the respective MSSM Higgs boson, where h = 1..3 Higgs: h0, HH, A0 The following macros access couplings, widths, and branching ratios: Coupling(c) the coupling for the scalar or vector channel c LCoupling(c), RCoupling(c) the left- and right-handed couplings for the fermionic channel c, i.e. the coupling is 1 - gamma_5 1 + gamma_5 LCoupling(c) ----------- + RCoupling(c) ----------- 2 2 Equating this to S + i gamma_5 P, the scalar and pseudo-scalar coefficients are trivially obtained as scalar = 1/2 (RCoupling(c) + LCoupling(c)), pseudo-scalar = 1/(2 i) (RCoupling(c) - LCoupling(c)). The couplings are given in the conventions of the MSSM model file of FeynArts. For couplings where the order is essential, the following rules apply: - A charged Higgs at pos. 1 is always the particle, i.e. H-, this fixes all other particles by charge conservation. - For the H0ChaCha coupling, the first Chargino is the particle, chi-, and the second one the antiparticle, chi+. CouplingSM(c), LCouplingSM(c), RCouplingSM(c) the coupling for the corresponding SM channel. Gamma(c), BR(c) the width and branching ratio for channel c. GammaSM(c), BRSM(c) the width and branching ratio of the corresponding SM channel. H0VV(h,vv) neutral Higgs to vector + vector, where h = 1..3 Higgs: h0, HH, A0 vv = 1..5 vector-boson pair: gamma gamma, gamma Z, ZZ, WW, gg H0FF(h,t,g1,g2) neutral Higgs to fermion + fermion, where h = 1..3 Higgs: h0, HH, A0 t = 1..4 fermion type: nu, e, u, d g1 = 1..3 fermion generation g2 = 1..3 fermion generation HpFF(p,g1,g2) charged Higgs to fermion + fermion, where p = 1..2 decay products: leptons, quarks g1 = 1..3 up-type fermion 1 generation g2 = 1..3 down-type fermion 2 generation H0ChaCha(h,c1,c2) neutral Higgs to chargino + chargino, where h = 1..3 Higgs: h0, HH, A0 c1 = 1..2 chargino 1 c2 = 1..2 chargino 2 H0NeuNeu(h,n1,n2) neutral Higgs to neutralino + neutralino, where h = 1..3 Higgs: h0, HH, A0 n1 = 1..4 neutralino 1 n2 = 1..4 neutralino 2 HpNeuCha(n1,c2) charged Higgs to neutralino + chargino, where n1 = 1..4 neutralino c2 = 1..2 chargino H0HV(h,hv) neutral Higgs to Higgs + vector, where h = 1..3 decaying Higgs: h0, HH, A0 hv = 1..3 produced pair: h0-Z, HH-Z, A0-Z HpHV(hv) charged Higgs to Higgs + vector, where hv = 1..3 produced pair: h0-W, HH-W, A0-W H0HH(h,h1,h2) neutral Higgs to Higgs + Higgs, where h = 1..3 decaying Higgs: h0, HH, A0 h1 = 1..4 produced Higgs 1: h0, HH, A0, Hp h2 = 1..4 produced Higgs 2: h0, HH, A0, Hp H0SfSf(h,s1,s2,t,g) neutral Higgs to sfermion + sfermion, where h = 1..3 Higgs: h0, HH, A0 s1 = 1..2 sfermion 1 s2 = 1..2 sfermion 2 t = 1..4 sfermion type: nu, e, u, d g = 1..3 common sfermion generation HpSfSf(s1,s2,p,g1,g2) charged Higgs to sfermion + sfermion, where s1 = 1..2 up-type sfermion 1 s2 = 1..2 down-type sfermion 2 p = 1..2 decay products: sleptons, squarks g1 = 1..3 up-type sfermion 1 generation g2 = 1..3 down-type sfermion 2 generation Mathematica and Fortran share the same names for the channels, but due to the structure of the Mathematica output, the results have to be ac- cessed in a slightly different way. To access the h0 -> top top decay, for example, one would use couplings = FHCouplings[]; h0ff = Gamma[H0FF] /. couplings; h0toptop = h0ff[[1,3,3,3]] in Mathematica, while in Fortran the same is done with call FHCouplings(error, couplings, gammas, gammasms) h0toptop = Gamma(H0FF(1,3,3,3)) libFH(1) 11-May-2012 FHCOUPLINGS(1)