Start working on topology
[alexxy/gromacs.git] / src / python / test.py
1 import sys
2 from gromacs import TrajectoryAnalysis
3
4 class M(TrajectoryAnalysis.TrajectoryAnalysisModule):
5     def __init__(self):
6         super(M, self).__init__(b"a", b"a")
7
8     def initOptions(self, options, settings):
9         print('python: initOptions')
10         options.setDescription(b'A stupid test module')
11         settings.setFlag(TrajectoryAnalysis.TrajectoryAnalysisSettings.efRequireTop)
12         print('python: inited')
13
14     def initAnalysis(self, settings, top):
15         print('python: initAnalysis')
16         print('There are {} atoms'.format(top.topology().atoms.nr))
17         print('Topology name: {}'.format(top.topology().name))
18
19     def analyzeFrame(self, frnr, frame, pbc, data):
20         print('python: Analyzing frame {}, {} atoms'.format(frnr, frame.natoms))
21         print(frame.box[0], frame.box[1], frame.box[2])
22         print(frame.x[0], frame.v[0], frame.f[0])
23
24     def finishAnalysis(self, nframes):
25         print('python: Analyzed {} frames'.format(nframes))
26
27     def writeOutput(self):
28         print('python: writeOutput')
29
30 m = M()
31
32 runner = TrajectoryAnalysis.TrajectoryAnalysisCommandLineRunner(m)
33 print(runner.run(sys.argv))