*$ 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-compatibility, 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)' INCLUDE '(TRACKR)' LOGICAL LFIRST DATA LFIRST / .TRUE. / SAVE LFIRST * FLUSCW = ONEONE LSCZER = .FALSE. * Activate with USERWEIGht Use FLUSCW+ WHAT(3)>2 to * Couple scoring with the first Boundary crossing estimator IF (ISCRNG.EQ.1 .AND. JSCRNG.EQ.1) THEN IF (LFIRST) THEN WRITE (99,*) & '# 1.IJ 2.X 3.Y 4.Z 5.TX 6.TY 7.TZ 8.E 9.W' LFIRST = .FALSE. END IF WRITE (99,'(I3,8(1X,F22.14))') & IJ,XX,YY,ZZ,TXX,TYY,TZZ,-PLA,WEE END IF RETURN *=== End of function Fluscw ===========================================* END