#!/usr/bin/perl # convert RADCAT.HTML into data for organulator.html $file = "radcat.html" ; open(ARC,$file) || die "Can't find file $file\n"; while () { if (/Reactive/) { goto data }; } data: $group = -1 ; while ( ) { if (/Allyl/) { goto endspec } if (/NAME/) { $group++; ($a,$head,$c) = split('"') ; print "Type[$group]=\"$head\" \n" ; } if (/webmo/) { s/^.*webmo\/// ; ($dfile,$b) = split('"') ; open(DTA,$dfile) || die "Can't find file $dfile\n"; while () { if (/^ Total electronic/) { s/^.*= *// ; s/ Hartrees// ; chop ; print "E[i]=" ; print ; break ; } } ($name,$formula) = split(', ',$b) ; $name =~ s/>// ; $class = 0 ; $name =~ s/ radical/\*/ ; if ( $name =~ /\*/ ) { $class = 2 } $name =~ s/ cation/+/ ; if (( $name =~ /\+/ ) && ( $class !=2 )) { $class = 3 } if (( $name =~ /\+/ ) && ( $class ==2 )) { $class = 1 } if ( $name =~ /anion/ ) { $class = 4 } $name =~ s/ anion$/-/ ; $name =~ s/ triplet/\*\*/ ; $name =~ s/\*\+/\+\*/ ; $formula =~ s///g ; $formula =~ s/<\/su.>//g ; $formula =~ s/<\/A>// ; $formula =~ s/•/*/ ; chop($formula) ; print "; Nom[i]=\"$name\"; Frm[i]=\"$formula\";" ; $class += $group*5 ; print " Class[i]=$class; i++;\n" ; } } endspec: