| [2403] | 1 | *
 | 
|---|
 | 2 | * $Id: mnpout.F,v 1.1.1.1 2003-06-11 14:18:29 cmv Exp $
 | 
|---|
 | 3 | *
 | 
|---|
 | 4 | * $Log: not supported by cvs2svn $
 | 
|---|
 | 5 | * Revision 1.1.1.1  1996/03/07 14:31:31  mclareni
 | 
|---|
 | 6 | * Minuit
 | 
|---|
 | 7 | *
 | 
|---|
 | 8 | *
 | 
|---|
 | 9 | #include "minuit/pilot.h"
 | 
|---|
 | 10 |       SUBROUTINE MNPOUT(IUEXT,CHNAM,VAL,ERR,XLOLIM,XUPLIM,IUINT)
 | 
|---|
 | 11 | #include "minuit/d506dp.inc"
 | 
|---|
 | 12 | CC     User-called
 | 
|---|
 | 13 | CC   Provides the user with information concerning the current status
 | 
|---|
 | 14 | CC          of parameter number IUEXT. Namely, it returns:
 | 
|---|
 | 15 | CC        CHNAM: the name of the parameter
 | 
|---|
 | 16 | CC        VAL: the current (external) value of the parameter
 | 
|---|
 | 17 | CC        ERR: the current estimate of the parameter uncertainty
 | 
|---|
 | 18 | CC        XLOLIM: the lower bound (or zero if no limits)
 | 
|---|
 | 19 | CC        XUPLIM: the upper bound (or zero if no limits)
 | 
|---|
 | 20 | CC        IUINT: the internal parameter number (or zero if not variable,
 | 
|---|
 | 21 | CC           or negative if undefined).
 | 
|---|
 | 22 | CC  Note also:  If IUEXT is negative, then it is -internal parameter
 | 
|---|
 | 23 | CC           number, and IUINT is returned as the EXTERNAL number.
 | 
|---|
 | 24 | CC     Except for IUINT, this is exactly the inverse of MNPARM
 | 
|---|
 | 25 | CC
 | 
|---|
 | 26 | #include "minuit/d506cm.inc"
 | 
|---|
 | 27 |       CHARACTER*(*) CHNAM
 | 
|---|
 | 28 |       XLOLIM = 0.
 | 
|---|
 | 29 |       XUPLIM = 0.
 | 
|---|
 | 30 |       ERR = 0.
 | 
|---|
 | 31 |       IF (IUEXT .EQ. 0)  GO TO 100
 | 
|---|
 | 32 |       IF (IUEXT .LT. 0)  THEN
 | 
|---|
 | 33 | C                   internal parameter number specified
 | 
|---|
 | 34 |          IINT = -IUEXT
 | 
|---|
 | 35 |          IF (IINT .GT. NPAR) GO TO 100
 | 
|---|
 | 36 |          IEXT = NEXOFI(IINT)
 | 
|---|
 | 37 |          IUINT = IEXT
 | 
|---|
 | 38 |       ELSE
 | 
|---|
 | 39 | C                    external parameter number specified
 | 
|---|
 | 40 |          IEXT = IUEXT
 | 
|---|
 | 41 |          IF (IEXT .EQ. 0)   GO TO 100
 | 
|---|
 | 42 |          IF (IEXT .GT. NU)  GO TO 100
 | 
|---|
 | 43 |          IINT = NIOFEX(IEXT)
 | 
|---|
 | 44 |          IUINT = IINT
 | 
|---|
 | 45 |       ENDIF
 | 
|---|
 | 46 | C                     in both cases
 | 
|---|
 | 47 |          NVL = NVARL(IEXT)
 | 
|---|
 | 48 |          IF (NVL .LT. 0) GO TO 100
 | 
|---|
 | 49 |       CHNAM = CPNAM(IEXT)
 | 
|---|
 | 50 |       VAL = U(IEXT)
 | 
|---|
 | 51 |       IF (IINT .GT. 0)  ERR = WERR(IINT)
 | 
|---|
 | 52 |       IF (NVL .EQ. 4) THEN
 | 
|---|
 | 53 |          XLOLIM = ALIM(IEXT)
 | 
|---|
 | 54 |          XUPLIM = BLIM(IEXT)
 | 
|---|
 | 55 |       ENDIF
 | 
|---|
 | 56 |       RETURN
 | 
|---|
 | 57 | C                parameter is undefined
 | 
|---|
 | 58 |   100 IUINT = -1
 | 
|---|
 | 59 |       CHNAM = 'undefined'
 | 
|---|
 | 60 |       VAL = 0.
 | 
|---|
 | 61 |       RETURN
 | 
|---|
 | 62 |       END
 | 
|---|