From: Amaury Pupo Meriño (amaury_at_cim.sld.cu)
Date: Fri Dec 21 2007 - 09:31:07 CST

Hello everybody:
I am processing in a TCL script thousands of structures (one by one) and among
many others things I'm calculating salt bridges of a given selection using
the saltbr plugging.
The first problem arises when saltbr can not find any residues adequate to
form salt bridges in the given selection, two typical error messages can
appear:

*No oxygen of acidic amino acid residues were found in the given selection.
*No nitrogens of basic amino acid residues were found in the given selection.

You have to catch these errors, or the script get stopped, and then set the
number of salt bridges to zero in the selection. But, there is a problem
here. I am generating a log file, and then I parse this file searching for
some residues of interest. I am doing something like this:

if{[catch "saltbr -sel $a_selection -writefiles no -log a_log_file.log"
error_line]==1} {
  do something
} else {
  do other thing
}

but, when saltbr exits with an error it DOES NOT close the log file. After a
while the scripts stop with an error: too many open files.

You can check this problem inside vmd, do the following:

**

set sel [atomselect top "a_selection_text"] ;# This selection doesn't have
oxygen of acidic amino acid residues or nitrogens of basic amino acid
residues
set f [open a_file.txt w]
puts $f
close $f

saltbr -sel $sel1 -writefiles no -log a_log_file.log

set f [open a_file.txt w]
puts $f
close $f

**

You will see fileid from the first put and file(id+1) from the second.

I checked inside saltbr.tcl and solved this problem, closing the log file
before raising the error message. I send the diff file as an attachment.

To the salbr authors: please, could you fix this?. And, have you consider that
saltbr could return an atom index list, just like measure contacts and
measure hbonds do?. It will be really nice.

Thanks for this great plugging and for the super VMD.
Best regards.

-- 
Amaury Pupo Meriño
Centro de Inmunología Molecular.
Cuba.
Linux user #394752
Phone: 2717933 (219)
Jabber: amaury_at_jabber.biocomp.cigb.edu.cu
        amaury_at_softwarelibre.cu
        amaury.pupo_at_gmail.com
Skype: amaury.pupo
*****************************
Mice LOVE Bioinformatics :-)
*****************************