IAP GITLAB

Commit edb0decc by Tanguy Pierog

### put particles on-shell always (to solve precision problem during conversion single <-> double)

```
git-svn-id: https://devel-ik.fzk.de/svn/mc/crmc/trunk@5261 c7a5e08c-de06-0410-9364-b41cf42a0b17```
parent 9a0b4f9b
 ... ... @@ -60,7 +60,7 @@ c Calculations of energy of the center-of-mass in the detector frame e1=dsqrt(dble(m1)**2+pproj**2) e2=dsqrt(dble(m2)**2+ptarg**2) decms=dsqrt((e1+e2)**2-(pproj+ptarg)**2) decms=dsqrt(((e1+e2)+(pproj+ptarg))*(e1+e2)-(pproj+ptarg))) c Later a rapidity boost back into the detector system will be performed doBoost = .true. c ycm2det defines this rapidity ... ... @@ -138,7 +138,7 @@ c Output quantities integer outstat(*) double precision boostvec1,boostvec2,boostvec3,boostvec4,boostvec5 double precision mass double precision mass,amt double precision ycm2det logical doBoost common/boostvars/ycm2det,doBoost ... ... @@ -178,8 +178,8 @@ c write(*,*)nevhep,nhep,boostvec3,boostvec4,ycm2det c boost output to cms frame if(doBoost.eqv..true..and.ycm2det.ne.0d0) then if(model.eq.6) then ! sibyll needs calculated mass because itlob5 does not work with off-shell particles mass = dsqrt(phep(4,i)**2 + - phep(1,i)**2 - phep(2,i)**2 - phep(3,i)**2) amt = dsqrt( phep(1,i)**2 + phep(2,i)**2 + phep(3,i)**2) mass = dsqrt((phep(4,i)+amt)*(phep(4,i)-amt)) else mass = phep(5,i) endif ... ... @@ -188,6 +188,9 @@ c boost output to cms frame + ,vhep(1,i),vhep(2,i),vhep(3,i),vhep(4,i),-99) call utlob5dbl(-ycm2det + ,phep(1,i), phep(2,i), phep(3,i), phep(4,i), mass) else phep(4,i)=sqrt(phep(3,i)**2+phep(2,i)**2+phep(2,i)**2 + +phep(5,i)**2) endif outpart(i)=idhep(i) outpx(i)=phep(1,i) ... ...
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!