File: hin2mol2.py

package info (click to toggle)
ball 1.5.0%2Bgit20180813.37fc53c-11
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 239,924 kB
  • sloc: cpp: 326,149; ansic: 4,208; python: 2,303; yacc: 1,778; lex: 1,099; xml: 958; sh: 322; javascript: 164; makefile: 88
file content (45 lines) | stat: -rw-r--r-- 1,028 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#
# Lara Schneider 2010-04-15
# A very simple utility for converting HyperChem files into MOL2 files
#

import sys
from BALL import *

#### for use in BALLView
#system = getSystems()[0]
infile_name ="" 

#### for command line use
#issue a usage hint if called without parameters
if (len(sys.argv) != 2):
	print "Usage: ", sys.argv[0], " <HIN infile>"
	exit()

#create outfile name from infile name
infile_name = sys.argv[1]
pos = infile_name.rfind('.',0,len(infile_name))
if (pos == -1):
  #if file does not exist: complain and abort
	print "error opening ", infile_name, " for input."
	exit()

outfile_name = infile_name[:pos]
outfile_name = outfile_name + ".mol2"

#create a system and read the content of the HIN file
system = System()
infile = HINFile(infile_name)
infile.read(system)
infile.close()
print "System contains " , system.countAtoms() , " atoms."

#create and write MOL2 file 
outfile = MOL2File(outfile_name, File.MODE_OUT)
outfile.write(system)
outfile.close()
print "Wrote MOL2 file " , outfile_name

#done