#!/usr/bin/perl -w #perl script to fix nomenclature from PFJ's naming scheme in FELIX97 #to the format used for GENXPK. #script works on the 4 column file which comes from the following conversions: #Export "spin systems" from FELIX97 -- text file -- run pat_to_4col -- output #is the .assignments file used when running GENXPK. This is the file which #needs to be fixed. #genxpk format: #1 LYS HA 4.538 #1 LYS HB+ 1.832 #1 LYS HB- 1.68 #1 LYS HD+ 1.70 #the input file must have all assignments for a given residue in a #contiguous group! #in atmnames, "+" is substituted for "1" and "-" is substituted for 2 #command line: fix4colpfj .assignments [>output] #Melanie Nelson #2/23/99 #Patty Fagan Jones #5/26/99 if ($#ARGV != 0) { $prg_name = $0; $prg_name = `basename $prg_name`; chomp ($prg_name); die<outputfile] EODIE } open (ASSIGFILE, $ARGV[0]) || die ("Could not open the assignments file, $ARGV[0]"); while () { #skip comments next if /^#/; chomp; @inline = split; #print to see if the script is reading the proper atom name information #print "$inline[1]\n"; #FIX RESIDUE NAMES (section added by PFJ) $resname = $inline[1]; #print to see if $resname is being defined correctly #print "$resname\n"; if ($resname eq "ASPN") { $resname = "ASP" }; if ($resname eq "GLUN") { $resname = "GLU" }; if ($resname eq "METN") { $resname = "MET" }; #print to see if $resname is being redefined correctly #print "$resname\n"; #FIX ATOM NAMES (section added by PFJ) $atmname = $inline[2]; #print to see if $atmname is being defined correctly #print "$atmname\n"; if($resname eq "ALA") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "MB" }; if($atmname eq "HB2") { $atmname = "MB" }; if($atmname eq "HB3") { $atmname = "MB" }; if($atmname eq "HB*") { $atmname = "MB" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "ARG") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG1") { $atmname = "HG1" }; if($atmname eq "HG2") { $atmname = "HG2" }; if($atmname eq "HG*") { $atmname = "HG" }; if($atmname eq "HD1") { $atmname = "HD1" }; if($atmname eq "HD2") { $atmname = "HD2" }; if($atmname eq "HD*") { $atmname = "HD" }; if($atmname eq "HE") { $atmname = "HE" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "ASP") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "CYS") { } if($resname eq "GLN") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG1") { $atmname = "HG1" }; if($atmname eq "HG2") { $atmname = "HG2" }; if($atmname eq "HG*") { $atmname = "HG" }; if($atmname eq "HE21") { $atmname = "HE21" }; if($atmname eq "HE22") { $atmname = "HE22" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "GLU") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG1") { $atmname = "HG1" }; if($atmname eq "HG2") { $atmname = "HG2" }; if($atmname eq "HG*") { $atmname = "HG" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "GLY") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA1") { $atmname = "HA1" }; if($atmname eq "HA2") { $atmname = "HA2" }; if($atmname eq "HA*") { $atmname = "QA" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "ILE") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB") { $atmname = "HB" }; if($atmname eq "HG11") { $atmname = "HG11" }; if($atmname eq "HG12") { $atmname = "HG12" }; if($atmname eq "HG1*") { $atmname = "HG1" }; if($atmname eq "HG21") { $atmname = "MG2" }; if($atmname eq "HG22") { $atmname = "MG2" }; if($atmname eq "HG23") { $atmname = "MG2" }; if($atmname eq "HD1") { $atmname = "MD1" }; if($atmname eq "HD2") { $atmname = "MD1" }; if($atmname eq "HD3") { $atmname = "MD1" }; if($atmname eq "HD*") { $atmname = "MD1" }; if($atmname eq "HG2*") { $atmname = "MG2" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "LEU") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG") { $atmname = "HG" }; if($atmname eq "HD11") { $atmname = "MD1" }; if($atmname eq "HD12") { $atmname = "MD1" }; if($atmname eq "HD13") { $atmname = "MD1" }; if($atmname eq "HD21") { $atmname = "MD2" }; if($atmname eq "HD22") { $atmname = "MD2" }; if($atmname eq "HD23") { $atmname = "MD2" }; if($atmname eq "HD2*") { $atmname = "MD2" }; if($atmname eq "HD1*") { $atmname = "MD1" }; if($atmname eq "HD*") { $atmname = "QD" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "LYS") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG1") { $atmname = "HG1" }; if($atmname eq "HG2") { $atmname = "HG2" }; if($atmname eq "HG*") { $atmname = "HG" }; if($atmname eq "HD1") { $atmname = "HD1" }; if($atmname eq "HD2") { $atmname = "HD2" }; if($atmname eq "HD*") { $atmname = "HD" }; if($atmname eq "HE1") { $atmname = "HE1" }; if($atmname eq "HE2") { $atmname = "HE2" }; if($atmname eq "HE*") { $atmname = "HE" }; if($atmname eq "C") { $atmname = "CO" }; # Missing NH3 } if($resname eq "MET") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG1") { $atmname = "HG1" }; if($atmname eq "HG2") { $atmname = "HG2" }; if($atmname eq "HG*") { $atmname = "HG" }; if($atmname eq "HE1") { $atmname = "ME" }; if($atmname eq "HE2") { $atmname = "ME" }; if($atmname eq "HE3") { $atmname = "ME" }; if($atmname eq "HE*") { $atmname = "ME" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "PHE") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HD1") { $atmname = "HD" }; if($atmname eq "HD2") { $atmname = "HD" }; if($atmname eq "HE1") { $atmname = "HE" }; if($atmname eq "HE2") { $atmname = "HE" }; if($atmname eq "HZ") { $atmname = "HZ" }; if($atmname eq "HD*") { $atmname = "HD" }; if($atmname eq "HE*") { $atmname = "HE" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "PRO") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG1") { $atmname = "HG1" }; if($atmname eq "HG2") { $atmname = "HG2" }; if($atmname eq "HG*") { $atmname = "HG" }; if($atmname eq "HD1") { $atmname = "HD1" }; if($atmname eq "HD2") { $atmname = "HD2" }; if($atmname eq "HD*") { $atmname = "HD" }; if($atmname eq "C") { $atmname = "CO" }; } if($resname eq "SER") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "C") { $atmname = "CO" }; # Missing HO } if($resname eq "THR") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB") { $atmname = "HB" }; if($atmname eq "HG1") { $atmname = "HG1" }; if($atmname eq "HG21") { $atmname = "MG2" }; if($atmname eq "HG22") { $atmname = "MG2" }; if($atmname eq "HG23") { $atmname = "MG2" }; if($atmname eq "HG2*") { $atmname = "MG2" }; if($atmname eq "C") { $atmname = "CO" }; # Missing HO } if($resname eq "TRP") { } if($resname eq "TYR") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB1") { $atmname = "HB1" }; if($atmname eq "HB2") { $atmname = "HB2" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HD1") { $atmname = "HD1" }; if($atmname eq "HD2") { $atmname = "HD2" }; if($atmname eq "HE1") { $atmname = "HE1" }; if($atmname eq "HE2") { $atmname = "HE2" }; if($atmname eq "HD*") { $atmname = "HD" }; if($atmname eq "HE*") { $atmname = "HE" }; if($atmname eq "HH") { $atmname = "HH" }; if($atmname eq "C") { $atmname = "CO" }; # Missing HO } if($resname eq "VAL") { if($atmname eq "HN") { $atmname = "HN" }; if($atmname eq "HA") { $atmname = "HA" }; if($atmname eq "HB") { $atmname = "HB" }; if($atmname eq "HB*") { $atmname = "HB" }; if($atmname eq "HG11") { $atmname = "MG1" }; if($atmname eq "HG12") { $atmname = "MG1" }; if($atmname eq "HG13") { $atmname = "MG1" }; if($atmname eq "HG21") { $atmname = "MG2" }; if($atmname eq "HG22") { $atmname = "MG2" }; if($atmname eq "HG23") { $atmname = "MG2" }; if($atmname eq "HG1*") { $atmname = "MG1" }; if($atmname eq "HG2*") { $atmname = "MG2" }; if($atmname eq "HG*") { $atmname = "QG" }; if($atmname eq "C") { $atmname = "CO" }; } printf "%4d %3s %4s %7.3f\n", $inline[0], $resname, $atmname, $inline[3]; } close (ASSIGFILE);