23 IMPLICIT DOUBLE PRECISION (
a-
h,
o-
z)
41 2/mn7ext/ u(mne) ,alim(mne) ,blim(mne)
42 3/mn7err/ erp(mni) ,ern(mni) ,werr(mni) ,globcc(mni)
43 4/mn7inx/ nvarl(mne) ,niofex(mne),nexofi(mni)
44 5/mn7int/
x(mni) ,xt(mni) ,dirin(mni)
45 6/mn7fx2/
xs(mni) ,xts(mni) ,dirins(mni)
46 7/mn7der/ grd(mni) ,g2(mni) ,gstep(mni) ,gin(mne) ,dgrd(mni)
47 8/mn7fx3/ grds(mni) ,g2s(mni) ,gsteps(mni)
48 9/mn7fx1/ ipfix(mni) ,npfix
49 a/mn7var/ vhmat(mnihl)
50 b/mn7vat/ vthmat(mnihl)
51 c/mn7sim/
p(mni,mni+1),pstar(mni),pstst(mni) ,pbar(mni),prho(mni)
53 parameter(maxdbg=10, maxstk=10, maxcwd=20,
maxp=30, maxcpt=101)
56 d/mn7npr/ maxint ,npar ,maxext ,nu
57 e/mn7iou/ isysrd ,isyswr ,isyssa ,npagwd ,npagln ,newpag
58 e/mn7io2/ istkrd(maxstk) ,nstkrd ,istkwr(maxstk) ,nstkwr
59 f/mn7tit/ cfrom ,cstatu ,ctitl ,cword ,cundef ,cvrsn ,covmes
60 g/mn7flg/ isw(7) ,idbg(0:maxdbg) ,nblock ,icomnd
61 h/mn7min/ amin ,
up ,edm ,fval3 ,epsi ,apsi ,dcovar
62 i/mn7cnv/ nfcn ,nfcnmx ,nfcnlc ,nfcnfr ,itaur,istrat,nwrmes(2)
64 k/mn7log/ lwarn ,lrepor ,limset ,lnolim ,lnewmn ,lphead
65 l/mn7cns/ epsmac ,epsma2 ,vlimlo ,vlimhi ,undefi ,bigedm,updflt
66 m/mn7rpt/ xpt(maxcpt) ,ypt(maxcpt)
67 n/mn7cpt/ chpt(maxcpt)
68 o/mn7xcr/ xmidcr ,ymidcr ,xdircr ,ydircr ,ke1cr ,ke2cr
69 CHARACTER ctitl*50, cword*(maxcwd), cundef*10, cfrom*8,
70 + cvrsn*6, covmes(0:3)*22, cstatu*10, chpt*1
71 LOGICAL lwarn, lrepor, limset, lnolim, lnewmn, lphead
118 DATA cwhyxt/
'FOR UNKNOWN REASONS '/
119 DATA jsysrd,jsyswr,jsyssa/5,6,7/
121 WRITE (jsyswr,
'(1X,75(1H*))')
122 CALL mninit (jsysrd,jsyswr,jsyssa)
125 WRITE (isyswr,
'(1X,75(1H*))')
127 WRITE (isyswr,
'(26X,A,I4)')
'MINUIT DATA BLOCK NO.',nblock
128 WRITE (isyswr,
'(1X,75(1H*))')
132 CALL mnread(fcn,1,iflgut,futil)
133 IF (iflgut .EQ. 2)
GO TO 500
134 IF (iflgut .EQ. 3)
GO TO 600
136 CALL mnread(fcn,2,iflgut,futil)
137 IF (iflgut .EQ. 2)
GO TO 500
138 IF (iflgut .EQ. 3)
GO TO 600
139 IF (iflgut .EQ. 4)
GO TO 700
141 WRITE (isyswr,
'(/A,A)')
' MINUIT: FIRST CALL TO USER FUNCTION,',
146 CALL fcn(nparx,gin,fzero,u,1,futil)
148 CALL fcn(nparx,gin,
first,u,4,futil)
150 IF (fzero.EQ.undefi .AND.
first.EQ.undefi)
THEN 151 cwhyxt =
'BY ERROR IN USER FUNCTION. ' 152 WRITE (isyswr,
'(/A,A/)')
' USER HAS NOT CALCULATED FUNCTION',
153 +
' VALUE WHEN IFLAG=1 OR 4' 157 IF (
first .EQ. undefi) amin=fzero
160 IF (
first .EQ. fzero)
GO TO 300
162 CALL fcn(nparx,gin,fnew,u,4,futil)
163 IF (fnew .NE. amin)
WRITE (isyswr,280) amin, fnew
164 280
FORMAT (/
' MINUIT WARNING: PROBABLE ERROR IN USER FUNCTION.'/
165 +
' FOR FIXED VALUES OF PARAMETERS, FCN IS TIME-DEPENDENT'/
166 +
' F =',e22.14,
' FOR FIRST CALL'/
167 +
' F =',e22.14,
' FOR SECOND CALL.'/)
169 300 fval3 = 2.0*amin+1.0
171 CALL mnread(fcn,3,iflgut,futil)
172 IF (iflgut .EQ. 2)
GO TO 500
173 IF (iflgut .EQ. 3)
GO TO 600
174 IF (iflgut .EQ. 4)
GO TO 700
175 cwhyxt =
'BY MINUIT COMMAND: '//cword
176 IF (index(cword,
'STOP').GT. 0)
GO TO 800
177 IF (index(cword,
'EXI') .GT. 0)
GO TO 800
178 IF (index(cword,
'RET') .EQ. 0)
GO TO 100
179 cwhyxt =
'AND RETURNS TO USER PROGRAM. ' 180 WRITE (isyswr,
'(A,A)')
' ..........MINUIT TERMINATED ',cwhyxt
184 cwhyxt =
'BY END-OF-DATA ON PRIMARY INPUT FILE. ' 187 cwhyxt =
'BY UNRECOVERABLE READ ERROR ON INPUT. ' 190 cwhyxt =
': FATAL ERROR IN PARAMETER DEFINITIONS. ' 191 800
WRITE (isyswr,
'(A,A)')
' ..........MINUIT TERMINATED ',cwhyxt
195 entry mintio(i1,i2,i3)
integer npitbl real *nx parameter(n=101, npitbl=46, nx=n-1) real *8 uconst
block data include Zlatfit h c fitting region data data data data data d0 data data d0 data data h g *is for param c g data up(2, 1)/7.0d0/
dE dx *! Nuc Int sampling table e
subroutine mnread(FCN, IFLGIN, IFLGUT, FUTIL)
real(4), dimension(:), allocatable, save h
subroutine mnprin(INKODE, FVAL)
! constants thru Cosmos real ! if multiplied to deg radian Torad ! light velocity m sec ! infinty ! kg m2 *Togpcm2 g cm2 ! g cm2 *Tokgpm2 kg m2 ! cm *Tom m ! m *Tocm cm ! g cm3 *Tokgpm3 kg m3 ! kg m3 *Togpcm3 g cm3 ! sec *Tonsec nsec ! Tesla m ! Avogadro *A2deninv ! mfp *n * xs
********************block data cblkHeavy ********************integer j data *HeavyG2symbol p
********************block data cblkHeavy ********************integer j data *HeavyG2symbol *data *HeavyG2code kiron data j
dE dx *! Nuc Int sampling table d
block data include Zlatfit h c fitting region data data data data data d0 data data d0 data data m
dE dx *! Nuc Int sampling table g
subroutine mninit(I1, I2, I3)
! structure defining a particle at production ! Basic idea of what is to be contained in ! the particle structue is that dynamical ones should be included those derivable from the particle code ! is not included ******************************************************type fmom momentum sequence union map real e endmap map real * x
dE dx *! Nuc Int sampling table f
dE dx *! Nuc Int sampling table c