3632 real*8 hto_shh,muhr,rgh,muhs,scal,scals,p2,xm0,str,sti,ewc,
3633 # sconv,asmur,emc,emb,emt,as_NLO,rmbs,rmcs,rmss,
3634 # crmbs,crmcs,lcxb,lcxc,lcxbs,lcxcs,lclxb,lclxc,qcdtop,neg
3635 real*8,
dimension(2) :: axm0
3636 real*8,
dimension(2,2) :: axms
3637 real*8,
dimension(3,2,2) :: bmcb
3638 real*8,
dimension(8,2,2) :: bmcf
3639 real*8,
dimension(1,2,2) :: bmct
3640 real*8,
dimension(3,2) :: bm0b,coefbb
3641 real*8,
dimension(8,2) :: bm0f,coefbf
3642 real*8,
dimension(1,2) :: bm0t,coefbt
3643 real*8,
dimension(2) :: sh,shs,clh,b0sumb,b0sumf,cxp,ksumb,
3644 # ksumf,coefB1,coefB2,coefB3,coefB4,coefB5,coefB6,coefB7,
3645 # coefB8,coefB9,coefB10,coefB11,coefB12,ab2,ab3,
3646 # totalf,totalt,totalb,total,b0sumt,ksumt,xms,
3647 # b0part,cpt,ccxt,deltag,sww0,coefW1,coefW2,
3648 # ksumw,ccxts,cctsi,shi,clt,cxhw,cstsi,csmcts,cltmw,
3649 # b0sumw,sww,DW,b0sumw1,b0sumw2,cmxw,clmw,cxtw,
3650 # kfmsb,ktmsb,kbmsb,nloqcd,runbc,ttqcd,wccxt,wclt,wccxts,
3651 # wcxtw,wcltmw,ascal
3690 real*8 scal,ps0i,xm0i
3691 real*8,
dimension(2) ::
value,psi,xmsi
3708 crmbs= runbc(2)*runbc(2)
3709 crmcs= runbc(1)*runbc(1)
3721 # (mt*mt+2.d0*mw*mw)/mt**3
3722 ELSEIF(
gtop == 0)
THEN
3733 wccxts= wccxt.
cp.wccxt
3742 clmw= cmxw(1).
fln.cmxw(2)
3743 clmw(2)= clmw(2)-2.d0*pi
3746 sh(2)= -muhr*rgh/scals
3752 clh= sh(1).
fln.sh(2)
3753 clt= ccxt(1).
fln.ccxt(2)
3754 wclt= wccxt(1).
fln.wccxt(2)
3757 cltmw= cxtw(1).
fln.cxtw(2)
3758 wcltmw= wcxtw(1).
fln.wcxtw(2)
3761 coefb1= (12.d0*
cxw-4.d0*sh+(shs.
cq.
cxw))/64.d0
3765 # 12.d0*(cxw.cq.cctq))/128.d0
3768 coefb3= 9.d0/128.d0*(shs.
cq.
cxw)
3771 coefb4= -3.d0/32.d0*((4.d0*ccxt-sh).
cp.(ccxt.
cq.
cxw))
3775 coefb5= -3.d0/32.d0*((4.d0*
co*lcxb-sh).
cq.
cxw)*lcxb
3779 coefb7= -3.d0/32.d0*((4.d0*
co*lcxc-sh).
cq.
cxw)*lcxc
3801 b0sumb= (coefb1.
cp.b0part)
3806 b0sumb= b0sumb+(coefb2.
cp.b0part)
3811 b0sumb= b0sumb+(coefb3.
cp.b0part)
3813 xms(1:2)= crmbs*
co(1:2)
3816 b0sumf= (coefb5.
cp.b0part)
3820 b0sumf= b0sumf+(coefb6.
cp.b0part)
3821 xms(1:2)= crmcs*
co(1:2)
3824 b0sumf= b0sumf+(coefb7.
cp.b0part)
3828 b0sumf= b0sumf+(coefb8.
cp.b0part)
3832 b0sumf= b0sumf+(coefb9.
cp.b0part)
3836 b0sumf= b0sumf+(coefb10.
cp.b0part)
3840 b0sumf= b0sumf+(coefb11.
cp.b0part)
3844 b0sumf= b0sumf+(coefb12.
cp.b0part)
3849 b0sumt= (coefb4.
cp.b0part)
3852 xms(1:2)= crmbs*
co(1:2)
3855 xms(1:2)= crmcs*
co(1:2)
3857 nloqcd= nloqcd+crmcs*
hto_quarkqcd(scal,cxp,p2,xms,xm0,iz)
3858 IF(
qcdc==0) nloqcd= 0.d0
3865 IF(
qcdc==0) ttqcd= 0.d0
3867 ELSEIF(
ifb.eq.1)
THEN
3869 xms(1:2)= crmbs*
co(1:2)
3872 b0sumf= (coefb5.
cp.b0part)
3876 b0sumf= b0sumf+(coefb6.
cp.b0part)
3877 xms(1:2)= crmcs*
co(1:2)
3880 b0sumf= b0sumf+(coefb7.
cp.b0part)
3884 b0sumf= b0sumf+(coefb8.
cp.b0part)
3888 b0sumf= b0sumf+(coefb9.
cp.b0part)
3892 b0sumf= b0sumf+(coefb10.
cp.b0part)
3896 b0sumf= b0sumf+(coefb11.
cp.b0part)
3900 b0sumf= b0sumf+(coefb12.
cp.b0part)
3903 xms(1:2)= crmbs*
co(1:2)
3906 xms(1:2)= crmcs*
co(1:2)
3908 nloqcd= nloqcd+crmcs*
hto_quarkqcd(scal,cxp,p2,xms,xm0,iz)
3909 IF(
qcdc==0) nloqcd= 0.d0
3911 ELSEIF(
ifb.eq.2)
THEN
3916 b0sumt= (coefb4.
cp.b0part)
3923 IF(
qcdc==0) ttqcd= 0.d0
3925 ELSEIF(
ifb.eq.3)
THEN
3931 b0sumb= (coefb1.
cp.b0part)
3936 b0sumb= b0sumb+(coefb2.
cp.b0part)
3941 b0sumb= b0sumb+(coefb3.
cp.b0part)
3945 IF(
ifb.eq.0.or.
ifb.eq.1)
THEN
3947 # cxtau*clxtau+3.d0*(cxd*clxd+cxs*clxs+lcxb*lclxb+
3948 # cxu*clxu+lcxc*lclxc))/32.d0+
3949 # cxwi*(cxes+cxmus+cxtaus+3.d0*(
3950 # cxds+cxss+lcxbs+cxus+lcxcs))/8.d0
3952 IF(
ifb.eq.0.or.
ifb.eq.2)
THEN
3953 ksumt= 3.d0/32.d0*(4.d0*((ccxt.
cq.
cxw).
cp.ccxt)
3954 # -(clt.cp.((sh.cq.cxw).cp.ccxt)))
3957 IF(
ifb.eq.0.or.
ifb.eq.3)
THEN
3959 ksumb= (-2.d0*((2.d0*
co+cctsi+3.d0*(sh.
cq.
cxw)).
cp.sh)
3960 # -(clcts.cp.((6.d0*cctsi-(sh.cq.cxw)).cp.sh))
3961 # +3.d0*(clw.cp.((4.d0*co+2.d0*cctsi-(sh.cq.cxw)).cp.sh))
3962 # -3.d0*(clh.cp.(shs.cq.cxw)))/128.d0
3966 ewc= 4.d0*sqrt(2.d0)*
g_f/
pis
3969 IF(
ifb.eq.0.or.
ifb.eq.1)
THEN
3970 totalf= b0sumf+ksumf
3973 IF(
ifb.eq.0.or.
ifb.eq.2)
THEN
3974 totalt= b0sumt+ksumt
3976 neg= ewc*(
swr*totalt(2)+
swi*totalt(1))/sconv
3977 # -as_NLO*g_f/(sqrt(2.d0)*pis)*
3978 # (sh(1)*ttqcd(2)+sh(2)*ttqcd(1))/sconv
3985 qcdtop= as_nlo*
g_f/(sqrt(2.d0)*
pis)*
3986 # (sh(1)*ttqcd(2)+sh(2)*ttqcd(1))/sconv
3992 IF(
ifb.eq.0.or.
ifb.eq.3)
THEN
3993 totalb= b0sumb+ksumb
3994 IF((
swr*totalb(2)+
swi*totalb(1)) < 0.d0)
THEN
4002 total= totalf+totalt+totalb
4004 *--- w self energies
4008 sww0= -(38.d0*
cxw+6.d0*wccxt+7.d0*sh
4009 # -48.d0*(((wccxt.cq.sh).cq.cxw).cp.wccxt)+8.d0*(cxw.cq.sh))/128.d0
4010 # -3.d0/64.d0*((cxw-sh+(cxws.cq.cxhw)).cp.clh)
4011 # +3.d0/32.d0*(((co-4.d0*((wccxt.cq.sh).cq.cxw).cp.wccxt)).cp.wclt)
4012 # +((((8.d0*co-17.d0*cstsi+3.d0*cctsi).cp.cxw)
4013 # -6.d0*((cxw.cq.sh).cq.cctq)).cp.clcts)/64.d0
4014 # -((cxw.cq.sh).cq.cctq)/32.d0+5.d0/128.d0*(cxw.cq.ccts)
4016 coefw1= -(((8.d0*
co-(sh.
cq.
cxw)).
cp.sh)*sh
4017 # -4.d0*((-12.d0*cxw+7.d0*sh).cp.cxw))/192.d0
4020 # -((132.d0*co-((12.d0*co+cctsi).cq.ccts)).cq.ccts)))/192.d0
4030 axms(2,2)= -muhr*rgh
4033 b0sumw1= (coefw1.
cp.b0part)
4034 b0sumw= (coefw1.
cp.b0part)
4043 b0sumw2= (coefw2.
cp.b0part)
4044 b0sumw= b0sumw+(coefw2.
cp.b0part)
4047 # -0.5d0*((3.d0*co-(wccxts.cq.cxws)).cp.wccxt)).cp.wcltmw)
4048 # -((24.d0*cxw-((14.d0*co-(sh.cq.cxw)).cp.sh)).cp.clh)
4049 # +((36.d0*cxw-14.d0*sh-18.d0*((co-4.d0*(wccxt.cq.sh)).cp.wccxt)
4050 # +(shs.cq.cxw)).cp.clw)
4051 # -6.d0*(((2.d0*co+((cxwi-12.d0*shi).cp.wccxt)).cp.wccxt)
4052 # +1.d0/6.d0*((15.d0*co-(sh.cq.cxw)).cp.sh)
4053 # +2.d0/9.d0*((97.d0*co+9.d0*(cxw.cq.sh)).cp.cxw))
4054 # +(((cxw.cq.ccts).cp.(co-6.d0*(cxw.cq.sh))).cq.ccts)
4055 # -2.d0*(((cxw.cq.csmcts).cp.clcts).cp.(62.d0*co
4056 # -48.d0*csts-5.d0*cctsi))
4057 # -18.d0*(((cxws.cq.sh).cq.cctq).cp.clcts)
4058 # -72.d0*((wclt.cp.wccxts).cp.(shi-1.d0/12.d0*(wccxt.cq.cxws)))
4059 # +23.d0*(cxw.cq.ccts)
4061 ksumw= ksumw/192.d0+3.d0/16.d0*(
cxw.
cp.(
clw-clmw))
4065 dw= (-sww+sww0)/sconv+deltag/16.d0
4070 # (1.d0+EWC*(swr*DW(1)-swi*DW(2)))
4071 # -EWC*(swr*total(2)+swi*total(1))/sconv
4072 # +as_NLO*g_f/(sqrt(2.d0)*pis)*
4073 # (sh(1)*nloqcd(2)+sh(2)*nloqcd(1))/sconv
4076 ELSEIF(
ifb.eq.1)
THEN
4078 # (1.d0+EWC*(swr*DW(1)-swi*DW(2)))
4079 # -EWC*(swr*totalf(2)+swi*totalf(1))/sconv
4080 # +as_NLO*g_f/(sqrt(2.d0)*pis)*
4081 # (sh(1)*nloqcd(2)+sh(2)*nloqcd(1))/sconv
4082 ELSEIF(
ifb.eq.2)
THEN
4084 # (1.d0+EWC*(swr*DW(1)-swi*DW(2)))
4085 # -EWC*(swr*totalt(2)+swi*totalt(1))/sconv
4087 ELSEIF(
ifb.eq.3)
THEN
4089 # (1.d0+EWC*(swr*DW(1)-swi*DW(2)))
4090 # -EWC*(swr*totalb(2)+swi*totalb(1))/sconv