root / ase / io / ascii.py @ 19
Historique | Voir | Annoter | Télécharger (567 octet)
1 | 1 | tkerber | from ase.atoms import Atoms |
---|---|---|---|
2 | 1 | tkerber | |
3 | 1 | tkerber | |
4 | 1 | tkerber | def write_ascii(fileobj, images): |
5 | 1 | tkerber | if isinstance(fileobj, str): |
6 | 1 | tkerber | fileobj = open(fileobj, 'w') |
7 | 1 | tkerber | |
8 | 1 | tkerber | if not isinstance(images, (list, tuple)): |
9 | 1 | tkerber | images = [images] |
10 | 1 | tkerber | fileobj.write('atoms = ')
|
11 | 1 | tkerber | else:
|
12 | 1 | tkerber | fileobj.write('images = [')
|
13 | 1 | tkerber | |
14 | 1 | tkerber | symbols = images[0].get_chemical_symbols()
|
15 | 1 | tkerber | natoms = len(symbols)
|
16 | 1 | tkerber | for atoms in images: |
17 | 1 | tkerber | fileobj.write('%d\n\n' % natoms)
|
18 | 1 | tkerber | for s, (x, y, z) in zip(symbols, atoms.get_positions()): |
19 | 1 | tkerber | fileobj.write('%-2s %22.15f %22.15f %22.15f\n' % (s, x, y, z)) |