fcSileSiesta¶
-
class
sisl.io.siesta.
fcSileSiesta
(filename, mode='r', comment=None, *args, **kwargs)¶ Bases:
sisl.io.siesta.SileSiesta
Force constant file
Attributes
__dict__
__doc__
__module__
__weakref__
list of weak references to the object (if defined)
_write_default
_write_default_only
File of the current Sile
File of the current Sile
Methods
_ArgumentParser_args_single
()Default arguments for the Sile
__delattr__
Implement delattr(self, name).
__dir__
Default dir() implementation.
__enter__
()Opens the output file and returns it self
__eq__
Return self==value.
__exit__
(type, value, traceback)__format__
Default object formatter.
__ge__
Return self>=value.
__getattr__
(name)Override to check the handle
__getattribute__
Return getattr(self, name).
__gt__
Return self>value.
__hash__
Return hash(self).
__init__
(filename[, mode, comment])Initialize self.
__init_subclass__
This method is called when a class is subclassed.
__iter__
()Iterator for file
__le__
Return self<=value.
__lt__
Return self<value.
__ne__
Return self!=value.
__new__
Create and return a new object.
__reduce__
Helper for pickle.
__reduce_ex__
Helper for pickle.
__repr__
Return repr(self).
__setattr__
Implement setattr(self, name, value).
__sizeof__
Size of object in memory, in bytes.
__str__
()Return a representation of the Sile
__subclasshook__
Abstract classes can override this to customize issubclass().
_base_file
(f)Make f refer to the file with the appropriate base directory
_base_setup
(*args, **kwargs)Setup the Sile after initialization
_open
()_setup
(*args, **kwargs)Setup the Sile after initialization
_write
(*args, **kwargs)Wrapper to default the write statements
dir_file
([filename])File of the current Sile
exist
()Query whether the file exists
read
(*args, **kwargs)Generic read method which should be overloaded in child-classes
read_force
([displacement, na])Reads all displacement forces by multiplying with the displacement value
read_force_constant
([na])Reads the force-constant stored in the FC file
write
(*args, **kwargs)Generic write method which should be overloaded in child-classes
-
property
base_file
¶ File of the current Sile
-
dir_file
(filename=None)¶ File of the current Sile
-
exist
()¶ Query whether the file exists
-
property
file
¶ File of the current Sile
-
read
(*args, **kwargs)¶ Generic read method which should be overloaded in child-classes
- Parameters
kwargs – keyword arguments will try and search for the attribute
read_<>
and call it with the remaining**kwargs
as arguments.
-
read_force
(displacement=None, na=None)[source]¶ Reads all displacement forces by multiplying with the displacement value
Since the force constant file does not contain the non-displaced configuration this will only return forces on the displaced configurations minus the forces from the non-displaced configuration.
This may be used in conjunction with phonopy by noticing that Siesta FC-runs does the displacements in reverse order (-x/+x vs. +x/-x). In this case one should reorder the elements like this:
>>> fc = np.roll(fc, 1, axis=2)
- Parameters
displacement (float, optional) – the used displacement in the calculation, since Siesta 4.1-b4 this value is written in the FC file and hence not required. If prior Siesta versions are used and this is not supplied the 0.04 Bohr displacement will be assumed.
na (int, optional) – number of atoms in geometry (for returning correct number of atoms), since Siesta 4.1-b4 this value is written in the FC file and hence not required. If prior Siesta versions are used then the file is expected to only contain 1-atom displacement.
- Returns
numpy.ndarray – force constant matrix times the displacement, see
read_force_constant
for details regarding data layout.- Return type
(displaced atoms, d[xyz], [-+], total atoms, xyz)
-
read_force_constant
(na=None)[source]¶ Reads the force-constant stored in the FC file
- Parameters
na (int, optional) – number of atoms in the unit-cell, if not specified it will guess on only one atom displacement.
- Returns
numpy.ndarray – force constant matrix containing all forces. The 2nd dimension contains contains the directions, 3rd dimension contains -/+ displacements.
- Return type
(displacement, d[xyz], [-+], atoms, xyz)
-
write
(*args, **kwargs)¶ Generic write method which should be overloaded in child-classes
- Parameters
**kwargs – keyword arguments will try and search for the attribute write_ and call it with the remaining
**kwargs
as arguments.
-
property