ADAS Subroutine cddata
SUBROUTINE CDDATA( TERAY , NERAY , EBRAY ,IZ , & INFILE , INUNIT , MAXNE ,MAXTE , & MAXEB , INCOUNT , ITCOUNT ,IECOUNT , & EBREF , TEREF , NEREF ,INA , & IEA , ITA , GCRC1 ,GCRC2 , & GCRC3 , GCRC4 , GCRC5 ,GCRC6 , & GCRC7 , GCRC8 , GCRC9 ,NPQN , & LTPQN , NSPIN , BNL ,NNBNL , & FI , FII , FIII , CHOICE ) C----------------------------------------------------------------------- C C ****************** FORTRAN77 SUBROUTINE: CDDATA ********************* C C PURPOSE: TO FETCH DATA FROM BUNDLE-NL POPULATION C STRUCTURE FILES OF TYPE ADF26. C C CALLING ROUTINE : ADAS312 C C INPUT : C C (CHR) INFILE : FILENAME FOR WHICH DATA HAS C TO BE EXTRACTED FROM. C (I*4) INUNIT : FILENAME STREAM. C (I*4) MAXNE : MAXIUM NUMBER OF DENSITIES C (I*4) MAXEB : MAXIMUM NUMBER OF BEAM C ENERGIES. C (I*4) MAXTE : MAXIMUM NUMBER OF TARGET C TEMPERATURES C (I*4) NPQN : PRINCIPAL QUANTUM NUMBER. C (I*4) LTPQN : TOTAL ANGULAR MOMENTUM C QUANTUM NUMBER. C (I*4) CHOICE : SWITCH TO SELECT COUPLING C OR EMISSION COEFFICIENTS. C CHOICE = 1 EXTRACT COUPLING C COEFFICIENTS. C CHOICE = 2 EXTRACT EMISSION C COEFFICIENTS. C C OUTPUT : C C (R*8) TERAY() : TARGET TEMPERATURES (eV). C (R*8) NERAY() : ELECTRON DENSITY ( cm-3). C (R*8) EBRAY() : NEUTRAL BEAM ENERGY (eV/amu). C (R*8) TEREF : REFERENCE TEMPERATURE ( eV ). C (R*8) NEREF : REFERENCE DENSITY ( cm-3). C (R*8) GCRC1() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC2() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC3() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC4() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC5() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC6() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC7() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC8() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) GCRC9() : CROSS COUPLING COEFF.(cm-3s-1) C (R*8) FI() : CONTRIBUTION TO POPULATING THE C SINGLETS RELATIVE TO THE C GROUND STATE DUE TO EXCITATION C (R*8) FII() : CONTRIBUTION TO POPULATING THE C SINGLETS RELATIVE TO THE 2(1)S C METASTABLE. C (R*8) FIII() : CONTRIBUTION TO POPULATING THE C TRIPLETS RELATIVE TO THE 2(3)S C METASTABLE. C (R*8) BNL() : SAHA-BOLTZMANN B-FACTOR C (R*8) NNBNL() : THE PRODUCT OF THE RELATIVE C POPULATION OF A PARTICULAR C LEVEL TO THE FIRST IONISATION C STAGE AND THE RECIPROCAL OF C THE SAHA-BOLTZMANN B-FACTOR. C C (I*4) INA() : REFERENCE ARRAY FOR DENSITY. C (I*4) IEA() : REFERENCE ARRAY FOR ENERGY. C (I*4) ITA() : REFERENCE ARRAY FOR TEMPERATURE. C (I*4) NSPIN : NUMBER OF SPIN SYSTEMS. C (I*4) INCOUNT : NUMBER OF TARGET DENSITIES. C (I*4) IECOUNT : NUMBER OF BEAM ENERGIES. C (I*4) ITCOUNT : NUMBER OF TEMPERATURES. C (I*4) IZ : NUCLEAR CHARGE. C C C ADDITIONAL ROUTINES: C C ROUTINE SOURCE BRIEF DESCRIPTION C ------------------------------------------------------------ C CCFIND ADAS312 ISOLATE DATA IN ADF26 TYPE FILE. C C C C CONTACT : HARVEY ANDERSON C UNIVERSITY OF STRATHCLYDE C ANDERSON@PHYS.STRATH.AC.UK C C DATE : 23/4/98 ( FIRST VERSION ) C C C VERSION: 1.1 DATE: 16-03-99 C MODIFIED: RICHARD MARTIN C - PUT UNDER SCCS CONTROL. C C VERSION: 1.2 DATE: 13-10-99 C MODIFIED: Martin O'Mullane C - With certain compilers array dimension variables C must be declared before they are used. Move the C integer declerations before the array definitions. C C----------------------------------------------------------------------- CHARACTER*80 INFILE INTEGER CHOICE, IEA(MAXNE), IECOUNT INTEGER INA(MAXNE), INCOUNT, INUNIT INTEGER ITA(MAXTE), ITCOUNT, IZ, LTPQN INTEGER MAXEB, MAXNE, MAXTE, NPQN INTEGER NSPIN REAL*8 BNL(MAXEB,MAXNE,MAXTE,NSPIN+1) REAL*8 EBRAY(MAXEB), EBREF REAL*8 FI(MAXEB,MAXNE,MAXTE,NSPIN+1) REAL*8 FII(MAXEB,MAXNE,MAXTE,NSPIN+1) REAL*8 FIII(MAXEB,MAXNE,MAXTE,NSPIN+1) REAL*8 GCRC1(MAXEB,MAXNE,MAXTE) REAL*8 GCRC2(MAXEB,MAXNE,MAXTE) REAL*8 GCRC3(MAXEB,MAXNE,MAXTE) REAL*8 GCRC4(MAXEB,MAXNE,MAXTE) REAL*8 GCRC5(MAXEB,MAXNE,MAXTE) REAL*8 GCRC6(MAXEB,MAXNE,MAXTE) REAL*8 GCRC7(MAXEB,MAXNE,MAXTE) REAL*8 GCRC8(MAXEB,MAXNE,MAXTE) REAL*8 GCRC9(MAXEB,MAXNE,MAXTE), NERAY(MAXNE) REAL*8 NEREF, NNBNL(MAXEB,MAXNE,MAXTE,NSPIN+1) REAL*8 TERAY(MAXTE), TEREF