Repository 'prepare_ligands_for_docking'
hg clone https://toolshed.g2.bx.psu.edu/repos/bgruening/prepare_ligands_for_docking

Changeset 2:b8838a9aa31a (2020-03-25)
Previous changeset 1:2ba07316c7e0 (2019-08-22) Next changeset 3:015ccbd1ad68 (2020-04-09)
Commit message:
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
modified:
change_title_to_metadata_value.py
ob_filter.py
added:
distance_finder.py
test-data/filterd_by_name.sdf
test-data/ligands.sdf
test-data/ligands_with_title.sdf
test-data/name_file.txt
test-data/transfs.sdf
test-data/transfs_changed_name.sdf
b
diff -r 2ba07316c7e0 -r b8838a9aa31a change_title_to_metadata_value.py
--- a/change_title_to_metadata_value.py Thu Aug 22 10:30:09 2019 -0400
+++ b/change_title_to_metadata_value.py Wed Mar 25 16:50:17 2020 -0400
[
@@ -12,6 +12,8 @@
 import openbabel
 openbabel.obErrorLog.StopLogging()
 import pybel
+import random
+import string
 
 
 def main():
@@ -25,14 +27,18 @@
         required=True, help="path to the output file")
     parser.add_argument('--key', '-k',
         required=True, help="the metadata key from the sdf file which should inlcude the new title")
+    parser.add_argument('--random', '-r',
+        action="store_true", help="Add random suffix to the title.")
 
     args = parser.parse_args()
 
     output = pybel.Outputfile("sdf", args.outfile, overwrite=True)
-
     for mol in pybel.readfile("sdf", args.infile):
         if args.key in mol.data:
             mol.title = mol.data[args.key]
+            if args.random:
+                suffix = ''.join(random.choice(string.ascii_lowercase + string.digits) for _ in range(13))
+                mol.title += '__%s' % suffix
         output.write( mol )
 
     output.close()
b
diff -r 2ba07316c7e0 -r b8838a9aa31a distance_finder.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/distance_finder.py Wed Mar 25 16:50:17 2020 -0400
[
@@ -0,0 +1,109 @@
+# Reports distances of ligands to reference points. An example input for the points is:
+#
+# 5.655   1.497  18.223
+# 1.494  -8.367  18.574
+# 13.034   6.306  25.232
+#
+# Data can be space or tab separated but must contain 3 and only 3 numbers for the x, y and z coordinates
+#
+# That would encode 3 points.
+# Each record in the SDF input is read and the closest heavy atom to each of the reference points is recorded as
+# a property named distance1 where the numeric part is the index (starting from 1) of the points (in that example
+# there would be properties for distance1, distance2 and distance3.
+
+import argparse, os, sys, math
+from openbabel import pybel
+
+
+
+def log(*args, **kwargs):
+    """Log output to STDERR
+    """
+    print(*args, file=sys.stderr, ** kwargs)
+
+
+def execute(ligands_sdf, points_file, outfile):
+    """
+    :param ligands_sdf: A SDF with the 3D molecules to test
+    :param points_file: A file with the points to consider.
+    :param outfile: The name of the file for the SDF output
+    :return:
+    """
+
+
+    points = []
+
+    # read the points
+    with open(points_file, 'r') as f:
+        for line in f.readlines():
+            line.strip()
+            if line:
+                p = line.split()
+                if len(p) == 3:
+                    points.append((float(p[0]), float(p[1]), float(p[2])))
+                    log("Read points",p)
+                    continue
+            log("Failed to read line:", line)
+    log('Found', len(points), 'atom points')
+
+    sdf_writer = pybel.Outputfile("sdf", outfile, overwrite=True)
+
+    count = 0
+    for mol in pybel.readfile("sdf", ligands_sdf):
+        count += 1
+        if count % 50000 == 0:
+            log('Processed', count)
+
+        try:
+            # print("Processing mol", mol.title)
+
+            clone = pybel.Molecule(mol)
+            clone.removeh()
+
+            coords = []
+            for atom in clone.atoms:
+                coords.append(atom.coords)
+
+            p = 0
+            for point in points:
+                p += 1
+                distances = []
+                for i in coords:
+                    # calculates distance based on cartesian coordinates
+                    distance = math.sqrt((point[0] - i[0])**2 + (point[1] - i[1])**2 + (point[2] - i[2])**2)
+                    distances.append(distance)
+                    # log("distance:", distance)
+                min_distance = min(distances)
+                # log('Min:', min_distance)
+                # log(count, p, min_distance)
+
+                mol.data['distance' + str(p)] = min_distance
+
+            sdf_writer.write(mol)
+
+        except Exception as e:
+            log('Failed to handle molecule: '+ str(e))
+            continue
+
+    sdf_writer.close()
+    log('Wrote', count, 'molecules')
+
+
+def main():
+    global work_dir
+
+    parser = argparse.ArgumentParser(description='XChem distances - measure distances to particular points')
+
+    parser.add_argument('-i', '--input', help="SDF containing the 3D molecules to score)")
+    parser.add_argument('-p', '--points', help="PDB format file with atoms")
+    parser.add_argument('-o', '--outfile', default='output.sdf', help="File name for results")
+
+
+    args = parser.parse_args()
+    log("XChem distances args: ", args)
+
+    execute(args.input, args.points, args.outfile)
+
+
+if __name__ == "__main__":
+    main()
b
diff -r 2ba07316c7e0 -r b8838a9aa31a ob_filter.py
--- a/ob_filter.py Thu Aug 22 10:30:09 2019 -0400
+++ b/ob_filter.py Wed Mar 25 16:50:17 2020 -0400
b
@@ -29,6 +29,10 @@
         help="Specify the filters to apply",
         required=True,
         )
+    parser.add_argument('--list_of_names', 
+        help="A file with list of molecule names to extract. Every name is in one line.",
+        required=False,
+        )
     return parser.parse_args()
 
 def filter_precalculated_compounds(args, filters):
@@ -83,12 +87,24 @@
         sys.stdout.write(stdout.decode('utf-8'))
         sys.stdout.write(stderr.decode('utf-8'))
 
+def filter_by_name(args):
+    outfile = pybel.Outputfile(args.oformat, args.output, overwrite=True)
+    for mol in pybel.readfile('sdf', args.input):
+        for name in open(args.list_of_names):
+            if mol.title.strip() == name.strip():
+                outfile.write(mol)
+    outfile.close()
 
 def __main__():
     """
         Select compounds with certain properties from a small library
     """
     args = parse_command_line()
+    
+    if args.filters == '__filter_by_name__':
+        filter_by_name(args)
+        return
+    
     # Its a small trick to get the parameters in an easy way from the xml file.
     # To keep it readable in the xml file, many white-spaces are included in that string it needs to be removed.
     # Also the last loop creates a ',{' that is not an valid jason expression.
