sisl.io.xsfSile
- class sisl.io.xsfSile(filename, *args, **kwargs)
Bases:
SileXSF 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
Sileread(*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
SileFile of the current
SileHandles 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**kwargsas 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
**kwargsas 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].geometryfmt (str, optional) – floating point format for data (.5e)
buffersize (int, optional) – size of the buffer while writing the data, (6144)