Since nonh expects a single configuration list named cfg.inp, the configuration lists for each term participating in the mchf calculation are concatenated to cfg.inp. In general, cfg.inp is a file created by concatenating a number of configuration lists of terms that mix, or the final list contains a set of block of terms. nonh reads each block for the entire cfg.inp and computes all integral and angular data for the Hamiltonian. then, the computed data is stored in a set of files, which are used in a later stage by the by mchf calculation.
The files have the following format:
cfg.inp: (formatted) For each block (1 : NB) . header (A72) -- not used by the program . List of closed shells el(1:nclosd) Format: (20(1X,A3)) For each CSF (1 : ncfg) . Configuration information (el(i),q(i), i=1,nocc) Format: (8(1x,A3,1x,I2,1x)) . Angular coupling LSv(1:nocc),RLS(1:nocc-1) Format: (15(5X,A3)) Terminating condition: *
Global information (formatted: . nclosd 'Closed shells:' (I4, A15) . el(1:nclosd) (18(1X,A3)) . nwf 'Other Orbitals' (I4, A16) . el(nclosd+1:nwf) (18(1X,A3)) . nb, idim, lsdim, who (I3, I8, I8, 3X, A5) For each block (1 : NB) . Term, ncfg, max number of coeff per column, total coefficients
. nclosed, maxorb, nb, lsdim . list of closed shells (converted to 24A3 format) . list of other orbitals -- one or more records (24A3) format For each Block (1 : NB) . lij, jan(1:lij) repeated, terminating condition: lij < lsdim ncol (or ncfg for block), jptr(1:ncol) Global information: For each . integral case (1:4) icase, noint(icase) (last position in global list of integrals) . ipackn(:), lused(:) for this case where the range is from beginning to noint(icase)
. For each block (1:NB) ncoff, cn(1:ncoff), inptr(1:ncoff) repeated terminating condition: ncoff < lsdim (may be zero)
. lij, ico(1:lsj) repeated, terminating condition: lij < lsdim ncol (or ncfg for block), jptr(1:ncol) NOTE: The use of separate ih.nn.lst for each term simplifis the memory management in diag();
Global Information for the term: Label, Atomic number, Number of electrons, number of configurations (2X,A6,A,F5.1,A,I3,A,I6)' ) 2 blank lines J value, number of eigenvalues: (//A8,I4,2X,A8,I4)' .For each eigenvalue index requested: . Ssms factor: (A8,f15.10) . index of dominant configuration, energy, label (i6,f16.9,2x,A) . weight coefficients(eigenvector) '(7F11.8)' The command %"head 4P.l" shows the head of the file, the first 10 lines: #### Z=9 Z = 9.0 NEL = 0 NCFG = 4552 2*J = 0 NUMBER = 1 Ssms= 9.1044850144 5 -97.049494320 2s.2p(4)3P2_4P -.03539122 -.10039993 .00687978 .00152753 .98568399 -.01049074 -.04761180 .00214886 .02015163 -.03685424 -.03234737 -.01254864 -.00348771 .00099990 -.00848004 -.00053098 .00079421 .00175919 .00089763 .00013236 -.00007157 -.00452096 -.00173801 .00167690 .00337817 -.00020025 -.00041671 -.00144874 ...........
For each Block (1 : NB) . lij, ico(1:lsj) repeated, terminating condition: lij < lsdim ncol (or ncfg for block), jptr(1:ncol)
The parallel versions use different file naming convention: The name of the files are comprised by a basename which is the name of the corresponding file from the serial routine, and a suffix which indicates the node ID.
. nclosd,maxorb,lsdim, ncfg . l(1:nclsd),l(1:maxorb) . el(1:nwf) . lmax, nnel, skip . lsp(1:ncfg), jptr(1:ncfg) . nterm, index(1:nterm)
For each column (1 : ncfg) . n, cn(1:n), inptr(1:n) . in blocks of lsdim. Last record for a column has nij = ico(nih)
For each column (1 : ncfg) . mih, jan(1:cij) where - nih is the number of non-zero matrix elements - jan(i) is the row index of the i'th
For each column, nih,ico(i) where . nih is the number of non-zero matrix elements . ico(i) is the value of nij when the matrix element calculation has been completed.
For each column, and each type of interaction . write(iouhz) jb,m,(h(i,.),i=1,m),(jan(i,.),i=1,m) where now the matrix elements are counted with respect to type.
Global Information for the term: Label, Atomic number, Number of electrons, number of configurations (2X,A6,A,F5.1,A,I3,A,I6)' ) 2 blank lines J value, number of eigenvalues: (//A8,I4,2X,A8,I4)' .For each eigenvalue index requested: . Ssms factor, gJ_LSJ, gJ_LS Zeeman factors: (3'(A8,f15.10)' . index of dominant configuration, energy, label (i6,f16.9,2x,A) . weight coefficients(eigenvector) '(7F11.8)' The command %"head Atom.j" shows the head of the file, the first 10 lines: #### Z=9 Z = 9.0 NEL = 7 NCFG = 14482 2*J = 5 NUMBER = 1 Ssms= .0000000000 g_J= 1.2004638609 g_JLS= 1.2004638609 6225 -97.668082391 2s(2).2p(3)2D3_2D .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 .00000000 ...........
The column pointers are saved in binary format.
biotr computes LS and LSJ transitions.
##### . label . initial state . final state . Atomic weight, principal quantum number '(/A5,I3,A5,I2)' . Energy initial, label of dominant transition . Energy final, label of dominant transition . LS transition energy, wavelength in vacuum, wavelength in air . Type of transition, line strength, gf value, transition rate - velocity form . line strength, gf value, transition rate - length form ##### Transition between files: E O Z = 9 n = 7 3 -97.50578137 2s(2).2p(3)2P1_2P 3 -96.52277315 2s.2p(4)3P2_2P 215739.13 CM-1 463.52 ANGS(VAC) 463.52 ANGS(AIR) E1 length: S = 7.81694D-01 GF = 5.12259D-01 AKI = 2.65057D+09 velocity: S = 8.22227D-01 GF = 5.38822D-01 AKI = 2.78801D+09 .....
The format is the same as the format for LS transitions, First line shows the file with initial transition, the second line the file used for the final transition:
. blank line . blank line . Energy initial, label of dominant transition . Energy final, label of dominant transition . LS transition energy, wavelength in vacuum, wavelength in air . Type of transition, line strength, gf value, transition rate - velocity form . line strength, gf value, transition rate - length form ##### 1 -74.36649804 2s(2).2p(3)2P1_2P 1 -73.65565658 2s.2p(4)1S0_2S 156006.31 CM-1 641.00 ANGS(VAC) 641.00 ANGS(AIR) E1 S = 4.69243D-01 GF = 2.22364D-01 AKI = 1.80493D+09 4.68123D-01 2.21833D-01 1.80062D+09 .....