Code:
/*
* symbols initialize
*/
/*
* conversion note from Fortran to C:
* There is a great deal of dependency by the Fortran
* code on 1-based data arrays. Therefore, the C will
* make all data arrays 1 item longer, and use 1-based
* loops for them. We will handle character strings
* as zero-based, per C usage.
*
* Not the best solution, * but it will be a lot closer
* to the algorithms of the original authors.
*/
/*
* this set of symbols is treated as an array
* of 2-character element symbols. Each symbol
* is a null-delimited string. The list
* is terminated by NULL, for searching
* purposes.
*
*/
/* we only initialize once */
#ifdef MAIN_PROGRAM
char *atsymb[] = {"D ",
"H ", "He", "Li", "Be", "B ", "C ", "N ",
"O ", "F ", "Ne", "Na", "Mg", "Al", "Si",
"P ", "S ", "Cl", "Ar", "K ", "Ca", "Sc",
"Ti", "V ", "Cr", "Mn", "Fe", "Co", "Ni",
"Cu", "Zn", "Ga", "Ge", "As", "Se", "Br",
"Kr", "Rb", "Sr", "Y ", "Zr", "Nb", "Mo",
"Tc", "Ru", "Rh", "Pd", "Ag", "Cd", "In",
"Sn", "Sb", "Te", "I ", "Xe", "Cs", "Ba",
"La", "Ce", "Pr", "Nd", "Pm", "Sm", "Eu",
"Gd", "Tb", "Dy", "Ho", "Er", "Tm", "Yb",
"Lu", "Hf", "Ta", "W ", "Re", "Os", "Ir",
"Pt", "Au", "Hg", "Tl", "Pb", "Bi", "Po",
"At", "Rn", "Fr", "Ra", "Ac", "Th", "Pa",
"U ", "Np", "Pu", "Am", "Cm", "Bk", "Cf",
"Es", "Fm", "Md", "No", "Lr", "R ",NULL};
#else
extern char *atsymb[];
#endif