Search Site | Contact Details | FAQ

ADAS Subroutine ceevth

       SUBROUTINE CEEVTH ( NDENR  ,
     &                     LSETX  , LPASS  ,
     &                     AMDON  , AMREC  , CATYP  , DREN   , 
     &                     ILTYP  , IEXTYP ,  
     &                     NENIN  , ENIN   , NENOUT , ENOUT  ,
     &                     SGIN   , RCOUT
     &                   )
C-----------------------------------------------------------------------
c
C  ********************** FORTRAN77 SUBROUTINE: CEEVTH *****************
C
C  VERSION: 1.0  
C
C  PURPOSE:  OBTAINS RATE COEFFICIENTS FOR DONOR/RECEIVER CHARGE
C            EXCHANGE COLLISIONS FOR CASES OF
C            MONOENERGETIC DONOR/THERMAL RECEIVER, THERMAL
C            DONOR/MONOENERGETIC RECEIVER, THERMAL DONOR/THERMAL
C            RECEIVER (SAME TEMPERATURE) FROM CROSS-SECTION TABULATIONS.
C
C            A MONO-ENERGETIC CASE IS ALLOWED WHICH CONVERTS INPUT
C            CROSS-SECTIONS TABULATED AT A SET OF ENERGIES/AMU TO
C            OUTPUT CROSS-SECTIONS TABULATED A DIFFERENT SET OF
C            ENERGIES/AMU.
C
C  CALLING PROGRAM:  ADAS314
C
C
C  SUBROUTINE:
C
C  INPUT :  (I*4)  NDENR    = MAX. NUMBER OF ENERGIES/TEMPERATURES
C                             IN INPUT/OUTPUT ENERGY/TEMPERATURE
C                             VECTORS
C  INPUT :  (L*4)  LSETX    = .TRUE. => SPLINE PRESET FOR THESE KNOTS
C                             .FLSE. => SPLINE NOT SET FOR THESE KNOTS
C  INPUT :  (L*4)  LPASS    = .TRUE. => DO NOT CONVERT INTO LOG10 FOR
C                                       ENERGIES AND X-SECTS. FOR SPLINE
C                             .FALSE.=> CONVERT INTO LOG10 FOR
C                                       ENERGIES AND X-SECTS. FOR SPLINE
C  INPUT :  (R*8)  AMDON    = DONOR MASS NUMBER
C  INPUT :  (R*8)  AMREC    = RECEIVER MASS NUMBER
C  INPUT :  (C2)   CATYP    = 'TT' THERMAL/THERMAL (EQUAL TEMPERATURES
C                                  FOR DONOR AND RECEIVER ONLY)
C                             'TR' THERMAL RECEIVER, MONOENERGETIC DONOR
C                             'TD' THERMAL DONOR, MONOENERGETIC RECEIVER
C                             'ME' SPECIAL MONOENERGETIC CASE
C  INPUT : (R*8)   DREN     = DONOR ENERGY    ( 'TR' CASE )
C                             RECEIVER ENERGY ( 'TD' CASE )
C  INPUT : (I*4)   ILTYP    = TYPE FOR LOW AND HIGH ENERGY CROSS-
C                             SECTION EXTRAPOLATION
C                             *** a redundant parameter ***
C                             *** superceeded by IEXTYP ***
C          (I*4)   IEXTYP   = 1 => SET LOWER ENERGIES TO FIRST POINT IN DATA 
C                           = 2 => SET LOWER ENERGIES TO 0.0
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 TEMPERATURES FOR OUTPUT DATA SET
C  INPUT : (R*8)   ENOUT()  = TEMPERATURES (EV) FOR OUTPUT DATA SET FOR
C                             'TT', 'TD', 'TR' CASES.
C                           = ENERGY/AMU FOR OUTPUT DATA SET FOR
C                             'ME' CASE.
C  INPUT : (R*8)   SGIN()   = INPUT X-SECTIONS (CM2) FROM INPUT DATA SET
C                             1ST.DIM: ENERGY INDEX
C  OUTPUT: (R*8)   RCOUT()  = RATE COEFF. (CM3 S-1) IN OUTPUT DATA SET
C                             1ST.DIM: TEMPERATURE INDEX
C          (I*4)   I        = GENERAL INDEX
C          (I*4)   IT       = GENERAL INDEX
C          (I*4)   ITHETA   = GENERAL INDEX
C          (I*4)   IOPT     = SPLINE END POINT CURVATURE/GRADIENT OPTION
C                             1 => DDY1 = 0, DDYN = 0
C                             4 => DY1 = 0 , DDYN = 0
C          (I*4)   IXD      = DONOR GAUSSIAN QUADRATURE INDEX
C          (I*4)   IXR      = RECEIVER GAUSSIAN QUADRATURE INDEX
C          (I*4)   NGS      = GAUSSIAN QUARATURE DIMENSION
C          (I*4)   NTHETA   = NUMBER OF ANGLE VALUES FOR QUADRATURE
C          (I*4)   LTHETA   = NTHETA+1
C          (I*4)   L1       = PARAMETER = 1
C          (R*8)   ETHD     = THERMAL ENERGY OF DONOR       (JOULES)
C          (R*8)   ETHR     = THERMAL ENERGY RECEIVER       (JOULES)
C          (R*8)   HSIMP    = SIMPSON'S RULE STEP INTERVAL
C          (R*8)   THETA    = ANGLE BETWEEN PARTICLE VELOCITIES (RAD)
C          (R*8)   FAC      = GENERAL VARIABLE
C          (R*8)   FLAG     = GENERAL VARIABLE
C          (R*8)   XMDKG    = DONOR MASS    (KG)
C          (R*8)   XMRKG    = RECEIVER MASS (KG)
C          (R*8)   VD       = DONOR SPEED    (M S-1)
C          (R*8)   VR       = RECEIVER SPEED (M S-1)
C          (R*8)   RATE     = EVALUATED RATE COEFFICIENT (CM3 S-1)
C          (R*8)   PART1    = GENERAL VARIABLE
C          (R*8)   PART2    = GENERAL VARIABLE
C          (R*8)   PART3    = GENERAL VARIABLE
C          (R*8)   PART12   = GENERAL VARIABLE
C          (R*8)   PART23   = GENERAL VARIABLE
C          (R*8)   PART123  = GENERAL VARIABLE
C          (R*8)   VREL1    = GENERAL RELATIVE SPEED VARIABLE
C          (R*8)   XSEC1    = GENERAL CROSS-SECTION VARIABLE
C          (R*8)   VAL      = GENERAL VARIABLE
C          (R*8)   XGS()    = GAUSSIAN QUADRATURE NODES
C          (R*8)   WGS()    = GAUSSIAN QUADRATURE WEIGHTS
C          (R*8)   VREL()   = RELATIVE SPEED OF PARTICLES FOR DIFFERENT
C                             ANGLES (CM S-1)
C          (R*8)   XSEC()   = CHARGE EXCHANGE CROSS-SECTIONS FOR
C                             RELATIVE SPEEDS AT DIFFERENT ANGLES (CM2)
C
C
C  ROUTINES:
C          ROUTINE    SOURCE    BRIEF DESCRIPTION
C          -------------------------------------------------------------
C          CESGCX     ADAS      INTERPOLATES CX CROSS-SECTION TABLES
C
C
C  AUTHOR:  H. P. SUMMERS, UNIVERSITY OF STRATHCLYDE
C           JA8.08
C           TEL. 0141-553-4196
C  DATE:    02/11/95
C
C  UPDATE:  09/07/98  Martin O'Mullane 
C           CHANGED NAME FROM CXTHER TO CDEVTH. SIMILAR FUNCTIONALITY
C           BUT IS EXTENDED TO DEAL WITH EXTRA AVERAGING METHODS.
C
C VERSION:	1.1					DATE: 01-12-98
C MODIFIED: RICHARD MARTIN
C		- PUT UNDER SCCS CONTROL
C
C VERSION:	1.2					DATE: 24-03-99
C MODIFIED: MARTIN O'MULLANE
C		- SECOND VERSIONS
C
C VERSION:      1.3                                     DATE: 17-05-07
C MODIFIED: Allan Whiteford
C               - Updated comments as part of subroutine documentation
C                 procedure.
C-----------------------------------------------------------------------
      CHARACTER*2         CATYP
      INTEGER             IEXTYP,      ILTYP,       NDENR,       NENIN
      INTEGER             NENOUT
      LOGICAL             LPASS,       LSETX
      REAL*8              AMDON,       AMREC,       DREN
      REAL*8              ENIN(NDENR), ENOUT(NDENR)
      REAL*8              RCOUT(NDENR),             SGIN(NDENR)
© Copyright 1995-2024 The ADAS Project
Comments and questions to: adas-at-adas.ac.uk