IAP GITLAB

Commit 8c10375d authored by Tanguy Pierog's avatar Tanguy Pierog

final correction of bug in DPMJET interface (always negative charge given to projectile hadron)

parent 3fdb01d8
...@@ -170,15 +170,16 @@ c dimension WHAT(6) ...@@ -170,15 +170,16 @@ c dimension WHAT(6)
IF(laproj.eq.-1) THEN !not nucleus IF(laproj.eq.-1) THEN !not nucleus
IDPDG = idtrafo('nxs','pdg',idproj) IDPDG = idtrafo('nxs','pdg',idproj)
IDP=IDT_ICIHAD(IDPDG) IDP=IDT_ICIHAD(IDPDG)
NPCHAR = IICH(IDP)
ELSE ELSE
c will be treated as nucleus in DT_INIT and NPMASS,... will be used c will be treated as nucleus in DT_INIT and NPMASS,... will be used
IDPDG = 0 IDPDG = 0
IDP = 0 IDP = 0
ENDIF ENDIF
if(idtarg.ne.1120.and.idtarg.ne.0)then if(abs(idtarg).ne.1120.and.idtarg.ne.0)then
call utstop("Only proton or nucleus as target !&") call utstop("Only (anti)proton or nucleus as target !&")
else else
NTCHAR = abs(NTCHAR) NTCHAR = sign(abs(latarg),idtarg)
endif endif
bmax=3.+(maproj+matarg)**0.4 bmax=3.+(maproj+matarg)**0.4
...@@ -202,7 +203,7 @@ C general initialization ...@@ -202,7 +203,7 @@ C general initialization
c NCASES = -100 !make cross-section table (using iron as projectile and idtarg=0 for air) c NCASES = -100 !make cross-section table (using iron as projectile and idtarg=0 for air)
IGLAU = 0 IGLAU = 0
c write(ifch,*)'dt_init',NCASES,EPROJ,NPMASS,NPCHAR,NTMASS,NTCHAR c write(ifmt,*)'dt_init',NCASES,EPROJ,NPMASS,NPCHAR,NTMASS,NTCHAR
c +,IDP,IGLAU c +,IDP,IGLAU
c CALL DT_INIT(NCASES,EINID,NPMASS,NPCHAR,NTMASS,NTCHAR,IDP,IGLAU) c CALL DT_INIT(NCASES,EINID,NPMASS,NPCHAR,NTMASS,NTCHAR,IDP,IGLAU)
CALL DT_DTUINI(NCASES,EINID,NPMASS,NPCHAR,NTMASS,NTCHAR,IDP,IEMU) CALL DT_DTUINI(NCASES,EINID,NPMASS,NPCHAR,NTMASS,NTCHAR,IDP,IEMU)
...@@ -347,9 +348,13 @@ c projecticle and target can be changed without reinitialization of the event ...@@ -347,9 +348,13 @@ c projecticle and target can be changed without reinitialization of the event
IDP = IDT_ICIHAD(IDPDG) IDP = IDT_ICIHAD(IDPDG)
ENDIF ENDIF
NPMASS = maproj NPMASS = maproj
NPCHAR = laproj IF(laproj.eq.-1) THEN !not nucleus
NPCHAR = IICH(IDP)
else
NPCHAR = laproj
endif
NTMASS = matarg NTMASS = matarg
NTCHAR = latarg NTCHAR = sign(abs(latarg),idtarg)
CALL dt_kkinc(NPMASS,NPCHAR,NTMASS,NTCHAR,IDP,EPROJ, KKMAT,IREJ) CALL dt_kkinc(NPMASS,NPCHAR,NTMASS,NTCHAR,IDP,EPROJ, KKMAT,IREJ)
IF(IREJ.NE.0) THEN IF(IREJ.NE.0) THEN
WRITE(ifch,'(a)') WRITE(ifch,'(a)')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment