ADAS Subroutine Library adas2xx
- Subroutine adwlpol: Evaluates lam-pole radial matrix elements using distorted waves 
 - Subroutine adwrd2: Calculates square of bound free dipole integral in distorted wave approximation. 
 - Subroutine agiidw: Calculates bound-free g-factors using distorted waves, Burgess-Seaton Peach or hydrogenic approximations 
 - Subroutine aphotdw: Calculate photo integrals using giidw bound-free Gaunt-factors 
 - Subroutine ass: Calculates asymptotic integrals using power series modules  
 - Subroutine ass2: Calculate asymptotic part of integrals over wave functions 
 - Subroutine b1data: To fetch data from input specific z excitation file. (electron impact transitions only). 
 - Subroutine b1rate: To calculate the excitation and de-exciatation rate coeffi- cients for a set of input temperature(kelvin)/ gamma pairs. 
 - Subroutine b1spln: 1) performs cubic spline on log(temperature) versus log(gamma) input data. (`scef' versus `gamma' , nv data pairs) 
 - Subroutine b1tran: To set up selected transition parameters. 
 - Subroutine b2gspc: Subroutine to generate precursors of spline coefficients suitable for both forward and backward interpolation 
 - Subroutine b2nfas: Subroutine to provide a spline interpolate making use of specified asymptotic behaviour 
 - Subroutine b2nfit: Subroutine to perform spline interpolation                            
 - Subroutine b2ngas: Subroutine initialises common arrays required for splining with smooth fitting to an asymptotic form                                  
 - Subroutine b2sort: To sort an array so that xa is in increasing order         
 - Subroutine b2spij3: Subroutine to calculate splines with various end conditions. 
 - Subroutine b3data: To fetch data from input general z excitation file. (electron impact transitions only). 
 - Subroutine b3leve: To evaluate ionisation and level energies for a selected member of an isoelectronic sequence from the general z data 
 - Subroutine b3reac: To interpolate data for a single transition from a general z excitation file to a selected sequence member 
 - Subroutine b4datd: Process  dielectronic data files to prepare dielectronic and auger data for ADAS204 
 - Subroutine b4flnm: To prepare a unix dataset name from a string which may include an ADAS environment variable and comments. 
 - Subroutine b4matv: Matrix inversion with accompanying solution of linear equations    
 - Subroutine b4proj: Subroutine to establish the projected influence of high n-shells in the bundle-n collisional dielectronic model on low n-shells 
 - Subroutine b4spln: Performs cubic spline on log(temperature <ev> ) versus log(scaled ionization rate coefficients). input data for a given ionzing ion combination data-block. 
 - Subroutine b4sszd: To extract and  interpolate  zero-density  ionization  rate- coefficients for given element nuclear charge and data-block for an input set of electron temperatures (ev). 
 - Subroutine b4sumd: To sum Badnell dielectronic rate coefficient data over the representative set to give zero density total and radiated power from satellite lines 
 - Subroutine b5wr12: To output metastable population parameters to the passing file on stream `iunit'. 
 - Subroutine b6ispc: To identify in the ordinary level index the index  for  the upper level of the specific line power transition requested. 
 - Subroutine b6loss: To calculate the direct line power loss for each level and for the specific line power transition given by `istrn'. 
 - Subroutine b6lpwr: To calculate zero density and high n projection line powers, for a given temperature. 
 - Subroutine b6norm: To normalise total/specific line powers for level 1 and total equilibrium line powers to stage total population. 
 - Subroutine b6spcl: To  calculate  specific  line  powers  for  metastables  and specific equilibrium line power. 
 - Subroutine b6totl: To  calculate  total  line  powers for metastables and total equilibrium line powers. 
 - Subroutine b6wr12: To output total line power parameters to the passing file on stream `iunit'. 
 - Subroutine b6wr13: To output specific line power parameters to the passing file on stream `iunit'. 
 - Subroutine b7data: To input data from a contour passing file. Population  data  for diagnostic use. 
 - Subroutine b7datc: Check consistency of adf04 file with contour passing file  data. 
 - Subroutine b7lrat: To calculate the spectrum-line intensity ratio for two composite lines from their individual spectrum line intensities. 
 - Subroutine b8corp: Corrects unphysical low temperature recombination contributions to a pec. 
 - Subroutine b8corr: Corrects unphysical low temperature recombination contributions to a pec. 
 - Subroutine b8cors: There is a low temperature problem in the calculation of the sxb coefficients. Replace the effetive zero values with an exp(e/kt) derived from first good points. 
 - Subroutine b8data: To fetch data from input copase data set, including multiple parents on free-electron and charge exchange on recombination, inclusion of explicit contributions by ionisation. 
 - Subroutine b8getp: To fetch data from expansion file and condensed bundle-n matrix file and combine with collisional-radiative data for in the low level population solution. 
 - Subroutine b8loss: To calculate the direct line power loss for each level and identify the strongest specific line power transitions to each metastable level. 
 - Subroutine b8mcca: To  construct whole rate matrix `cc' for transitions between all energy levels at a fixed temperature  and  given density `dene/denp'. 
 - Subroutine b8norm: To normalise total/specific line powers for level 1 and total equilibrium line powers to stage total population. 
 - Subroutine b8popm: To construct metastable level populations. 
 - Subroutine b8popo: To construct ordinary/non-metastable level populations. 
 - Subroutine b8rcom: To establish recombination rate coefficients  for  a set  of temperatures given by the array `tout()' using cubic splines on  a set of rate  coefficients  covering  the  temperatures given by the array `tin()'. 
 - Subroutine b8scom: To establish ionisation rate coefficients  z --> z+1 for  a  set  of temperatures given by the array `tea()' using cubic  splines on  a set of rate  coefficients  covering  the temperatures given by the array `scef()'. 
 - Subroutine b8setp: To set up parameters in the shared pooled for panel display 
 - Subroutine b8spln: Performs cubic spline on log(temperature and density) versus log(collisional-radiative matrix coefficients) input data 
 - Subroutine b8splt: Performs cubic spline on log(temperature and density) versus log(collisional-radiative matrix coefficients) input data 
 - Subroutine b8stkb: To stack up in  `stv'  the  recombination contribution  for each  non-metastable/ordinary  excited  level  for  a given temperature and density. 
 - Subroutine b8stkd: To stack up in  `vred'  the recombination rate contributions for  each  metastable  level  for  a  given temperature  and density. 
 - Subroutine b8stke: To stack up in  `stv'  the  recombination contribution  for each  non-metastable/ordinary  excited  level  for  a given temperature and density, but adding a three-body recombination part from v3 
 - Subroutine b8stkf: To stack up in  `vred'  the recombination rate contributions for  each  metastable  level  for  a  given temperature  and density and include three-body recombination part 
 - Subroutine b8stvm: To  calculate  and stack up in  `stvm'  the metastable level recombination  coefficients  for  a  given  temperature  and density. 
 - Subroutine b8toth: To calculate total charge exchange driven line power. 
 - Subroutine b8totl: To calculate total/specific line powers for metastables and total/specific equilibrium line powers. 
 - Subroutine b8ttyp: To sort transition arrays into seven transition/recomb types 
 - Subroutine b8winf: Write information section of adf10, adf13 and adf15 files. 
 - Subroutine b8wrmc: To output data to generalised collisional radiative coefficient passing file master.pass final storage is expected to be in master condensed files 
 - Subroutine b8wrps: To output data to pec and sxb passing files. 
 - Subroutine b9data: To fetch data from input copase data set, including multiple parents on free-electron and charge exchange on recombination, inclusion of explicit contributions by ionisation. 
 - Subroutine b9pars: To analyse the tail character string of the first line of a specific ion file into binding wave numbers for different parents and statistical weights for the parents. Modification of b8pars. 
 - Subroutine badata: To fetch data from input copase data set, including multiple parents on free-electron and charge exchange on recombination, inclusion of explicit contributions by ionisation. 
 - Subroutine bapars: To analyse the tail character string of the first line of a specific ion file into binding wave numbers for different parents and statistical weights for the parents. Modification of b8pars. 
 - Subroutine baprs1: To analyse the tail character string of a level data line of a specific ion file into wave-number and sets of (parent identifier, effective zeta for the parent) pairs. 
 - Subroutine baubnd: To unbundle a specific ion file according to the split up fractions obtained from a superstructure file, filling in  with the statistical method of Saraph, Seaton & Shemming  (1969), when no data is available. 
 - Subroutine bbitrp: To interpolate/extrapolate numerical distribution from  fin(ein) to fout(eout). a f=sqrt(e)*exp(-e) fit is chosen for interpolation extrapolation uses limit behaviour from nform1 and nform2 
 - Subroutine bbprs1: To analyse the tail character string of a level data line of a specific ion file into wave-number and sets of (parent identifier, effective zeta for the parent) pairs. 
 - Subroutine bbprs3: To analyse a configuration character string into a  integer array of occupation numbers in a standard order 
 - Subroutine bbrint: To calculate radiative recombination coefficient when  electron distribution is not Maxwellian. 
 - Subroutine bbspln: 	  1) performs cubic spline on log(temp) versus log(rad.rec.coeff.) 	     input data. (`tin' versus `rrcin' , nblock data pairs) 
 - Subroutine bdcf3: Tabulates asymptotically decaying bound coulomb function  
 - Subroutine bdcf7: Calculates a numerical radial wave function in a distorted coulomb potential described by shell screening. 
 - Subroutine bddrsm2: -------- to sum Badnell dielectronic rate coefficient data over the representative set to give zero density total and radiated power from satellite lines 
 - Subroutine bdwr14: To interpolate ionisation rate data from adf23 file and write supplemented adf04 file. 
 - Subroutine bdxref: To fetch data from input adf18/a23_a04 cross-reference file. 
 - Subroutine bexcoef: To  calculate  complete sets of spectrum line emissivities for the ions of an element 
 - Subroutine bfdata: To fetch data from input adf04 data set, including multiple parents on free-electron and charge exchange on recombination, inclusion of explicit contributions by ionisation. 
 - Subroutine bftran: To implement the transformation described by Burgess and Tully ( see reference (1)) which is used to assess and compact data. 
 - Subroutine bfttyp: To sort transition arrays into four transition/recomb types and assign initial types to electron impact transitions 
 - Subroutine bfwr11: Produces an adf04 type file, where the contents is considered as the output data set from ADAS215. 
 - Subroutine bgcoef: Calculates collisional-radiative population 
 - Subroutine bgdiff: Calculates the absolute difference from 1.0 for temperature or density and updates the set of arrays holding the top ndtr contributing transitions.  
 - Subroutine bgeset: To set the error multipler according to error values 
 - Subroutine bghist: Writes unformatted histogram data to iunit. 
 - Subroutine bgperr: Parses error information from adf04 files.  
 - Subroutine bgrerr: Reads error information in adf04 specific ion file and  passes back 4 arrays associated with each transition tpye of excitation, recombination and charge exchange. 
 - Subroutine bgrwer: To read or write error information from/to IDL. the size of the arrays has already been passes to IDL. 
 - Subroutine bgseed: Sets iseed to a value based on the time/date. This seed is for use with the lapack routine dlarnd. 
 - Subroutine bgsetm: To set up parameters to pass to IDL 
 - Subroutine bgtest: Examines the collison strengths of adf04 files for any  discrepencies, outlyiny points, mistakes etc. 
 - Subroutine bgtran: To implement the transformation described by Burgess and Tully ( see reference (1)) which is used to assess and compact data. 
 - Subroutine bgwerr: Writes error information to iunit 
 - Subroutine bgwexp: Writes (unformatted) explore error data to iunit. 
 - Subroutine bgwr33: Writes unformatted data to iunit 
 - Subroutine bxchkm: To check if transitions exist to the metastable levels. 
 - Subroutine bxcoef: Calculates collisional-radiative populations for series 8  codes.  modification of bgcoef.for  
 - Subroutine bxcstr: To take the last `imax' non-blank bytes of the `cstrga' string and place them in the `cstrgb' string. 
 - Subroutine bxdata: To fetch data from input copase data set. 
 - Subroutine bxiord: To set up the index of ordinary excited levels in complete level list `iordr()'. 
 - Subroutine bxmcca: To  construct whole rate matrix `cc' for transitions between all energy levels at a fixed temperature  and  given density `dene/denp'. 
 - Subroutine bxmcma: To  stack  up  non-metastable/ordinary  excited  level  rate matrix `cmat' from whole rate matrix `cc' for all transit'ns between all energy levels at a fixed temperature and density 
 - Subroutine bxmcra: To construct a-value matrix  `cra'  for transitions  between all energy levels. 
 - Subroutine bxmcrc: To  construct  excitation/de-exciatation   rate  coefficient matrix  `crc' for transitions between all energy levels at a given temperature `it' and for a given transition type 
 - Subroutine bxmpop: To calculate and stack up in  `stkm'  the  metastable level populations for a given temperature and density. 
 - Subroutine bxpopm: To construct metastable level populations. 
 - Subroutine bxpopo: To construct ordinary/non-metastable level populations. 
 - Subroutine bxrate: To calculate the excitation and de-excitation rate coeffici- ents for a set of input temperatures `tout' & transitions of a specified type (electron or proton impact). 
 - Subroutine bxrcom: To establish recombination rate coefficients  for  a set  of temperatures given by the array `tout()' using cubic splines on  a set of rate  coefficients  covering  the  temperatures given by the array `tin()'. 
 - Subroutine bxsetp: To set up parameters in the shared pooled for panel display 
 - Subroutine bxstka: To stack up in  `stck'  the non-metastable/ordinary excited level population dependence on metastable level for a given temperature and density. 
 - Subroutine bxstkb: To stack up in  `stv'  the  recombination contribution  for each  non-metastable/ordinary  excited  level  for  a given temperature and density. 
 - Subroutine bxstkc: To stack up in  `cred'  the transition rate between metasta- ble levels for a given temperature stable level for a given temperature and density. 
 - Subroutine bxstkd: To stack up in  `vred'  the recombination rate contributions for  each  metastable  level  for  a  given temperature  and density. 
 - Subroutine bxstvm: To  calculate  and stack up in  `stvm'  the metastable level recombination  coefficients  for  a  given  temperature  and density. 
 - Subroutine bxttyp: To sort transition arrays into seven transition/recomb types 
 - Subroutine bxwr11: To output data to contour passing file. Population  data  for diagnostic use. 
 - Subroutine chindx: To re-index & alter terms for a bundled set of levels 
 - Subroutine dielcl: This subroutine is not yet properly documented 
 - Subroutine dnaq: Given a0 and its first nmax derivatives in array a, and given q and nmax, calculates b0 and array b, being the value and first nmax derivatives of (a0)**q 
 - Subroutine effz3: Searches for the effective potential for a single electron distorted wave function for a specified screening or a specified energy. (original by A. Burgess, DAMTP, university of Cambridge) 
 - Subroutine escape: Computes escape factors. 
 - Subroutine fintb: Unknown 
 - Subroutine gext: Produces one electron orbitals from specified functional forms 
 - Subroutine isort: Sort an integer array so that it is in increasing order 
 - Subroutine ngffmh: Evaluates electron temperature and frequency averaged hydrogenic free free Gaunt factor. 
 - Subroutine pchg: Evaluates Peach amplitude g(v,l,e,l1) by table interpolation 
 - Subroutine pchx: Evaluates Peach phase x(v,l,e,l1) by table interpolation 
 - Subroutine phase: Calculates asymptotic phase of free coulomb real function fcf4 
 - Subroutine qpoly: Quadratic interpolation of x1,y1,x2,y2,x3,y3 -> y for given x  
 - Subroutine r2photo: -------- updated version of rphoto to allow 
 - Subroutine r8necip: Evaluates a shell contribution to the ionisation rate coefficient in the ecip approximation, and returns the three-body recombination coefficient in reduced form ie. Omitting the weighting factor w(i)/w+ 
 - Subroutine rd2fs: Generation of hydrogenic bound-free radial integrals using recurrence relations. Unix-IDL port: 
 - Subroutine voigt: Computes line profiles