root / ase / test / jacapo.py @ 13
Historique | Voir | Annoter | Télécharger (1,33 ko)
1 | 1 | tkerber | # do some tests here before we import
|
---|---|---|---|
2 | 1 | tkerber | # Right version of Scientific?
|
3 | 1 | tkerber | from ase.test import NotAvailable |
4 | 1 | tkerber | import string, os |
5 | 1 | tkerber | try:
|
6 | 1 | tkerber | import Scientific |
7 | 1 | tkerber | version = string.split(Scientific.__version__,".")
|
8 | 1 | tkerber | print 'Found ScientifPython version: ',Scientific.__version__ |
9 | 1 | tkerber | if map(int,version) < [2,8]: |
10 | 1 | tkerber | print 'ScientificPython 2.8 or greater required for numpy support in NetCDF' |
11 | 1 | tkerber | raise NotAvailable('ScientificPython version 2.8 or greater is required') |
12 | 1 | tkerber | except:
|
13 | 1 | tkerber | print "No Scientific python found. Check your PYTHONPATH" |
14 | 1 | tkerber | raise NotAvailable('ScientificPython version 2.8 or greater is required') |
15 | 1 | tkerber | |
16 | 1 | tkerber | if not (os.system('which dacapo.run') == 0): |
17 | 1 | tkerber | print "No Dacapo Fortran executable (dacapo.run) found. Check your path settings." |
18 | 1 | tkerber | raise NotAvailable('dacapo.run is not installed on this machine or not in the path') |
19 | 1 | tkerber | |
20 | 1 | tkerber | # Now Scientific 2.8 and dacapo.run should both be available
|
21 | 1 | tkerber | |
22 | 1 | tkerber | from ase import Atoms, Atom |
23 | 1 | tkerber | from ase.calculators.jacapo import Jacapo |
24 | 1 | tkerber | |
25 | 1 | tkerber | atoms = Atoms([Atom('H',[0,0,0])], |
26 | 1 | tkerber | cell=(2,2,2)) |
27 | 1 | tkerber | |
28 | 1 | tkerber | calc = Jacapo('Jacapo-test.nc',
|
29 | 1 | tkerber | pw=200,
|
30 | 1 | tkerber | nbands=2,
|
31 | 1 | tkerber | kpts=(1,1,1), |
32 | 1 | tkerber | spinpol=False,
|
33 | 1 | tkerber | dipole=False,
|
34 | 1 | tkerber | symmetry=False,
|
35 | 1 | tkerber | ft=0.01)
|
36 | 1 | tkerber | |
37 | 1 | tkerber | atoms.set_calculator(calc) |
38 | 1 | tkerber | |
39 | 1 | tkerber | print atoms.get_potential_energy()
|
40 | 1 | tkerber | os.system('rm -f Jacapo-test.nc Jacapo-test.txt') |