root / ase / test / bader.py @ 13
Historique | Voir | Annoter | Télécharger (809 octet)
1 | 1 | tkerber | import os |
---|---|---|---|
2 | 1 | tkerber | from ase.data.molecules import molecule |
3 | 1 | tkerber | from ase.io.bader import attach_charges |
4 | 1 | tkerber | |
5 | 1 | tkerber | fname = 'ACF.dat'
|
6 | 1 | tkerber | f = open(fname, 'w') |
7 | 1 | tkerber | print >> f, """ |
8 | 1 | tkerber | # X Y Z CHARGE MIN DIST
|
9 | 1 | tkerber | ----------------------------------------------------------------
|
10 | 1 | tkerber | 1 7.0865 8.5038 9.0672 9.0852 1.3250
|
11 | 1 | tkerber | 2 7.0865 9.9461 7.9403 0.4574 0.3159
|
12 | 1 | tkerber | 3 7.0865 7.0615 7.9403 0.4574 0.3159
|
13 | 1 | tkerber | ----------------------------------------------------------------
|
14 | 1 | tkerber | NUMBER OF ELECTRONS: 9.99999
|
15 | 1 | tkerber | """
|
16 | 1 | tkerber | f.close() |
17 | 1 | tkerber | |
18 | 1 | tkerber | atoms = molecule('H2O')
|
19 | 1 | tkerber | atoms.set_cell([7.5, 9, 9]) |
20 | 1 | tkerber | atoms.center() |
21 | 1 | tkerber | |
22 | 1 | tkerber | attach_charges(atoms) |
23 | 1 | tkerber | attach_charges(atoms, fname) |
24 | 1 | tkerber | os.remove(fname) |
25 | 1 | tkerber | |
26 | 1 | tkerber | for atom in atoms: |
27 | 1 | tkerber | print 'Atom', atom.symbol, 'Bader charge', atom.charge |