文書の過去の版を表示しています。
目次
Jacapo Reference
Python interface to the Fortran DACAPO code
Constructor
Initialize the Jacapo calculator
__init__(self, nc='out.nc', outnc=None, deletenc=False, debug=30, stay_alive=False, **kwargs)
Parameter
keyword | type | default value | notes |
---|---|---|---|
nc | string | 'out.nc' | output netcdf file, or input file if nc already exists |
outnc | string | None | output file. by default equal to nc |
deletenc | Boolean | False | If True, the ncfile is deleted if it exists.1) |
debug | integer | 30 | logging debug level. 2)) |
stay_alive | Boolean | False | |
kwargs | dictionary | Keyword arguments |
Keyword arguments
keyword | type | notes |
---|---|---|
atoms | ASE.Atoms instance | atoms is an ase.Atoms object that will be attached to this calculator. |
pw | integer | sets planewave cutoff |
dw | integer | sets density cutoff |
kpts | iterable | set chadi-cohen, monkhorst-pack kpt grid, e.g. kpts = (2,2,1) or explicit list of kpts |
spinpol | Boolean | sets whether spin-polarization is used or not. |
fixmagmom | float | set the magnetic moment of the unit cell. only used in spin polarize calculations |
ft | float | set the Fermi temperature used in occupation smearing |
xc | string | set the exchange-correlation functional. one of ['PZ','VWN','PW91','PBE','RPBE','revPBE'], |
dipole | boolean | turn the dipole correction on (True) or off (False) |
dictionary | parameters to fine-tune behavior | |
nbands | integer | set the number of bands |
symmetry | Boolean | Turn symmetry reduction on (True) or off (False) |
stress | Boolean | Turn stress calculation on (True) or off (False)3) |
Sample of dipole
dictionary (Default on True-case):
dipole = {'status':False, 'mixpar':0.2, 'initval':0.0, 'adddipfield':0.0, 'position':None}
Class methods
Static methods
read_atoms(filename)
read atoms and calculator from an existing netcdf file.
Parameters
keyword | type | notes |
---|---|---|
filename | string | name of file to read from. |
example
atoms = Jacapo.read_atoms(ncfile) calc = atoms.get_calculator()
this method is here for legacy purposes. I used to use it alot.
Notes
Modification of the nc file only occurs at calculate time if needed
we read everything directly from the ncfile to prevent triggering any calculations
calc = Jacapo('CO.nc')
reads the calculator from CO.nc if it exists or minimally initializes CO.nc with dimensions if it does not exist.
calc = Jacapo('CO.nc', pw=300)
reads the calculator from CO.nc or initializes it if it does not exist and changes the planewave cutoff energy to 300eV
atoms = Jacapo.read_atoms('CO.nc')
returns the atoms in the netcdffile CO.nc, with the calculator attached to it.
atoms, calc = read('CO.nc')