b
diff -r 2ba07316c7e0 -r b8838a9aa31a test-data/filterd_by_name.sdf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/filterd_by_name.sdf Wed Mar 25 16:50:17 2020 -0400
[
@@ -0,0 +1,147 @@
+abc_one
+ OpenBabel03212013422D
+
+ 26 30  0  0  0  0  0  0  0  0999 V2000
+   -8.6396    0.9568    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
+   -7.6023    1.5602    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -7.6071    3.0602    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -6.3104    3.8143    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -5.0090    3.0685    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -5.0040    1.5682    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -6.3008    0.8143    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -3.7006    0.8244    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -3.7006   -0.6045    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+   -2.4915   -1.3190    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -2.5059   -2.8197    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+   -1.2156   -3.5847    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -1.2329   -5.0846    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -2.5404   -5.8196    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
+   -3.8308   -5.0547    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -3.8135   -3.5548    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -1.2274   -0.6045    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    0.0000   -1.3190    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
+    1.2274   -0.6045    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    2.4732   -1.3190    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+    3.7372   -0.6045    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    3.7372    0.8244    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    2.4732    1.5389    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    1.2274    0.8244    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -1.2274    0.8244    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -2.4915    1.5389    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+  1  2  1  0  0  0  0
+  2  3  1  0  0  0  0
+  2  7  2  0  0  0  0
+  3  4  2  0  0  0  0
+  4  5  1  0  0  0  0
+  5  6  2  0  0  0  0
+  6  7  1  0  0  0  0
+  6  8  1  0  0  0  0
+  8  9  1  0  0  0  0
+  8 26  2  0  0  0  0
+  9 10  2  0  0  0  0
+ 10 11  1  0  0  0  0
+ 10 17  1  0  0  0  0
+ 11 12  1  0  0  0  0
+ 11 16  1  0  0  0  0
+ 12 13  1  0  0  0  0
+ 13 14  1  0  0  0  0
+ 14 15  1  0  0  0  0
+ 15 16  1  0  0  0  0
+ 17 18  1  0  0  0  0
+ 17 25  2  0  0  0  0
+ 18 19  1  0  0  0  0
+ 19 20  2  0  0  0  0
+ 19 24  1  0  0  0  0
+ 20 21  1  0  0  0  0
+ 21 22  2  0  0  0  0
+ 22 23  1  0  0  0  0
+ 23 24  2  0  0  0  0
+ 24 25  1  0  0  0  0
+ 25 26  1  0  0  0  0
+M  END
+>  <mr_id>
+4358263
+
+>  <SMI>
+Oc1cccc(c1)c2nc(N3CCOCC3)c4oc5ncccc5c4n2
+
+$$$$
+abc_eleven
+ OpenBabel03212013422D
+
+ 32 35  0  0  1  0  0  0  0  0999 V2000
+    7.1381   -2.1568    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    6.0456   -2.6531    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    4.7409   -1.9129    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+    3.6552   -2.9294    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    2.1855   -2.6254    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    1.7138   -1.2033    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    2.5889    0.0182    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    3.7889    0.0269    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
+    1.7138    1.2033    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+    0.2917    0.7475    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -1.0028    1.5132    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -2.3155    0.7475    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -2.3155   -0.7475    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   -3.3560   -1.3452    0.0000 F   0  0  0  0  0  0  0  0  0  0  0  0
+   -1.0028   -1.5132    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    0.2917   -0.7475    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    4.2542   -4.2907    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    3.6559   -5.3308    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    5.7448   -4.1226    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    6.7580   -5.2264    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+    6.3978   -6.3710    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
+    8.2231   -4.9012    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+    9.2380   -6.0068    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   10.7032   -5.6816    0.0000 C   0  0  2  0  0  0  0  0  0  0  0  0
+   11.0634   -4.5369    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
+   11.7181   -6.7872    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   13.1833   -6.4620    0.0000 N   0  0  0  0  0  0  0  0  0  0  0  0
+   14.1993   -7.5656    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   15.6630   -7.2376    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   16.1108   -5.8060    0.0000 O   0  0  0  0  0  0  0  0  0  0  0  0
+   15.0949   -4.7024    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+   13.6312   -5.0304    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
+  1  2  1  0  0  0  0
+  2  3  1  0  0  0  0
+  2 19  2  0  0  0  0
+  3  4  1  0  0  0  0
+  4  5  1  0  0  0  0
+  4 17  2  0  0  0  0
+  5  6  2  0  0  0  0
+  6  7  1  0  0  0  0
+  6 16  1  0  0  0  0
+  7  8  2  0  0  0  0
+  7  9  1  0  0  0  0
+  9 10  1  0  0  0  0
+ 10 11  1  0  0  0  0
+ 10 16  2  0  0  0  0
+ 11 12  2  0  0  0  0
+ 12 13  1  0  0  0  0
+ 13 14  1  0  0  0  0
+ 13 15  2  0  0  0  0
+ 15 16  1  0  0  0  0
+ 17 18  1  0  0  0  0
+ 17 19  1  0  0  0  0
+ 19 20  1  0  0  0  0
+ 20 21  2  0  0  0  0
+ 20 22  1  0  0  0  0
+ 22 23  1  0  0  0  0
+ 23 24  1  0  0  0  0
+ 24 25  1  6  0  0  0
+ 24 26  1  0  0  0  0
+ 26 27  1  0  0  0  0
+ 27 28  1  0  0  0  0
+ 27 32  1  0  0  0  0
+ 28 29  1  0  0  0  0
+ 29 30  1  0  0  0  0
+ 30 31  1  0  0  0  0
+ 31 32  1  0  0  0  0
+M  END
+>  <mr_id>
+4362206
+
+>  <SMI>
+Cc1[nH]c(/C=C/2\C(=O)Nc3ccc(F)cc23)c(C)c1C(=O)NC[C@H](O)CN4CCOCC4
+
+$$$$
b
diff -r 2ba07316c7e0 -r b8838a9aa31a test-data/ligands.sdf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/ligands.sdf Wed Mar 25 16:50:17 2020 -0400
[
b'@@ -0,0 +1,348 @@\n+C[C@H](NS(C)(=O)=O)c1ccccn1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+ 13 13  0  0  0  0  0  0  0  0999 V2000\n+   13.1106    0.7550   23.2143 C   0  0  0  0  0  0\n+   12.0087    1.7547   22.8361 C   0  0  0  0  0  0\n+   11.4071    1.4261   21.5334 N   0  0  0  0  0  0\n+    9.9388    0.8337   21.6338 S   0  0  0  0  0  0\n+    9.0411    2.3499   21.9038 C   0  0  0  0  0  0\n+    9.3678    0.3273   20.3892 O   0  0  0  0  0  0\n+    9.6367    0.0497   22.8298 O   0  0  0  0  0  0\n+   12.5588    3.1798   22.7273 C   0  0  0  0  0  0\n+   12.8091    3.9103   23.8920 C   0  0  0  0  0  0\n+   13.2507    5.2279   23.7909 C   0  0  0  0  0  0\n+   13.4398    5.7854   22.5337 C   0  0  0  0  0  0\n+   13.1881    4.9943   21.4282 C   0  0  0  0  0  0\n+   12.7627    3.7170   21.4945 N   0  0  0  0  0  0\n+  2  8  1  0  0  0\n+  2  3  1  0  0  0\n+  2  1  1  0  0  0\n+  3  4  1  0  0  0\n+  4  5  1  0  0  0\n+  4  6  2  0  0  0\n+  4  7  2  0  0  0\n+  8  9  2  0  0  0\n+  8 13  1  0  0  0\n+  9 10  1  0  0  0\n+ 10 11  2  0  0  0\n+ 11 12  1  0  0  0\n+ 12 13  2  0  0  0\n+M  END\n+$$$$\n+C[C@@H](NS(C)(=O)=O)c1ccccn1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+ 13 13  0  0  0  0  0  0  0  0999 V2000\n+    6.8559    1.7506   21.3142 C   0  0  0  0  0  0\n+    7.4019    0.6872   20.3547 C   0  0  0  0  0  0\n+    7.4689    1.2291   18.9518 N   0  0  0  0  0  0\n+    6.4062    0.5634   17.8113 S   0  0  0  0  0  0\n+    4.8453    0.8765   18.6009 C   0  0  0  0  0  0\n+    6.4632    1.4005   16.6345 O   0  0  0  0  0  0\n+    6.5887   -0.8668   17.7602 O   0  0  0  0  0  0\n+    8.6586   -0.0013   20.8698 C   0  0  0  0  0  0\n+    9.8290    0.7331   21.0631 C   0  0  0  0  0  0\n+   10.9643    0.0817   21.5388 C   0  0  0  0  0  0\n+   10.9072   -1.2804   21.8047 C   0  0  0  0  0  0\n+    9.7156   -1.9413   21.5709 C   0  0  0  0  0  0\n+    8.6053   -1.3390   21.0982 N   0  0  0  0  0  0\n+  2  1  1  0  0  0\n+  2  3  1  0  0  0\n+  2  8  1  0  0  0\n+  3  4  1  0  0  0\n+  4  5  1  0  0  0\n+  4  6  2  0  0  0\n+  4  7  2  0  0  0\n+  8  9  2  0  0  0\n+  8 13  1  0  0  0\n+  9 10  1  0  0  0\n+ 10 11  2  0  0  0\n+ 11 12  1  0  0  0\n+ 12 13  2  0  0  0\n+M  END\n+$$$$\n+FC(F)(F)c1ccccc1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+ 10 10  0  0  0  0  0  0  0  0999 V2000\n+    9.6749    1.3998   21.0525 F   0  0  0  0  0  0\n+   10.4122    1.5718   22.1856 C   0  0  0  0  0  0\n+   10.7385    2.8940   22.2189 F   0  0  0  0  0  0\n+    9.5494    1.3747   23.2216 F   0  0  0  0  0  0\n+   11.6206    0.6719   22.2638 C   0  0  0  0  0  0\n+   12.7782    1.0724   22.9480 C   0  0  0  0  0  0\n+   13.8994    0.2427   22.9901 C   0  0  0  0  0  0\n+   13.8750   -0.9970   22.3527 C   0  0  0  0  0  0\n+   12.7278   -1.4119   21.6796 C   0  0  0  0  0  0\n+   11.6049   -0.5838   21.6354 C   0  0  0  0  0  0\n+  1  2  1  0  0  0\n+  2  3  1  0  0  0\n+  2  4  1  0  0  0\n+  2  5  1  0  0  0\n+  5  6  2  0  0  0\n+  5 10  1  0  0  0\n+  6  7  1  0  0  0\n+  7  8  2  0  0  0\n+  8  9  1  0  0  0\n+  9 10  2  0  0  0\n+M  END\n+$$$$\n+O=[SH](=O)c1ccccc1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+  9  9  0  0  0  0  0  0  0  0999 V2000\n+   13.5834    1.0389   23.2971 O   0  0  0  0  0  0\n+   12.4089    1.7539   22.8402 S   0  0  0  0  0  0\n+   11.1134    1.5953   23.4682 O   0  0  0  0  0  0\n+   12.7957    3.4745   22.8588 C   0  0  0  0  0  0\n+   13.0347    4.1328   21.6517 C   0  0  0  0  0  0\n+   13.3512    5.4908   21.6741 C   0  0  0  0  0  0\n+   13.4284    6.1723   22.8914 C   0  0  0  0  0  0\n+   13.1905    5.5006   24.0928 C   0  0  0  0  0  0\n+   12.8736    4.1434   24.0815 C   0  0  0  0  0  0\n+  1  2  2  0  0  0\n+  2  3  2  0  0  0\n+  2  4  1  0  0  0\n+  4  5  2  0  0  0\n+  4  9  1  0  0  0\n+  5  6  1  0  0  0\n+  6  7  2  0  0  0\n+  7  8  1  0  0  0\n+  8  9  2  0  0  0\n+M  END\n+$$$$\n+CSCCNC(=O)c1ccccc1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+ 13 13  0  0  0  0  0  0  0  0999 V2000\n+    5.5458   -1.4150   18.8612 C'..b'0\n+ 11 12  1  0  0  0\n+M  END\n+$$$$\n+C=Cc1ccccc1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+  8  8  0  0  0  0  0  0  0  0999 V2000\n+    3.0012    2.5994   19.2746 C   0  0  0  0  0  0\n+    3.4784    1.3846   19.5760 C   0  0  0  0  0  0\n+    4.7459    0.8376   19.0724 C   0  0  0  0  0  0\n+    5.0977   -0.4790   19.4008 C   0  0  0  0  0  0\n+    6.2949   -1.0353   18.9390 C   0  0  0  0  0  0\n+    7.1469   -0.2825   18.1324 C   0  0  0  0  0  0\n+    6.7985    1.0178   17.7793 C   0  0  0  0  0  0\n+    5.6004    1.5702   18.2385 C   0  0  0  0  0  0\n+  1  2  2  0  0  0\n+  2  3  1  0  0  0\n+  3  4  2  0  0  0\n+  3  8  1  0  0  0\n+  4  5  1  0  0  0\n+  5  6  2  0  0  0\n+  6  7  1  0  0  0\n+  7  8  2  0  0  0\n+M  END\n+$$$$\n+CC(C)(C)c1ccccc1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+ 10 10  0  0  0  0  0  0  0  0999 V2000\n+   13.4848    4.7599   24.0453 C   0  0  0  0  0  0\n+   12.5126    4.3820   22.9047 C   0  0  0  0  0  0\n+   11.1564    5.0474   23.2199 C   0  0  0  0  0  0\n+   13.0811    4.9891   21.6031 C   0  0  0  0  0  0\n+   12.3310    2.8640   22.7263 C   0  0  0  0  0  0\n+   13.0824    1.9208   23.4483 C   0  0  0  0  0  0\n+   12.9272    0.5461   23.2348 C   0  0  0  0  0  0\n+   12.0121    0.0832   22.2967 C   0  0  0  0  0  0\n+   11.2426    0.9922   21.5790 C   0  0  0  0  0  0\n+   11.3986    2.3657   21.7948 C   0  0  0  0  0  0\n+  1  2  1  0  0  0\n+  2  3  1  0  0  0\n+  2  4  1  0  0  0\n+  2  5  1  0  0  0\n+  5  6  2  0  0  0\n+  5 10  1  0  0  0\n+  6  7  1  0  0  0\n+  7  8  2  0  0  0\n+  8  9  1  0  0  0\n+  9 10  2  0  0  0\n+M  END\n+$$$$\n+CCN(C)C(=O)c1ccccc1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+ 12 12  0  0  0  0  0  0  0  0999 V2000\n+   10.6306   -0.4318   24.2468 C   0  0  0  0  0  0\n+   11.2738   -0.2591   22.8777 C   0  0  0  0  0  0\n+   11.5027    1.1477   22.5523 N   0  0  0  0  0  0\n+   10.6408    1.7231   21.5282 C   0  0  0  0  0  0\n+   12.6021    1.7847   23.1411 C   0  0  0  0  0  0\n+   13.4087    1.1762   23.8483 O   0  0  0  0  0  0\n+   12.8518    3.2389   22.9240 C   0  0  0  0  0  0\n+   12.7404    3.8481   21.6696 C   0  0  0  0  0  0\n+   12.9990    5.2139   21.5196 C   0  0  0  0  0  0\n+   13.3123    5.9914   22.6330 C   0  0  0  0  0  0\n+   13.3606    5.4074   23.8976 C   0  0  0  0  0  0\n+   13.1331    4.0370   24.0436 C   0  0  0  0  0  0\n+  1  2  1  0  0  0\n+  2  3  1  0  0  0\n+  3  4  1  0  0  0\n+  3  5  1  0  0  0\n+  5  6  2  0  0  0\n+  5  7  1  0  0  0\n+  7  8  2  0  0  0\n+  7 12  1  0  0  0\n+  8  9  1  0  0  0\n+  9 10  2  0  0  0\n+ 10 11  1  0  0  0\n+ 11 12  2  0  0  0\n+M  END\n+$$$$\n+CNC(=O)c1cccc(CCNS(C)(=O)=O)c1\n+  rDOCK(R)          3D\n+libRbt.so/2013.1/901 2013/11/27\n+ 17 17  0  0  0  0  0  0  0  0999 V2000\n+   10.0019    1.6672   21.8593 C   0  0  0  0  0  0\n+    8.7487    1.5971   21.1244 N   0  0  0  0  0  0\n+    8.6290    0.5212   20.3389 C   0  0  0  0  0  0\n+    9.4567   -0.3639   20.1329 O   0  0  0  0  0  0\n+    7.3235    0.4378   19.6088 C   0  0  0  0  0  0\n+    7.1514   -0.5242   18.6092 C   0  0  0  0  0  0\n+    5.9627   -0.5677   17.8790 C   0  0  0  0  0  0\n+    4.9453    0.3559   18.1379 C   0  0  0  0  0  0\n+    5.0962    1.3237   19.1419 C   0  0  0  0  0  0\n+    3.9963    2.3284   19.4060 C   0  0  0  0  0  0\n+    3.7241    2.6438   20.8872 C   0  0  0  0  0  0\n+    2.6087    3.6063   21.0810 N   0  0  0  0  0  0\n+    1.3263    3.1043   22.0447 S   0  0  0  0  0  0\n+    0.5403    1.9194   20.9788 C   0  0  0  0  0  0\n+    1.8577    2.3935   23.1858 O   0  0  0  0  0  0\n+    0.4357    4.2308   22.2210 O   0  0  0  0  0  0\n+    6.2789    1.3264   19.8924 C   0  0  0  0  0  0\n+  1  2  1  0  0  0\n+  2  3  1  0  0  0\n+  3  4  2  0  0  0\n+  3  5  1  0  0  0\n+  5  6  2  0  0  0\n+  5 17  1  0  0  0\n+  6  7  1  0  0  0\n+  7  8  2  0  0  0\n+  8  9  1  0  0  0\n+  9 10  1  0  0  0\n+  9 17  2  0  0  0\n+ 10 11  1  0  0  0\n+ 11 12  1  0  0  0\n+ 12 13  1  0  0  0\n+ 13 14  1  0  0  0\n+ 13 15  2  0  0  0\n+ 13 16  2  0  0  0\n+M  END\n+$$$$\n'
b
diff -r 2ba07316c7e0 -r b8838a9aa31a test-data/ligands_with_title.sdf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/ligands_with_title.sdf Wed Mar 25 16:50:17 2020 -0400
[
b'@@ -0,0 +1,759 @@\n+abc_one\r\n+\r\n+\r\n+ 26 30  0  0  0  0            999 V2000\r\n+   -8.6396    0.9568    0.0000 O   0  0\r\n+   -7.6023    1.5602    0.0000 C   0  0\r\n+   -7.6071    3.0602    0.0000 C   0  0\r\n+   -6.3104    3.8143    0.0000 C   0  0\r\n+   -5.0090    3.0685    0.0000 C   0  0\r\n+   -5.0040    1.5682    0.0000 C   0  0\r\n+   -6.3008    0.8143    0.0000 C   0  0\r\n+   -3.7006    0.8244    0.0000 C   0  0\r\n+   -3.7006   -0.6045    0.0000 N   0  0\r\n+   -2.4915   -1.3190    0.0000 C   0  0\r\n+   -2.5059   -2.8197    0.0000 N   0  0\r\n+   -1.2156   -3.5847    0.0000 C   0  0\r\n+   -1.2329   -5.0846    0.0000 C   0  0\r\n+   -2.5404   -5.8196    0.0000 O   0  0\r\n+   -3.8308   -5.0547    0.0000 C   0  0\r\n+   -3.8135   -3.5548    0.0000 C   0  0\r\n+   -1.2274   -0.6045    0.0000 C   0  0\r\n+    0.0000   -1.3190    0.0000 O   0  0\r\n+    1.2274   -0.6045    0.0000 C   0  0\r\n+    2.4732   -1.3190    0.0000 N   0  0\r\n+    3.7372   -0.6045    0.0000 C   0  0\r\n+    3.7372    0.8244    0.0000 C   0  0\r\n+    2.4732    1.5389    0.0000 C   0  0\r\n+    1.2274    0.8244    0.0000 C   0  0\r\n+   -1.2274    0.8244    0.0000 C   0  0\r\n+   -2.4915    1.5389    0.0000 N   0  0\r\n+  1  2  1  0\r\n+  2  3  1  0\r\n+  3  4  2  0\r\n+  4  5  1  0\r\n+  5  6  2  0\r\n+  6  7  1  0\r\n+  2  7  2  0\r\n+  6  8  1  0\r\n+  8  9  1  0\r\n+  9 10  2  0\r\n+ 10 11  1  0\r\n+ 11 12  1  0\r\n+ 12 13  1  0\r\n+ 13 14  1  0\r\n+ 14 15  1  0\r\n+ 15 16  1  0\r\n+ 11 16  1  0\r\n+ 10 17  1  0\r\n+ 17 18  1  0\r\n+ 18 19  1  0\r\n+ 19 20  2  0\r\n+ 20 21  1  0\r\n+ 21 22  2  0\r\n+ 22 23  1  0\r\n+ 23 24  2  0\r\n+ 19 24  1  0\r\n+ 24 25  1  0\r\n+ 17 25  2  0\r\n+ 25 26  1  0\r\n+  8 26  2  0\r\n+M  END\r\n+> <mr_id>\r\n+4358263\r\n+\r\n+> <SMI>\r\n+Oc1cccc(c1)c2nc(N3CCOCC3)c4oc5ncccc5c4n2\r\n+\r\n+$$$$\r\n+abc_two\r\n+\r\n+\r\n+ 43 51  0  0  1  0            999 V2000\r\n+   -4.7204    3.3431    0.0000 C   0  0\r\n+   -4.1471    2.2890    0.0000 O   0  0\r\n+   -2.6500    2.2500    0.0000 C   0  0  2  0  0  0\r\n+   -1.8100    3.5000    0.0000 C   0  0  1  0  0  0\r\n+   -0.2400    3.5200    0.0000 C   0  0\r\n+    0.5000    2.1800    0.0000 C   0  0  1  0  0  0\r\n+   -1.0600    2.1800    0.0000 O   0  0\r\n+   -1.8300    0.9300    0.0000 C   0  0  1  0  0  0\r\n+   -3.0300    0.9300    0.0000 C   0  0\r\n+   -0.9800   -0.7800    0.0000 N   0  0\r\n+   -2.1300   -1.4600    0.0000 C   0  0\r\n+   -3.3200   -0.7600    0.0000 C   0  0\r\n+   -4.5500   -1.4800    0.0000 C   0  0\r\n+   -4.5800   -2.7700    0.0000 C   0  0\r\n+   -3.3400   -3.4700    0.0000 C   0  0\r\n+   -2.1300   -2.7900    0.0000 C   0  0\r\n+    0.2400   -2.7700    0.0000 C   0  0\r\n+    1.4300   -3.4700    0.0000 C   0  0\r\n+    1.7600   -4.9700    0.0000 C   0  0\r\n+    3.2600   -5.0800    0.0000 N   0  0\r\n+    3.8500   -3.6300    0.0000 C   0  0\r\n+    4.9971   -3.2777    0.0000 O   0  0\r\n+    2.6600   -2.7500    0.0000 C   0  0\r\n+    2.6800   -1.4600    0.0000 C   0  0\r\n+    3.7900    0.5600    0.0000 C   0  0\r\n+    4.9600    1.2800    0.0000 C   0  0\r\n+    4.9600    2.6300    0.0000 C   0  0\r\n+    3.8100    3.2900    0.0000 C   0  0\r\n+    2.6400    2.5900    0.0000 C   0  0\r\n+    2.6400    1.2400    0.0000 C   0  0\r\n+    1.4900    0.5400    0.0000 N   0  0\r\n+    1.4500   -0.7600    0.0000 C   0  0\r\n+    0.2400   -1.4400    0.0000 C   0  0\r\n+   -2.5511    4.8030    0.0000 N   0  0\r\n+   -1.9442    5.8382    0.0000 C   0  0\r\n+   -4.0519    4.8135    0.0000 C   0  0\r\n+   -4.6588    3.7783    0.0000 O   0  0\r\n+   -4.7941    6.1180    0.0000 C   0  0\r\n+   -6.2940    6.1306    0.0000 C   0  0\r\n+   -7.0331    7.4359    0.0000 C   0  0\r\n+   -6.2722    8.7286    0.0000 C   0  0\r\n+   -4.7723    8.7160    0.0000 C   0  0\r\n+   -4.0332    7.4108    0.0000 C   0  0\r\n+  1  2  1  0\r\n+  3  2  1  6\r\n+  3  4  1  0\r\n+  4  5  1  0\r\n+  6  5  1  6\r\n+  6  7  1  0\r\n+  7  8  1  0\r\n+  3  8  1  0\r\n+  8  9  1  1\r\n+  8 10  1  0\r\n+ 10 11  1  0\r\n+ 11 12  1  0\r\n+ 12 13  2  0\r\n+ 13 14  1  0\r\n+ 14 15  2  0\r\n+ 15 16  1  0\r\n+ 11 16  2  0\r\n+ 16 17  1  0\r\n+ 17 18  1  0\r\n+ 18 19  1  0\r\n+ 19 20  1  0\r\n+ 20 21  1  0\r\n+ 21 22  2  0\r\n+ 21 23  1  0\r\n+ 18 23  2  '..b'    0.9300    0.0000 C   0  0\r\n+   -2.6500    2.2500    0.0000 C   0  0  2  0  0  0\r\n+   -4.1471    2.2892    0.0000 O   0  0\r\n+   -4.7748    1.2665    0.0000 C   0  0\r\n+   -0.9800   -0.7800    0.0000 N   0  0\r\n+   -2.1300   -1.4600    0.0000 C   0  0\r\n+   -3.3200   -0.7600    0.0000 C   0  0\r\n+   -4.5500   -1.4800    0.0000 C   0  0\r\n+   -4.5800   -2.7700    0.0000 C   0  0\r\n+   -3.3400   -3.4700    0.0000 C   0  0\r\n+   -2.1300   -2.7900    0.0000 C   0  0\r\n+    0.2400   -2.7700    0.0000 C   0  0\r\n+    1.4300   -3.4700    0.0000 C   0  0\r\n+    1.7600   -4.9700    0.0000 C   0  0\r\n+    3.2600   -5.0800    0.0000 N   0  0\r\n+    3.8500   -3.6300    0.0000 C   0  0\r\n+    4.9971   -3.2777    0.0000 O   0  0\r\n+    2.6600   -2.7500    0.0000 C   0  0\r\n+    2.6800   -1.4600    0.0000 C   0  0\r\n+    3.7900    0.5600    0.0000 C   0  0\r\n+    4.9600    1.2800    0.0000 C   0  0\r\n+    4.9600    2.6300    0.0000 C   0  0\r\n+    3.8100    3.2900    0.0000 C   0  0\r\n+    2.6400    2.5900    0.0000 C   0  0\r\n+    2.6400    1.2400    0.0000 C   0  0\r\n+    1.4900    0.5400    0.0000 N   0  0\r\n+    1.4500   -0.7600    0.0000 C   0  0\r\n+    0.2400   -1.4400    0.0000 C   0  0\r\n+  1  2  1  0\r\n+  3  2  1  6\r\n+  3  4  1  0\r\n+  5  4  1  6\r\n+  5  6  1  0\r\n+  6  7  1  0\r\n+  7  8  1  1\r\n+  7  9  1  0\r\n+  3  9  1  0\r\n+  9 10  1  6\r\n+ 10 11  1  0\r\n+  7 12  1  0\r\n+ 12 13  1  0\r\n+ 13 14  1  0\r\n+ 14 15  2  0\r\n+ 15 16  1  0\r\n+ 16 17  2  0\r\n+ 17 18  1  0\r\n+ 13 18  2  0\r\n+ 18 19  1  0\r\n+ 19 20  1  0\r\n+ 20 21  1  0\r\n+ 21 22  1  0\r\n+ 22 23  1  0\r\n+ 23 24  2  0\r\n+ 23 25  1  0\r\n+ 20 25  2  0\r\n+ 25 26  1  0\r\n+ 26 27  1  0\r\n+ 27 28  1  0\r\n+ 28 29  2  0\r\n+ 29 30  1  0\r\n+ 30 31  2  0\r\n+ 31 32  1  0\r\n+ 27 32  2  0\r\n+ 32 33  1  0\r\n+  5 33  1  0\r\n+ 33 34  1  0\r\n+ 26 34  2  0\r\n+ 34 35  1  0\r\n+ 12 35  1  0\r\n+ 19 35  2  0\r\n+M  END\r\n+> <mr_id>\r\n+66\r\n+\r\n+> <SMI>\r\n+CN[C@@H]1C[C@H]2O[C@@](C)([C@@H]1OC)n3c4ccccc4c5c6CNC(=O)c6c7c8ccccc8n2c7c35\r\n+\r\n+$$$$\r\n+abc_eleven\r\n+\r\n+\r\n+ 32 35  0  0  1  0            999 V2000\r\n+    7.1381   -2.1568    0.0000 C   0  0\r\n+    6.0456   -2.6531    0.0000 C   0  0\r\n+    4.7409   -1.9129    0.0000 N   0  0\r\n+    3.6552   -2.9294    0.0000 C   0  0\r\n+    2.1855   -2.6254    0.0000 C   0  0\r\n+    1.7138   -1.2033    0.0000 C   0  0\r\n+    2.5889    0.0182    0.0000 C   0  0\r\n+    3.7889    0.0269    0.0000 O   0  0\r\n+    1.7138    1.2033    0.0000 N   0  0\r\n+    0.2917    0.7475    0.0000 C   0  0\r\n+   -1.0028    1.5132    0.0000 C   0  0\r\n+   -2.3155    0.7475    0.0000 C   0  0\r\n+   -2.3155   -0.7475    0.0000 C   0  0\r\n+   -3.3560   -1.3452    0.0000 F   0  0\r\n+   -1.0028   -1.5132    0.0000 C   0  0\r\n+    0.2917   -0.7475    0.0000 C   0  0\r\n+    4.2542   -4.2907    0.0000 C   0  0\r\n+    3.6559   -5.3308    0.0000 C   0  0\r\n+    5.7448   -4.1226    0.0000 C   0  0\r\n+    6.7580   -5.2264    0.0000 C   0  0\r\n+    6.3978   -6.3710    0.0000 O   0  0\r\n+    8.2231   -4.9012    0.0000 N   0  0\r\n+    9.2380   -6.0068    0.0000 C   0  0\r\n+   10.7032   -5.6816    0.0000 C   0  0  2  0  0  0\r\n+   11.0634   -4.5369    0.0000 O   0  0\r\n+   11.7181   -6.7872    0.0000 C   0  0\r\n+   13.1833   -6.4620    0.0000 N   0  0\r\n+   14.1993   -7.5656    0.0000 C   0  0\r\n+   15.6630   -7.2376    0.0000 C   0  0\r\n+   16.1108   -5.8060    0.0000 O   0  0\r\n+   15.0949   -4.7024    0.0000 C   0  0\r\n+   13.6312   -5.0304    0.0000 C   0  0\r\n+  1  2  1  0\r\n+  2  3  1  0\r\n+  3  4  1  0\r\n+  4  5  1  0\r\n+  5  6  2  0\r\n+  6  7  1  0\r\n+  7  8  2  0\r\n+  7  9  1  0\r\n+  9 10  1  0\r\n+ 10 11  1  0\r\n+ 11 12  2  0\r\n+ 12 13  1  0\r\n+ 13 14  1  0\r\n+ 13 15  2  0\r\n+ 15 16  1  0\r\n+  6 16  1  0\r\n+ 10 16  2  0\r\n+  4 17  2  0\r\n+ 17 18  1  0\r\n+ 17 19  1  0\r\n+  2 19  2  0\r\n+ 19 20  1  0\r\n+ 20 21  2  0\r\n+ 20 22  1  0\r\n+ 22 23  1  0\r\n+ 23 24  1  0\r\n+ 24 25  1  6\r\n+ 24 26  1  0\r\n+ 26 27  1  0\r\n+ 27 28  1  0\r\n+ 28 29  1  0\r\n+ 29 30  1  0\r\n+ 30 31  1  0\r\n+ 31 32  1  0\r\n+ 27 32  1  0\r\n+M  END\r\n+> <mr_id>\r\n+4362206\r\n+\r\n+> <SMI>\r\n+Cc1[nH]c(/C=C/2\\C(=O)Nc3ccc(F)cc23)c(C)c1C(=O)NC[C@H](O)CN4CCOCC4\r\n+\r\n+$$$$\r\n'
b
diff -r 2ba07316c7e0 -r b8838a9aa31a test-data/name_file.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/name_file.txt Wed Mar 25 16:50:17 2020 -0400
b
@@ -0,0 +1,2 @@
+abc_one
+abc_eleven
b
diff -r 2ba07316c7e0 -r b8838a9aa31a test-data/transfs.sdf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/transfs.sdf Wed Mar 25 16:50:17 2020 -0400
b
@@ -0,0 +1,186 @@
+NC(=NO)NCCc1ccc(S(N)(=O)=O)cc1
+     RDKit          3D
+
+ 17 17  0  0  0  0  0  0  0  0999 V2000
+   13.9302   -2.3261   22.5538 N   0  0  0  0  0  0  0  0  0  0  0  0
+   13.7238   -1.7706   23.7651 C   0  0  0  0  0  0  0  0  0  0  0  0
+   12.9709   -0.6511   23.8871 N   0  0  0  0  0  0  0  0  0  0  0  0
+   12.3387    0.0187   22.7430 C   0  0  0  0  0  0  0  0  0  0  0  0
+   10.9859    0.6425   23.1019 C   0  0  0  0  0  0  0  0  0  0  0  0
+    9.9117    0.4770   22.0521 C   0  0  0  0  0  0  0  0  0  0  0  0
+    9.6451   -0.7505   21.4256 C   0  0  0  0  0  0  0  0  0  0  0  0
+    8.6682   -0.8525   20.4388 C   0  0  0  0  0  0  0  0  0  0  0  0
+    7.9346    0.2745   20.0745 C   0  0  0  0  0  0  0  0  0  0  0  0
+    6.7444    0.1313   18.7757 S   0  0  0  0  0  0  0  0  0  0  0  0
+    5.4465    0.9786   19.4142 N   0  0  0  0  0  0  0  0  0  0  0  0
+    7.2019    0.8863   17.6332 O   0  0  0  0  0  0  0  0  0  0  0  0
+    6.3224   -1.2458   18.6840 O   0  0  0  0  0  0  0  0  0  0  0  0
+    8.1747    1.5057   20.6849 C   0  0  0  0  0  0  0  0  0  0  0  0
+    9.1574    1.6019   21.6751 C   0  0  0  0  0  0  0  0  0  0  0  0
+   14.2946   -2.3692   24.8521 N   0  0  0  0  0  0  0  0  0  0  0  0
+   14.1962   -1.9686   26.1940 O   0  0  0  0  0  0  0  0  0  0  0  0
+  1  2  1  0
+  2  3  1  0
+  2 16  2  0
+  3  4  1  0
+  4  5  1  0
+  5  6  1  0
+  6  7  2  0
+  6 15  1  0
+  7  8  1  0
+  8  9  2  0
+  9 10  1  0
+  9 14  1  0
+ 10 11  1  0
+ 10 12  2  0
+ 10 13  2  0
+ 14 15  2  0
+ 16 17  1  0
+M  CHG  1  16   1
+M  END
+>  <CHROM.0>  (1) 
+65.93051459,169.99861208,-59.68475000
+
+>  <CHROM.1>  (1) 
+145.66221290,-139.37796603,47.03157881,136.25602749,64.42425104,102.07311975
+9.88696665,-0.33137891,21.45559055,-0.16902134,0.67278808,-2.52516849
+
+>  <Name>  (1) 
+NC(=NO)NCCc1ccc(S(N)(=O)=O)cc1
+
+>  <RI>  (1) 
+1.41352e+07
+
+>  <Rbt.Current_Directory>  (1) 
+/data/dnb02/galaxy_db/job_working_directory/007/399/7399639/working
+
+>  <Rbt.Executable>  (1) 
+rbdock ($Id: //depot/dev/client3/rdock/2013.1/src/exe/rbdock.cxx#4 $)
+
+>  <Rbt.Library>  (1) 
+libRbt.so (2013.1, Build901 2013/11/27)
+
+>  <Rbt.Parameter_File>  (1) 
+/usr/local/tools/_conda/envs/__rdock@2013.1-0/share/rdock-2013.1-1/data/scripts/dock.prm
+
+>  <Rbt.Receptor>  (1) 
+receptor.prm
+
+>  <SCORE>  (1) 
+-30.3434
+
+>  <SCORE.INTER>  (1) 
+-15.8664
+
+>  <SCORE.INTER.CONST>  (1) 
+1
+
+>  <SCORE.INTER.POLAR>  (1) 
+-1.12178
+
+>  <SCORE.INTER.REPUL>  (1) 
+0
+
+>  <SCORE.INTER.ROT>  (1) 
+5
+
+>  <SCORE.INTER.VDW>  (1) 
+-22.4523
+
+>  <SCORE.INTER.norm>  (1) 
+-0.933318
+
+>  <SCORE.INTRA>  (1) 
+-2.33416
+
+>  <SCORE.INTRA.DIHEDRAL>  (1) 
+-1.88099
+
+>  <SCORE.INTRA.DIHEDRAL.0>  (1) 
+10.7462
+
+>  <SCORE.INTRA.POLAR>  (1) 
+0
+
+>  <SCORE.INTRA.POLAR.0>  (1) 
+0
+
+>  <SCORE.INTRA.REPUL>  (1) 
+0
+
+>  <SCORE.INTRA.REPUL.0>  (1) 
+0
+
+>  <SCORE.INTRA.VDW>  (1) 
+-1.39366
+
+>  <SCORE.INTRA.VDW.0>  (1) 
+0.160377
+
+>  <SCORE.INTRA.norm>  (1) 
+-0.137303
+
+>  <SCORE.RESTR>  (1) 
+
+
+>  <SCORE.RESTR.norm>  (1) 
+0
+
+>  <SCORE.SYSTEM>  (1) 
+-12.1428
+
+>  <SCORE.SYSTEM.CONST>  (1) 
+0
+
+>  <SCORE.SYSTEM.DIHEDRAL>  (1) 
+0.706521
+
+>  <SCORE.SYSTEM.POLAR>  (1) 
+-3.2443
+
+>  <SCORE.SYSTEM.REPUL>  (1) 
+0.676691
+
+>  <SCORE.SYSTEM.VDW>  (1) 
+-4.8489
+
+>  <SCORE.SYSTEM.norm>  (1) 
+-0.714283
+
+>  <SCORE.heavy>  (1) 
+17
+
+>  <SCORE.norm>  (1) 
+-1.7849
+
+>  <TransFSReceptor>  (1) 
+receptor
+
+>  <TransFSScore>  (1) 
+0.999997
+
+>  <Max_SuCOS_Score>  (1) 
+0.44454780182058773
+
+>  <Max_SuCOS_FeatureMap_Score>  (1) 
+0.19084575451625094
+
+>  <Max_SuCOS_Protrude_Score>  (1) 
+0.69824984912492449
+
+>  <Max_SuCOS_Cluster>  (1) 
+dataset_14281034.dat
+
+>  <Max_SuCOS_Index>  (1) 
+11
+
+>  <Cum_SuCOS_Score>  (1) 
+3.7946511319966216
+
+>  <Cum_SuCOS_FeatureMap_Score>  (1) 
+0.9189792141377946
+
+>  <Cum_SuCOS_Protrude_Score>  (1) 
+6.6703230498554467
+
+$$$$
b
diff -r 2ba07316c7e0 -r b8838a9aa31a test-data/transfs_changed_name.sdf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/transfs_changed_name.sdf Wed Mar 25 16:50:17 2020 -0400
b
@@ -0,0 +1,186 @@
+NC(=NO)NCCc1ccc(S(N)(=O)=O)cc1__xbrsjqssafh2t
+ OpenBabel03212010583D
+
+ 17 17  0  0  0  0  0  0  0  0999 V2000
+   13.9302   -2.3261   22.5538 N   0  0  0  0  0  0  0  0  0  0  0  0
+   13.7238   -1.7706   23.7651 C   0  0  0  0  0  0  0  0  0  0  0  0
+   12.9709   -0.6511   23.8871 N   0  0  0  0  0  0  0  0  0  0  0  0
+   12.3387    0.0187   22.7430 C   0  0  0  0  0  0  0  0  0  0  0  0
+   10.9859    0.6425   23.1019 C   0  0  0  0  0  0  0  0  0  0  0  0
+    9.9117    0.4770   22.0521 C   0  0  0  0  0  0  0  0  0  0  0  0
+    9.6451   -0.7505   21.4256 C   0  0  0  0  0  0  0  0  0  0  0  0
+    8.6682   -0.8525   20.4388 C   0  0  0  0  0  0  0  0  0  0  0  0
+    7.9346    0.2745   20.0745 C   0  0  0  0  0  0  0  0  0  0  0  0
+    6.7444    0.1313   18.7757 S   0  0  0  0  0  0  0  0  0  0  0  0
+    5.4465    0.9786   19.4142 N   0  0  0  0  0  0  0  0  0  0  0  0
+    7.2019    0.8863   17.6332 O   0  0  0  0  0  0  0  0  0  0  0  0
+    6.3224   -1.2458   18.6840 O   0  0  0  0  0  0  0  0  0  0  0  0
+    8.1747    1.5057   20.6849 C   0  0  0  0  0  0  0  0  0  0  0  0
+    9.1574    1.6019   21.6751 C   0  0  0  0  0  0  0  0  0  0  0  0
+   14.2946   -2.3692   24.8521 N   0  3  0  0  0  0  0  0  0  0  0  0
+   14.1962   -1.9686   26.1940 O   0  0  0  0  0  0  0  0  0  0  0  0
+  1  2  1  0  0  0  0
+  2  3  1  0  0  0  0
+  2 16  2  0  0  0  0
+  3  4  1  0  0  0  0
+  4  5  1  0  0  0  0
+  5  6  1  0  0  0  0
+  6  7  2  0  0  0  0
+  6 15  1  0  0  0  0
+  7  8  1  0  0  0  0
+  8  9  2  0  0  0  0
+  9 10  1  0  0  0  0
+  9 14  1  0  0  0  0
+ 10 11  1  0  0  0  0
+ 10 12  2  0  0  0  0
+ 10 13  2  0  0  0  0
+ 14 15  2  0  0  0  0
+ 16 17  1  0  0  0  0
+M  CHG  1  16   1
+M  END
+>  <CHROM.0>
+65.93051459,169.99861208,-59.68475000
+
+>  <CHROM.1>
+145.66221290,-139.37796603,47.03157881,136.25602749,64.42425104,102.07311975
+9.88696665,-0.33137891,21.45559055,-0.16902134,0.67278808,-2.52516849
+
+>  <Name>
+NC(=NO)NCCc1ccc(S(N)(=O)=O)cc1
+
+>  <RI>
+1.41352e+07
+
+>  <Rbt.Current_Directory>
+/data/dnb02/galaxy_db/job_working_directory/007/399/7399639/working
+
+>  <Rbt.Executable>
+rbdock ($Id: //depot/dev/client3/rdock/2013.1/src/exe/rbdock.cxx#4 $)
+
+>  <Rbt.Library>
+libRbt.so (2013.1, Build901 2013/11/27)
+
+>  <Rbt.Parameter_File>
+/usr/local/tools/_conda/envs/__rdock@2013.1-0/share/rdock-2013.1-1/data/scripts/dock.prm
+
+>  <Rbt.Receptor>
+receptor.prm
+
+>  <SCORE>
+-30.3434
+
+>  <SCORE.INTER>
+-15.8664
+
+>  <SCORE.INTER.CONST>
+1
+
+>  <SCORE.INTER.POLAR>
+-1.12178
+
+>  <SCORE.INTER.REPUL>
+0
+
+>  <SCORE.INTER.ROT>
+5
+
+>  <SCORE.INTER.VDW>
+-22.4523
+
+>  <SCORE.INTER.norm>
+-0.933318
+
+>  <SCORE.INTRA>
+-2.33416
+
+>  <SCORE.INTRA.DIHEDRAL>
+-1.88099
+
+>  <SCORE.INTRA.DIHEDRAL.0>
+10.7462
+
+>  <SCORE.INTRA.POLAR>
+0
+
+>  <SCORE.INTRA.POLAR.0>
+0
+
+>  <SCORE.INTRA.REPUL>
+0
+
+>  <SCORE.INTRA.REPUL.0>
+0
+
+>  <SCORE.INTRA.VDW>
+-1.39366
+
+>  <SCORE.INTRA.VDW.0>
+0.160377
+
+>  <SCORE.INTRA.norm>
+-0.137303
+
+>  <SCORE.RESTR>
+
+
+>  <SCORE.RESTR.norm>
+0
+
+>  <SCORE.SYSTEM>
+-12.1428
+
+>  <SCORE.SYSTEM.CONST>
+0
+
+>  <SCORE.SYSTEM.DIHEDRAL>
+0.706521
+
+>  <SCORE.SYSTEM.POLAR>
+-3.2443
+
+>  <SCORE.SYSTEM.REPUL>
+0.676691
+
+>  <SCORE.SYSTEM.VDW>
+-4.8489
+
+>  <SCORE.SYSTEM.norm>
+-0.714283
+
+>  <SCORE.heavy>
+17
+
+>  <SCORE.norm>
+-1.7849
+
+>  <TransFSReceptor>
+receptor
+
+>  <TransFSScore>
+0.999997
+
+>  <Max_SuCOS_Score>
+0.44454780182058773
+
+>  <Max_SuCOS_FeatureMap_Score>
+0.19084575451625094
+
+>  <Max_SuCOS_Protrude_Score>
+0.69824984912492449
+
+>  <Max_SuCOS_Cluster>
+dataset_14281034.dat
+
+>  <Max_SuCOS_Index>
+11
+
+>  <Cum_SuCOS_Score>
+3.7946511319966216
+
+>  <Cum_SuCOS_FeatureMap_Score>
+0.9189792141377946
+
+>  <Cum_SuCOS_Protrude_Score>
+6.6703230498554467
+
+$$$$