sisl.io.xsfSile
- class sisl.io.xsfSile(filename, *args, **kwargs)
Bases:
Sile
XSF file for XCrySDen
When creating an XSF file one must denote how many geometries to write out. It is also necessary to use the xsf in a context manager, otherwise it will overwrite itself repeatedly.
>>> with xsfSile('file.xsf', 'w', steps=100) as xsf: ... for i in range(100): ... xsf.write_geometry(geom)
- Parameters:
steps (int, optional) – number of steps the xsf file contains. Defaults to 1
Methods
base_directory
([relative_to])Retrieve the base directory of the file, relative to the path relative_to
close
()dir_file
([filename, filename_base])File of the current
Sile
read
(*args, **kwargs)Generic read method which should be overloaded in child-classes
write
(*args, **kwargs)Generic write method which should be overloaded in child-classes
write_geometry
(geometry[, fmt, data])Writes the geometry to the contained file
write_grid
(*args, **kwargs)Store grid(s) data to an XSF file
write_lattice
(lattice[, fmt])Writes the supercell to the contained file
File of the current
Sile
File of the current
Sile
Handles all plotting possibilities for a class
- __init__(filename, mode='r', *args, **kwargs)
Just to pass away the args and kwargs
- base_directory(relative_to='.')
Retrieve the base directory of the file, relative to the path relative_to
- close()
- plot
Handles all plotting possibilities for a class
- 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.
- 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.
- write_geometry(geometry: Geometry, fmt: str = '.8f', data=None)[source]
Writes the geometry to the contained file
- write_grid(*args, **kwargs)[source]
Store grid(s) data to an XSF file
Examples
>>> g1 = Grid(0.1, lattice=2.) >>> g2 = Grid(0.1, lattice=2.) >>> get_sile('output.xsf', 'w').write_grid(g1, g2)
- Parameters:
*args (Grid) – a list of data-grids to be written to the XSF file. Each argument gets the field name
?grid_<>
where <> starts with the integer 0, and ? isreal_
/imag_
for complex valued grids.geometry (Geometry, optional) – the geometry stored in the file, defaults to
args[0].geometry
fmt (str, optional) – floating point format for data (.5e)
buffersize (int, optional) – size of the buffer while writing the data, (6144)