carSileVASP

class sisl.io.vasp.carSileVASP(filename, mode='r', comment=None, *args, **kwargs)

Bases: sisl.io.vasp.SileVASP

*CAR VASP files for defining geomtries

This file-object handles both POSCAR and CONTCAR files

Attributes

__dict__

__doc__

__module__

__weakref__

list of weak references to the object (if defined)

_write_default

_write_default_only

base_file

File of the current Sile

file

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 carSile 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

geometry_group(geometry[, ret_index])

Order atoms in geometry according to species such that all of one specie is consecutive

read(*args, **kwargs)

Generic read method which should be overloaded in child-classes

read_geometry([ret_dynamic])

Returns Geometry object from the CONTCAR/POSCAR file

read_supercell()

Returns SuperCell object from the CONTCAR/POSCAR file

write(*args, **kwargs)

Generic write method which should be overloaded in child-classes

write_geometry(geometry[, dynamic, …])

Writes the geometry to the contained file

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

static geometry_group(geometry, ret_index=False)

Order atoms in geometry according to species such that all of one specie is consecutive

When creating VASP input files (poscarSileVASP for instance) the equivalent POTCAR file needs to contain the pseudos for each specie as they are provided in blocks.

I.e. for a geometry like this: .. code:

[Atom(6), Atom(4), Atom(6)]

the resulting POTCAR needs to contain the pseudo for Carbon twice.

This method will re-order atoms according to the species”

Parameters
  • geometry (Geometry) – geometry to be re-ordered

  • ret_index (bool, optional) – return sorted indices

Returns

geometry

Return type

reordered geometry

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_geometry(ret_dynamic=False)[source]

Returns Geometry object from the CONTCAR/POSCAR file

Possibly also return the dynamics (if present).

Parameters

ret_dynamic (bool, optional) – also return selective dynamics (if present), if not, None will be returned.

read_supercell()[source]

Returns SuperCell object from the CONTCAR/POSCAR file

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, dynamic=True, group_species=False)[source]

Writes the geometry to the contained file

Parameters
  • geometry (Geometry) – geometry to be written to the file

  • dynamic (None, bool or list, optional) – define which atoms are dynamic in the VASP run (default is True, which means all atoms are dynamic). If None, the resulting file will not contain any dynamic flags

  • group_species (bool, optional) – before writing geometry first re-order species to have species in consecutive blocks (see geometry_group)

Examples

>>> car = carSileVASP('POSCAR', 'w')
>>> geom = geom.graphene()
>>> geom.write(car) # regular car without Selective Dynamics
>>> geom.write(car, dynamic=False) # fix all atoms
>>> geom.write(car, dynamic=[False, (True, False, True)]) # fix 1st and y coordinate of 2nd

See also

geometry_group

method used to group atoms together according to their species