commands:

turn on large feii atom
atom feii  
sets flag FeII.lgFeIION

options on atom feii command:
levels xxx sets number of levels, xxx must be at least 16, 
	but not greater than NFE2LEVN == 371
slow, always evaluate the large atom in the cooling function, make no attempt to
	avoid extra evaluations.  this slows things down by about5 - 10x, but puts the
	model feii atom on the same par as all the other atoms

=================================================================

transition probabilities are in column 5 of fe2rad.dat
dummy lines, have A = 1e-5

=================================================================

main array of lines
EmLine Fe2LevN[ipHi][ilo]

=================================================================

punch verner command to produce large output file
punch verner "file.txt" faintest, energy1 energy2
file.txt is the name of the output file, it must be present and surrounded by double quotes
the remaining three numbers are optional, and can be omitted from right to left
first number is faintest line to punch relative to normalization line, log if negative
	if not set then all lines will be punched
second and third numbers are energies in rydbergs for the lines to be punched
	if not set then all lines will be punched, if set then only lines that have wavelengths
	corresponding to energies between these two will be punched
	FeIIPunchLines does the actual work

================================================================

nFeIILevel - number of levels
is currently set to NFE2LEVN=371 in declaration in FeIIZero
NFE2LEVN is defined as 371 in pop371.h, this is largest possible atom
	with current data

nFeIILevel can be changed to smaller number before space is allocated
	with the "atom feii levels xxx" command.  This command is totally
	ignored after space is initially allocated, so in a grid calculation
	only first command is honored.

nFeIILevelAlloc is number of levels allocated when atom first set up.
	when code recalled there after, nFeIILevel is reset to this

nFeIILevel can be decreased as the calculation progresses as the temperature
	becomes too small for Boltzmann factors to be evaluated 

nFeIILevel can be reset to smaller values where FeIIBoltzmann is evaluated,
	since for small temperatures upper levels can underflow to zero.  Atom
	is trimmed down in this case

================================================================

FeII bands Bands 
	/* [x][0] is center wavelength, [1] and [2] are upper and
	 * lower bounds in Angstroms.  these are set in FeIIZero */
	eff = FeIISumBand(FeII.iPredFe2[i][1],FeII.iPredFe2[i][2]);
	/* emission from lage FeII atom, integrated over band */
	linadd(eff,FeII.iPredFe2[i][0],"Fe2b",'i');

fe2bands.dat has list of all bands

all bands have line label Fe2b

first number is an integer used as label in line output, should be center
	wavelength in Angstroms
second two labels are lower and upper range of band in Angstroms, vacuum
	wavelength since simply converted to energy

band data read into code in routine FeIIData

band sums are done in FeIISumBand

number of bands is variable 

FeII binned continuum:
	number of points nFeIIConBins
	saved as FeII_Cont
	output with punch feii continuum command 


=================================================================

punch feii departure coefficients "departure.txt" [ all]
	punch departure coefficents for selected levels, 
	optional keyword _all does all levels

punch feii level populations "populations.txt" [ all]
	punch level populations for selected levels, 
	optional keyword _all does all levels

===============================================================
pop371.h has all includes
all code is in pop371.c

Fe2LevN[up][lo][ipnt] keeps track of atom
Fe2SavN[hi][lo] save integrated intensities, incremented in FeIIAddLines

/* this is the number of levels for the large FeII atom */
#define	NFE2LEVN	371

when atom turned on with feii verner command,
fe2.chFeIIAtom is set to "Verner"
and	fe2.lgFeIION is set TRUE;

FeII command parsed in ParseFeII
pop371 called by cooliron.c

final calls Fe2Lines to punch line set if set with punch verner command

=================================================================

data files read in when code initiates
Cloudy calls CreateData which calls FeIIData

FeIIData actually reads in the files

Fe2Bands.dat contains list of feii bands

fe2rad.dat :

lower level number
upper level number
lower level statistical weight
upper level statistical weight
Einstein A coefficient, s**(-1)
Energy, cm**(-1)
type of transition (1 - allowed, 2 - semiforbidden, 3 - forbidden)

fe2col.dat :

lower level number
upper level number
collision strengths at 20 temperatures,
1e3,3e3,5e3,7e3,1e4,12e3,15e3,17e3,2e4,25e3,3e4,35e3,4e4,45e3,5e4,6e4,7e4,8e
4,9e4,1e5


