Statistiques
| Révision :

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)