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)