00001
00002 COMPLEX FUNCTION F3PI(IFORM,QQ,SA,SB)
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #if defined(CLEO_TYPECHEK)
00028 IMPLICIT NONE
00029 #endif
00030
00031
00032 INTEGER IFORM
00033 REAL QQ,SA,SB
00034
00035
00036 REAL PKORB
00037 COMPLEX BWIGML
00038
00039
00040
00041
00042 CHARACTER*(*) CRNAME
00043 PARAMETER( CRNAME = 'F3PI' )
00044
00045 INTEGER IFIRST,IDK
00046 REAL MRO,GRO,MRP,GRP,MF2,GF2,MF0,GF0,MSG,GSG
00047 REAL M1,M2,M3,M1SQ,M2SQ,M3SQ,MPIZ,MPIC
00048 REAL S1,S2,S3,R,PI
00049 REAL F134,F150,F15A,F15B,F167
00050 REAL F34A,F34B,F35,F35A,F35B,F36A,F36B
00051 COMPLEX BT1,BT2,BT3,BT4,BT5,BT6,BT7
00052 COMPLEX FRO1,FRO2,FRP1,FRP2
00053 COMPLEX FF21,FF22,FF23,FSG1,FSG2,FSG3,FF01,FF02,FF03
00054 COMPLEX FA1A1P,FORMA1
00055
00056
00057
00058
00059
00060 DATA IFIRST/0/
00061
00062
00063
00064 IF (IFIRST.EQ.0) THEN
00065 IFIRST = 1
00066
00067 MRO = 0.7743
00068 GRO = 0.1491
00069 MRP = 1.370
00070 GRP = 0.386
00071 MF2 = 1.275
00072 GF2 = 0.185
00073 MF0 = 1.186
00074 GF0 = 0.350
00075 MSG = 0.860
00076 GSG = 0.880
00077 MPIZ = PKORB(1,7)
00078 MPIC = PKORB(1,8)
00079
00080
00081 PI = 3.14159
00082 BT1 = CMPLX(1.,0.)
00083 BT2 = CMPLX(0.12,0.)*CEXP(CMPLX(0., 0.99*PI))
00084 BT3 = CMPLX(0.37,0.)*CEXP(CMPLX(0.,-0.15*PI))
00085 BT4 = CMPLX(0.87,0.)*CEXP(CMPLX(0., 0.53*PI))
00086 BT5 = CMPLX(0.71,0.)*CEXP(CMPLX(0., 0.56*PI))
00087 BT6 = CMPLX(2.10,0.)*CEXP(CMPLX(0., 0.23*PI))
00088 BT7 = CMPLX(0.77,0.)*CEXP(CMPLX(0.,-0.54*PI))
00089
00090 PRINT *,' In F3pi: add (rho-pi S-wave) + (rhop-pi S-wave) +'
00091 PRINT *,' (rho-pi D-wave) + (rhop-pi D-wave) +'
00092 PRINT *,' (f2 pi D-wave) + (sigmapi S-wave) + (f0pi S-wave)'
00093 END IF
00094
00095
00096 F3PI = CMPLX(0.,0.)
00097
00098
00099
00100
00101 R = PKORB(4,11)
00102 IF (R.EQ.0.) THEN
00103
00104 IDK = 1
00105 M1 = MPIZ
00106 M2 = MPIZ
00107 M3 = MPIC
00108 ELSE
00109
00110 IDK = 2
00111 M1 = MPIC
00112 M2 = MPIC
00113 M3 = MPIC
00114 END IF
00115 M1SQ = M1*M1
00116 M2SQ = M2*M2
00117 M3SQ = M3*M3
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131 IF (IFORM.EQ.1.OR.IFORM.EQ.2) THEN
00132 S1 = SA
00133 S2 = SB
00134 S3 = QQ-SA-SB+M1SQ+M2SQ+M3SQ
00135 IF (S3.LE.0..OR.S2.LE.0.) RETURN
00136
00137 IF (IDK.EQ.1) THEN
00138
00139
00140 F134 = -(1./3.)*((S3-M3SQ)-(S1-M1SQ))
00141 F150 = (1./18.)*(QQ-M3SQ+S3)*(2.*M1SQ+2.*M2SQ-S3)/S3
00142 F167 = (2./3.)
00143
00144
00145 FRO1 = BWIGML(S1,MRO,GRO,M2,M3,1)
00146 FRP1 = BWIGML(S1,MRP,GRP,M2,M3,1)
00147 FRO2 = BWIGML(S2,MRO,GRO,M3,M1,1)
00148 FRP2 = BWIGML(S2,MRP,GRP,M3,M1,1)
00149 FF23 = BWIGML(S3,MF2,GF2,M1,M2,2)
00150 FSG3 = BWIGML(S3,MSG,GSG,M1,M2,0)
00151 FF03 = BWIGML(S3,MF0,GF0,M1,M2,0)
00152
00153 F3PI = BT1*FRO1+BT2*FRP1+
00154 1 BT3*CMPLX(F134,0.)*FRO2+BT4*CMPLX(F134,0.)*FRP2+
00155 1 BT5*CMPLX(F150,0.)*FF23+
00156 1 BT6*CMPLX(F167,0.)*FSG3+BT7*CMPLX(F167,0.)*FF03
00157
00158
00159 ELSEIF (IDK.EQ.2) THEN
00160
00161
00162 F134 = -(1./3.)*((S3-M3SQ)-(S1-M1SQ))
00163 F15A = -(1./2.)*((S2-M2SQ)-(S3-M3SQ))
00164 F15B = -(1./18.)*(QQ-M2SQ+S2)*(2.*M1SQ+2.*M3SQ-S2)/S2
00165 F167 = -(2./3.)
00166
00167
00168 FRO1 = BWIGML(S1,MRO,GRO,M2,M3,1)
00169 FRP1 = BWIGML(S1,MRP,GRP,M2,M3,1)
00170 FRO2 = BWIGML(S2,MRO,GRO,M3,M1,1)
00171 FRP2 = BWIGML(S2,MRP,GRP,M3,M1,1)
00172 FF21 = BWIGML(S1,MF2,GF2,M2,M3,2)
00173 FF22 = BWIGML(S2,MF2,GF2,M3,M1,2)
00174 FSG2 = BWIGML(S2,MSG,GSG,M3,M1,0)
00175 FF02 = BWIGML(S2,MF0,GF0,M3,M1,0)
00176
00177 F3PI = BT1*FRO1+BT2*FRP1+
00178 1 BT3*CMPLX(F134,0.)*FRO2+BT4*CMPLX(F134,0.)*FRP2
00179 1 -BT5*CMPLX(F15A,0.)*FF21-BT5*CMPLX(F15B,0.)*FF22
00180 1 -BT6*CMPLX(F167,0.)*FSG2-BT7*CMPLX(F167,0.)*FF02
00181
00182
00183 END IF
00184
00185 ELSE IF (IFORM.EQ.3) THEN
00186 S3 = SA
00187 S1 = SB
00188 S2 = QQ-SA-SB+M1SQ+M2SQ+M3SQ
00189 IF (S1.LE.0..OR.S2.LE.0.) RETURN
00190
00191 IF (IDK.EQ.1) THEN
00192
00193
00194 F34A = (1./3.)*((S2-M2SQ)-(S3-M3SQ))
00195 F34B = (1./3.)*((S3-M3SQ)-(S1-M1SQ))
00196 F35 =-(1./2.)*((S1-M1SQ)-(S2-M2SQ))
00197
00198
00199 FRO1 = BWIGML(S1,MRO,GRO,M2,M3,1)
00200 FRP1 = BWIGML(S1,MRP,GRP,M2,M3,1)
00201 FRO2 = BWIGML(S2,MRO,GRO,M3,M1,1)
00202 FRP2 = BWIGML(S2,MRP,GRP,M3,M1,1)
00203 FF23 = BWIGML(S3,MF2,GF2,M1,M2,2)
00204
00205 F3PI =
00206 1 BT3*(CMPLX(F34A,0.)*FRO1+CMPLX(F34B,0.)*FRO2)+
00207 1 BT4*(CMPLX(F34A,0.)*FRP1+CMPLX(F34B,0.)*FRP2)+
00208 1 BT5*CMPLX(F35,0.)*FF23
00209
00210
00211 ELSEIF (IDK.EQ.2) THEN
00212
00213
00214 F34A = (1./3.)*((S2-M2SQ)-(S3-M3SQ))
00215 F34B = (1./3.)*((S3-M3SQ)-(S1-M1SQ))
00216 F35A = -(1./18.)*(QQ-M1SQ+S1)*(2.*M2SQ+2.*M3SQ-S1)/S1
00217 F35B = (1./18.)*(QQ-M2SQ+S2)*(2.*M3SQ+2.*M1SQ-S2)/S2
00218 F36A = -(2./3.)
00219 F36B = (2./3.)
00220
00221
00222 FRO1 = BWIGML(S1,MRO,GRO,M2,M3,1)
00223 FRP1 = BWIGML(S1,MRP,GRP,M2,M3,1)
00224 FRO2 = BWIGML(S2,MRO,GRO,M3,M1,1)
00225 FRP2 = BWIGML(S2,MRP,GRP,M3,M1,1)
00226 FF21 = BWIGML(S1,MF2,GF2,M2,M3,2)
00227 FF22 = BWIGML(S2,MF2,GF2,M3,M1,2)
00228 FSG1 = BWIGML(S1,MSG,GSG,M2,M3,0)
00229 FSG2 = BWIGML(S2,MSG,GSG,M3,M1,0)
00230 FF01 = BWIGML(S1,MF0,GF0,M2,M3,0)
00231 FF02 = BWIGML(S2,MF0,GF0,M3,M1,0)
00232
00233 F3PI =
00234 1 BT3*(CMPLX(F34A,0.)*FRO1+CMPLX(F34B,0.)*FRO2)+
00235 1 BT4*(CMPLX(F34A,0.)*FRP1+CMPLX(F34B,0.)*FRP2)
00236 1 -BT5*(CMPLX(F35A,0.)*FF21+CMPLX(F35B,0.)*FF22)
00237 1 -BT6*(CMPLX(F36A,0.)*FSG1+CMPLX(F36B,0.)*FSG2)
00238 1 -BT7*(CMPLX(F36A,0.)*FF01+CMPLX(F36B,0.)*FF02)
00239
00240
00241 END IF
00242 END IF
00243
00244
00245 FORMA1 = FA1A1P(QQ)
00246 F3PI = F3PI*FORMA1
00247
00248 RETURN
00249 END
00250
00251 COMPLEX FUNCTION BWIGML(S,M,G,M1,M2,L)
00252
00253
00254
00255 REAL S,M,G,M1,M2
00256 INTEGER L,IPOW
00257 REAL MSQ,W,WGS,MP,MM,QS,QM
00258
00259 MP = (M1+M2)**2
00260 MM = (M1-M2)**2
00261 MSQ = M*M
00262 W = SQRT(S)
00263 WGS = 0.0
00264 IF (W.GT.(M1+M2)) THEN
00265 QS=SQRT(ABS((S -MP)*(S -MM)))/W
00266 QM=SQRT(ABS((MSQ -MP)*(MSQ -MM)))/M
00267 IPOW = 2*L+1
00268 WGS=G*(MSQ/W)*(QS/QM)**IPOW
00269 ENDIF
00270
00271 BWIGML=CMPLX(MSQ,0.)/CMPLX(MSQ-S,-WGS)
00272
00273 RETURN
00274 END
00275
00276 COMPLEX FUNCTION FA1A1P(XMSQ)
00277
00278
00279
00280
00281 REAL XMSQ
00282 REAL PKORB,WGA1
00283 REAL XM1,XG1,XM2,XG2,XM1SQ,XM2SQ,GG1,GG2,GF,FG1,FG2
00284 COMPLEX BET,F1,F2
00285 INTEGER IFIRST/0/
00286
00287 IF (IFIRST.EQ.0) THEN
00288 IFIRST = 1
00289
00290
00291 XM1 = PKORB(1,10)
00292 XG1 = PKORB(2,10)
00293 XM2 = PKORB(1,17)
00294 XG2 = PKORB(2,17)
00295 BET = CMPLX(PKORB(3,17),0.)
00296
00297 GG1 = XM1*XG1/(1.3281*0.806)
00298 GG2 = XM2*XG2/(1.3281*0.806)
00299
00300 XM1SQ = XM1*XM1
00301 XM2SQ = XM2*XM2
00302 END IF
00303
00304 GF = WGA1(XMSQ)
00305 FG1 = GG1*GF
00306 FG2 = GG2*GF
00307 F1 = CMPLX(-XM1SQ,0.0)/CMPLX(XMSQ-XM1SQ,FG1)
00308 F2 = CMPLX(-XM2SQ,0.0)/CMPLX(XMSQ-XM2SQ,FG2)
00309 FA1A1P = F1+BET*F2
00310
00311 RETURN
00312 END
00313
00314 FUNCTION WGA1(QQ)
00315
00316
00317
00318
00319
00320
00321 REAL QQ,WGA1
00322 DOUBLE PRECISION MKST,MK,MK1SQ,MK2SQ,C3PI,CKST
00323 DOUBLE PRECISION S,WGA1C,WGA1N,WG3PIC,WG3PIN,GKST
00324 INTEGER IFIRST
00325
00326
00327 IF (IFIRST.NE.987) THEN
00328 IFIRST = 987
00329
00330
00331 MKST = 0.894D0
00332 MK = 0.496D0
00333 MK1SQ = (MKST+MK)**2
00334 MK2SQ = (MKST-MK)**2
00335
00336 C3PI = 0.2384D0**2
00337 CKST = 4.7621D0**2*C3PI
00338 END IF
00339
00340
00341
00342
00343 S = DBLE(QQ)
00344 WG3PIC = WGA1C(S)
00345 WG3PIN = WGA1N(S)
00346
00347
00348 GKST = 0.D0
00349 IF (S.GT.MK1SQ) GKST = SQRT((S-MK1SQ)*(S-MK2SQ))/(2.*S)
00350
00351 WGA1 = SNGL(C3PI*(WG3PIC+WG3PIN)+CKST*GKST)
00352
00353 RETURN
00354 END
00355
00356 DOUBLE PRECISION FUNCTION WGA1C(S)
00357
00358
00359
00360 DOUBLE PRECISION S,STH,Q0,Q1,Q2,P0,P1,P2,P3,P4,G1_IM
00361
00362 PARAMETER(Q0 = 5.80900D0,Q1 = -3.00980D0,Q2 = 4.57920D0,
00363 1 P0 = -13.91400D0,P1 = 27.67900D0,P2 = -13.39300D0,
00364 2 P3 = 3.19240D0,P4 = -0.10487D0)
00365
00366 PARAMETER (STH = 0.1753D0)
00367
00368
00369 IF(S.LT.STH) THEN
00370 G1_IM = 0.D0
00371 ELSEIF((S.GT.STH).AND.(S.LT.0.823D0)) THEN
00372 G1_IM = Q0*(S-STH)**3*(1. + Q1*(S-STH) + Q2*(S-STH)**2)
00373 ELSE
00374 G1_IM = P0 + P1*S + P2*S**2+ P3*S**3 + P4*S**4
00375 ENDIF
00376
00377 WGA1C = G1_IM
00378 RETURN
00379 END
00380
00381 DOUBLE PRECISION FUNCTION WGA1N(S)
00382
00383
00384
00385 DOUBLE PRECISION S,STH,Q0,Q1,Q2,P0,P1,P2,P3,P4,G1_IM
00386
00387 PARAMETER(Q0 = 6.28450D0,Q1 = -2.95950D0,Q2 = 4.33550D0,
00388 1 P0 = -15.41100D0,P1 = 32.08800D0,P2 = -17.66600D0,
00389 2 P3 = 4.93550D0,P4 = -0.37498D0)
00390
00391 PARAMETER (STH = 0.1676D0)
00392
00393
00394 IF(S.LT.STH) THEN
00395 G1_IM = 0.D0
00396 ELSEIF((S.GT.STH).AND.(S.LT.0.823D0)) THEN
00397 G1_IM = Q0*(S-STH)**3*(1. + Q1*(S-STH) + Q2*(S-STH)**2)
00398 ELSE
00399 G1_IM = P0 + P1*S + P2*S**2+ P3*S**3 + P4*S**4
00400 ENDIF
00401
00402 WGA1N = G1_IM
00403 RETURN
00404 END