ADAS Subroutine ceparm
SUBROUTINE CEPARM ( NDENR ,
& LPARMS ,
& NENIN , ENIN , NENOUT , ENOUT ,
& ALFIN , XLCIN , PL2IN , PL3IN , LFMIN ,
& ALFOUT , XLCOUT , PL2OUT , PL3OUT , LFMOUT
& )
C-----------------------------------------------------------------------
C ********************** FORTRAN77 SUBROUTINE: CEPARM *****************
C VERSION: 1.0
C
C PURPOSE: CONVERTS ALPHA, PL2, PL3 AND LFORM CHARGE EXCHANGE
C PARAMETER VALUES AT INPUT ENERGIES TO VALUES AT OUTPUT
C ENERGIES
C
C CALLING PROGRAM: ADAS314
C SUBROUTINE:
C INPUT : (I*4) NDENR = MAX. NUMBER OF ENERGIES
C ALLOWED IN CROSS-SECTION FILE
C OR TEMPERATURES IN THERMAL
C AVERAGED RATE COEFFT. OUTPUT FILE.
C INPUT : (I*4) LPARMS = .TRUE. => INPUT DATA HAS L-FIT PARAMETERS
C .FALSE. => INPUT DATA HAS L-FIT PARAMETERS
C INPUT : (I*4) NENIN = NUMBER OF ENERGIES IN INPUT DATA SET
C INPUT : (R*8) ENIN() = ENERGIES (EV/AMU) IN INPUT DATA SET
C INPUT : (I*4) NENOUT = NUMBER OF ENERGIES FOR OUTPUT DATA SET
C INPUT : (R*8) ENOUT() = TEMPERATURES (EV/AMU) FOR OUTPUT DATA SET
C INPUT : (R*8) ALFIN() = ALPHA PARAMETER IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C INPUT : (R*8) XLCIN() = NON-INTEGER L-CUT-OFF PARAMETER
C 1ST.DIM: ENERGY INDEX
C INPUT : (R*8) PL2IN(,) = P2 L-FIT PARAMETER IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C INPUT : (R*8) PL3IN(,) = P3 L-FIT PARAMETER IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C INPUT : (I*4) LFMIN(,) = L-FIT FORM TYPE INDEX IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C OUTPUT: (R*8) ALFOUT() = ALPHA PARAMETER IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C OUTPUT: (R*8) XLCOUT() = NON-INTEGER L-CUT-OFF PARAMETER
C 1ST.DIM: ENERGY INDEX
C OUTPUT: (R*8) PL2OUT() = P2 L-FIT PARAMETER IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C OUTPUT: (R*8) PL3OUT() = P3 L-FIT PARAMETER IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C OUTPUT: (I*4) LFMOUT() = L-FIT FORM TYPE INDEX IN INPUT DATA SET
C 1ST.DIM: ENERGY INDEX
C (L*4) LSETX = .TRUE. => SPLINE PRESET FOR THESE KNOTS
C .FLSE. => SPLINE NOT SET FOR THESE KNOTS
C (L*4) LPASS = .TRUE. => DO NOT CONVERT INTO LOG10 FOR
C ENERGIES AND X-SECTS. FOR SPLINE
C .FLSE. => CONVERT INTO LOG10 FOR
C ENERGIES AND X-SECTS. FOR SPLINE
C (I*4) IOPT = SPLINE END POINT CURVATURE/GRADIENT OPTION
C 1 => DDY1 = 0, DDYN = 0
C 4 => DY1 = 0 , DDYN = 0
C (R*8) CMSAMU = PARAMETER = CONVERSION FACTOR FOR ENERGY
C (AMU) TO VELOCITY (CM S-1)
C (I*4) I = GENERAL INDEX
C (I*4) IT = GENERAL INDEX
C (R*8) XIN() = INTERNAL SPLINE INDEPENDENT VARIABLE
C (R*8) YIN() = INTERNAL SPLINE DEPENDENT VARIABLE
C (R*8) VIN() = INTERNAL VECTOR
C (R*8) DY() = DERIVATIVES AT SPLINE KNOTS
C (R*8) XOUT() = INTERNAL OUTPUT INDEPENDENT VARIABLE
C (R*8) YOUT() = INTERNAL OUTPUT DEPENDENT VARIABLE
C (L*4) LINTRP() = .TRUE. => POINT INTERPOLATED
C = .FALSE. => POINT EXTRAPOLATED
C ROUTINES:
C ROUTINE SOURCE BRIEF DESCRIPTION
C -------------------------------------------------------------
C XXSPLE ADAS INTERPOLATES USING CUBIC SPLINES
C R8FUN1 ADAS EXTERNAL FUNCTION FOR XXSPLE
C AUTHOR: H. P. SUMMERS, UNIVERSITY OF STRATHCLYDE
C JA8.08
C TEL. 0141-553-4196
C DATE: 13/11/95
C UPDATE: 27/08/97 HP SUMMERS - CHANGED NAME FROM CCPARM TO CDPARM
C
C VERSION: 1.1 DATE: 01-12-98
C MODIFIED: RICHARD MARTIN
C - PUT UNDER SCCS CONTROL
C
C VERSION: 1.2 DATE: 17-05-07
C MODIFIED: Allan Whiteford
C - Updated comments as part of subroutine documentation
C procedure.
C
C-----------------------------------------------------------------------
C--------------------------------------------------------------------
INTEGER LFMIN(NDENR), LFMOUT(NDENR)
INTEGER NDENR, NENIN, NENOUT
LOGICAL LPARMS
REAL*8 ALFIN(NDENR), ALFOUT(NDENR)
REAL*8 ENIN(NDENR), ENOUT(NDENR)
REAL*8 PL2IN(NDENR), PL2OUT(NDENR)
REAL*8 PL3IN(NDENR), PL3OUT(NDENR)
REAL*8 XLCIN(NDENR), XLCOUT(NDENR)