root / ase / test / trajectory.py @ 1
Historique | Voir | Annoter | Télécharger (753 octet)
1 | 1 | tkerber | import os |
---|---|---|---|
2 | 1 | tkerber | from ase import Atom, Atoms |
3 | 1 | tkerber | from ase.io import PickleTrajectory |
4 | 1 | tkerber | |
5 | 1 | tkerber | co = Atoms([Atom('C', (0, 0, 0)), |
6 | 1 | tkerber | Atom('O', (0, 0, 1.2))]) |
7 | 1 | tkerber | traj = PickleTrajectory('1.traj', 'w', co) |
8 | 1 | tkerber | for i in range(5): |
9 | 1 | tkerber | co.positions[:, 2] += 0.1 |
10 | 1 | tkerber | traj.write() |
11 | 1 | tkerber | del traj
|
12 | 1 | tkerber | traj = PickleTrajectory('1.traj', 'a') |
13 | 1 | tkerber | co = traj[-1]
|
14 | 1 | tkerber | print co.positions
|
15 | 1 | tkerber | co.positions[:] += 1
|
16 | 1 | tkerber | traj.write(co) |
17 | 1 | tkerber | del traj
|
18 | 1 | tkerber | t = PickleTrajectory('1.traj', 'a') |
19 | 1 | tkerber | print t[-1].positions |
20 | 1 | tkerber | print '.--------' |
21 | 1 | tkerber | for a in t: |
22 | 1 | tkerber | print 1, a.positions[-1,2] |
23 | 1 | tkerber | co.positions[:] += 1
|
24 | 1 | tkerber | t.write(co) |
25 | 1 | tkerber | for a in t: |
26 | 1 | tkerber | print 2, a.positions[-1,2] |
27 | 1 | tkerber | assert len(t) == 7 |
28 | 1 | tkerber | |
29 | 1 | tkerber | # append to a nonexisting file
|
30 | 1 | tkerber | fname = '2.traj'
|
31 | 1 | tkerber | if os.path.isfile(fname):
|
32 | 1 | tkerber | os.remove(fname) |
33 | 1 | tkerber | t = PickleTrajectory(fname, 'a', co)
|
34 | 1 | tkerber | del(t)
|
35 | 1 | tkerber | os.remove(fname) |