ADAS Subroutine xxprs3
subroutine xxprs3( string , ia_dim , iz0 , iz ,
& ia , ia_vlnce
& )
c-----------------------------------------------------------------------
c
c ****************** fortran77 subroutine: xxprs3 *********************
c
c purpose: To analyse a configuration character string in Standard
c form into a integer array of occupation numbers in the
c normal collating order.
c
c unified version of bbprs3 & g5prs3 and a replacement for
c these subroutines
c calling program: various
c
c notes: 1. the normal collating order is 1s,2s,2p,3s,3p,3d etc.
c 2. a strategy for deciding the occupancy of unspecified
c inner shells is implemented using the nuclear and ion
c charge. The strategy may be switched off.
c 3. opens a central ADAS adf00 file for an element on
c unit 10.
c
c
c subroutine:
c
c input : (c*(*))string = string to be parsed
c input : (i*4) ia_dim = dimensionality of occupancy vector ia
c input : (i*4) iz0 = nuclear charge
c input : (i*4) iz = ion charge
c
c output: (i*4) ia() = set of occupation numbers in standard
c collating list order
c output: (i*4) ia_vlnce = outer occupied shell index in collating
c list
c
c routines:
c routine source brief description
c -------------------------------------------------------------
c i4unit adas fetch unit number for output of messages
c xxopen adas inquire & open a data file on a unit
c xxword adas parses a string into separate words
c xxrmve adas removes occurrences of a char. in string
c xxcase adas changes a string to upper or lower case
c xxslen adas finds the length of a string excluding
c leading and trailing blanks
c xfesym adas fetch the chemical symbol of an element
c
c
c author: H. P. Summers
c JA7.08, University of Strathclyde
c Tel: 0141-548-4196 4941
c
c date: 16/12/02
c
c update:
c
c-----------------------------------------------------------------------
CHARACTER*(*) STRING
INTEGER IA(IA_DIM), IA_DIM, IA_VLNCE, IZ
INTEGER IZ0