*$ CREATE FLUSCW.FOR *COPY FLUSCW * * *=== fluscw ===========================================================* * * DOUBLE PRECISION FUNCTION FLUSCW ( IJ , PLA , TXX , TYY , & TZZ , WEE , XX , YY , & ZZ , NREG , IOLREG, LLO , & NSURF ) INCLUDE '(DBLPRC)' INCLUDE '(DIMPAR)' INCLUDE '(IOUNIT)' * *----------------------------------------------------------------------* * * * Copyright (C) 1989-2005 by Alfredo Ferrari & Paola Sala * * All Rights Reserved. * * * * New version of Fluscw for FLUKA9x-FLUKA200x: * * * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * !!! This is a completely dummy routine for Fluka9x/200x. !!! * * !!! The name has been kept the same as for older Fluka !!! * * !!! versions for back-compaXXC, YYC, ZZCtibility, even though Fluscw !!! * * !!! is applied only to estimators which didn't exist be- !!! * * !!! fore Fluka89. !!! * * !!! User developed versions can be used for weighting !!! * * !!! flux-like quantities at runtime !!! * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * * * Input variables: * * * * Ij = (generalized) particle code (Paprop numbering) * * Pla = particle laboratory momentum (GeV/c) (if > 0), * * or kinetic energy (GeV) (if <0 ) * * Txx,yy,zz = particle direction cosines * * Wee = particle weight * * Xx,Yy,Zz = position * * Nreg = (new) region number * * Iolreg = (old) region number * * Llo = particle generation * * Nsurf = transport flag (ignore!) * * * * Output variables: * * * * Fluscw = factor the scored amount will be multiplied by * * Lsczer = logical flag, if true no amount will be scored * * regardless of Fluscw * * * * Useful variables (common SCOHLP): * * * * Flux like binnings/estimators (Fluscw): * * ISCRNG = 1 --> Boundary crossing estimator * * ISCRNG = 2 --> Track length binning * * ISCRNG = 3 --> Track length estimator * * ISCRNG = 4 --> Collision density estimator * * ISCRNG = 5 --> Yield estimator * * JSCRNG = # of the binning/estimator * * * *----------------------------------------------------------------------* * INCLUDE '(SCOHLP)' * CHARACTER*8 MRGNAM, NRGNAM CALL GEOR2N (IOLREG, MRGNAM, IEER1) CALL GEOR2N (NREG, NRGNAM, IEER2) * IF(IEER1 .NE. 0 .OR. IEER2 .NE. 0) * STOP "Error in name conversion" * ENDIF * IOLREG = MREG * NREG = NEWREG EKIN=ABS(PLA) IF ( ISCRNG .EQ. 1 ) THEN IF ( JSCRNG .EQ. 1) THEN IF (IJ.EQ.1) THEN IF (MRGNAM .EQ. "R1" .AND. NRGNAM .EQ. "target1") THEN OPEN (7, FILE='Data1.dat',STATUS='NEW') * IOLREG = MREG * NREG = NEWREG * IOLREG = R1 * NREG = target1 WRITE(7,7) IJ, EKIN, XX, YY, ZZ, TXX, TYY, TZZ 7 FORMAT(I8, 5E25.5, 5E25.5, 5E25.5, 5E25.5, 5E25.5, 5E25.5, 5E25.5) ENDIF ENDIF ENDIF ENDIF * CLOSE(7) FLUSCW = TWOTWO LSCZER = .FALSE. RETURN *=== End of function Fluscw ===========================================* END