Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:21:12

0001  
0002 C*********************************************************************
0003  
0004 C...PYLOGO
0005 C...Writes a logo for the program.
0006  
0007       SUBROUTINE PYLOGO
0008  
0009 C...Double precision and integer declarations.
0010       IMPLICIT DOUBLE PRECISION(A-H, O-Z)
0011       IMPLICIT INTEGER(I-N)
0012       INTEGER PYK,PYCHGE,PYCOMP
0013 C...Parameter for length of information block.
0014       PARAMETER (IREFER=21)
0015 C...Commonblocks.
0016       COMMON/PYDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
0017       COMMON/PYPARS/MSTP(200),PARP(200),MSTI(200),PARI(200)
0018       SAVE /PYDAT1/,/PYPARS/
0019 C...Local arrays and character variables.
0020       INTEGER IDATI(6)
0021       CHARACTER MONTH(12)*3, LOGO(48)*32, REFER(2*IREFER)*36, LINE*79,
0022      &VERS*1, SUBV*3, DATE*2, YEAR*4, HOUR*2, MINU*2, SECO*2
0023  
0024 C...Data on months, logo, titles, and references.
0025       DATA MONTH/'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep',
0026      &'Oct','Nov','Dec'/
0027       DATA (LOGO(J),J=1,19)/
0028      &'            *......*            ',
0029      &'       *:::!!:::::::::::*       ',
0030      &'    *::::::!!::::::::::::::*    ',
0031      &'  *::::::::!!::::::::::::::::*  ',
0032      &' *:::::::::!!:::::::::::::::::* ',
0033      &' *:::::::::!!:::::::::::::::::* ',
0034      &'  *::::::::!!::::::::::::::::*! ',
0035      &'    *::::::!!::::::::::::::* !! ',
0036      &'    !! *:::!!:::::::::::*    !! ',
0037      &'    !!     !* -><- *         !! ',
0038      &'    !!     !!                !! ',
0039      &'    !!     !!                !! ',
0040      &'    !!                       !! ',
0041      &'    !!        lh             !! ',
0042      &'    !!                       !! ',
0043      &'    !!                 hh    !! ',
0044      &'    !!    ll                 !! ',
0045      &'    !!                       !! ',
0046      &'    !!                          '/
0047       DATA (LOGO(J),J=20,38)/
0048      &'Welcome to the Lund Monte Carlo!',
0049      &'                                ',
0050      &'PPP  Y   Y TTTTT H   H III   A  ',
0051      &'P  P  Y Y    T   H   H  I   A A ',
0052      &'PPP    Y     T   HHHHH  I  AAAAA',
0053      &'P      Y     T   H   H  I  A   A',
0054      &'P      Y     T   H   H III A   A',
0055      &'                                ',
0056      &'This is PYTHIA version x.xxx    ',
0057      &'Last date of change: xx xxx 200x',
0058      &'                                ',
0059      &'Now is xx xxx 200x at xx:xx:xx  ',
0060      &'                                ',
0061      &'Disclaimer: this program comes  ',
0062      &'without any guarantees. Beware  ',
0063      &'of errors and use common sense  ',
0064      &'when interpreting results.      ',
0065      &'                                ',
0066      &'Copyright T. Sjostrand (2007)   '/
0067       DATA (REFER(J),J=1,14)/
0068      &'An archive of program versions and d',
0069      &'ocumentation is found on the web:   ',
0070      &'http://www.thep.lu.se/~torbjorn/Pyth',
0071      &'ia.html                             ',
0072      &'                                    ',
0073      &'                                    ',
0074      &'When you cite this program, the offi',
0075      &'cial reference is to the 6.4 manual:',
0076      &'T. Sjostrand, S. Mrenna and P. Skand',
0077      &'s, JHEP05 (2006) 026                ',
0078      &'(LU TP 06-13, FERMILAB-PUB-06-052-CD',
0079      &'-T) [hep-ph/0603175].               ',
0080      &'                                    ',
0081      &'                                    '/
0082       DATA (REFER(J),J=15,32)/
0083      &'Also remember that the program, to a',
0084      &' large extent, represents original  ',
0085      &'physics research. Other publications',
0086      &' of special relevance to your       ',
0087      &'studies may therefore deserve separa',
0088      &'te mention.                         ',
0089      &'                                    ',
0090      &'                                    ',
0091      &'Main author: Torbjorn Sjostrand; CER',
0092      &'N/PH, CH-1211 Geneva, Switzerland,  ',
0093      &'  and Department of Theoretical Phys',
0094      &'ics, Lund University, Lund, Sweden; ',
0095      &'  phone: + 41 - 22 - 767 82 27; e-ma',
0096      &'il: torbjorn@thep.lu.se             ',
0097      &'Author: Stephen Mrenna; Computing Di',
0098      &'vision, GDS Group,                  ',
0099      &'  Fermi National Accelerator Laborat',
0100      &'ory, MS 234, Batavia, IL 60510, USA;'/
0101       DATA (REFER(J),J=33,2*IREFER)/
0102      &'  phone: + 1 - 630 - 840 - 2556; e-m',
0103      &'ail: mrenna@fnal.gov                ',
0104      &'Author: Peter Skands; Theoretical Ph',
0105      &'ysics Department,                   ',
0106      &'  Fermi National Accelerator Laborat',
0107      &'ory, MS 106, Batavia, IL 60510, USA;',
0108      &'  and CERN/PH, CH-1211 Geneva, Switz',
0109      &'erland;                             ',
0110      &'  phone: + 41 - 22 - 767 24 59; e-ma',
0111      &'il: skands@fnal.gov                 '/
0112  
0113 C...Check that PYDATA linked.
0114       IF(MSTP(183)/10.NE.199.AND.MSTP(183)/10.NE.200) THEN
0115         WRITE(*,'(1X,A)')
0116      &  'Error: PYDATA has not been linked.'
0117         WRITE(*,'(1X,A)') 'Execution stopped!'
0118         CALL PYSTOP(8)
0119  
0120 C...Write current version number and current date+time.
0121       ELSE
0122         WRITE(VERS,'(I1)') MSTP(181)
0123         LOGO(28)(24:24)=VERS
0124         WRITE(SUBV,'(I3)') MSTP(182)
0125         LOGO(28)(26:28)=SUBV
0126         IF(MSTP(182).LT.100) LOGO(28)(26:26)='0'
0127         WRITE(DATE,'(I2)') MSTP(185)
0128         LOGO(29)(22:23)=DATE
0129         LOGO(29)(25:27)=MONTH(MSTP(184))
0130         WRITE(YEAR,'(I4)') MSTP(183)
0131         LOGO(29)(29:32)=YEAR
0132         CALL PYTIME(IDATI)
0133         IF(IDATI(1).LE.0) THEN
0134           LOGO(31)='                                '
0135         ELSE
0136           WRITE(DATE,'(I2)') IDATI(3)
0137           LOGO(31)(8:9)=DATE
0138           LOGO(31)(11:13)=MONTH(MAX(1,MIN(12,IDATI(2))))
0139           WRITE(YEAR,'(I4)') IDATI(1)
0140           LOGO(31)(15:18)=YEAR
0141           WRITE(HOUR,'(I2)') IDATI(4)
0142           LOGO(31)(23:24)=HOUR
0143           WRITE(MINU,'(I2)') IDATI(5)
0144           LOGO(31)(26:27)=MINU
0145           IF(IDATI(5).LT.10) LOGO(31)(26:26)='0'
0146           WRITE(SECO,'(I2)') IDATI(6)
0147           LOGO(31)(29:30)=SECO
0148           IF(IDATI(6).LT.10) LOGO(31)(29:29)='0'
0149         ENDIF
0150       ENDIF
0151  
0152 C...Loop over lines in header. Define page feed and side borders.
0153       DO 100 ILIN=1,29+IREFER
0154         LINE=' '
0155         IF(ILIN.EQ.1) THEN
0156           LINE(1:1)='1'
0157         ELSE
0158           LINE(2:3)='**'
0159           LINE(78:79)='**'
0160         ENDIF
0161  
0162 C...Separator lines and logos.
0163         IF(ILIN.EQ.2.OR.ILIN.EQ.3.OR.ILIN.GE.28+IREFER) THEN
0164           LINE(4:77)='***********************************************'//
0165      &    '***************************'
0166         ELSEIF(ILIN.GE.6.AND.ILIN.LE.24) THEN
0167           LINE(6:37)=LOGO(ILIN-5)
0168           LINE(44:75)=LOGO(ILIN+14)
0169         ELSEIF(ILIN.GE.26.AND.ILIN.LE.25+IREFER) THEN
0170           LINE(5:40)=REFER(2*ILIN-51)
0171           LINE(41:76)=REFER(2*ILIN-50)
0172         ENDIF
0173  
0174 C...Write lines to appropriate unit.
0175         WRITE(MSTU(11),'(A79)') LINE
0176   100 CONTINUE
0177  
0178       RETURN
0179       END