Repository 'tleap'
hg clone https://toolshed.g2.bx.psu.edu/repos/chemteam/tleap

Changeset 0:3de1359b86cc (2022-01-27)
Commit message:
"planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/ commit def3e8d4a983ab47ceedde678f585b54c79bb8d1"
added:
macros.xml
parmconv.py
template_mmpbsa_mmgbsa.j2
template_parmconv.j2
test-data/1err_desolvated_mini.nc
test-data/JZ4.mol2
test-data/LigA.mol2
test-data/LigA.pdb
test-data/LigA_output.mol2
test-data/LigA_output.pdb
test-data/LigA_output.top
test-data/LigA_output.txt
test-data/LigA_prmchk.mol2
test-data/ZAFF.frcmod
test-data/ZAFF.prep
test-data/base_GMX.gro
test-data/base_GMX.itp
test-data/cid1.inpcrd
test-data/cid1.prmtop
test-data/complex.prmtop
test-data/leap_testfile.txt
test-data/ligand.prmtop
test-data/receptor.prmtop
test-data/sarscov2_helicase_ZincBindingDomain.pdb
test-data/solv_ions.gro
test-data/topol_solv.top
tleap.xml
b
diff -r 000000000000 -r 3de1359b86cc macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,582 @@\n+<macros>\n+\t<token name="@TOOL_VERSION@">21.10</token>\n+\t<xml name="requirements">\n+\t\t<requirements>\n+\t\t\t<requirement type="package" version="@TOOL_VERSION@">ambertools</requirement>\n+\t\t\t<yield/>\n+\t\t</requirements>\n+\t</xml>\n+\t<xml name="builtin_amberfiles">\n+\t\t<param name="arg_filename" type="select" label="File">\n+\t\t\t<option value="epASN.prepin">epASN.prepin</option>\n+\t\t\t<option value="epACE.prepin">epACE.prepin</option>\n+\t\t\t<option value="GLYCAM_06j-1.prep">GLYCAM_06j-1.prep</option>\n+\t\t\t<option value="toyrna.in">toyrna.in</option>\n+\t\t\t<option value="epTRP.prepin">epTRP.prepin</option>\n+\t\t\t<option value="epSER.prepin">epSER.prepin</option>\n+\t\t\t<option value="epALA.prepin">epALA.prepin</option>\n+\t\t\t<option value="epASP.prepin">epASP.prepin</option>\n+\t\t\t<option value="amino12.in">amino12.in</option>\n+\t\t\t<option value="amino10.in">amino10.in</option>\n+\t\t\t<option value="epPHE.prepin">epPHE.prepin</option>\n+\t\t\t<option value="uni_amino03.in">uni_amino03.in</option>\n+\t\t\t<option value="aminoct12.in">aminoct12.in</option>\n+\t\t\t<option value="epTHR.prepin">epTHR.prepin</option>\n+\t\t\t<option value="uni_aminoct03.in">uni_aminoct03.in</option>\n+\t\t\t<option value="epNME.prepin">epNME.prepin</option>\n+\t\t\t<option value="chcl3.in">chcl3.in</option>\n+\t\t\t<option value="all_aminont03.in">all_aminont03.in</option>\n+\t\t\t<option value="epTYR.prepin">epTYR.prepin</option>\n+\t\t\t<option value="epVAL.prepin">epVAL.prepin</option>\n+\t\t\t<option value="epGLU.prepin">epGLU.prepin</option>\n+\t\t\t<option value="meoh.in">meoh.in</option>\n+\t\t\t<option value="all_aminoct03.in">all_aminoct03.in</option>\n+\t\t\t<option value="epHID.prepin">epHID.prepin</option>\n+\t\t\t<option value="all_amino03.in">all_amino03.in</option>\n+\t\t\t<option value="aminont10.in">aminont10.in</option>\n+\t\t\t<option value="epLEU.prepin">epLEU.prepin</option>\n+\t\t\t<option value="GLYCAM_lipids_06h.prep">GLYCAM_lipids_06h.prep</option>\n+\t\t\t<option value="GLYCAM_06EPb.prep">GLYCAM_06EPb.prep</option>\n+\t\t\t<option value="epILE.prepin">epILE.prepin</option>\n+\t\t\t<option value="epHIE.prepin">epHIE.prepin</option>\n+\t\t\t<option value="aminoct10.in">aminoct10.in</option>\n+\t\t\t<option value="epCYS.prepin">epCYS.prepin</option>\n+\t\t\t<option value="epGLN.prepin">epGLN.prepin</option>\n+\t\t\t<option value="epLYS.prepin">epLYS.prepin</option>\n+\t\t\t<option value="epARG.prepin">epARG.prepin</option>\n+\t\t\t<option value="epGLY.prepin">epGLY.prepin</option>\n+\t\t\t<option value="nma.in">nma.in</option>\n+\t\t\t<option value="uni_aminont03.in">uni_aminont03.in</option>\n+\t\t\t<option value="nucleic10.in">nucleic10.in</option>\n+\t\t\t<option value="epMET.prepin">epMET.prepin</option>\n+\t\t\t<option value="dna_nuc94-bsc0_chiOl4-ezOL1.in">dna_nuc94-bsc0_chiOl4-ezOL1.in</option>\n+\t\t\t<option value="aminont12.in">aminont12.in</option>\n+\t\t\t<option value="protonated_nucleic/RGE_noP.pdb">protonated_nucleic/RGE_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/DA+_noP.pdb">protonated_nucleic/DA+_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/DC+.pdb">protonated_nucleic/DC+.pdb</option>\n+\t\t\t<option value="protonated_nucleic/RC+_noP.pdb">protonated_nucleic/RC+_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/DC+_noP.pdb">protonated_nucleic/DC+_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/RC+.pdb">protonated_nucleic/RC+.pdb</option>\n+\t\t\t<option value="protonated_nucleic/RGE.pdb">protonated_nucleic/RGE.pdb</option>\n+\t\t\t<option value="protonated_nucleic/DTE_noP.pdb">protonated_nucleic/DTE_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/DGE_noP.pdb">protonated_nucleic/DGE_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/RG-.pdb">protonated_nucleic/RG-.pdb</option>\n+\t\t\t<option value="protonated_nucleic/RU-_noP.pdb">protonated_nucleic/RU-_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/DT-_noP.pdb">protonated_nucleic/DT-_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/RA+_noP.pdb">protonated_nucleic/RA+_noP.pdb</option>\n+\t\t\t<option value="protonated_nucleic/DA+.pdb">protonated_nucleic/DA+.pdb</op'..b'on value="Gibbs">Gibbs</option>\n+\t\t\t<option value="UseResIds">UseResIds</option>\n+\t\t\t<option value="Charmm">Charmm</option>\n+\t\t\t<option value="DeleteExtraPointAngles">DeleteExtraPointAngles</option>\n+\t\t\t<option value="FlexibleWater">FlexibleWater</option>\n+\t\t\t<option value="PBRadii">PBRadii</option>\n+\t\t\t<option value="Dielectric">Dielectric</option>\n+\t\t\t<option value="dipole_damp_factor">dipole_damp_factor</option>\n+\t\t\t<option value="sceescalefactor">sceescalefactor</option>\n+\t\t\t<option value="scnbscalefactor">scnbscalefactor</option>\n+\t\t\t<option value="CMAP">CMAP</option>\n+\t\t\t<option value="PHIPSIMAP">PHIPSIMAP</option>\n+\t\t\t<option value="ipol">ipol</option>\n+\t\t\t<option value="nocenter">nocenter</option>\n+\t\t\t<option value="reorder_residues">reorder_residues</option>\n+\t\t</param>\n+\t</xml>\n+\t<xml name="settingoptions">\n+\t\t<param name="usersetting" label="setting" type="select" help="If unsure of what to choose, please refer to the \'help\' message for this command by scrolling down this page, to see which settings apply to each command.">\n+\t\t\t<option value="on">ON</option>\n+\t\t\t<option value="off">OFF</option>\n+\t\t\t<option value="bondi">bondi</option>\n+\t\t\t<option value="mbondi">mbondi</option>\n+\t\t\t<option value="mbondi2">mbondi2</option>\n+\t\t\t<option value="mbondi3">mbondi3</option>\n+\t\t\t<option value="parse">parse</option>\n+\t\t\t<option value="pbamber">pbamber</option>\n+\t\t\t<option value="amber6">amber6</option>\n+\t\t\t<option value="distance">distance</option>\n+\t\t\t<option value="constant">constant</option>\n+\t\t\t<option value="real">real</option>\n+\t\t\t<option value="integer">integer</option>\n+\t\t</param>\n+\t</xml>\n+\t<xml name="solvateparams">\n+\t\t<param name="arg_solute" label="solute UNIT" type="text" value="" help="This is the variable name for the target UNIT, which can be a protein, ligand, or any other unique molecular component of the system that is loaded into LEaP and you are now trying to solvate. "/>\n+\t\t<param name="arg_solvent" label="solvent UNIT" type="text" value="" help="The UNIT name for the water model you would like to use. Options include TIP3PBOX, TIP4PBOX, TIP4PEWBOX, and TIP5PBOX. "/>\n+\t\t<param name="arg_buffer" label="buffer value" type="text" value="" help="object"/>\n+\t\t<param name="arg_closeness" label="closeness value" type="text" value="" help="This is used to control the extent to which solvent atoms overlap solute atoms. The default value is 1.0, which allows no overlap. "/>\n+\t</xml>\n+\t<xml name="amberfiles_conditional">\n+\t\t<conditional name="file_source">\n+\t\t\t<param name="file_source_selector" type="select" label="Select file source">\n+\t\t\t\t<option value="history">From history</option>\n+\t\t\t\t<option value="builtin">From Built-in AmberTools data</option>\n+\t\t\t</param>\n+\t\t\t<when value="history">\n+\t\t\t\t<expand macro="loadfile" />\n+\t\t\t</when>\n+\t\t\t<when value="builtin">\n+\t\t\t\t<expand macro="builtin_amberfiles" />\n+\t\t\t</when>\n+\t\t</conditional>\n+\t</xml>\n+\t<xml name="citations">\n+\t\t<citations>\n+\t\t\t<citation type="doi">10.1002/jcc.20290</citation>\n+\t\t\t<citation type="bibtex">\n+        @misc{ambertools, author = {D.A. Case, I.Y. Ben-Shalom, S.R. Brozell, D.S. Cerutti, T.E. Cheatham, III, V.W.D. Cruzeiro, T.A. Darden, R.E. Duke, D. Ghoreishi, M.K. Gilson, H. Gohlke, A.W. Goetz, D. Greene, R Harris, N. Homeyer, S. Izadi, A.\n+        Kovalenko, T. Kurtzman, T.S. Lee, S. LeGrand, P. Li, C. Lin, J. Liu, T. Luchko, R. Luo, D.J. Mermelstein, K.M. Merz, Y. Miao, G. Monard, C. Nguyen, H. Nguyen, I. Omelyan, A. Onufriev, F. Pan, R. Qi, D.R. Roe, A. Roitberg, C. Sagui, S. Schott-Verdugo,\n+        J. Shen, C.L. Simmerling, J. Smith, R. Salomon-Ferrer, J. Swails, R.C. Walker, J. Wang, H. Wei, R.M. Wolf, X. Wu, L. Xiao, D.M. York and P.A. Kollman }, year = {2018}, title = {AMBER 2018}, publisher = {University of California, San Francisco}, url =\n+        {http://ambermd.org/CiteAmber.php}, }</citation>\n+\t\t\t<yield/>\n+\t\t</citations>\n+\t</xml>\n+\t<xml name="mmpbsa_citation">\n+\t\t<citation type="doi">10.1021/ct300418h</citation>\n+\t</xml>\n+</macros>\n'
b
diff -r 000000000000 -r 3de1359b86cc parmconv.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/parmconv.py Thu Jan 27 17:17:54 2022 +0000
[
@@ -0,0 +1,82 @@
+import argparse
+import io
+import sys
+from contextlib import redirect_stdout
+
+import parmed
+from parmed import amber, gromacs
+from parmed.tools.changeradii import ChRad
+
+
+def parse_command_line(argv):
+    parser = argparse.ArgumentParser()
+    parser.add_argument('--istr', help='input structure', required=True)
+    parser.add_argument('--itop', help='input topology file', required=True)
+    parser.add_argument('--istripmask', help='stripmask')
+    parser.add_argument('--iradii', required=True, help='parmed radii are \
+                        GB_RADII amber6,bondi, mbondi, mbondi2, mbondi3')
+    parser.add_argument('--removedihe', action='store_true',
+                        default=False, help='remove dihedrals with zero \
+                        periodicity')
+    parser.add_argument('--removebox', action='store_true',
+                        default=False, help='remove periodic box info')
+    parser.add_argument('--o_prmtop', help='AMBER output topology',
+                        required=True)
+    return parser.parse_args()
+
+
+def get_ids(dihedrals):
+    """
+    goes through dihedrals and looks for any with per=0.
+    returns a reverse sorted list of ids to be removed.
+    """
+    indices = []
+    for k, v in enumerate(dihedrals):
+        f = io.StringIO()
+        with redirect_stdout(f):
+            print(v)
+        if f.getvalue().find("per=0") != -1:
+            indices.append(k)
+    indices.sort(reverse=True)
+    return indices
+
+
+args = parse_command_line(sys.argv)
+
+gmx_top = gromacs.GromacsTopologyFile(args.itop)
+gmx_gro = gromacs.GromacsGroFile.parse(args.istr)
+
+if not args.removebox:
+    # keep box info
+    gmx_top.box = gmx_gro.box
+    gmx_top.positions = gmx_gro.positions
+
+
+if args.removedihe:
+    ids_to_remove = get_ids(gmx_top.dihedrals)
+    print("Original number of dihedrals %i" % len(gmx_top.dihedrals))
+    for i in ids_to_remove:
+        gmx_top.dihedrals.pop(i)
+    print("Update number of dihedrals %i" % len(gmx_top.dihedrals))
+
+if args.istripmask is not None:
+    if args.istripmask == "":
+        pass
+    else:
+        gmx_top.strip(args.istripmask)
+
+radii = str(args.iradii)
+parmed.tools.changeRadii(gmx_top, radii)
+amb_prm = amber.AmberParm.from_structure(gmx_top)
+parmed.tools.changeRadii(amb_prm, radii)
+
+if args.removebox:
+    amb_prm.pointers['IFBOX'] = 0
+
+ChRad(amb_prm, radii)
+for i, atom in enumerate(amb_prm.atoms):
+    amb_prm.parm_data['RADII'][i] = atom.solvent_radius
+    amb_prm.parm_data['SCREEN'][i] = atom.screen
+
+
+amb_prm.write_parm(args.o_prmtop)
b
diff -r 000000000000 -r 3de1359b86cc template_mmpbsa_mmgbsa.j2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/template_mmpbsa_mmgbsa.j2 Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,21 @@
+# Template for mmpbsa in Galaxy
+#  
+&general
+startframe={{ allparams.startframe }}, endframe={{ allparams.endframe }}, interval={{ allparams.interval }},
+verbose=2, keep_files={{ allparams.keep_files | int }}, strip_mask={{ allparams.strip_mask }}, use_sander={{ allparams.use_sander | int }}, entropy={{ allparams.entropy | int }}, netcdf=1
+/
+{% if calcdetails.gb_pb_calc.calctype == 'gb' %}
+&gb
+igb={{ calcdetails.gb_pb_calc.igb }}, saltcon={{ calcdetails.gb_pb_calc.saltcon }}, surfoff={{ calcdetails.gb_pb_calc.surfoff }}, molsurf={{ calcdetails.gb_pb_calc.molsurf | int}}, probe={{ calcdetails.gb_pb_calc.probe }}, msoffset={{ calcdetails.gb_pb_calc.msoffset }}
+/
+{% elif calcdetails.gb_pb_calc.calctype == 'pb' %}
+&pb
+istrng={{ calcdetails.gb_pb_calc.istrng }}, fillratio={{ calcdetails.gb_pb_calc.fillratio }}, inp={{ calcdetails.gb_pb_calc.inp }}, radiopt={{ calcdetails.gb_pb_calc.radiopt }}, cavity_offset={{ calcdetails.gb_pb_calc.cavity_offset }}, scale={{ calcdetails.gb_pb_calc.scale }}, linit={{ calcdetails.gb_pb_calc.linit }}, prbrad={{ calcdetails.gb_pb_calc.prbrad }}
+/
+{% endif %}
+{% if calcdetails.decomposition.decomposition == 'yes' %}
+&decomp
+csv_format={{ calcdetails.decomposition.csv_format | int }}, dec_verbose={{ calcdetails.decomposition.dec_verbose }}, idecomp={{ calcdetails.decomposition.idecomp }}, 
+/
+{% endif %}
+
b
diff -r 000000000000 -r 3de1359b86cc template_parmconv.j2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/template_parmconv.j2 Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,14 @@
+# Template for parmconv in Galaxy
+{% if fmt == 'AMBER' %}
+parm {{ top_in }}
+{% elif fmt == 'GROMACS' %}
+gromber {{ top_in }} {{str_in}}
+{% elif fmt == 'CHARMM' %}
+chamber {{ top_in }} {{str_in}}
+{% else %}
+parm {{ top_in }}
+{% endif %}
+strip {{ stripmask }}
+summary
+outparm {{ prmtop_out }}
+quit
b
diff -r 000000000000 -r 3de1359b86cc test-data/1err_desolvated_mini.nc
b
Binary file test-data/1err_desolvated_mini.nc has changed
b
diff -r 000000000000 -r 3de1359b86cc test-data/JZ4.mol2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/JZ4.mol2 Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,52 @@
+@<TRIPOS>MOLECULE
+/data/dnb02/galaxy_db/files/009/501/dataset_9501918.dat
+ 22 22 0 0 0
+SMALL
+GASTEIGER
+
+@<TRIPOS>ATOM
+      1  C4         0.7939    1.3702    2.1983 C.3   167  JZ4167     -0.0650
+      2  C7         6.5984    0.4172    2.4451 C.ar  167  JZ4167     -0.0613
+      3  C8         7.3182    0.9119    1.3612 C.ar  167  JZ4167     -0.0583
+      4  C9         6.6461    1.3322    0.2147 C.ar  167  JZ4167     -0.0199
+      5  C10        5.2522    1.2617    0.1608 C.ar  167  JZ4167      0.1200
+      6  C11        5.2053    0.3427    2.3837 C.ar  167  JZ4167     -0.0551
+      7  C12        4.5084    0.7745    1.2426 C.ar  167  JZ4167     -0.0060
+      8  C13        3.0004    0.6682    1.1973 C.3   167  JZ4167     -0.0245
+      9  C14        2.3079    1.4796    2.2975 C.3   167  JZ4167     -0.0518
+     10  OAB        4.5987    1.6713   -0.9677 O.3   167  JZ4167     -0.5065
+     11 H           0.3197    1.9287    3.0114 H     167  JZ4167      0.0230
+     12 H           0.4705    0.3267    2.2700 H     167  JZ4167      0.0230
+     13 H           0.4322    1.7786    1.2494 H     167  JZ4167      0.0230
+     14 H           7.1195    0.0849    3.3395 H     167  JZ4167      0.0618
+     15 H           8.4028    0.9664    1.4088 H     167  JZ4167      0.0619
+     16 H           7.2222    1.7087   -0.6246 H     167  JZ4167      0.0654
+     17 H           4.6638   -0.0590    3.2368 H     167  JZ4167      0.0621
+     18 H           2.7296   -0.3918    1.2845 H     167  JZ4167      0.0314
+     19 H           2.6172    0.9976    0.2247 H     167  JZ4167      0.0314
+     20 H           2.6004    2.5342    2.2276 H     167  JZ4167      0.0266
+     21 H           2.6177    1.1288    3.2886 H     167  JZ4167      0.0266
+     22 H           5.2561    1.9626   -1.6199 H     167  JZ4167      0.2921
+@<TRIPOS>BOND
+     1     4     3   ar
+     2     4     5   ar
+     3     3     2   ar
+     4    10     5    1
+     5     5     7   ar
+     6     2     6   ar
+     7     7     6   ar
+     8     7     8    1
+     9     8     9    1
+    10     9     1    1
+    11     1    11    1
+    12     1    12    1
+    13     1    13    1
+    14     2    14    1
+    15     3    15    1
+    16     4    16    1
+    17     6    17    1
+    18     8    18    1
+    19     8    19    1
+    20     9    20    1
+    21     9    21    1
+    22    10    22    1
b
diff -r 000000000000 -r 3de1359b86cc test-data/LigA.mol2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LigA.mol2 Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,61 @@
+@<TRIPOS>MOLECULE
+LigA
+24 24 1 0 0 
+SMALL
+USER_CHARGES
+
+
+@<TRIPOS>ATOM
+  1 C       49.2110    26.9920    85.5530 C.2   1 <1>  -0.3000 
+  2 H       49.1050    28.0330    85.7020 H     1 <1>   0.1500 
+  3 H       48.8320    26.6060    84.6410 H     1 <1>   0.1500 
+  4 C       49.8460    26.1960    86.4430 C.2   1 <1>  -0.1733 
+  5 C       50.0590    24.7460    86.2630 C.2   1 <1>   1.0500 
+  6 O       50.4810    24.0440    87.2160 O.co2 1 <1>  -0.9000 
+  7 O       49.8330    24.2110    85.1490 O.co2 1 <1>  -0.9000 
+  8 O       50.3730    26.8140    87.5890 O.3   1 <1>  -0.3567 
+  9 C       51.7280    27.3660    87.5930 C.3   1 <1>   0.3382 
+ 10 H       51.8840    27.9250    88.5040 H     1 <1>   0.0800 
+ 11 C       51.8170    28.2920    86.3980 C.2   1 <1>  -0.2882 
+ 12 H       51.3990    29.2560    86.5300 H     1 <1>   0.1500 
+ 13 C       52.1840    27.8630    85.1670 C.2   1 <1>  -0.2500 
+ 14 C       52.8190    26.5610    85.0450 C.2   1 <1>  -0.1500 
+ 15 H       53.0370    26.2220    84.0630 H     1 <1>   0.1500 
+ 16 C       53.1170    25.8090    86.1190 C.2   1 <1>  -0.2882 
+ 17 H       53.5700    24.8590    86.0130 H     1 <1>   0.1500 
+ 18 C       52.7610    26.1980    87.5410 C.3   1 <1>   0.3382 
+ 19 H       52.3530    25.3480    88.0710 H     1 <1>   0.0800 
+ 20 O       54.0020    26.6280    88.1730 O.3   1 <1>  -0.6800 
+ 21 H       54.4570    27.1880    87.5220 H     1 <1>   0.4000 
+ 22 C       51.9410    28.6780    83.9640 C.2   1 <1>   1.0500 
+ 23 O       51.9100    29.9280    84.0860 O.co2 1 <1>  -0.9000 
+ 24 O       51.8570    28.1570    82.8230 O.co2 1 <1>  -0.9000 
+@<TRIPOS>BOND
+  1   1   2  1   
+  2   1   3  1   
+  3   1   4  2   
+  4   4   5  1   
+  5   4   8  1   
+  6   5   6  ar  
+  7   5   7  ar  
+  8   8   9  1   
+  9   9  10  1   
+ 10   9  11  1   
+ 11   9  18  1   
+ 12  11  12  1   
+ 13  11  13  2   
+ 14  13  14  1   
+ 15  13  22  1   
+ 16  14  15  1   
+ 17  14  16  2   
+ 18  16  17  1   
+ 19  16  18  1   
+ 20  18  19  1   
+ 21  18  20  1   
+ 22  20  21  1   
+ 23  22  23  ar  
+ 24  22  24  ar  
+@<TRIPOS>SUBSTRUCTURE
+  1 ****  13 GROUP 4 **** **** 0
+
+# MOE 2016.08 (io_trps.svl 2016.04)
b
diff -r 000000000000 -r 3de1359b86cc test-data/LigA.pdb
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LigA.pdb Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,26 @@
+CRYST1    0.000    0.000    0.000  90.00  90.00  90.00 P 1           1
+ATOM      1  C   <1> X   1      49.211  26.992  85.553  0.00  0.00            
+ATOM      2  H   <1> X   1      49.105  28.033  85.702  0.00  0.00            
+ATOM      3  H   <1> X   1      48.832  26.606  84.641  0.00  0.00            
+ATOM      4  C   <1> X   1      49.846  26.196  86.443  0.00  0.00            
+ATOM      5  C   <1> X   1      50.059  24.746  86.263  0.00  0.00            
+ATOM      6  O   <1> X   1      50.481  24.044  87.216  0.00  0.00            
+ATOM      7  O   <1> X   1      49.833  24.211  85.149  0.00  0.00            
+ATOM      8  O   <1> X   1      50.373  26.814  87.589  0.00  0.00            
+ATOM      9  C   <1> X   1      51.728  27.366  87.593  0.00  0.00            
+ATOM     10  H   <1> X   1      51.884  27.925  88.504  0.00  0.00            
+ATOM     11  C   <1> X   1      51.817  28.292  86.398  0.00  0.00            
+ATOM     12  H   <1> X   1      51.399  29.256  86.530  0.00  0.00            
+ATOM     13  C   <1> X   1      52.184  27.863  85.167  0.00  0.00            
+ATOM     14  C   <1> X   1      52.819  26.561  85.045  0.00  0.00            
+ATOM     15  H   <1> X   1      53.037  26.222  84.063  0.00  0.00            
+ATOM     16  C   <1> X   1      53.117  25.809  86.119  0.00  0.00            
+ATOM     17  H   <1> X   1      53.570  24.859  86.013  0.00  0.00            
+ATOM     18  C   <1> X   1      52.761  26.198  87.541  0.00  0.00            
+ATOM     19  H   <1> X   1      52.353  25.348  88.071  0.00  0.00            
+ATOM     20  O   <1> X   1      54.002  26.628  88.173  0.00  0.00            
+ATOM     21  H   <1> X   1      54.457  27.188  87.522  0.00  0.00            
+ATOM     22  C   <1> X   1      51.941  28.678  83.964  0.00  0.00            
+ATOM     23  O   <1> X   1      51.910  29.928  84.086  0.00  0.00            
+ATOM     24  O   <1> X   1      51.857  28.157  82.823  0.00  0.00            
+END
b
diff -r 000000000000 -r 3de1359b86cc test-data/LigA_output.mol2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LigA_output.mol2 Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,59 @@
+@<TRIPOS>MOLECULE
+MOL
+   24    24     1     0     0
+SMALL
+bcc
+
+
+@<TRIPOS>ATOM
+      1 C           49.2110    26.9920    85.5530 c2         1 MOL      -0.311000
+      2 H           49.1050    28.0330    85.7020 ha         1 MOL       0.109500
+      3 H1          48.8320    26.6060    84.6410 ha         1 MOL       0.109500
+      4 C1          49.8460    26.1960    86.4430 ce         1 MOL       0.022900
+      5 C2          50.0590    24.7460    86.2630 ce         1 MOL       0.384200
+      6 O           50.4810    24.0440    87.2160 o          1 MOL      -0.575500
+      7 O1          49.8330    24.2110    85.1490 o          1 MOL      -0.575500
+      8 O2          50.3730    26.8140    87.5890 os         1 MOL      -0.351900
+      9 C3          51.7280    27.3660    87.5930 c3         1 MOL       0.157300
+     10 H2          51.8840    27.9250    88.5040 h1         1 MOL       0.051700
+     11 C4          51.8170    28.2920    86.3980 c2         1 MOL      -0.174200
+     12 H3          51.3990    29.2560    86.5300 ha         1 MOL       0.141000
+     13 C5          52.1840    27.8630    85.1670 ce         1 MOL      -0.149200
+     14 C6          52.8190    26.5610    85.0450 ce         1 MOL      -0.081000
+     15 H4          53.0370    26.2220    84.0630 ha         1 MOL       0.142000
+     16 C7          53.1170    25.8090    86.1190 c2         1 MOL      -0.248200
+     17 H5          53.5700    24.8590    86.0130 ha         1 MOL       0.104000
+     18 C8          52.7610    26.1980    87.5410 c3         1 MOL       0.131300
+     19 H6          52.3530    25.3480    88.0710 h1         1 MOL       0.151700
+     20 O3          54.0020    26.6280    88.1730 oh         1 MOL      -0.611800
+     21 H7          54.4570    27.1880    87.5220 ho         1 MOL       0.374000
+     22 C9          51.9410    28.6780    83.9640 ce         1 MOL       0.376200
+     23 O4          51.9100    29.9280    84.0860 o          1 MOL      -0.587000
+     24 O5          51.8570    28.1570    82.8230 o          1 MOL      -0.587000
+@<TRIPOS>BOND
+     1     1     2 1   
+     2     1     3 1   
+     3     1     4 2   
+     4     4     5 1   
+     5     4     8 1   
+     6     5     6 2   
+     7     5     7 1   
+     8     8     9 1   
+     9     9    10 1   
+    10     9    11 1   
+    11     9    18 1   
+    12    11    12 1   
+    13    11    13 2   
+    14    13    14 1   
+    15    13    22 1   
+    16    14    15 1   
+    17    14    16 2   
+    18    16    17 1   
+    19    16    18 1   
+    20    18    19 1   
+    21    18    20 1   
+    22    20    21 1   
+    23    22    23 2   
+    24    22    24 1   
+@<TRIPOS>SUBSTRUCTURE
+     1 MOL         1 TEMP              0 ****  ****    0 ROOT
b
diff -r 000000000000 -r 3de1359b86cc test-data/LigA_output.pdb
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LigA_output.pdb Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,24 @@
+ATOM      1  C   MOL     1      49.211  26.992  85.553  1.00  0.00           C
+ATOM      2  H   MOL     1      49.105  28.033  85.702  1.00  0.00           H
+ATOM      3  H1  MOL     1      48.832  26.606  84.641  1.00  0.00           H
+ATOM      4  C1  MOL     1      49.846  26.196  86.443  1.00  0.00           C
+ATOM      5  C2  MOL     1      50.059  24.746  86.263  1.00  0.00           C
+ATOM      6  O   MOL     1      50.481  24.044  87.216  1.00  0.00           O
+ATOM      7  O1  MOL     1      49.833  24.211  85.149  1.00  0.00           O
+ATOM      8  O2  MOL     1      50.373  26.814  87.589  1.00  0.00           O
+ATOM      9  C3  MOL     1      51.728  27.366  87.593  1.00  0.00           C
+ATOM     10  H2  MOL     1      51.884  27.925  88.504  1.00  0.00           H
+ATOM     11  C4  MOL     1      51.817  28.292  86.398  1.00  0.00           C
+ATOM     12  H3  MOL     1      51.399  29.256  86.530  1.00  0.00           H
+ATOM     13  C5  MOL     1      52.184  27.863  85.167  1.00  0.00           C
+ATOM     14  C6  MOL     1      52.819  26.561  85.045  1.00  0.00           C
+ATOM     15  H4  MOL     1      53.037  26.222  84.063  1.00  0.00           H
+ATOM     16  C7  MOL     1      53.117  25.809  86.119  1.00  0.00           C
+ATOM     17  H5  MOL     1      53.570  24.859  86.013  1.00  0.00           H
+ATOM     18  C8  MOL     1      52.761  26.198  87.541  1.00  0.00           C
+ATOM     19  H6  MOL     1      52.353  25.348  88.071  1.00  0.00           H
+ATOM     20  O3  MOL     1      54.002  26.628  88.173  1.00  0.00           O
+ATOM     21  H7  MOL     1      54.457  27.188  87.522  1.00  0.00           H
+ATOM     22  C9  MOL     1      51.941  28.678  83.964  1.00  0.00           C
+ATOM     23  O4  MOL     1      51.910  29.928  84.086  1.00  0.00           O
+ATOM     24  O5  MOL     1      51.857  28.157  82.823  1.00  0.00           O
b
diff -r 000000000000 -r 3de1359b86cc test-data/LigA_output.top
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LigA_output.top Thu Jan 27 17:17:54 2022 +0000
[
b'@@ -0,0 +1,239 @@\n+; base_GMX.itp created by acpype (v: 2020-10-24T12:16:34CEST) on Tue Feb 16 21:55:09 2021\n+\n+[ atomtypes ]\n+;name   bond_type     mass     charge   ptype   sigma         epsilon       Amb\n+ c2       c2          0.00000  0.00000   A     3.39967e-01   3.59824e-01 ; 1.91  0.0860\n+ ha       ha          0.00000  0.00000   A     2.59964e-01   6.27600e-02 ; 1.46  0.0150\n+ ce       ce          0.00000  0.00000   A     3.39967e-01   3.59824e-01 ; 1.91  0.0860\n+ c        c           0.00000  0.00000   A     3.39967e-01   3.59824e-01 ; 1.91  0.0860\n+ o        o           0.00000  0.00000   A     2.95992e-01   8.78640e-01 ; 1.66  0.2100\n+ os       os          0.00000  0.00000   A     3.00001e-01   7.11280e-01 ; 1.68  0.1700\n+ c3       c3          0.00000  0.00000   A     3.39967e-01   4.57730e-01 ; 1.91  0.1094\n+ h1       h1          0.00000  0.00000   A     2.47135e-01   6.56888e-02 ; 1.39  0.0157\n+ oh       oh          0.00000  0.00000   A     3.06647e-01   8.80314e-01 ; 1.72  0.2104\n+ ho       ho          0.00000  0.00000   A     0.00000e+00   0.00000e+00 ; 0.00  0.0000\n+\n+[ moleculetype ]\n+;name            nrexcl\n+ base             3\n+\n+[ atoms ]\n+;   nr  type  resi  res  atom  cgnr     charge      mass       ; qtot   bond_type\n+     1   c2     1   MOL     C    1    -0.311000     12.01000 ; qtot -0.311\n+     2   ha     1   MOL     H    2     0.109500      1.00800 ; qtot -0.202\n+     3   ha     1   MOL    H1    3     0.109500      1.00800 ; qtot -0.092\n+     4   ce     1   MOL    C1    4     0.022900     12.01000 ; qtot -0.069\n+     5    c     1   MOL    C2    5     0.384200     12.01000 ; qtot 0.315\n+     6    o     1   MOL     O    6    -0.575500     16.00000 ; qtot -0.260\n+     7    o     1   MOL    O1    7    -0.575500     16.00000 ; qtot -0.836\n+     8   os     1   MOL    O2    8    -0.351900     16.00000 ; qtot -1.188\n+     9   c3     1   MOL    C3    9     0.157300     12.01000 ; qtot -1.031\n+    10   h1     1   MOL    H2   10     0.051700      1.00800 ; qtot -0.979\n+    11   c2     1   MOL    C4   11    -0.174200     12.01000 ; qtot -1.153\n+    12   ha     1   MOL    H3   12     0.141000      1.00800 ; qtot -1.012\n+    13   ce     1   MOL    C5   13    -0.149200     12.01000 ; qtot -1.161\n+    14   ce     1   MOL    C6   14    -0.081000     12.01000 ; qtot -1.242\n+    15   ha     1   MOL    H4   15     0.142000      1.00800 ; qtot -1.100\n+    16   c2     1   MOL    C7   16    -0.248200     12.01000 ; qtot -1.348\n+    17   ha     1   MOL    H5   17     0.104000      1.00800 ; qtot -1.244\n+    18   c3     1   MOL    C8   18     0.131300     12.01000 ; qtot -1.113\n+    19   h1     1   MOL    H6   19     0.151700      1.00800 ; qtot -0.961\n+    20   oh     1   MOL    O3   20    -0.614800     16.00000 ; qtot -1.576\n+    21   ho     1   MOL    H7   21     0.374000      1.00800 ; qtot -1.202\n+    22    c     1   MOL    C9   22     0.376200     12.01000 ; qtot -0.826\n+    23    o     1   MOL    O4   23    -0.587000     16.00000 ; qtot -1.413\n+    24    o     1   MOL    O5   24    -0.587000     16.00000 ; qtot -2.000\n+\n+[ bonds ]\n+;   ai     aj funct   r             k\n+     1      2   1    1.0879e-01    2.8711e+05 ;      C - H     \n+     1      3   1    1.0879e-01    2.8711e+05 ;      C - H1    \n+     1      4   1    1.3461e-01    4.5798e+05 ;      C - C1    \n+     4      5   1    1.4825e-01    2.9665e+05 ;     C1 - C2    \n+     4      8   1    1.3710e-01    3.1372e+05 ;     C1 - O2    \n+     5      6   1    1.2183e-01    5.3363e+05 ;     C2 - O     \n+     5      7   1    1.2183e-01    5.3363e+05 ;     C2 - O1    \n+     8      9   1    1.4316e-01    2.5824e+05 ;     O2 - C3    \n+     9     10   1    1.0969e-01    2.7665e+05 ;     C3 - H2    \n+     9     11   1    1.5095e-01    2.7347e+05 ;     C3 - C4    \n+     9     18   1    1.5375e-01    2.5179e+05 ;     C3 - C8    \n+    11     12   1    1.0879e-01    2.8711e+05 ;     C4 - H3    \n+    11     13   1    1.3461e-01    4.5798e+05 ;     C4 - C5    \n+    13     14   1  '..b'C5-    C9\n+     9     18     16     14      9     0.00   0.00000   0 ;     C3-    C8-    C7-    C6\n+     9     18     16     17      9     0.00   0.00000   0 ;     C3-    C8-    C7-    H5\n+     9     18     20     21      9     0.00   0.66944   3 ;     C3-    C8-    O3-    H7\n+     9     18     20     21      9     0.00   1.04600   1 ;     C3-    C8-    O3-    H7\n+    10      9     11     12      9     0.00   0.00000   0 ;     H2-    C3-    C4-    H3\n+    10      9     11     13      9     0.00   0.00000   0 ;     H2-    C3-    C4-    C5\n+    10      9     18     16      9     0.00   0.65084   3 ;     H2-    C3-    C8-    C7\n+    10      9     18     19      9     0.00   0.65084   3 ;     H2-    C3-    C8-    H6\n+    10      9     18     20      9     0.00   0.00000   0 ;     H2-    C3-    C8-    O3\n+    10      9     18     20      9     0.00   1.04600   1 ;     H2-    C3-    C8-    O3\n+    11      9     18     16      9     0.00   0.65084   3 ;     C4-    C3-    C8-    C7\n+    11      9     18     19      9     0.00   0.65084   3 ;     C4-    C3-    C8-    H6\n+    11      9     18     20      9     0.00   0.65084   3 ;     C4-    C3-    C8-    O3\n+    11     13     14     15      9   180.00   4.18400   2 ;     C4-    C5-    C6-    H4\n+    11     13     14     16      9   180.00   4.18400   2 ;     C4-    C5-    C6-    C7\n+    11     13     22     23      9   180.00   9.10020   2 ;     C4-    C5-    C9-    O4\n+    11     13     22     24      9   180.00   9.10020   2 ;     C4-    C5-    C9-    O5\n+    12     11      9     18      9     0.00   0.00000   0 ;     H3-    C4-    C3-    C8\n+    12     11     13     14      9   180.00  27.82360   2 ;     H3-    C4-    C5-    C6\n+    12     11     13     22      9   180.00  27.82360   2 ;     H3-    C4-    C5-    C9\n+    13     11      9     18      9     0.00   0.00000   0 ;     C5-    C4-    C3-    C8\n+    13     14     16     17      9   180.00  27.82360   2 ;     C5-    C6-    C7-    H5\n+    13     14     16     18      9   180.00  27.82360   2 ;     C5-    C6-    C7-    C8\n+    14     13     22     23      9   180.00   9.10020   2 ;     C6-    C5-    C9-    O4\n+    14     13     22     24      9   180.00   9.10020   2 ;     C6-    C5-    C9-    O5\n+    14     16     18     19      9     0.00   0.00000   0 ;     C6-    C7-    C8-    H6\n+    14     16     18     20      9     0.00   0.00000   0 ;     C6-    C7-    C8-    O3\n+    15     14     13     22      9   180.00   4.18400   2 ;     H4-    C6-    C5-    C9\n+    15     14     16     17      9   180.00  27.82360   2 ;     H4-    C6-    C7-    H5\n+    15     14     16     18      9   180.00  27.82360   2 ;     H4-    C6-    C7-    C8\n+    16     14     13     22      9   180.00   4.18400   2 ;     C7-    C6-    C5-    C9\n+    16     18     20     21      9     0.00   0.69733   3 ;     C7-    C8-    O3-    H7\n+    17     16     18     19      9     0.00   0.00000   0 ;     H5-    C7-    C8-    H6\n+    17     16     18     20      9     0.00   0.00000   0 ;     H5-    C7-    C8-    O3\n+    19     18     20     21      9     0.00   0.69733   3 ;     H6-    C8-    O3-    H7\n+\n+[ dihedrals ] ; impropers\n+; treated as propers in GROMACS to use correct AMBER analytical function\n+;    i      j      k      l   func   phase     kd      pn\n+     3      1      2      4      4   180.00   4.60240   2 ;     H1-     C-     H-    C1\n+     4      6      5      7      4   180.00   4.60240   2 ;     C1-     O-    C2-    O1\n+     5      1      4      8      4   180.00   4.60240   2 ;     C2-     C-    C1-    O2\n+     9     13     11     12      4   180.00   4.60240   2 ;     C3-    C5-    C4-    H3\n+    13     23     22     24      4   180.00   4.60240   2 ;     C5-    O4-    C9-    O5\n+    16     13     14     15      4   180.00   4.60240   2 ;     C7-    C5-    C6-    H4\n+    18     14     16     17      4   180.00   4.60240   2 ;     C8-    C6-    C7-    H5\n+    22     11     13     14      4   180.00   4.60240   2 ;     C9-    C4-    C5-    C6\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/LigA_output.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LigA_output.txt Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,21 @@
+Remark line goes here
+MASS
+
+BOND
+
+ANGLE
+
+DIHE
+
+IMPROPER
+c2-ha-c2-ha         1.1          180.0         2.0          Using the default value
+c2-c2-c2-os         1.1          180.0         2.0          Using the default value
+c2-o -c2-o          1.1          180.0         2.0          Using the default value
+c2-c3-c2-ha         1.1          180.0         2.0          Using the default value
+c2-c2-c2-c2         1.1          180.0         2.0          Using the default value
+c2-c2-c2-ha         1.1          180.0         2.0          Using the default value
+
+NONBON
+
+
+
b
diff -r 000000000000 -r 3de1359b86cc test-data/LigA_prmchk.mol2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/LigA_prmchk.mol2 Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,59 @@
+@<TRIPOS>MOLECULE
+MOL
+   24    24     1     0     0
+SMALL
+bcc
+
+
+@<TRIPOS>ATOM
+      1 C           49.2110    26.9920    85.5530 c2         1 MOL      -0.412000
+      2 H           49.1050    28.0330    85.7020 ha         1 MOL       0.190500
+      3 H1          48.8320    26.6060    84.6410 ha         1 MOL       0.190500
+      4 C1          49.8460    26.1960    86.4430 c2         1 MOL       0.290000
+      5 C2          50.0590    24.7460    86.2630 c2         1 MOL       0.448000
+      6 O           50.4810    24.0440    87.2160 o          1 MOL      -0.224000
+      7 O1          49.8330    24.2110    85.1490 o          1 MOL      -0.224000
+      8 O2          50.3730    26.8140    87.5890 os         1 MOL      -0.260000
+      9 C3          51.7280    27.3660    87.5930 c3         1 MOL      -0.040000
+     10 H2          51.8840    27.9250    88.5040 h1         1 MOL       0.169000
+     11 C4          51.8170    28.2920    86.3980 c2         1 MOL      -0.190000
+     12 H3          51.3990    29.2560    86.5300 ha         1 MOL       0.188000
+     13 C5          52.1840    27.8630    85.1670 c2         1 MOL       0.171000
+     14 C6          52.8190    26.5610    85.0450 c2         1 MOL      -0.190000
+     15 H4          53.0370    26.2220    84.0630 ha         1 MOL       0.188000
+     16 C7          53.1170    25.8090    86.1190 c2         1 MOL      -0.040000
+     17 H5          53.5700    24.8590    86.0130 ha         1 MOL       0.169000
+     18 C8          52.7610    26.1980    87.5410 c3         1 MOL      -0.003000
+     19 H6          52.3530    25.3480    88.0710 h1         1 MOL       0.221000
+     20 O3          54.0020    26.6280    88.1730 oh         1 MOL      -0.280000
+     21 H7          54.4570    27.1880    87.5220 ho         1 MOL       0.215000
+     22 C9          51.9410    28.6780    83.9640 c2         1 MOL       0.366000
+     23 O4          51.9100    29.9280    84.0860 o          1 MOL      -0.472500
+     24 O5          51.8570    28.1570    82.8230 o          1 MOL      -0.472500
+@<TRIPOS>BOND
+     1     1     2 1   
+     2     1     3 1   
+     3     1     4 1   
+     4     4     5 1   
+     5     4     8 1   
+     6     5     6 1   
+     7     5     7 1   
+     8     8     9 1   
+     9     9    10 1   
+    10     9    11 1   
+    11     9    18 1   
+    12    11    12 1   
+    13    11    13 1   
+    14    13    14 1   
+    15    13    22 1   
+    16    14    15 1   
+    17    14    16 1   
+    18    16    17 1   
+    19    16    18 1   
+    20    18    19 1   
+    21    18    20 1   
+    22    20    21 1   
+    23    22    23 1   
+    24    22    24 1   
+@<TRIPOS>SUBSTRUCTURE
+     1 MOL         1 TEMP              0 ****  ****    0 ROOT
b
diff -r 000000000000 -r 3de1359b86cc test-data/ZAFF.frcmod
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/ZAFF.frcmod Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,1332 @@\n+ZAFF parameter set created by MTK++/MCPB \n+\n+MASS\n+ZN  65.400\n+S1  32.060\n+S2  32.060\n+N1  14.010\n+S3  32.060\n+N2  14.010\n+S4  32.060\n+N3  14.010\n+S5  32.060\n+N4  14.010\n+N5  14.010\n+N6  14.010\n+N7  14.010\n+O1  16.000\n+N8  14.010\n+N9  14.010\n+N0  14.010\n+O2  16.000\n+NT  14.010\n+O3  16.000\n+NY  14.010\n+O4  16.000\n+E1  14.010\n+D1  16.000\n+NQ  14.010\n+NP  14.010\n+E2  14.010\n+D2  16.000\n+NR  14.010\n+\n+BOND\n+ZN-S1   32.69   2.426\n+ZN-S2   51.79   2.355\n+ZN-N1   29.24   2.176\n+ZN-S3   50.99   2.353\n+ZN-N2   35.80   2.145\n+ZN-S4   67.39   2.305\n+ZN-N3   50.10   2.089\n+ZN-S5   88.50   2.262\n+ZN-N4   62.61   2.047\n+ZN-D1   41.86   2.109\n+ZN-E1   36.30   2.133\n+ZN-D2   76.81   1.986\n+ZN-NQ   70.86   2.028\n+ZN-NP   70.85   2.027\n+ZN-E2   52.77   2.073\n+ZN-NR   78.18   2.011\n+ZN-N5   93.97   1.978\n+ZN-N6   90.76   1.982\n+ZN-N7   90.80   1.984\n+ZN-O1   41.32   2.112\n+ZN-N8   66.61   2.029\n+ZN-N9   66.69   2.040\n+ZN-N0   66.11   2.041\n+ZN-O2  169.29   1.860\n+ZN-NT  113.59   1.947\n+ZN-O3   56.37   2.054\n+ZN-NY  124.58   1.926\n+ZN-O4   71.26   2.011\n+CT-S1  237.00   1.810\n+HS-S1  274.00   1.336\n+CT-S2  237.00   1.810\n+HS-S2  274.00   1.336\n+CB-N1  414.00   1.391\n+CK-N1  529.00   1.304\n+CC-N1  410.00   1.394\n+CR-N1  488.00   1.335\n+CV-N1  410.00   1.394\n+CT-S3  237.00   1.810\n+HS-S3  274.00   1.336\n+CB-N2  414.00   1.391\n+CK-N2  529.00   1.304\n+CC-N2  410.00   1.394\n+CR-N2  488.00   1.335\n+CV-N2  410.00   1.394\n+CT-S4  237.00   1.810\n+HS-S4  274.00   1.336\n+CB-N3  414.00   1.391\n+CK-N3  529.00   1.304\n+CC-N3  410.00   1.394\n+CR-N3  488.00   1.335\n+CV-N3  410.00   1.394\n+CT-S5  237.00   1.810\n+HS-S5  274.00   1.336\n+CB-N4  414.00   1.391\n+CK-N4  529.00   1.304\n+CC-N4  410.00   1.394\n+CR-N4  488.00   1.335\n+CV-N4  410.00   1.394\n+CB-N5  414.00   1.391\n+CK-N5  529.00   1.304\n+CC-N5  410.00   1.394\n+CR-N5  488.00   1.335\n+CV-N5  410.00   1.394\n+CB-N6  414.00   1.391\n+CK-N6  529.00   1.304\n+CC-N6  410.00   1.394\n+CR-N6  488.00   1.335\n+CV-N6  410.00   1.394\n+CB-N7  414.00   1.391\n+CK-N7  529.00   1.304\n+CC-N7  410.00   1.394\n+CR-N7  488.00   1.335\n+CV-N7  410.00   1.394\n+O1-HW  553.00   0.957\n+CB-N8  414.00   1.391\n+CK-N8  529.00   1.304\n+CC-N8  410.00   1.394\n+CR-N8  488.00   1.335\n+CV-N8  410.00   1.394\n+CB-N9  414.00   1.391\n+CK-N9  529.00   1.304\n+CC-N9  410.00   1.394\n+CR-N9  488.00   1.335\n+CV-N9  410.00   1.394\n+CB-N0  414.00   1.391\n+CK-N0  529.00   1.304\n+CC-N0  410.00   1.394\n+CR-N0  488.00   1.335\n+CV-N0  410.00   1.394\n+O2-HW  553.00   0.957\n+O2-HO  566.02   0.967\n+CB-NT  414.00   1.391\n+CK-NT  529.00   1.304\n+CC-NT  410.00   1.394\n+CR-NT  488.00   1.335\n+CV-NT  410.00   1.394\n+O3-HW  553.00   0.957\n+CB-NY  414.00   1.391\n+CK-NY  529.00   1.304\n+CC-NY  410.00   1.394\n+CR-NY  488.00   1.335\n+CV-NY  410.00   1.394\n+O4-HW  553.00   0.957\n+CB-E1  414.00   1.391\n+CK-E1  529.00   1.304\n+CC-E1  410.00   1.394\n+CR-E1  488.00   1.335\n+CV-E1  410.00   1.394\n+C -D1  656.00   1.250\n+D1-P   525.00   1.480\n+CB-NQ  414.00   1.391\n+CK-NQ  529.00   1.304\n+CC-NQ  410.00   1.394\n+CR-NQ  488.00   1.335\n+CV-NQ  410.00   1.394\n+CB-NP  414.00   1.391\n+CK-NP  529.00   1.304\n+CC-NP  410.00   1.394\n+CR-NP  488.00   1.335\n+CV-NP  410.00   1.394\n+CB-E2  414.00   1.391\n+CK-E2  529.00   1.304\n+CC-E2  410.00   1.394\n+CR-E2  488.00   1.335\n+CV-E2  410.00   1.394\n+C -D2  656.00   1.250\n+D2-P   525.00   1.480\n+CB-NR  414.00   1.391\n+CK-NR  529.00   1.304\n+CC-NR  410.00   1.394\n+CR-NR  488.00   1.335\n+CV-NR  410.00   1.394\n+\n+ANGL\n+CT-S1-ZN   64.397     101.733\n+S1-ZN-S1   35.729     109.472\n+CT-S2-ZN   61.944     102.595\n+CR-N1-ZN   56.635     118.830\n+CC-N1-ZN   57.308     133.971\n+S2-ZN-S2   35.018     115.180\n+S2-ZN-N1   31.195     102.917\n+CT-S3-ZN   61.716     101.845\n+CR-N2-ZN   57.361     124.866\n+S3-ZN-S3   33.795     116.417\n+S3-ZN-N2   29.241     101.219\n+CV-N2-ZN   59.513     128.392\n+CT-S4-ZN   76.591     104.861\n+CV-N3-ZN   47.416     129.669\n+N3-ZN-N3   31.653     106.850\n+S4-ZN-S4   22.852     135.466\n+S4-ZN-N3   29.089     103.036\n+C'..b'.000\n+D2-ZN-NP-CV   3    0.000         0.000           3.000\n+D2-ZN-NP-CR   3    0.000         0.000           3.000\n+D2-ZN-E2-CC   3    0.000         0.000           3.000\n+D2-ZN-E2-CR   3    0.000         0.000           3.000\n+CT-C -D2-ZN   3    0.000         0.000           3.000\n+D2-C -D2-ZN   3    0.000         0.000           3.000\n+C -D2-ZN-NQ   3    0.000         0.000           3.000\n+C -D2-ZN-NP   3    0.000         0.000           3.000\n+C -D2-ZN-E2   3    0.000         0.000           3.000\n+D2-ZN-NQ-CV   3    0.000         0.000           3.000\n+D2-ZN-NQ-CR   3    0.000         0.000           3.000\n+D2-ZN-NP-CV   3    0.000         0.000           3.000\n+D2-ZN-NP-CR   3    0.000         0.000           3.000\n+D2-ZN-E2-CC   3    0.000         0.000           3.000\n+D2-ZN-E2-CR   3    0.000         0.000           3.000\n+C -D2-ZN-NQ   3    0.000         0.000           3.000\n+D2-ZN-NQ-CV   3    0.000         0.000           3.000\n+D2-ZN-NQ-CR   3    0.000         0.000           3.000\n+C -D2-ZN-NQ   3    0.000         0.000           3.000\n+D2-ZN-NQ-CV   3    0.000         0.000           3.000\n+D2-ZN-NQ-CR   3    0.000         0.000           3.000\n+C -D2-ZN-NP   3    0.000         0.000           3.000\n+D2-ZN-NP-CV   3    0.000         0.000           3.000\n+D2-ZN-NP-CR   3    0.000         0.000           3.000\n+C -D2-ZN-NP   3    0.000         0.000           3.000\n+D2-ZN-NP-CV   3    0.000         0.000           3.000\n+D2-ZN-NP-CR   3    0.000         0.000           3.000\n+C -D2-ZN-E2   3    0.000         0.000           3.000\n+D2-ZN-E2-CC   3    0.000         0.000           3.000\n+D2-ZN-E2-CR   3    0.000         0.000           3.000\n+C -D2-ZN-E2   3    0.000         0.000           3.000\n+D2-ZN-E2-CC   3    0.000         0.000           3.000\n+D2-ZN-E2-CR   3    0.000         0.000           3.000\n+X -CB-NR-X    2    5.100       180.000           2.000\n+X -CK-NR-X    2   20.000       180.000           2.000\n+X -CC-NR-X    2    4.800       180.000           2.000\n+X -CR-NR-X    2   10.000       180.000           2.000\n+X -CV-NR-X    2    4.800       180.000           2.000\n+CR-NR-ZN-NR   3    0.000         0.000           3.000\n+CV-NR-ZN-NR   3    0.000         0.000           3.000\n+CR-NR-ZN-NR   3    0.000         0.000           3.000\n+CV-NR-ZN-NR   3    0.000         0.000           3.000\n+\n+IMPR\n+N1-CW-CC-CT       1.100        180.000       2.000\n+N2-CW-CC-CT       1.100        180.000       2.000\n+N3-CW-CC-CT       1.100        180.000       2.000\n+N4-CW-CC-CT       1.100        180.000       2.000\n+N5-CW-CC-CT       1.100        180.000       2.000\n+N6-CW-CC-CT       1.100        180.000       2.000\n+N7-CW-CC-CT       1.100        180.000       2.000\n+N8-CW-CC-CT       1.100        180.000       2.000\n+N9-CW-CC-CT       1.100        180.000       2.000\n+N0-CW-CC-CT       1.100        180.000       2.000\n+NT-CW-CC-CT       1.100        180.000       2.000\n+NY-CW-CC-CT       1.100        180.000       2.000\n+E1-CW-CC-CT       1.100        180.000       2.000\n+X -D1-C -D1      10.500        180.000       2.000\n+NQ-CW-CC-CT       1.100        180.000       2.000\n+NP-CW-CC-CT       1.100        180.000       2.000\n+E2-CW-CC-CT       1.100        180.000       2.000\n+X -D2-C -D2      10.500        180.000       2.000\n+NR-CW-CC-CT       1.100        180.000       2.000\n+\n+NONB\n+ZN     1.10    0.013\n+S1     2.00    0.250\n+S2     2.00    0.250\n+N1     1.82    0.170\n+S3     2.00    0.250\n+N2     1.82    0.170\n+S4     2.00    0.250\n+N3     1.82    0.170\n+S5     2.00    0.250\n+N4     1.82    0.170\n+N5     1.82    0.170\n+N6     1.82    0.170\n+N7     1.82    0.170\n+O1     1.77    0.152\n+N8     1.82    0.170\n+N9     1.82    0.170\n+N0     1.82    0.170\n+O2     1.77    0.152\n+NT     1.82    0.170\n+O3     1.77    0.152\n+NY     1.82    0.170\n+O4     1.77    0.152\n+E1     1.82    0.170\n+D1     1.66    0.210\n+NQ     1.82    0.170\n+NP     1.82    0.170\n+E2     1.82    0.170\n+D2     1.66    0.210\n+NR     1.82    0.170\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/ZAFF.prep
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/ZAFF.prep Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,1015 @@\n+    1    1    2\n+ZAFF_201108 set created by MTK++/MCPB\n+CYSTEINE with negative charge\n+\n+ CY1 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4  N     N     M    3   2   1     1.335   116.600   180.000  -0.46300\n+   5  HN    H     E    4   3   2     1.010   119.800     0.000   0.25200\n+   6  CA    CT    M    4   3   2     1.449   121.900   180.000   0.03500\n+   7  HA    H1    E    6   4   3     1.090   109.500   300.000   0.04800\n+   8  CB    CT    3    6   4   3     1.525   111.100    60.000  -0.54300\n+   9  HB3   H1    E    8   6   4     1.090   109.500    60.000   0.18377\n+  10  HB2   H1    E    8   6   4     1.090   109.500   300.000   0.18377\n+  11  SG    S1    E    8   6   4     1.810   116.000   180.000  -0.43963\n+  12  C     C     M    6   4   3     1.522   111.100   180.000   0.61600\n+  13  O     O     E   12   6   4     1.229   120.500     0.000  -0.50400\n+ \n+IMPROPER\n+ -M   CA   N    HN \n+ CA   +M   C    O  \n+ \n+DONE\n+Zinc(II) Ion\n+\n+ ZN1 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4 ZN     ZN    M    3   2   1     1.000    90.000   180.000   0.52437\n+ \n+DONE\n+CYSTEINE with negative charge\n+\n+ CY2 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4  N     N     M    3   2   1     1.335   116.600   180.000  -0.46300\n+   5  HN    H     E    4   3   2     1.010   119.800     0.000   0.25200\n+   6  CA    CT    M    4   3   2     1.449   121.900   180.000   0.03500\n+   7  HA    H1    E    6   4   3     1.090   109.500   300.000   0.04800\n+   8  CB    CT    3    6   4   3     1.525   111.100    60.000  -0.42561\n+   9  HB3   H1    E    8   6   4     1.090   109.500    60.000   0.17337\n+  10  HB2   H1    E    8   6   4     1.090   109.500   300.000   0.17337\n+  11  SG    S2    E    8   6   4     1.810   116.000   180.000  -0.44155\n+  12  C     C     M    6   4   3     1.522   111.100   180.000   0.61600\n+  13  O     O     E   12   6   4     1.229   120.500     0.000  -0.50400\n+ \n+IMPROPER\n+ -M   CA   N    HN \n+ CA   +M   C    O  \n+ \n+DONE\n+HISTIDINE EPSILONH\n+\n+ HE1 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4  N     N     M    3   2   1     1.335   116.600   180.000  -0.41570\n+   5  H     H     E    4   3   2     1.010   119.800     0.000   0.27190\n+   6  CA    CT    M    4   3   2     1.449   121.900   180.000  -0.05810\n+   7  HA    H1    E    6   4   3     1.090   109.500   300.000   0.13600\n+   8  CB    CT    3    6   4   3     1.525   111.100    60.000   0.04092\n+   9  HB2   HC    E    8   6   4     1.090   109.500   300.000   0.06506\n+  10  HB3   HC    E    8   6   4     1.090   109.500    60.000   0.06506\n+  11  CG    CC    S    8   6   4     1.510   115.000   180.000  -0.11300\n+  12  ND1   N1    S   11   8   6     1.390   122.000   180.000  -0.08206\n+  13  CE1   CR    B   12  11   8     1.320   108.000   180.000  -0.14656\n+  14  HE1   H5    E   13  12  11     1.090   120.000   180.000   0.19871\n+  15  NE2   NA    B   13  12  11     1.310   109.000     0.000  -0.01782\n+  16  HE2   H     E   15  13  12     1.010   125.000   180.000   0.27163\n+  17  CD2   CW    S   15  13  12     1.360   110.000     0.000  -0.19685\n+  18  HD2   H4    E   17  15  13'..b'0  -0.61460\n+  17  CD2   CV    S   16  14  12     1.360   110.000     0.000   0.33532\n+  18  HD2   H4    E   17  16  14     1.090   120.000   180.000   0.01604\n+  19  C     C     M    6   4   3     1.522   111.100   180.000   0.59730\n+  20  O     O     E   19   6   4     1.229   120.500     0.000  -0.56790\n+ \n+LOOP\n+ CG   CD2\n+ \n+IMPROPER\n+ -M   CA   N    H  \n+ CA   +M   C    O  \n+ CG   CE1  ND1  HD1\n+ CG   NE2  CD2  HD2\n+ ND1  NE2  CE1  HE1\n+ ND1  CD2  CG   CB \n+ \n+DONE\n+WATER, TIP3P MODEL\n+\n+ WT2 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4  H1    HW    M    3   2   1     1.000   101.430   -98.890   0.44434\n+   5  O     O3    M    4   3   2     0.957   104.520   -39.220  -0.78345\n+   6  H2    HW    E    5   4   3     0.957   104.520  -151.000   0.44434\n+ \n+LOOP\n+ H1   H2 \n+ \n+DONE\n+Zinc(II) Ion\n+\n+ Z11 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4 ZN     ZN    M    3   2   1     1.000    90.000   180.000   1.11246\n+ \n+DONE\n+HISTIDINE EPSILONH\n+\n+ HE6 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4  N     N     M    3   2   1     1.335   116.600   180.000  -0.41570\n+   5  H     H     E    4   3   2     1.010   119.800     0.000   0.27190\n+   6  CA    CT    M    4   3   2     1.449   121.900   180.000  -0.05810\n+   7  HA    H1    E    6   4   3     1.090   109.500   300.000   0.13600\n+   8  CB    CT    3    6   4   3     1.525   111.100    60.000   1.05997\n+   9  HB2   HC    E    8   6   4     1.090   109.500   300.000  -0.21528\n+  10  HB3   HC    E    8   6   4     1.090   109.500    60.000  -0.21528\n+  11  CG    CC    S    8   6   4     1.510   115.000   180.000  -0.28845\n+  12  ND1   NY    S   11   8   6     1.390   122.000   180.000  -0.49024\n+  13  CE1   CR    B   12  11   8     1.320   108.000   180.000  -0.00101\n+  14  HE1   H5    E   13  12  11     1.090   120.000   180.000   0.15620\n+  15  NE2   NA    B   13  12  11     1.310   109.000     0.000  -0.04727\n+  16  HE2   H     E   15  13  12     1.010   125.000   180.000   0.34231\n+  17  CD2   CW    S   15  13  12     1.360   110.000     0.000  -0.12203\n+  18  HD2   H4    E   17  15  13     1.090   120.000   180.000   0.26454\n+  19  C     C     M    6   4   3     1.522   111.100   180.000   0.59730\n+  20  O     O     E   19   6   4     1.229   120.500     0.000  -0.56790\n+ \n+LOOP\n+ CG   CD2\n+ \n+IMPROPER\n+ -M   CA   N    H  \n+ CA   +M   C    O  \n+ CE1  CD2  NE2  HE2\n+ CG   NE2  CD2  HD2\n+ ND1  NE2  CE1  HE1\n+ ND1  CD2  CG   CB \n+ \n+DONE\n+WATER, TIP3P MODEL\n+\n+ WT3 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4  H1    HW    M    3   2   1     1.000   101.430   -98.890   0.40063\n+   5  O     O4    M    4   3   2     0.957   104.520   -39.220  -0.60020\n+   6  H2    HW    E    5   4   3     0.957   104.520  -151.000   0.40063\n+ \n+LOOP\n+ H1   H2 \n+ \n+DONE\n+Zinc(II) Ion\n+\n+ Z12 INT 1\n+ CORR OMIT DU   BEG \n+0.00000\n+   1  DUMM  DU    M    0  -1  -2     0.000      .0        .0      .00000\n+   2  DUMM  DU    M    1   0  -1     1.449      .0        .0      .00000\n+   3  DUMM  DU    M    2   1   0     1.522   111.1        .0      .00000\n+   4 ZN     ZN    M    3   2   1     1.000    90.000   180.000   0.98985\n+ \n+DONE\n+STOP\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/base_GMX.gro
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/base_GMX.gro Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,25 @@
+base6_GMX.gro created by acpype (v: 2018-04-24T22:34:57UTC) on Tue Jun 11 14:15:01 2019
+ 22
+    1  JZ4   C4    1   0.079   0.137   0.220
+    1  JZ4   C7    2   0.660   0.042   0.244
+    1  JZ4   C8    3   0.732   0.091   0.136
+    1  JZ4   C9    4   0.665   0.133   0.022
+    1  JZ4  C10    5   0.525   0.126   0.016
+    1  JZ4  C11    6   0.521   0.034   0.238
+    1  JZ4  C12    7   0.451   0.077   0.124
+    1  JZ4  C13    8   0.300   0.067   0.120
+    1  JZ4  C14    9   0.231   0.148   0.230
+    1  JZ4  OAB   10   0.460   0.167  -0.097
+    1  JZ4    H   11   0.032   0.193   0.301
+    1  JZ4   H1   12   0.047   0.033   0.227
+    1  JZ4   H2   13   0.043   0.178   0.125
+    1  JZ4   H3   14   0.712   0.009   0.334
+    1  JZ4   H4   15   0.840   0.097   0.141
+    1  JZ4   H5   16   0.722   0.171  -0.062
+    1  JZ4   H6   17   0.466  -0.006   0.324
+    1  JZ4   H7   18   0.273  -0.039   0.128
+    1  JZ4   H8   19   0.262   0.100   0.023
+    1  JZ4   H9   20   0.260   0.253   0.223
+    1  JZ4  H10   21   0.262   0.113   0.329
+    1  JZ4  H11   22   0.526   0.196  -0.162
+   16.16600     5.85200     9.92000
b
diff -r 000000000000 -r 3de1359b86cc test-data/base_GMX.itp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/base_GMX.itp Thu Jan 27 17:17:54 2022 +0000
[
b'@@ -0,0 +1,218 @@\n+; base_GMX.itp created by acpype (v: 2019-03-22T14:36:00UTC) on Fri May 31 15:21:44 2019\n+\n+[ atomtypes ]\n+;name   bond_type     mass     charge   ptype   sigma         epsilon       Amb\n+ c3       c3          0.00000  0.00000   A     3.39967e-01   4.57730e-01 ; 1.91  0.1094\n+ ca       ca          0.00000  0.00000   A     3.39967e-01   3.59824e-01 ; 1.91  0.0860\n+ oh       oh          0.00000  0.00000   A     3.06647e-01   8.80314e-01 ; 1.72  0.2104\n+ hc       hc          0.00000  0.00000   A     2.64953e-01   6.56888e-02 ; 1.49  0.0157\n+ ha       ha          0.00000  0.00000   A     2.59964e-01   6.27600e-02 ; 1.46  0.0150\n+ ho       ho          0.00000  0.00000   A     0.00000e+00   0.00000e+00 ; 0.00  0.0000\n+\n+[ moleculetype ]\n+;name            nrexcl\n+ base             3\n+\n+[ atoms ]\n+;   nr  type  resi  res  atom  cgnr     charge      mass       ; qtot   bond_type\n+     1   c3     1   JZ4    C4    1    -0.093100     12.01000 ; qtot -0.093\n+     2   ca     1   JZ4    C7    2    -0.162000     12.01000 ; qtot -0.255\n+     3   ca     1   JZ4    C8    3    -0.095000     12.01000 ; qtot -0.350\n+     4   ca     1   JZ4    C9    4    -0.211000     12.01000 ; qtot -0.561\n+     5   ca     1   JZ4   C10    5     0.124100     12.01000 ; qtot -0.437\n+     6   ca     1   JZ4   C11    6    -0.099000     12.01000 ; qtot -0.536\n+     7   ca     1   JZ4   C12    7    -0.098300     12.01000 ; qtot -0.634\n+     8   c3     1   JZ4   C13    8    -0.032100     12.01000 ; qtot -0.666\n+     9   c3     1   JZ4   C14    9    -0.075400     12.01000 ; qtot -0.742\n+    10   oh     1   JZ4   OAB   10    -0.500101     16.00000 ; qtot -1.242\n+    11   hc     1   JZ4     H   11     0.032700      1.00800 ; qtot -1.209\n+    12   hc     1   JZ4    H1   12     0.032700      1.00800 ; qtot -1.177\n+    13   hc     1   JZ4    H2   13     0.032700      1.00800 ; qtot -1.144\n+    14   ha     1   JZ4    H3   14     0.133000      1.00800 ; qtot -1.011\n+    15   ha     1   JZ4    H4   15     0.132000      1.00800 ; qtot -0.879\n+    16   ha     1   JZ4    H5   16     0.132000      1.00800 ; qtot -0.747\n+    17   ha     1   JZ4    H6   17     0.134000      1.00800 ; qtot -0.613\n+    18   hc     1   JZ4    H7   18     0.055700      1.00800 ; qtot -0.557\n+    19   hc     1   JZ4    H8   19     0.055700      1.00800 ; qtot -0.501\n+    20   hc     1   JZ4    H9   20     0.041700      1.00800 ; qtot -0.460\n+    21   hc     1   JZ4   H10   21     0.041700      1.00800 ; qtot -0.418\n+    22   ho     1   JZ4   H11   22     0.418000      1.00800 ; qtot -0.000\n+\n+[ bonds ]\n+;   ai     aj funct   r             k\n+     1      9   1    1.5375e-01    2.5179e+05 ;     C4 - C14   \n+     1     11   1    1.0969e-01    2.7665e+05 ;     C4 - H     \n+     1     12   1    1.0969e-01    2.7665e+05 ;     C4 - H1    \n+     1     13   1    1.0969e-01    2.7665e+05 ;     C4 - H2    \n+     2      3   1    1.3984e-01    3.8585e+05 ;     C7 - C8    \n+     2      6   1    1.3984e-01    3.8585e+05 ;     C7 - C11   \n+     2     14   1    1.0860e-01    2.8937e+05 ;     C7 - H3    \n+     3      4   1    1.3984e-01    3.8585e+05 ;     C8 - C9    \n+     3     15   1    1.0860e-01    2.8937e+05 ;     C8 - H4    \n+     4      5   1    1.3984e-01    3.8585e+05 ;     C9 - C10   \n+     4     16   1    1.0860e-01    2.8937e+05 ;     C9 - H5    \n+     5      7   1    1.3984e-01    3.8585e+05 ;    C10 - C12   \n+     5     10   1    1.3637e-01    3.2133e+05 ;    C10 - OAB   \n+     6      7   1    1.3984e-01    3.8585e+05 ;    C11 - C12   \n+     6     17   1    1.0860e-01    2.8937e+05 ;    C11 - H6    \n+     7      8   1    1.5156e-01    2.6861e+05 ;    C12 - C13   \n+     8      9   1    1.5375e-01    2.5179e+05 ;    C13 - C14   \n+     8     18   1    1.0969e-01    2.7665e+05 ;    C13 - H7    \n+     8     19   1    1.0969e-01    2.7665e+05 ;    C13 - H8    \n+     9     20   1    1.0969e-01    2.7665e+05 ;    C14 - H9    \n+     9     21   1    1.0969e-01    2.7665e+05 ;    C14 - H10   \n+    10 '..b'C7-    H3\n+     4      5      7      6      9   180.00  15.16700   2 ;     C9-   C10-   C12-   C11\n+     4      5      7      8      9   180.00  15.16700   2 ;     C9-   C10-   C12-   C13\n+     4      5     10     22      9   180.00   3.76560   2 ;     C9-   C10-   OAB-   H11\n+     5      4      3     15      9   180.00  15.16700   2 ;    C10-    C9-    C8-    H4\n+     5      7      6     17      9   180.00  15.16700   2 ;    C10-   C12-   C11-    H6\n+     5      7      8      9      9     0.00   0.00000   0 ;    C10-   C12-   C13-   C14\n+     5      7      8     18      9     0.00   0.00000   0 ;    C10-   C12-   C13-    H7\n+     5      7      8     19      9     0.00   0.00000   0 ;    C10-   C12-   C13-    H8\n+     6      2      3     15      9   180.00  15.16700   2 ;    C11-    C7-    C8-    H4\n+     6      7      5     10      9   180.00  15.16700   2 ;    C11-   C12-   C10-   OAB\n+     6      7      8      9      9     0.00   0.00000   0 ;    C11-   C12-   C13-   C14\n+     6      7      8     18      9     0.00   0.00000   0 ;    C11-   C12-   C13-    H7\n+     6      7      8     19      9     0.00   0.00000   0 ;    C11-   C12-   C13-    H8\n+     7      5      4     16      9   180.00  15.16700   2 ;    C12-   C10-    C9-    H5\n+     7      5     10     22      9   180.00   3.76560   2 ;    C12-   C10-   OAB-   H11\n+     7      6      2     14      9   180.00  15.16700   2 ;    C12-   C11-    C7-    H3\n+     7      8      9     20      9     0.00   0.65084   3 ;    C12-   C13-   C14-    H9\n+     7      8      9     21      9     0.00   0.65084   3 ;    C12-   C13-   C14-   H10\n+     8      7      5     10      9   180.00  15.16700   2 ;    C13-   C12-   C10-   OAB\n+     8      7      6     17      9   180.00  15.16700   2 ;    C13-   C12-   C11-    H6\n+    10      5      4     16      9   180.00  15.16700   2 ;    OAB-   C10-    C9-    H5\n+    11      1      9      8      9     0.00   0.66944   3 ;      H-    C4-   C14-   C13\n+    11      1      9     20      9     0.00   0.62760   3 ;      H-    C4-   C14-    H9\n+    11      1      9     21      9     0.00   0.62760   3 ;      H-    C4-   C14-   H10\n+    12      1      9      8      9     0.00   0.66944   3 ;     H1-    C4-   C14-   C13\n+    12      1      9     20      9     0.00   0.62760   3 ;     H1-    C4-   C14-    H9\n+    12      1      9     21      9     0.00   0.62760   3 ;     H1-    C4-   C14-   H10\n+    13      1      9      8      9     0.00   0.66944   3 ;     H2-    C4-   C14-   C13\n+    13      1      9     20      9     0.00   0.62760   3 ;     H2-    C4-   C14-    H9\n+    13      1      9     21      9     0.00   0.62760   3 ;     H2-    C4-   C14-   H10\n+    14      2      3     15      9   180.00  15.16700   2 ;     H3-    C7-    C8-    H4\n+    14      2      6     17      9   180.00  15.16700   2 ;     H3-    C7-   C11-    H6\n+    15      3      4     16      9   180.00  15.16700   2 ;     H4-    C8-    C9-    H5\n+    18      8      9     20      9     0.00   0.62760   3 ;     H7-   C13-   C14-    H9\n+    18      8      9     21      9     0.00   0.62760   3 ;     H7-   C13-   C14-   H10\n+    19      8      9     20      9     0.00   0.62760   3 ;     H8-   C13-   C14-    H9\n+    19      8      9     21      9     0.00   0.62760   3 ;     H8-   C13-   C14-   H10\n+\n+[ dihedrals ] ; impropers\n+; treated as propers in GROMACS to use correct AMBER analytical function\n+;    i      j      k      l   func   phase     kd      pn\n+     2      4      3     15      4   180.00   4.60240   2 ;     C7-    C9-    C8-    H4\n+     2      7      6     17      4   180.00   4.60240   2 ;     C7-   C12-   C11-    H6\n+     3      5      4     16      4   180.00   4.60240   2 ;     C8-   C10-    C9-    H5\n+     3      6      2     14      4   180.00   4.60240   2 ;     C8-   C11-    C7-    H3\n+     4      7      5     10      4   180.00   4.60240   2 ;     C9-   C12-   C10-   OAB\n+     5      6      7      8      4   180.00   4.60240   2 ;    C10-   C11-   C12-   C13\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/cid1.inpcrd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/cid1.inpcrd Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,23 @@
+default_name
+    42
+ 413.7160000 -23.8940000  73.9880000 413.0110000 -23.1360000  73.0600000
+ 410.4130000 -22.8270000  77.7640000 413.0830000 -24.9950000  74.5420000
+ 411.1680000 -24.6150000  73.3300000 412.1350000 -21.4560000  78.2360000
+ 411.7120000 -23.4970000  72.7190000 411.3590000 -22.4680000  78.7560000
+ 410.6390000 -22.0230000  76.6690000 409.9160000 -22.0060000  75.3710000
+ 410.3560000 -20.6120000  70.7060000 411.2760000 -21.2970000  69.7140000
+ 410.9200000 -22.6950000  71.7140000 410.7700000 -21.2020000  72.0480000
+ 411.0860000 -23.8010000  69.4340000 409.7500000 -20.9270000  73.1430000
+ 411.8220000 -25.3760000  74.2360000 411.6890000 -21.1940000  76.9670000
+ 410.3570000 -21.0800000  74.4240000 411.5380000 -22.6710000  70.3070000
+ 408.9730000 -22.7740000  75.2000000 411.4870000 -23.1760000  80.2920000
+ 414.7300000 -23.6320000  74.2690000 413.4810000 -22.2670000  72.6080000
+ 409.6480000 -23.5890000  77.8390000 413.5900000 -25.6180000  75.2710000
+ 410.1590000 -24.9450000  73.1040000 412.9630000 -20.8980000  78.6520000
+ 410.4620000 -19.5230000  70.6760000 409.3110000 -20.8540000  70.4760000
+ 410.8360000 -21.3960000  68.7180000 412.2480000 -20.7980000  69.6480000
+ 409.9150000 -23.1650000  71.6000000 411.7370000 -20.7780000  72.3500000
+ 410.0030000 -23.7210000  69.3180000 411.5930000 -23.7040000  68.4720000
+ 411.3590000 -24.7350000  69.9290000 408.9340000 -21.6350000  73.0500000
+ 409.3820000 -19.9130000  73.0430000 412.0760000 -20.4940000  76.3480000
+ 411.1120000 -20.4360000  74.6780000 412.5590000 -22.7580000  70.4090000
b
diff -r 000000000000 -r 3de1359b86cc test-data/cid1.prmtop
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/cid1.prmtop Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,402 @@\n+%VERSION  VERSION_STAMP = V0001.000  DATE = 11/24/21  10:22:01                  \n+%FLAG TITLE                                                                     \n+%FORMAT(20a4)                                                                   \n+default_name                                                                    \n+%FLAG POINTERS                                                                  \n+%FORMAT(10I8)                                                                   \n+      42      11      20      24      46      33      89      56       0       0\n+     240       1      24      33      56      23      41      20      17       0\n+       0       0       0       0       0       0       0       0      42       0\n+       0\n+%FLAG ATOM_NAME                                                                 \n+%FORMAT(20a4)                                                                   \n+C1  C2  C3  C4  C5  C6  C7  C8  C9  C10 C11 C12 C13 C14 C15 C16 N17 N18 N19 N20 \n+O21 CL22H23 H24 H25 H26 H27 H28 H29 H30 H31 H32 H33 H34 H35 H36 H37 H38 H39 H40 \n+H41 H42 \n+%FLAG CHARGE                                                                    \n+%FORMAT(5E16.8)                                                                 \n+ -4.30592949E+00 -1.43956170E+00 -1.23911640E+00  8.03967876E+00  7.94856726E+00\n+ -1.60902909E+00 -5.47762338E+00 -1.52338428E+00 -4.18930677E+00  1.31874785E+01\n+ -1.81129662E+00  1.98258624E+00  3.58614864E+00 -1.83498561E+00  1.45960623E+00\n+  1.80400770E+00 -1.16804943E+01 -2.82627873E+00 -1.06946679E+01 -1.25260090E+01\n+ -1.19556510E+01 -3.71734920E-01  3.07956870E+00  2.51467740E+00  3.29823630E+00\n+  9.49381830E-01  7.12491930E-01  3.55334850E+00  1.61631801E+00  1.61631801E+00\n+  1.88965251E+00  1.88965251E+00  2.61854451E+00  1.88965251E+00  2.01114058E+00\n+  2.01114058E+00  2.01114058E+00  1.27009431E+00  1.27009431E+00  5.51589021E+00\n+  5.87669175E+00  8.14172364E+00\n+%FLAG ATOMIC_NUMBER                                                             \n+%FORMAT(10I8)                                                                   \n+       6       6       6       6       6       6       6       6       6       6\n+       6       6       6       6       6       6       7       7       7       7\n+       8      17       1       1       1       1       1       1       1       1\n+       1       1       1       1       1       1       1       1       1       1\n+       1       1\n+%FLAG MASS                                                                      \n+%FORMAT(5E16.8)                                                                 \n+  1.20100000E+01  1.20100000E+01  1.20100000E+01  1.20100000E+01  1.20100000E+01\n+  1.20100000E+01  1.20100000E+01  1.20100000E+01  1.20100000E+01  1.20100000E+01\n+  1.20100000E+01  1.20100000E+01  1.20100000E+01  1.20100000E+01  1.20100000E+01\n+  1.20100000E+01  1.40100000E+01  1.40100000E+01  1.40100000E+01  1.40100000E+01\n+  1.60000000E+01  3.54500000E+01  1.00800000E+00  1.00800000E+00  1.00800000E+00\n+  1.00800000E+00  1.00800000E+00  1.00800000E+00  1.00800000E+00  1.00800000E+00\n+  1.00800000E+00  1.00800000E+00  1.00800000E+00  1.00800000E+00  1.00800000E+00\n+  1.00800000E+00  1.00800000E+00  1.00800000E+00  1.00800000E+00  1.00800000E+00\n+  1.00800000E+00  1.00800000E+00\n+%FLAG ATOM_TYPE_INDEX                                                           \n+%FORMAT(10I8)                                                                   \n+       1       1       1       1       1       1       1       1       1       1\n+       2       2       2       2       2       2       3       3       3       3\n+       4       5       6       6       6       7       7       7       8       8\n+       9       9       9       8       9       9       9      10      10      11\n+      11      11\n+%FLAG NUMBER_EXCLUDED_ATOMS                                                     \n+%FORMAT(10I8)                                                                   \n+  '..b'      \n+\n+%FLAG HBCUT                                                                     \n+%FORMAT(5E16.8)                                                                 \n+\n+%FLAG AMBER_ATOM_TYPE                                                           \n+%FORMAT(20a4)                                                                   \n+ca  ca  cc  ca  ca  cd  ca  cc  cd  c   c3  c3  c3  c3  c3  c3  nb  na  n   n4  \n+o   cl  ha  ha  ha  h4  h4  h4  hc  hc  hx  hx  hx  hc  hx  hx  hx  h1  h1  hn  \n+hn  hn  \n+%FLAG TREE_CHAIN_CLASSIFICATION                                                 \n+%FORMAT(20a4)                                                                   \n+BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA \n+BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA \n+BLA BLA \n+%FLAG JOIN_ARRAY                                                                \n+%FORMAT(10I8)                                                                   \n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0\n+%FLAG IROTAT                                                                    \n+%FORMAT(10I8)                                                                   \n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0\n+%FLAG RADIUS_SET                                                                \n+%FORMAT(1a80)                                                                   \n+modified Bondi radii (mbondi)                                                   \n+%FLAG RADII                                                                     \n+%FORMAT(5E16.8)                                                                 \n+  1.70000000E+00  1.70000000E+00  1.70000000E+00  1.70000000E+00  1.70000000E+00\n+  1.70000000E+00  1.70000000E+00  1.70000000E+00  1.70000000E+00  1.70000000E+00\n+  1.70000000E+00  1.70000000E+00  1.70000000E+00  1.70000000E+00  1.70000000E+00\n+  1.70000000E+00  1.55000000E+00  1.55000000E+00  1.55000000E+00  1.55000000E+00\n+  1.50000000E+00  1.70000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00\n+  1.30000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00\n+  1.30000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00\n+  1.30000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00\n+  1.30000000E+00  1.30000000E+00\n+%FLAG SCREEN                                                                    \n+%FORMAT(5E16.8)                                                                 \n+  7.20000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01\n+  7.20000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01\n+  7.20000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01\n+  7.20000000E-01  7.90000000E-01  7.90000000E-01  7.90000000E-01  7.90000000E-01\n+  8.50000000E-01  8.00000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01\n+%FLAG IPOL                                                                      \n+%FORMAT(1I8)                                                                    \n+       0\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/complex.prmtop
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/complex.prmtop Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,19476 @@\n+%VERSION  VERSION_STAMP = V0001.000  DATE = 10/09/09  16:22:47                  \n+%FLAG TITLE                                                                     \n+%FORMAT(20a4)                                                                   \n+                                                                                \n+%FLAG POINTERS                                                                  \n+%FORMAT(10I8)                                                                   \n+    3941      15    1991    1991    4536    2694    8432    6711       0       0\n+   21774     241    1991    2694    6711      59     119      51      42       0\n+       0       0       0       0       0       0       0       0      61       0\n+       0\n+%FLAG ATOM_NAME                                                                 \n+%FORMAT(20a4)                                                                   \n+N   H1  H2  H3  CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  \n+HG  CD1 HD11HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  \n+C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13CD2 HD21HD22HD23C   \n+O   N   H   CA  HA  CB  HB  CG2 HG21HG22HG23OG1 HG1 C   O   N   H   CA  HA  CB  \n+HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   H   CA  \n+HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 NE2 HE21HE22C   O   N   H   CA  HA  CB  HB2 \n+HB3 CG  HG2 HG3 SD  CE  HE1 HE2 HE3 C   O   N   H   CA  HA  CB  HB  CG1 HG11HG12\n+HG13CG2 HG21HG22HG23C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  C   O   N   H   \n+CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12\n+HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13\n+CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   H   \n+CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 \n+OE2 C   O   N   CD  HD2 HD3 CG  HG2 HG3 CB  HB2 HB3 CA  HA  C   O   N   CD  HD2 \n+HD3 CG  HG2 HG3 CB  HB2 HB3 CA  HA  C   O   N   H   CA  HA  CB  HB  CG2 HG21HG22\n+HG23CG1 HG12HG13CD1 HD11HD12HD13C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 \n+HD11HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 CG  CD1 HD1 CE1 \n+HE1 CZ  OH  HH  CE2 HE2 CD2 HD2 C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  C   \n+O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 OE2 C   O   N   H   CA  HA  \n+CB  HB2 HB3 CG  CD1 HD1 CE1 HE1 CZ  OH  HH  CE2 HE2 CD2 HD2 C   O   N   H   CA  \n+HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   CD  HD2 HD3 CG  HG2 HG3 CB  HB2 HB3 CA  \n+HA  C   O   N   H   CA  HA  CB  HB  CG2 HG21HG22HG23OG1 HG1 C   O   N   H   CA  \n+HA  CB  HB2 HB3 CG  HG2 HG3 CD  HD2 HD3 NE  HE  CZ  NH1 HH11HH12NH2 HH21HH22C   \n+O   N   CD  HD2 HD3 CG  HG2 HG3 CB  HB2 HB3 CA  HA  C   O   N   H   CA  HA  CB  \n+HB2 HB3 CG  CD1 HD1 CE1 HE1 CZ  HZ  CE2 HE2 CD2 HD2 C   O   N   H   CA  HA  CB  \n+HB2 HB3 OG  HG  C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 OE2 C   \n+O   N   H   CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  \n+C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 SD  CE  HE1 HE2 HE3 C   O   N   \n+H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 SD  CE  HE1 HE2 HE3 C   O   N   H   CA  HA2 \n+HA3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13CD2 HD21HD22HD23\n+C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13CD2 HD21HD22HD23C   \n+O   N   H   CA  HA  CB  HB  CG2 HG21HG22HG23OG1 HG1 C   O   N   H   CA  HA  CB  \n+HB2 HB3 CG  OD1 ND2 HD21HD22C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11\n+HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB1 HB2 HB3 C   O   N   H   \n+CA  HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 \n+CD  HD2 HD3 NE  HE  CZ  NH1 HH11HH12NH2 HH21HH22C   O   N   H   CA  HA  CB  HB2 \n+HB3 CG  HG2 HG3 CD  OE1 OE2 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11\n+HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB  CG1 HG11HG12HG13CG2 HG21\n+HG22HG23C   O   N   H   CA  HA  '..b'20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  9.60000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  7.90000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  7.20000000E-01  9.60000000E-01  7.20000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  7.20000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  7.20000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.90000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/leap_testfile.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/leap_testfile.txt Thu Jan 27 17:17:54 2022 +0000
b
@@ -0,0 +1,14 @@
+source oldff/leaprc.ff14SB
+loadAmberParams frcmod.ff14SB
+loadAmberParams frcmod.ionsjc_tip4pew
+loadAmberPrep sample.dat 
+loadAmberParams sample.dat
+mol = loadPdb sample.dat
+bond mol.114.ZN mol.5.SG 
+set mol box 12
+addIons mol Cl- 0
+addIons mol Na+ 0
+saveAmberParm mol out/saveAmberParm_topologyfilename_9_1.prmtop out/saveAmberParm_coordinatefilename_9_2.inpcrd
+savePdb mol out/savePdb_filename_10_1.pdb
+quit
+          
\ No newline at end of file
b
diff -r 000000000000 -r 3de1359b86cc test-data/ligand.prmtop
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/ligand.prmtop Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,454 @@\n+%VERSION  VERSION_STAMP = V0001.000  DATE = 10/09/09  16:30:00                  \n+%FLAG TITLE                                                                     \n+%FORMAT(20a4)                                                                   \n+                                                                                \n+%FLAG POINTERS                                                                  \n+%FORMAT(10I8)                                                                   \n+      61      11      27      38      59      53     108      91       0       0\n+     329       1      38      53      91      18      30      19      14       0\n+       0       0       0       0       0       0       0       0      61       0\n+       0\n+%FLAG ATOM_NAME                                                                 \n+%FORMAT(20a4)                                                                   \n+O11 H7  C11 C12 C13 H9  H8  C10 H6  C9  H5  C8  C7  S6  C5  C4  H4  C3  O3  H3  \n+C2  H2  C1  H1  C14 C15 C16 O16 C17 C22 C21 H12 H13 C18 H10 C19 H11 C20 O23 C24 \n+H14 H15 C25 H16 H17 N26 C27 H18 H19 C28 H20 H21 C29 H22 H23 C30 H24 H25 C31 H26 \n+H27 \n+%FLAG CHARGE                                                                    \n+%FORMAT(5E16.8)                                                                 \n+ -9.01274958E+00  7.67158830E+00  2.44725489E+00 -3.86312760E+00 -1.24093863E+00\n+  2.64405573E+00  2.50374402E+00 -2.84450103E+00  2.80076751E+00 -1.48329522E+00\n+  2.58938883E+00 -1.16622720E+00 -4.42619667E+00  5.00931027E+00 -7.96314510E-01\n+ -3.48957045E+00  2.56023315E+00  2.52561078E+00 -9.00728289E+00  7.66247715E+00\n+ -2.73881169E+00  2.81716758E+00 -1.05142671E+00  2.68414479E+00 -1.46142846E+00\n+ -2.43996597E+00  1.08240462E+01 -9.42639579E+00 -4.00708377E+00 -9.62137440E-01\n+ -3.25632501E+00  2.79894528E+00  2.72423385E+00 -6.70580640E-01  2.86090110E+00\n+ -4.11459534E+00  2.62218897E+00  2.91556800E+00 -6.04798137E+00  2.25227628E+00\n+  7.61692140E-01  1.15347159E+00  3.11419107E+00  6.65113950E-01  1.03867110E+00\n+ -1.33769904E+01  3.13970229E+00  2.05911990E-01  8.18181270E-01 -1.39400595E+00\n+  7.61692140E-01  9.38448450E-01 -1.42862832E+00  6.86980710E-01  7.67158830E-01\n+ -1.40676156E+00  7.92670050E-01  9.25692840E-01  3.03947964E+00  1.12249368E+00\n+  2.75156730E-01\n+%FLAG MASS                                                                      \n+%FORMAT(5E16.8)                                                                 \n+  1.60000000E+01  1.00800000E+00  1.20100000E+01  1.20100000E+01  1.20100000E+01\n+  1.00800000E+00  1.00800000E+00  1.20100000E+01  1.00800000E+00  1.20100000E+01\n+  1.00800000E+00  1.20100000E+01  1.20100000E+01  3.20600000E+01  1.20100000E+01\n+  1.20100000E+01  1.00800000E+00  1.20100000E+01  1.60000000E+01  1.00800000E+00\n+  1.20100000E+01  1.00800000E+00  1.20100000E+01  1.00800000E+00  1.20100000E+01\n+  1.20100000E+01  1.20100000E+01  1.60000000E+01  1.20100000E+01  1.20100000E+01\n+  1.20100000E+01  1.00800000E+00  1.00800000E+00  1.20100000E+01  1.00800000E+00\n+  1.20100000E+01  1.00800000E+00  1.20100000E+01  1.60000000E+01  1.20100000E+01\n+  1.00800000E+00  1.00800000E+00  1.20100000E+01  1.00800000E+00  1.00800000E+00\n+  1.40100000E+01  1.20100000E+01  1.00800000E+00  1.00800000E+00  1.20100000E+01\n+  1.00800000E+00  1.00800000E+00  1.20100000E+01  1.00800000E+00  1.00800000E+00\n+  1.20100000E+01  1.00800000E+00  1.00800000E+00  1.20100000E+01  1.00800000E+00\n+  1.00800000E+00\n+%FLAG ATOM_TYPE_INDEX                                                           \n+%FORMAT(10I8)                                                                   \n+       1       2       3       3       3       4       4       3       4       3\n+       4       3       3       5       3       3       4       3       1       2\n+       3       4       3       4       3       3       3       6       3       3\n+       3       4       4       3       4       3       4       3       7  '..b'\n+E   E   M   E   E   M   3   E   E   3   E   E   3   E   E   B   E   E   M   E   \n+E   \n+%FLAG JOIN_ARRAY                                                                \n+%FORMAT(10I8)                                                                   \n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0\n+%FLAG IROTAT                                                                    \n+%FORMAT(10I8)                                                                   \n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0       0       0       0       0       0       0       0       0       0\n+       0\n+%FLAG RADIUS_SET                                                                \n+%FORMAT(1a80)                                                                   \n+H(N)-modified Bondi radii (mbondi2)                                             \n+%FLAG RADII                                                                     \n+%FORMAT(5E16.8)                                                                 \n+  1.50000000E+00  1.20000000E+00  1.70000000E+00  1.70000000E+00  1.70000000E+00\n+  1.20000000E+00  1.20000000E+00  1.70000000E+00  1.20000000E+00  1.70000000E+00\n+  1.20000000E+00  1.70000000E+00  1.70000000E+00  1.80000000E+00  1.70000000E+00\n+  1.70000000E+00  1.20000000E+00  1.70000000E+00  1.50000000E+00  1.20000000E+00\n+  1.70000000E+00  1.20000000E+00  1.70000000E+00  1.20000000E+00  1.70000000E+00\n+  1.70000000E+00  1.70000000E+00  1.50000000E+00  1.70000000E+00  1.70000000E+00\n+  1.70000000E+00  1.20000000E+00  1.20000000E+00  1.70000000E+00  1.20000000E+00\n+  1.70000000E+00  1.20000000E+00  1.70000000E+00  1.50000000E+00  1.70000000E+00\n+  1.20000000E+00  1.20000000E+00  1.70000000E+00  1.20000000E+00  1.20000000E+00\n+  1.55000000E+00  1.70000000E+00  1.20000000E+00  1.20000000E+00  1.70000000E+00\n+  1.20000000E+00  1.20000000E+00  1.70000000E+00  1.20000000E+00  1.20000000E+00\n+  1.70000000E+00  1.20000000E+00  1.20000000E+00  1.70000000E+00  1.20000000E+00\n+  1.20000000E+00\n+%FLAG SCREEN                                                                    \n+%FORMAT(5E16.8)                                                                 \n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  7.20000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  7.20000000E-01  9.60000000E-01  7.20000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  7.20000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  7.20000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.90000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/receptor.prmtop
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/receptor.prmtop Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,19148 @@\n+%VERSION  VERSION_STAMP = V0001.000  DATE = 10/09/09  16:29:33                  \n+%FLAG TITLE                                                                     \n+%FORMAT(20a4)                                                                   \n+                                                                                \n+%FLAG POINTERS                                                                  \n+%FORMAT(10I8)                                                                   \n+    3880      14    1964    1953    4477    2641    8324    6620       0       0\n+   21445     240    1953    2641    6620      41      89      42      28       0\n+       0       0       0       0       0       0       0       0      24       0\n+       0\n+%FLAG ATOM_NAME                                                                 \n+%FORMAT(20a4)                                                                   \n+N   H1  H2  H3  CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  \n+HG  CD1 HD11HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  \n+C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13CD2 HD21HD22HD23C   \n+O   N   H   CA  HA  CB  HB  CG2 HG21HG22HG23OG1 HG1 C   O   N   H   CA  HA  CB  \n+HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   H   CA  \n+HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 NE2 HE21HE22C   O   N   H   CA  HA  CB  HB2 \n+HB3 CG  HG2 HG3 SD  CE  HE1 HE2 HE3 C   O   N   H   CA  HA  CB  HB  CG1 HG11HG12\n+HG13CG2 HG21HG22HG23C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  C   O   N   H   \n+CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12\n+HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13\n+CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   H   \n+CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 \n+OE2 C   O   N   CD  HD2 HD3 CG  HG2 HG3 CB  HB2 HB3 CA  HA  C   O   N   CD  HD2 \n+HD3 CG  HG2 HG3 CB  HB2 HB3 CA  HA  C   O   N   H   CA  HA  CB  HB  CG2 HG21HG22\n+HG23CG1 HG12HG13CD1 HD11HD12HD13C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 \n+HD11HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB2 HB3 CG  CD1 HD1 CE1 \n+HE1 CZ  OH  HH  CE2 HE2 CD2 HD2 C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  C   \n+O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 OE2 C   O   N   H   CA  HA  \n+CB  HB2 HB3 CG  CD1 HD1 CE1 HE1 CZ  OH  HH  CE2 HE2 CD2 HD2 C   O   N   H   CA  \n+HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   CD  HD2 HD3 CG  HG2 HG3 CB  HB2 HB3 CA  \n+HA  C   O   N   H   CA  HA  CB  HB  CG2 HG21HG22HG23OG1 HG1 C   O   N   H   CA  \n+HA  CB  HB2 HB3 CG  HG2 HG3 CD  HD2 HD3 NE  HE  CZ  NH1 HH11HH12NH2 HH21HH22C   \n+O   N   CD  HD2 HD3 CG  HG2 HG3 CB  HB2 HB3 CA  HA  C   O   N   H   CA  HA  CB  \n+HB2 HB3 CG  CD1 HD1 CE1 HE1 CZ  HZ  CE2 HE2 CD2 HD2 C   O   N   H   CA  HA  CB  \n+HB2 HB3 OG  HG  C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 CD  OE1 OE2 C   \n+O   N   H   CA  HA  CB  HB1 HB2 HB3 C   O   N   H   CA  HA  CB  HB2 HB3 OG  HG  \n+C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 SD  CE  HE1 HE2 HE3 C   O   N   \n+H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 SD  CE  HE1 HE2 HE3 C   O   N   H   CA  HA2 \n+HA3 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13CD2 HD21HD22HD23\n+C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11HD12HD13CD2 HD21HD22HD23C   \n+O   N   H   CA  HA  CB  HB  CG2 HG21HG22HG23OG1 HG1 C   O   N   H   CA  HA  CB  \n+HB2 HB3 CG  OD1 ND2 HD21HD22C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11\n+HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB1 HB2 HB3 C   O   N   H   \n+CA  HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG2 HG3 \n+CD  HD2 HD3 NE  HE  CZ  NH1 HH11HH12NH2 HH21HH22C   O   N   H   CA  HA  CB  HB2 \n+HB3 CG  HG2 HG3 CD  OE1 OE2 C   O   N   H   CA  HA  CB  HB2 HB3 CG  HG  CD1 HD11\n+HD12HD13CD2 HD21HD22HD23C   O   N   H   CA  HA  CB  HB  CG1 HG11HG12HG13CG2 HG21\n+HG22HG23C   O   N   H   CA  HA  '..b'8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.90000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  9.60000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01\n+  7.90000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01  7.20000000E-01\n+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01\n+  7.90000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01  8.50000000E-01\n+  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/sarscov2_helicase_ZincBindingDomain.pdb
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/sarscov2_helicase_ZincBindingDomain.pdb Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,1663 @@\n+ATOM      1  N   ALA     1     451.649  -5.712  69.486  1.00  0.00\n+ATOM      2  H1  ALA     1     450.883  -6.309  69.206  1.00  0.00\n+ATOM      3  H2  ALA     1     451.742  -5.736  70.492  1.00  0.00\n+ATOM      4  H3  ALA     1     452.505  -6.045  69.064  1.00  0.00\n+ATOM      5  CA  ALA     1     451.382  -4.305  69.037  1.00  0.00\n+ATOM      6  HA  ALA     1     450.489  -3.941  69.546  1.00  0.00\n+ATOM      7  CB  ALA     1     452.583  -3.448  69.480  1.00  0.00\n+ATOM      8  HB1 ALA     1     453.487  -3.780  68.967  1.00  0.00\n+ATOM      9  HB2 ALA     1     452.399  -2.399  69.241  1.00  0.00\n+ATOM     10  HB3 ALA     1     452.726  -3.537  70.558  1.00  0.00\n+ATOM     11  C   ALA     1     451.177  -4.128  67.546  1.00  0.00\n+ATOM     12  O   ALA     1     450.896  -3.027  67.092  1.00  0.00\n+ATOM     13  N   VAL     2     451.298  -5.210  66.754  1.00  0.00\n+ATOM     14  H   VAL     2     451.475  -6.116  67.161  1.00  0.00\n+ATOM     15  CA  VAL     2     451.264  -5.158  65.309  1.00  0.00\n+ATOM     16  HA  VAL     2     451.033  -4.151  64.977  1.00  0.00\n+ATOM     17  CB  VAL     2     452.586  -5.609  64.686  1.00  0.00\n+ATOM     18  HB  VAL     2     452.672  -6.695  64.753  1.00  0.00\n+ATOM     19  CG1 VAL     2     452.667  -5.189  63.207  1.00  0.00\n+ATOM     20 HG11 VAL     2     452.654  -4.102  63.129  1.00  0.00\n+ATOM     21 HG12 VAL     2     453.594  -5.566  62.774  1.00  0.00\n+ATOM     22 HG13 VAL     2     451.831  -5.606  62.645  1.00  0.00\n+ATOM     23  CG2 VAL     2     453.765  -4.981  65.459  1.00  0.00\n+ATOM     24 HG21 VAL     2     453.849  -5.408  66.458  1.00  0.00\n+ATOM     25 HG22 VAL     2     454.698  -5.192  64.934  1.00  0.00\n+ATOM     26 HG23 VAL     2     453.640  -3.899  65.527  1.00  0.00\n+ATOM     27  C   VAL     2     450.137  -6.087  64.929  1.00  0.00\n+ATOM     28  O   VAL     2     449.922  -7.082  65.623  1.00  0.00\n+ATOM     29  N   GLY     3     449.347  -5.763  63.894  1.00  0.00\n+ATOM     30  H   GLY     3     449.526  -4.931  63.349  1.00  0.00\n+ATOM     31  CA  GLY     3     448.202  -6.590  63.544  1.00  0.00\n+ATOM     32  HA2 GLY     3     448.526  -7.622  63.401  1.00  0.00\n+ATOM     33  HA3 GLY     3     447.482  -6.565  64.363  1.00  0.00\n+ATOM     34  C   GLY     3     447.521  -6.135  62.292  1.00  0.00\n+ATOM     35  O   GLY     3     448.018  -5.272  61.574  1.00  0.00\n+ATOM     36  N   ALA     4     446.339  -6.701  61.997  1.00  0.00\n+ATOM     37  H   ALA     4     445.958  -7.398  62.619  1.00  0.00\n+ATOM     38  CA  ALA     4     445.540  -6.325  60.855  1.00  0.00\n+ATOM     39  HA  ALA     4     446.178  -5.964  60.047  1.00  0.00\n+ATOM     40  CB  ALA     4     444.767  -7.548  60.344  1.00  0.00\n+ATOM     41  HB1 ALA     4     444.285  -8.067  61.175  1.00  0.00\n+ATOM     42  HB2 ALA     4     444.004  -7.235  59.630  1.00  0.00\n+ATOM     43  HB3 ALA     4     445.457  -8.229  59.843  1.00  0.00\n+ATOM     44  C   ALA     4     444.515  -5.266  61.193  1.00  0.00\n+ATOM     45  O   ALA     4     443.754  -5.390  62.151  1.00  0.00\n+ATOM     46  N   CY1     5     444.443  -4.188  60.391  1.00  0.00\n+ATOM     47  HN  CY1     5     445.076  -4.102  59.609  1.00  0.00\n+ATOM     48  CA  CY1     5     443.446  -3.151  60.572  1.00  0.00\n+ATOM     49  HA  CY1     5     443.649  -2.656  61.519  1.00  0.00\n+ATOM     50  CB  CY1     5     443.597  -2.100  59.443  1.00  0.00\n+ATOM     51  HB3 CY1     5     443.538  -2.611  58.481  1.00  0.00\n+ATOM     52  HB2 CY1     5     444.592  -1.667  59.526  1.00  0.00\n+ATOM     53 SG   CY1     5     442.360  -0.739  59.440  1.00  0.00\n+ATOM     54  C   CY1     5     442.003  -3.650  60.562  1.00  0.00\n+ATOM     55  O   CY1     5     441.581  -4.352  59.650  1.00  0.00\n+ATOM     56  N   VAL     6     441.181  -3.202  61.531  1.00  0.00\n+ATOM     57  H   VAL     6     441.551  -2.562  62.217  1.00  0.00\n+ATOM     58  CA  VAL     6     439.807  -3.651  61.711  1.00  0.00\n+ATOM     59  HA  VAL     6     439.'..b'61  1.00  0.00\n+ATOM   1601 HG13 ILE   109     428.660   1.834  64.249  1.00  0.00\n+ATOM   1602  CD1 ILE   109     429.564  -0.042  63.764  1.00  0.00\n+ATOM   1603 HD11 ILE   109     429.921   0.487  62.880  1.00  0.00\n+ATOM   1604 HD12 ILE   109     430.376  -0.654  64.152  1.00  0.00\n+ATOM   1605 HD13 ILE   109     428.740  -0.693  63.471  1.00  0.00\n+ATOM   1606  C   ILE   109     430.814   3.033  67.606  1.00  0.00\n+ATOM   1607  O   ILE   109     430.554   2.794  68.792  1.00  0.00\n+ATOM   1608  N   ALA   110     431.983   3.596  67.278  1.00  0.00\n+ATOM   1609  H   ALA   110     432.163   3.821  66.310  1.00  0.00\n+ATOM   1610  CA  ALA   110     433.054   3.808  68.219  1.00  0.00\n+ATOM   1611  HA  ALA   110     433.182   2.899  68.808  1.00  0.00\n+ATOM   1612  CB  ALA   110     434.349   4.045  67.425  1.00  0.00\n+ATOM   1613  HB1 ALA   110     434.259   4.953  66.827  1.00  0.00\n+ATOM   1614  HB2 ALA   110     435.186   4.154  68.115  1.00  0.00\n+ATOM   1615  HB3 ALA   110     434.553   3.199  66.769  1.00  0.00\n+ATOM   1616  C   ALA   110     432.831   4.959  69.179  1.00  0.00\n+ATOM   1617  O   ALA   110     433.438   4.995  70.250  1.00  0.00\n+ATOM   1618  N   THR   111     431.964   5.926  68.831  1.00  0.00\n+ATOM   1619  H   THR   111     431.480   5.878  67.945  1.00  0.00\n+ATOM   1620  CA  THR   111     431.707   7.059  69.708  1.00  0.00\n+ATOM   1621  HA  THR   111     432.377   7.016  70.566  1.00  0.00\n+ATOM   1622  CB  THR   111     431.963   8.415  69.060  1.00  0.00\n+ATOM   1623  HB  THR   111     431.842   9.213  69.793  1.00  0.00\n+ATOM   1624  CG2 THR   111     433.402   8.466  68.526  1.00  0.00\n+ATOM   1625 HG21 THR   111     433.485   9.278  67.804  1.00  0.00\n+ATOM   1626 HG22 THR   111     434.081   8.673  69.353  1.00  0.00\n+ATOM   1627 HG23 THR   111     433.707   7.545  68.032  1.00  0.00\n+ATOM   1628  OG1 THR   111     431.086   8.670  67.968  1.00  0.00\n+ATOM   1629  HG1 THR   111     431.223   7.988  67.314  1.00  0.00\n+ATOM   1630  C   THR   111     430.315   7.105  70.295  1.00  0.00\n+ATOM   1631  O   THR   111     430.038   8.000  71.090  1.00  0.00\n+ATOM   1632  N   CYS   112     429.402   6.167  69.966  1.00  0.00\n+ATOM   1633  H   CYS   112     429.635   5.429  69.316  1.00  0.00\n+ATOM   1634  CA  CYS   112     428.073   6.164  70.566  1.00  0.00\n+ATOM   1635  HA  CYS   112     427.729   7.197  70.636  1.00  0.00\n+ATOM   1636  CB  CYS   112     427.030   5.413  69.695  1.00  0.00\n+ATOM   1637  HB2 CYS   112     426.038   5.580  70.115  1.00  0.00\n+ATOM   1638  HB3 CYS   112     427.039   5.823  68.686  1.00  0.00\n+ATOM   1639  SG  CYS   112     427.324   3.602  69.613  1.00  0.00\n+ATOM   1640  HG  CYS   112     427.289   3.380  70.936  1.00  0.00\n+ATOM   1641  C   CYS   112     428.058   5.578  71.982  1.00  0.00\n+ATOM   1642  O   CYS   112     429.027   4.954  72.413  1.00  0.00\n+ATOM   1643  N   ASP   113     426.952   5.752  72.748  1.00  0.00\n+ATOM   1644  H   ASP   113     426.155   6.246  72.372  1.00  0.00\n+ATOM   1645  CA  ASP   113     426.914   5.370  74.156  1.00  0.00\n+ATOM   1646  HA  ASP   113     427.903   5.016  74.443  1.00  0.00\n+ATOM   1647  CB  ASP   113     426.651   6.606  75.066  1.00  0.00\n+ATOM   1648  HB2 ASP   113     426.990   6.345  76.070  1.00  0.00\n+ATOM   1649  HB3 ASP   113     427.293   7.421  74.725  1.00  0.00\n+ATOM   1650  CG  ASP   113     425.229   7.139  75.210  1.00  0.00\n+ATOM   1651  OD1 ASP   113     424.231   6.456  74.879  1.00  0.00\n+ATOM   1652  OD2 ASP   113     425.104   8.280  75.712  1.00  0.00\n+ATOM   1653  C   ASP   113     425.975   4.234  74.508  1.00  0.00\n+ATOM   1654  O   ASP   113     426.016   3.721  75.633  1.00  0.00\n+ATOM   1655  OXT ASP   113     425.097   3.884  73.722  1.00  0.00\n+TER   \n+ATOM   1656 ZN   ZN1   114     442.651   0.750  57.290  1.00  0.00\n+TER   \n+ATOM   1657 ZN   ZN2   115     455.033  18.827  75.069  1.00  0.00\n+TER   \n+ATOM   1658 ZN   ZN4   116     439.355   6.392  70.261  1.00  0.00\n+TER   \n+END   \n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/solv_ions.gro
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/solv_ions.gro Thu Jan 27 17:17:54 2022 +0000
b
b'@@ -0,0 +1,38379 @@\n+LYSOZYME in water\n+38376\n+    1LYS      N    1   4.434   3.396   2.469\n+    1LYS     H1    2   4.510   3.450   2.431\n+    1LYS     H2    3   4.368   3.376   2.397\n+    1LYS     H3    4   4.390   3.448   2.542\n+    1LYS     CA    5   4.487   3.269   2.524\n+    1LYS     HA    6   4.531   3.217   2.451\n+    1LYS     CB    7   4.585   3.306   2.636\n+    1LYS    HB1    8   4.661   3.357   2.597\n+    1LYS    HB2    9   4.537   3.363   2.703\n+    1LYS     CG   10   4.643   3.187   2.711\n+    1LYS    HG1   11   4.574   3.151   2.773\n+    1LYS    HG2   12   4.668   3.116   2.644\n+    1LYS     CD   13   4.767   3.227   2.790\n+    1LYS    HD1   14   4.843   3.245   2.727\n+    1LYS    HD2   15   4.747   3.309   2.843\n+    1LYS     CE   16   4.804   3.113   2.883\n+    1LYS    HE1   17   4.739   3.108   2.959\n+    1LYS    HE2   18   4.804   3.026   2.834\n+    1LYS     NZ   19   4.940   3.139   2.937\n+    1LYS    HZ1   20   4.967   3.065   2.999\n+    1LYS    HZ2   21   5.006   3.144   2.861\n+    1LYS    HZ3   22   4.940   3.226   2.987\n+    1LYS      C   23   4.372   3.188   2.583\n+    1LYS      O   24   4.293   3.243   2.659\n+    2VAL      N   25   4.372   3.058   2.563\n+    2VAL      H   26   4.434   3.022   2.493\n+    2VAL     CA   27   4.288   2.962   2.634\n+    2VAL     HA   28   4.215   3.014   2.677\n+    2VAL     CB   29   4.212   2.865   2.544\n+    2VAL     HB   30   4.284   2.814   2.497\n+    2VAL    CG1   31   4.123   2.770   2.624\n+    2VAL   HG11   32   4.075   2.709   2.561\n+    2VAL   HG12   33   4.180   2.717   2.686\n+    2VAL   HG13   34   4.056   2.823   2.676\n+    2VAL    CG2   35   4.127   2.933   2.438\n+    2VAL   HG21   36   4.081   2.864   2.383\n+    2VAL   HG22   37   4.060   2.992   2.482\n+    2VAL   HG23   38   4.186   2.989   2.379\n+    2VAL      C   39   4.378   2.893   2.738\n+    2VAL      O   40   4.474   2.823   2.701\n+    3PHE      N   41   4.347   2.917   2.863\n+    3PHE      H   42   4.273   2.981   2.883\n+    3PHE     CA   43   4.417   2.852   2.975\n+    3PHE     HA   44   4.513   2.859   2.950\n+    3PHE     CB   45   4.395   2.925   3.108\n+    3PHE    HB1   46   4.303   2.964   3.109\n+    3PHE    HB2   47   4.404   2.860   3.183\n+    3PHE     CG   48   4.492   3.036   3.129\n+    3PHE    CD1   49   4.465   3.167   3.087\n+    3PHE    HD1   50   4.379   3.187   3.040\n+    3PHE    CD2   51   4.598   3.018   3.220\n+    3PHE    HD2   52   4.611   2.928   3.262\n+    3PHE    CE1   53   4.556   3.270   3.110\n+    3PHE    HE1   54   4.546   3.357   3.063\n+    3PHE    CE2   55   4.685   3.121   3.251\n+    3PHE    HE2   56   4.764   3.104   3.310\n+    3PHE     CZ   57   4.662   3.249   3.200\n+    3PHE     HZ   58   4.720   3.326   3.228\n+    3PHE      C   59   4.372   2.706   2.990\n+    3PHE      O   60   4.250   2.678   2.981\n+    4GLY      N   61   4.470   2.626   3.034\n+    4GLY      H   62   4.565   2.657   3.035\n+    4GLY     CA   63   4.435   2.490   3.080\n+    4GLY    HA1   64   4.360   2.454   3.024\n+    4GLY    HA2   65   4.514   2.430   3.073\n+    4GLY      C   66   4.390   2.504   3.225\n+    4GLY      O   67   4.428   2.602   3.289\n+    5ARG      N   68   4.303   2.416   3.270\n+    5ARG      H   69   4.269   2.346   3.207\n+    5ARG     CA   70   4.254   2.416   3.408\n+    5ARG     HA   71   4.196   2.496   3.415\n+    5ARG     CB   72   4.174   2.288   3.434\n+    5ARG    HB1   73   4.098   2.284   3.370\n+    5ARG    HB2   74   4.234   2.209   3.420\n+    5ARG     CG   75   4.119   2.282   3.575\n+    5ARG    HG1   76   4.195   2.279   3.640\n+    5ARG    HG2   77   4.063   2.363   3.592\n+    5ARG     CD   78   4.036   2.162   3.595\n+    5ARG    HD1   79   4.002   2.161   3.689\n+    5ARG    HD2   80   3.958   2.167   3.532\n+    5ARG     NE   81   4.104   2.037   3.571\n+    5ARG     HE   82   4.100   2.002   3.478\n+    5ARG     CZ   83   4.171   1.963   3.657\n+    5ARG    NH1   84   4.182   1.995   3.786\n+    5ARG   HH11   85   4.137   2.078   3.820\n+    5ARG   HH12   86   4.234   1.937   3.8'..b'36   5.798\n+12240SOL     OW38291   6.199   6.428   7.017\n+12240SOL    HW138292   6.255   6.509   7.000\n+12240SOL    HW238293   6.258   6.348   7.020\n+12241SOL     OW38294   7.079   7.353   6.545\n+12241SOL    HW138295   7.112   7.417   6.476\n+12241SOL    HW238296   7.145   7.347   6.620\n+12242SOL     OW38297   6.302   6.151   7.294\n+12242SOL    HW138298   6.321   6.216   7.368\n+12242SOL    HW238299   6.362   6.071   7.303\n+12243SOL     OW38300   5.976   7.327   7.146\n+12243SOL    HW138301   5.885   7.368   7.144\n+12243SOL    HW238302   5.969   7.233   7.178\n+12244SOL     OW38303   7.260   6.469   6.840\n+12244SOL    HW138304   7.233   6.380   6.803\n+12244SOL    HW238305   7.261   6.537   6.767\n+12245SOL     OW38306   6.811   5.911   6.035\n+12245SOL    HW138307   6.876   5.837   6.024\n+12245SOL    HW238308   6.831   5.961   6.119\n+12246SOL     OW38309   6.180   6.331   6.238\n+12246SOL    HW138310   6.230   6.416   6.219\n+12246SOL    HW238311   6.092   6.333   6.190\n+12247SOL     OW38312   7.316   6.520   7.103\n+12247SOL    HW138313   7.354   6.611   7.118\n+12247SOL    HW238314   7.308   6.503   7.004\n+12248SOL     OW38315   6.445   6.960   5.602\n+12248SOL    HW138316   6.399   6.975   5.690\n+12248SOL    HW238317   6.489   7.045   5.572\n+12249SOL     OW38318   6.445   6.542   6.447\n+12249SOL    HW138319   6.499   6.473   6.495\n+12249SOL    HW238320   6.413   6.611   6.513\n+12250SOL     OW38321   6.669   6.570   5.673\n+12250SOL    HW138322   6.646   6.623   5.591\n+12250SOL    HW238323   6.750   6.514   5.654\n+12251SOL     OW38324   7.447   7.155   6.437\n+12251SOL    HW138325   7.376   7.143   6.367\n+12251SOL    HW238326   7.448   7.076   6.497\n+12252SOL     OW38327   5.665   6.826   6.239\n+12252SOL    HW138328   5.664   6.779   6.327\n+12252SOL    HW238329   5.747   6.798   6.188\n+12253SOL     OW38330   6.258   6.977   7.210\n+12253SOL    HW138331   6.180   6.927   7.248\n+12253SOL    HW238332   6.255   7.072   7.241\n+12254SOL     OW38333   7.410   5.778   6.813\n+12254SOL    HW138334   7.406   5.688   6.857\n+12254SOL    HW238335   7.413   5.767   6.714\n+12255SOL     OW38336   6.014   6.010   6.106\n+12255SOL    HW138337   6.044   5.938   6.044\n+12255SOL    HW238338   5.975   5.970   6.189\n+12256SOL     OW38339   5.903   6.133   6.866\n+12256SOL    HW138340   5.941   6.074   6.938\n+12256SOL    HW238341   5.943   6.107   6.778\n+12257SOL     OW38342   6.398   7.172   6.273\n+12257SOL    HW138343   6.430   7.182   6.179\n+12257SOL    HW238344   6.319   7.110   6.275\n+12258SOL     OW38345   7.010   5.800   6.698\n+12258SOL    HW138346   7.062   5.735   6.753\n+12258SOL    HW238347   6.961   5.863   6.759\n+12259SOL     OW38348   6.587   5.620   6.740\n+12259SOL    HW138349   6.524   5.548   6.709\n+12259SOL    HW238350   6.680   5.584   6.740\n+12260SOL     OW38351   6.356   6.916   5.887\n+12260SOL    HW138352   6.310   6.829   5.904\n+12260SOL    HW238353   6.447   6.913   5.928\n+12261SOL     OW38354   6.204   7.153   6.870\n+12261SOL    HW138355   6.199   7.235   6.927\n+12261SOL    HW238356   6.293   7.150   6.825\n+12262SOL     OW38357   6.938   5.638   5.754\n+12262SOL    HW138358   6.973   5.597   5.670\n+12262SOL    HW238359   6.848   5.600   5.774\n+12263SOL     OW38360   6.886   6.039   6.277\n+12263SOL    HW138361   6.827   6.119   6.281\n+12263SOL    HW238362   6.901   6.004   6.370\n+12264SOL     OW38363   7.179   5.807   6.468\n+12264SOL    HW138364   7.095   5.806   6.522\n+12264SOL    HW238365   7.181   5.890   6.412\n+12265SOL     OW38366   5.625   6.663   5.886\n+12265SOL    HW138367   5.724   6.652   5.877\n+12265SOL    HW238368   5.585   6.577   5.918\n+12266CL      CL38369   1.638   2.961   6.665\n+12267CL      CL38370   1.014   5.822   2.833\n+12268CL      CL38371   4.539   0.572   5.911\n+12269CL      CL38372   4.031   3.787   0.618\n+12270CL      CL38373   4.492   4.868   4.747\n+12271CL      CL38374   5.835   5.509   4.965\n+12272CL      CL38375   6.974   7.159   0.477\n+12273CL      CL38376   7.044   6.321   2.590\n+   7.33925   7.33925   7.33925\n'
b
diff -r 000000000000 -r 3de1359b86cc test-data/topol_solv.top
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/topol_solv.top Thu Jan 27 17:17:54 2022 +0000
[
b'@@ -0,0 +1,18411 @@\n+;\n+;\tFile \'topol.top\' was generated\n+;\tBy user: unknown (1000)\n+;\tOn host: simon-notebook\n+;\tAt date: Wed Aug 28 14:35:18 2019\n+;\n+;\tThis is a standalone topology file\n+;\n+;\tCreated by:\n+;\t                    :-) GROMACS - gmx pdb2gmx, 2019.1 (-:\n+;\t\n+;\tExecutable:   /home/simon/miniconda3/envs/gmx/bin/gmx\n+;\tData prefix:  /home/simon/miniconda3/envs/gmx\n+;\tWorking dir:  /home/simon/Repos/galaxy-tools-compchem/tools/gromacs\n+;\tCommand line:\n+;\t  gmx pdb2gmx -f test-data/1AKI.pdb -o processed.gro -p topol.top -i posres.itp -water spce -ff oplsaa -noignh\n+;\tForce field was read from the standard GROMACS share directory.\n+;\n+\n+; Include forcefield parameters\n+#include "oplsaa.ff/forcefield.itp"\n+\n+[ moleculetype ]\n+; Name            nrexcl\n+Protein_chain_A     3\n+\n+[ atoms ]\n+;   nr       type  resnr residue  atom   cgnr     charge       mass  typeB    chargeB      massB\n+; residue   1 LYS rtp LYSH q +2.0\n+     1   opls_287      1    LYS      N      1       -0.3    14.0027\n+     2   opls_290      1    LYS     H1      1       0.33      1.008\n+     3   opls_290      1    LYS     H2      1       0.33      1.008\n+     4   opls_290      1    LYS     H3      1       0.33      1.008\n+     5  opls_293B      1    LYS     CA      1       0.25     12.011\n+     6   opls_140      1    LYS     HA      1       0.06      1.008\n+     7   opls_136      1    LYS     CB      2      -0.12     12.011\n+     8   opls_140      1    LYS    HB1      2       0.06      1.008\n+     9   opls_140      1    LYS    HB2      2       0.06      1.008\n+    10   opls_136      1    LYS     CG      3      -0.12     12.011\n+    11   opls_140      1    LYS    HG1      3       0.06      1.008\n+    12   opls_140      1    LYS    HG2      3       0.06      1.008\n+    13   opls_136      1    LYS     CD      4      -0.12     12.011\n+    14   opls_140      1    LYS    HD1      4       0.06      1.008\n+    15   opls_140      1    LYS    HD2      4       0.06      1.008\n+    16   opls_292      1    LYS     CE      5       0.19     12.011\n+    17   opls_140      1    LYS    HE1      5       0.06      1.008\n+    18   opls_140      1    LYS    HE2      5       0.06      1.008\n+    19   opls_287      1    LYS     NZ      6       -0.3    14.0067\n+    20   opls_290      1    LYS    HZ1      6       0.33      1.008\n+    21   opls_290      1    LYS    HZ2      6       0.33      1.008\n+    22   opls_290      1    LYS    HZ3      6       0.33      1.008\n+    23   opls_235      1    LYS      C      7        0.5     12.011\n+    24   opls_236      1    LYS      O      7       -0.5    15.9994   ; qtot 2\n+; residue   2 VAL rtp VAL  q  0.0\n+    25   opls_238      2    VAL      N      8       -0.5    14.0067\n+    26   opls_241      2    VAL      H      8        0.3      1.008\n+    27  opls_224B      2    VAL     CA      8       0.14     12.011\n+    28   opls_140      2    VAL     HA      8       0.06      1.008\n+    29   opls_137      2    VAL     CB      9      -0.06     12.011\n+    30   opls_140      2    VAL     HB      9       0.06      1.008\n+    31   opls_135      2    VAL    CG1     10      -0.18     12.011\n+    32   opls_140      2    VAL   HG11     10       0.06      1.008\n+    33   opls_140      2    VAL   HG12     10       0.06      1.008\n+    34   opls_140      2    VAL   HG13     10       0.06      1.008\n+    35   opls_135      2    VAL    CG2     11      -0.18     12.011\n+    36   opls_140      2    VAL   HG21     11       0.06      1.008\n+    37   opls_140      2    VAL   HG22     11       0.06      1.008\n+    38   opls_140      2    VAL   HG23     11       0.06      1.008\n+    39   opls_235      2    VAL      C     12        0.5     12.011\n+    40   opls_236      2    VAL      O     12       -0.5    15.9994   ; qtot 2\n+; residue   3 PHE rtp PHE  q  0.0\n+    41   opls_238      3    PHE      N     13       -0.5    14.0067\n+    42   opls_241      3    PHE      H     13        0.3      1.008\n+    43  opls_224B      3    PHE     CA     13       0.14     12.011\n+  '..b'per_Z_CA_X_Y\n+ 1654  1653  1649  1657     1    improper_Z_CA_X_Y\n+ 1655  1657  1659  1660     1    improper_Z_CA_X_Y\n+ 1658  1657  1653  1659     1    improper_Z_CA_X_Y\n+ 1661  1665  1663  1664     1    improper_Z_N_X_Y\n+ 1665  1687  1685  1686     1    improper_O_C_X_Y\n+ 1673  1678  1676  1677     1    improper_Z_N_X_Y\n+ 1676  1679  1678  1682     1    improper_O_C_X_Y\n+ 1678  1680  1679  1681     1    improper_Z_N_X_Y\n+ 1678  1683  1682  1684     1    improper_Z_N_X_Y\n+ 1685  1689  1687  1688     1    improper_Z_N_X_Y\n+ 1689  1701  1699  1700     1    improper_O_C_X_Y\n+ 1691  1696  1694  1695     1    improper_O_C_X_Y\n+ 1694  1697  1696  1698     1    improper_Z_N_X_Y\n+ 1699  1703  1701  1702     1    improper_Z_N_X_Y\n+ 1703  1725  1723  1724     1    improper_O_C_X_Y\n+ 1711  1716  1714  1715     1    improper_Z_N_X_Y\n+ 1714  1717  1716  1720     1    improper_O_C_X_Y\n+ 1716  1718  1717  1719     1    improper_Z_N_X_Y\n+ 1716  1721  1720  1722     1    improper_Z_N_X_Y\n+ 1723  1727  1725  1726     1    improper_Z_N_X_Y\n+ 1727  1735  1733  1734     1    improper_O_C_X_Y\n+ 1733  1737  1735  1736     1    improper_Z_N_X_Y\n+ 1737  1757  1755  1756     1    improper_O_C_X_Y\n+ 1755  1759  1757  1758     1    improper_Z_N_X_Y\n+ 1759  1764  1762  1763     1    improper_O_C_X_Y\n+ 1762  1766  1764  1765     1    improper_Z_N_X_Y\n+ 1766  1778  1776  1777     1    improper_O_C_X_Y\n+ 1776  1780  1778  1779     1    improper_Z_N_X_Y\n+ 1780  1790  1788  1789     1    improper_O_C_X_Y\n+ 1782  1786  1785  1787     1    improper_O_C_X_Y\n+ 1788  1792  1790  1791     1    improper_Z_N_X_Y\n+ 1792  1806  1804  1805     1    improper_O_C_X_Y\n+ 1804  1808  1806  1807     1    improper_Z_N_X_Y\n+ 1808  1823  1821  1822     1    improper_O_C_X_Y\n+ 1813  1818  1816  1817     1    improper_O_C_X_Y\n+ 1816  1819  1818  1820     1    improper_Z_N_X_Y\n+ 1821  1825  1823  1824     1    improper_Z_N_X_Y\n+ 1825  1833  1831  1832     1    improper_O_C_X_Y\n+ 1831  1835  1833  1834     1    improper_Z_N_X_Y\n+ 1835  1857  1855  1856     1    improper_O_C_X_Y\n+ 1837  1840  1843  1841     1    improper_Z_CA_X_Y\n+ 1840  1844  1841  1842     1    improper_Z_CA_X_Y\n+ 1841  1846  1844  1845     1    improper_Z_N_X_Y\n+ 1846  1853  1849  1850     1    improper_Z_CA_X_Y\n+ 1848  1847  1843  1851     1    improper_Z_CA_X_Y\n+ 1849  1851  1853  1854     1    improper_Z_CA_X_Y\n+ 1852  1851  1847  1853     1    improper_Z_CA_X_Y\n+ 1855  1859  1857  1858     1    improper_Z_N_X_Y\n+ 1859  1876  1874  1875     1    improper_O_C_X_Y\n+ 1874  1878  1876  1877     1    improper_Z_N_X_Y\n+ 1878  1900  1898  1899     1    improper_O_C_X_Y\n+ 1886  1891  1889  1890     1    improper_Z_N_X_Y\n+ 1889  1892  1891  1895     1    improper_O_C_X_Y\n+ 1891  1893  1892  1894     1    improper_Z_N_X_Y\n+ 1891  1896  1895  1897     1    improper_Z_N_X_Y\n+ 1898  1902  1900  1901     1    improper_Z_N_X_Y\n+ 1902  1907  1905  1906     1    improper_O_C_X_Y\n+ 1905  1909  1907  1908     1    improper_Z_N_X_Y\n+ 1909  1917  1915  1916     1    improper_O_C_X_Y\n+ 1915  1919  1917  1918     1    improper_Z_N_X_Y\n+ 1919  1941  1939  1940     1    improper_O_C_X_Y\n+ 1927  1932  1930  1931     1    improper_Z_N_X_Y\n+ 1930  1933  1932  1936     1    improper_O_C_X_Y\n+ 1932  1934  1933  1935     1    improper_Z_N_X_Y\n+ 1932  1937  1936  1938     1    improper_Z_N_X_Y\n+ 1939  1943  1941  1942     1    improper_Z_N_X_Y\n+ 1943  1959  1958  1960     1    improper_O_C_X_Y\n+\n+; Include Position restraint file\n+#ifdef POSRES\n+#include "posres.itp"\n+#endif\n+\n+; Include water topology\n+#include "oplsaa.ff/spce.itp"\n+\n+#ifdef POSRES_WATER\n+; Position restraint for each water oxygen\n+[ position_restraints ]\n+;  i funct       fcx        fcy        fcz\n+   1    1       1000       1000       1000\n+#endif\n+\n+; Include topology for ions\n+#include "oplsaa.ff/ions.itp"\n+\n+[ system ]\n+; Name\n+LYSOZYME in water\n+\n+[ molecules ]\n+; Compound        #mols\n+Protein_chain_A     1\n+SOL                78\n+SOL         12058\n+CL               8\n'
b
diff -r 000000000000 -r 3de1359b86cc tleap.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tleap.xml Thu Jan 27 17:17:54 2022 +0000
[
b'@@ -0,0 +1,1981 @@\n+<tool id="tleap" name="Build tLEaP" version="@TOOL_VERSION@+galaxy@GALAXY_VERSION@">\n+     <description>interactively build and run tLEaP files to set up systems with AmberTools</description>\n+     <macros>\n+          <import>macros.xml</import>\n+          <token name="@GALAXY_VERSION@">0</token>\n+     </macros>\n+     <expand macro="requirements" />\n+     <version_command>tleap -h</version_command>\n+     <command detect_errors="exit_code"><![CDATA[\n+        cp \'${tleap_in}\' \'${output_tleap_in}\' && mkdir out && tleap -f \'${tleap_in}\' > \'${output_tleap}\'\n+    ]]>     </command>\n+     <configfiles>\n+          <configfile name="tleap_in"><![CDATA[#for $i, $cmd in $enumerate($tleap_cmds):\n+#if $cmd.tleap_cond.tleap_cmd == "add":\n+add ${cmd.tleap_cond.arg_a} ${cmd.tleap_cond.arg_b}\n+#elif $cmd.tleap_cond.tleap_cmd == "addAtomTypes":\n+addAtomTypes {\n+#for $atmvars in $cmd.tleap_cond.atomtypevars:\n+             { "${atmvars.arg_addAtomTypes_var1}" "${atmvars.arg_addAtomTypes_var2}" "${atmvars.arg_addAtomTypes_var3}" }\n+#end for\n+             }\n+#elif $cmd.tleap_cond.tleap_cmd == "addH":\n+addH ${cmd.tleap_cond.arg_obj}\n+#elif $cmd.tleap_cond.tleap_cmd == "addIons":\n+addIons ${cmd.tleap_cond.arg_variable} ${cmd.tleap_cond.arg_ion1} ${cmd.tleap_cond.arg__ion1}\n+addIons ${cmd.tleap_cond.arg_variable} ${cmd.tleap_cond.arg_ion2} ${cmd.tleap_cond.arg__ion2}\n+#elif $cmd.tleap_cond.tleap_cmd == "addIons2":\n+addIons2 ${cmd.tleap_cond.arg_variable} ${cmd.tleap_cond.arg_ion1} ${cmd.tleap_cond.arg__ion1} ${cmd.tleap_cond.arg_ion2} ${cmd.tleap_cond.arg__ion2}\n+#elif $cmd.tleap_cond.tleap_cmd == "addIonsRand":\n+addIonsRand ${cmd.tleap_cond.arg_variable} ${cmd.tleap_cond.arg_ion1} ${cmd.tleap_cond.arg__ion1} ${cmd.tleap_cond.arg_ion2} ${cmd.tleap_cond.arg__ion2} ${cmd.tleap_cond.arg_separation}\n+#elif $cmd.tleap_cond.tleap_cmd == "addPath":\n+addPath ${cmd.tleap_cond.arg_path}\n+#elif $cmd.tleap_cond.tleap_cmd == "addPdbAtomMap":\n+addPdbAtomMap {\n+#for $atmmapvars in $cmd.tleap_cond.AtomMapList:\n+             {$atmmapvars.oddpdbname $atmmapvars.libpdbname}\n+#end for\n+             }\n+#elif $cmd.tleap_cond.tleap_cmd == "addPdbResMap":\n+addPdbResMap {\n+#for $atmresmapvars in $cmd.tleap_cond.resmap:\n+             {$atmresmapvars.terminalflag "$atmresmapvars.pdbname" "$atmresmapvars.leapvar"}\n+#end for\n+             }\n+#elif $cmd.tleap_cond.tleap_cmd == "alignAxes":\n+alignAxes ${cmd.tleap_cond.arg_unit}\n+#elif $cmd.tleap_cond.tleap_cmd == "bond":\n+bond ${cmd.tleap_cond.arg_atom1} ${cmd.tleap_cond.arg_atom2} ${cmd.tleap_cond.arg_order}\n+#elif $cmd.tleap_cond.tleap_cmd == "bondByDistance":\n+bondByDistance ${cmd.tleap_cond.arg_container} ${cmd.tleap_cond.arg_maxBond}\n+#elif $cmd.tleap_cond.tleap_cmd == "center":\n+center ${cmd.tleap_cond.arg_container}\n+#elif $cmd.tleap_cond.tleap_cmd == "charge":\n+charge ${cmd.tleap_cond.arg_container}\n+#elif $cmd.tleap_cond.tleap_cmd == "check":\n+check ${cmd.tleap_cond.arg_unit} ${cmd.tleap_cond.arg_parmset} \n+#elif $cmd.tleap_cond.tleap_cmd == "clearPdbAtomMap":\n+clearPdbAtomMap\n+#elif $cmd.tleap_cond.tleap_cmd == "clearPdbResMap":\n+clearPdbResMap\n+#elif $cmd.tleap_cond.tleap_cmd == "clearVariables":\n+clearVariables { ${cmd.tleap_cond.arg_list} }\n+#elif $cmd.tleap_cond.tleap_cmd == "combine":\n+#if $cmd.tleap_cond.combine_assign:\n+${cmd.tleap_cond.combine_assign} = combine { ${cmd.tleap_cond.arg_list} }h\n+#else:\n+combine ${cmd.tleap_cond.arg_list}\n+#end if\n+#elif $cmd.tleap_cond.tleap_cmd == "copy":\n+#if $cmd.tleap_cond.copy_assign:\n+${cmd.tleap_cond.copy_assign} = copy ${cmd.tleap_cond.arg_variable}\n+#else:\n+copy ${cmd.tleap_cond.arg_variable}\n+#end if\n+#elif $cmd.tleap_cond.tleap_cmd == "createAtom":\n+#if $cmd.tleap_cond.createVar_assign:\n+${cmd.tleap_cond.createVar_assign} = createAtom ${cmd.tleap_cond.arg_name} ${cmd.tleap_cond.arg_type} ${cmd.tleap_cond.arg_charge}\n+#else:\n+createAtom ${cmd.tleap_cond.arg_name} ${cmd.tleap_cond.arg_type} ${cmd.tleap_cond.arg_charge}\n+#end if\n+#elif $cmd.tleap_cond.tl'..b'he LIST of LISTs _matrix_.\n+      { { r11  r12  r13  -tx }\n+        { r21  r22  r23  -ty }\n+        { r31  r32  r33  -tz }\n+        { 0    0    0     1  } }\n+  The diagonal upper left elements, rII can be used for symmetry operations,\n+  e.g. a reflection in the XY plane can be produced with r11=1, r22=1, r33=-1\n+  where the other rIJ elements are 0. The -t column is used to specify\n+  translations along the appropriate axes (0 for no translation).\n+  \n+  translate atoms direction\n+  \n+        UNIT/RESIDUE/ATOM            _atoms_\n+        LIST                         _direction_\n+  \n+  Translate all of the ATOMs within _atoms_ by the vector defined by\n+  the three NUMBERs in the LIST _ direction_.\n+  \n+  verbosity level\n+  \n+        NUMBER                       _level_\n+  \n+  This command sets the level of output that LEaP provides the user.\n+  A value of 0 is the default, providing the minimum of messages.  A\n+  value of 1 will produce more output, and a value of 2 will produce\n+  all of the output of level 1 and display the text of the script lines\n+  executed with the source command.\n+  \n+  zMatrix obj zmatrix\n+  \n+        UNIT/RESIDUE/ATOM            _obj_\n+        LIST                         _zmatrix_\n+  \n+  The zMatrix command is quite complicated.  It is used to define the\n+  external coordinates of ATOMs within _obj_ using internal coordinates.\n+  The second parameter of the zMatrix command is a LIST of LISTs; each\n+  sub-list has several arguments:\n+  \n+  { a1 a2 bond12 }\n+  \n+  This entry defines the coordinate of _a1_ by placing it _bond12_ angstroms\n+  along the x-axis from ATOM _a2_.   If ATOM _a2_ does not have coordinates\n+  defined then ATOM _a2_ is placed at the origin.\n+  \n+  { a1 a2 a3 bond12 angle123 }\n+  \n+  This entry defines the coordinate of _a1_ by placing it _bond12_ angstroms\n+  away from ATOM _a2_ making an angle of _angle123_ degrees between\n+  _a1_, _a2_ and _a3_.  The angle is measured in a right hand sense\n+  and in the x-y plane.   ATOMs _a2_ and _a3_ must have coordinates defined.\n+  \n+  { a1 a2 a3 a4 bond12 angle123 torsion1234 }\n+  \n+  This entry defines the coordinate of _a1_ by placing it _bond12_ angstroms\n+  away from ATOM _a2_, creating an angle of _angle123_ degrees between\n+  _a1_, _a2_, and _a3_, and making a torsion angle of _torsion1234_ between\n+  _a1_, _a2_, _a3_, and _a4_.\n+  \n+  { a1 a2 a3 a4 bond12 angle123 angle124 orientation }\n+  \n+  This entry defines the coordinate of _a1_ by placing it _bond12_ angstroms\n+  away from ATOM _a2_, making angles _angle123_ between ATOMs _a1_,\n+  _a2_, and _a3_, and _angle124_ between ATOMs _a1_, _a2_, and _a4_.  The\n+  argument _orientation_ defines whether the ATOM _a1_ is above or below\n+  a plane defined by the ATOMs _a2_, _a3_, and _a4_.  If _orientation_\n+  is positive then _a1_ will be placed in such a way so that the inner\n+  product of (_a3_-_a2_)  cross (_a4_-_a2_) with (_a1_-_a2_) is positive.\n+  Otherwise _a1_ will be placed on the other side of the plane.  This\n+  allows the coordinates of a molecule like fluoro-chloro-bromo-methane\n+  to be defined without having to resort to dummy atoms.\n+  The first arguments within the zMatrix entries ( _a1_, _a2_, _a3_,\n+  _a4_ ) are either ATOMs or STRINGs containing names of ATOMs within\n+  _obj_.   The subsequent arguments are all NUMBERs.   Any ATOM can be\n+  placed at the _a1_ position, even those that have coordinates defined.\n+  This feature can be used to provide an endless supply of dummy atoms,\n+  if they are required.   A predefined dummy atom with the name "*"\n+  (a single asterisk, no quotes)  can also be used.\n+  No order is imposed in the sub-lists.  The user can place sub-lists\n+  in arbitrary order, as long as they maintain the requirement that\n+  all atoms _a2_, _a3_, and _a4_ must have external coordinates defined,\n+  except for entries that define the coordinate of an ATOM using only\n+  a bond length.\n+\n+\n+    ]]>     </help>\n+     <expand macro="citations" />\n+</tool>\n'