Mercurial > repos > chemteam > gromacs_extract_topology
view gmxtras_add_newmolparam.py @ 0:9faa4f4b8b76 draft default tip
"planemo upload for repository https://github.com/galaxycomputationalchemistry/galaxy-tools-compchem/tree/master/tools/buildtools/topologyeditors commit ae026d4ea6fe2ebaa53611b86f9047941c7b899b"
author | chemteam |
---|---|
date | Thu, 27 Jan 2022 18:17:05 +0000 |
parents | |
children |
line wrap: on
line source
#!/usr/bin/env python3 import argparse def __main__(): parser = argparse.ArgumentParser( description='Adds New topologies to gromacs topology file') parser.add_argument( '--top_file', default=None, help="Topology file input") parser.add_argument( '--mol_file', default=None, help='molecule type and bonded parameters input') parser.add_argument( '--atom_file', default=None, help='atomtype and nonbonded parameters input') parser.add_argument( '--out', default=None, help='Path to output') args = parser.parse_args() with open(args.out, 'w') as fh_out: with open(args.top_file, 'r') as fh: # these two short loop takes care of # adding the atom types and molecule types. for line in fh: fh_out.write(line) if ';name bond_type' in line: for contents in open(args.atom_file): fh_out.write(contents) break for line in fh: if '[ system ]' in line: fh_out.write("\n; Begin NewTopologyInfo\n") for contents in open(args.mol_file): fh_out.write(contents) fh_out.write("; end NewTopologyInfo\n\n") fh_out.write(line) break fh_out.write(line) for line in fh: fh_out.write(line) if __name__ == "__main__": __main__()