ADAS Subroutine ccout0
SUBROUTINE CCOUT0( OFILE , OUNIT , IZ , IECOUNT , INCOUNT , & TEREF , EBRAY , NERAY , XRAY , & IEA , INA , ITREF , & ITCOUNT, & EBREF , NEREF , TERAY , & MAXTE , MAXNE , MAXEB , & ITA , IEREF , INREF , & DATE , TITLE , BMSTOP , BMEMIS , BMDENS , & F1 , NN , AVALUE , NLEVEL , LEVEL , & INFILE ) C----------------------------------------------------------------------- C C ****************** FORTRAN77 SUBROUTINE: CCOUT0 ********************* C C PURPOSE: TO WRITE OUTPUT TO DATA FORMAT ADF21/22 SPECIFICATIONS. C C CALLING PROGRAM: ADAS312 C C SUBROUTINE: C C INPUT : (R*8) TEREF = THE REFERENCE TARGET TEMPERATURE (eV). C INPUT : (R*8) EBREF = THE REFERENCE NEUTRAL BEAM ENERGY C (eV/amu). C INPUT : (R*8) NEREF = THE REFERENCE TARGET ELECTRON DENSITY. C (CM-**3) C INPUT : (R*8) TERAY() = ARRAY CONTAINING THE TARGET TEMPERATURE. C INPUT : (R*8) EBRAY() = ARRAY CONTAINING THE NEUTRAL BEAM C ENERGY ( eV/amu ). C INPUT : (R*8) NERAY() = ARRAY CONTAINING THE TARGET DENSITY. C INPUT : (R*8) XRAY() = ARRAY CONTAINING EITHER THE BEAM STOPPING C OR EMISSION COEFFICIENTS (CM**3/S). C C INPUT : (R*8) IZ = THE EFFECTIVE NUCLEAR CHARGE OF THE C TARGET PLASMA. C INPUT : (I*4) ITCOUNT = THE NUMBER OF TARGET TEMPERATURES. C INPUT : (I*4) IECOUNT = THE NUMBER OF BEAM ENERGIES. C INPUT : (I*4) INCOUNT = THE NUMBER OF TARGET DENSITIES. C INPUT : (I*4) ITA() = ARRAY CONTAINING THE INDEX VALUES C OF THE TEMPERATURE ARRAY TERAY(). C INPUT : (I*4) ITREF = THE INDEX VALUE AT WHICH THE REFERENCE C TEMPERATURE CORRESPONDS TO IN THE ARRAY C TERAY. C INPUT : (I*4) IEA() = ARRAY CONTAINING THE INDEX VALUES C OF THE ENERGY ARRAY EBRAY(). C INPUT : (I*4) IEREF = THE INDEX VALUE AT WHICH THE REFERENCE C ENERGY CORRESPONDS TO IN THE ARRAY C EBRAY(). C INPUT : (I*4) INA() = ARRAY CONTAINING THE INDEX VALUES C OF THE DENSITY ARRAY NERAY(). C INPUT : (I*4) INREF = THE INDEX VALUE AT WHICH THE REFERENCE C DENSITY CORRESPONDS TO IN THE ARRAY C NERAY. C INPUT : (I*4) MAXTE = THE MAXIMUM NUMBER OF TARGET TEMPERATURES. C INPUT : (I*4) MAXNE = THE MAXIMUM NUMBER OF TARGET DENSITIES. C INPUT : (I*4) MAXEB = THE MAXIMUM NUMBER OF BEAM ENERGIES. C INPUT : (I*4) NUM = THE NUMBER OF ELEMENT SYMBOLS CONTAINED C IN THE ARRAY SPEC(). C C C (CHR) OFILE = OUTPUT FILENAME. C (CHR) SPEC() = ARRAY CONTAING THE CHEMICAL SYMBOLS C OF THE ELEMENTS UP TO THE FIRST C PERIOD. C (CHR) HEADER = STRING CONTAINING THE ADAS VERSION, C THE EXECUTING PROGRAM AND DATE. C C C ROUTINES: C ROUTINE SOURCE BRIEF DESCRIPTION C ------------------------------------------------------------ C I4UNIT ADAS FETCH UNIT NUMBER FOR OUTPUT OF MESSAGES C CCFIND ADAS ??? C C C C AUTHOR: HARVEY ANDERSON, UNIVERSITY OF STRATHCLYDE/JET C JA8.08 C TEL. 0141-553-4196 C C C DATE: 16/05/97 C C UNIX-IDL PORT: H.P.SUMMERS C C VERSION: 1.1 DATE: 10-07-97 C MODIFIED: HUGH SUMMERS, UNIVERSITY OF STRATHCLYDE C - PUT UNDER S.C.C.S. CONTROL C C VERSION: 1.2 DATE: 28-07-97 C MODIFIED: HARVEY ANDERSON, UNIVERSITY OF STRATHCLYDE C - INCLUDED PROGRAM NAME IN THE OUTPUT FILE. C - ADDED ADDITIONAL INFORMATION AT THE BOTTOM OF C THE ADF21/22 TYPE FILE. C C VERSION: 1.3 RICHARD MARTIN DATE: 1-11-97 C - CORRECTED SYNTAX ERROR IN GETENV COMMAND. C C VERSION: 1.4 HARVEY ANDERSON DATE: 17-03-99 C - ADDED EXTRA OUTPUT OPTION. C C VERSION: 1.5 RICHARD MARTIN DATE: 28-04-99 C - ADDED MISSING COMMA IN FORMAT STATEMENT 2013. C C VERSION: 1.6 HARVEY ANDERSON DATE: 08/09/99 C - EXTENDED THE ARRAY CONTAINING THE CHEMICAL ELEMENT C SYMBOL TO INCLUDE ALL SPECIES UP TO ZN. C C VERSION: 1.7 COSTANZA MAGGI DATE: 05-02-03 C - EXTENDED TO ALLOW WRITING BMP FILES C C VERSION: 1.8 Martin O'Mullane DATE: 06-02-2003 C Improve information at bottom of output file. C C----------------------------------------------------------------------- CHARACTER*24 DATE CHARACTER*80 INFILE, OFILE CHARACTER*24 TITLE INTEGER BMDENS, BMEMIS, BMSTOP INTEGER IEA(MAXEB), IECOUNT, IEREF INTEGER INA(MAXNE), INCOUNT, INREF INTEGER ITA(MAXTE), ITCOUNT, ITREF, IZ INTEGER LEVEL, MAXEB, MAXNE, MAXTE INTEGER NLEVEL, OUNIT REAL*8 AVALUE, EBRAY(MAXNE), EBREF REAL*8 F1(MAXEB,MAXNE,MAXTE,NLEVEL) REAL*8 NERAY(MAXNE), NEREF REAL*8 NN(MAXEB,MAXNE,MAXTE,NLEVEL) REAL*8 TERAY(MAXTE), TEREF REAL*8 XRAY(MAXEB,MAXNE,MAXTE)