| 
            Last change
 on this file since 2774 was             2403, checked in by cmv, 22 years ago           | 
        
        
          
            
Creation du module de code source de MINUIT (CERNLIB) extrait par CMV 
 
cmv 11/06/2003 
 
 
 
           | 
        
        
          | 
            File size:
            1.3 KB
           | 
        
      
      
| Line |   | 
|---|
| 1 | *
 | 
|---|
| 2 | * $Id: mnpint.F,v 1.1.1.1 2003-06-11 14:18:28 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 MNPINT(PEXTI,I,PINTI)
 | 
|---|
| 11 | #include "minuit/d506dp.inc"
 | 
|---|
| 12 | CC        Calculates the internal parameter value PINTI corresponding
 | 
|---|
| 13 | CC        to the external value PEXTI for parameter I.
 | 
|---|
| 14 | CC
 | 
|---|
| 15 | #include "minuit/d506cm.inc"
 | 
|---|
| 16 |       CHARACTER CHBUFI*4, CHBUF2*30
 | 
|---|
| 17 |       PINTI = PEXTI
 | 
|---|
| 18 |       IGO = NVARL(I)
 | 
|---|
| 19 |       IF (IGO .EQ. 4)  THEN
 | 
|---|
| 20 | C--                          there are two limits
 | 
|---|
| 21 |         ALIMI = ALIM(I)
 | 
|---|
| 22 |         BLIMI = BLIM(I)
 | 
|---|
| 23 |         YY=2.0*(PEXTI-ALIMI)/(BLIMI-ALIMI) - 1.0
 | 
|---|
| 24 |         YY2 = YY**2
 | 
|---|
| 25 |         IF (YY2 .GE. (1.0- EPSMA2))  THEN
 | 
|---|
| 26 |            IF (YY .LT. 0.) THEN
 | 
|---|
| 27 |                A = VLIMLO
 | 
|---|
| 28 |                CHBUF2 = ' IS AT ITS LOWER ALLOWED LIMIT.'
 | 
|---|
| 29 |            ELSE
 | 
|---|
| 30 |                A = VLIMHI
 | 
|---|
| 31 |                CHBUF2 = ' IS AT ITS UPPER ALLOWED LIMIT.'
 | 
|---|
| 32 |            ENDIF
 | 
|---|
| 33 |            PINTI = A
 | 
|---|
| 34 |            PEXTI = ALIMI + 0.5* (BLIMI-ALIMI) *(SIN(A) +1.0)
 | 
|---|
| 35 |            LIMSET = .TRUE.
 | 
|---|
| 36 |            WRITE (CHBUFI,'(I4)') I
 | 
|---|
| 37 |            IF (YY2 .GT. 1.0) CHBUF2 = ' BROUGHT BACK INSIDE LIMITS.'
 | 
|---|
| 38 |            CALL MNWARN('W',CFROM,'VARIABLE'//CHBUFI//CHBUF2)
 | 
|---|
| 39 |          ELSE
 | 
|---|
| 40 |            PINTI = ASIN(YY)
 | 
|---|
| 41 |          ENDIF
 | 
|---|
| 42 |       ENDIF
 | 
|---|
| 43 |       RETURN
 | 
|---|
| 44 |       END
 | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.