====== 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.((determines whether the ncfile is deleted on initialization so a fresh run occurs. If True, the ncfile is deleted if it exists.))|
|''debug'' |integer |30 |logging debug level. ((Level for logging could be something like logging.DEBUG or an integer from 0 to 50. The higher the integer, the less information you see set debug level (0 = off, 10 = extreme)))|
|''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)(( ase.calculators.jacapo.jacapo.DacapoInput: stress keyword is deprecated. you must use calculate_stress instead))|
Sample of ''dipole'' dictionary (Default on True-case):
dipole = {'status':False,
'mixpar':0.2,
'initval':0.0,
'adddipfield':0.0,
'position':None}
===== Class methods =====
* [[ase:jacapo:jcl|JOB control]]
* [[ase:jacapo:params|Get/Set constuctor parameters]]
* [[ase:jacapo:results|Get calculation results]]
* [[ase:jacapo:cond|Get/Set calculation condition]]
* [[ase:jacapo:psp|Pseudopotential related method]]
* [[ase:jacapo:pdos|Projected DOS related method]]
===== 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.
===== Function =====
function read in module ase.calculators.jacapo.jacapo:
read(ncfile)
return atoms and calculator from ncfile
==== example ====
atoms, calc = read('co.nc')
===== 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')