sknano.structures.Graphene

class sknano.structures.Graphene(armchair_edge_length=None, zigzag_edge_length=None, **kwargs)[source][source]

Graphene structure class.

Changed in version 0.3.11: Graphene is now a sub-class of the ConventionalCellGraphene class to maintain backwards compatibility and also includes 2 new classmethods: from_primitive_cell and from_conventional_cell.

Parameters:

armchair_edge_length : float, optional

Length of armchair edge in nanometers

New in version 0.3.10.

zigzag_edge_length : float, optional

Length of zigzag edge in nanometers

New in version 0.3.10.

length : float, optional

Length of armchair edge in nanometers

Deprecated since version 0.3.10: Use armchair_edge_length instead

width : float, optional

Width of graphene sheet in nanometers

Deprecated since version 0.3.10: Use zigzag_edge_length instead

edge : {‘AC’, ‘armchair’, ‘ZZ’, ‘zigzag’}, optional

ArmChair or ZigZag edge along the length of the sheet.

Deprecated since version 0.3.10: No longer used!

basis : {list}, optional

List of strs of element symbols or atomic number of the two atom basis (default: [‘C’, ‘C’])

New in version 0.3.10.

element1, element2 : {str, int}, optional

Element symbol or atomic number of basis Atom 1 and 2

Deprecated since version 0.3.10: Use basis instead

bond : float, optional

\(\mathrm{a}_{\mathrm{CC}} =\) distance between nearest neighbor atoms. Must be in units of Angstroms.

nlayers : int, optional

Number of graphene layers (default: 1)

layer_spacing : float, optional

Distance between layers in Angstroms (default: 3.35).

stacking_order : {‘AA’, ‘AB’}, optional

Stacking order of graphene layers.

layer_rotation_angles : list, optional

list of rotation angles for each layer in degrees if degrees is True (default), otherwise in radians. The list length must equal the number of layers.

layer_rotation_increment : float, optional

incremental layer rotation angle in degrees if degrees is True (default), otherwise in radians. Each subsequent layer will be rotated by layer_rotation_increment relative to the layer below it.

verbose : bool, optional

verbose output

Attributes

N Number of graphene unit cells.
Natoms Total number of atoms.
Natoms_per_layer Number of atoms per layer.
Natoms_per_unit_cell Number of atoms per unit cell.
area Total area of graphene supercell.
atoms Structure StructureAtoms.
basis NanoStructureBase basis atoms.
crystal_cell Structure CrystalCell.
element1 Basis element 1
element2 Basis element 2
fmtstr Format string.
lattice Structure Crystal3DLattice.
n1
n2
r1
r2
scaling_matrix CrystalCell.scaling_matrix.
structure Pointer to self.
structure_data Alias for BaseStructureMixin.structure.
unit_cell Structure UnitCell.
vdw_distance van der Waals distance.
vdw_radius van der Waals radius

Methods

clear() Clear list of BaseStructureMixin.atoms.
from_conventional_cell(**kwargs) See the ConventionalCellGraphene structure class documentation.
from_primitive_cell(**kwargs) See the PrimitiveCellGraphene structure class documentation.
make_supercell(scaling_matrix[, wrap_coords]) Make supercell.
read_data(*args, **kwargs)
read_dump(*args, **kwargs)
read_xyz(*args, **kwargs)
rotate(**kwargs) Rotate crystal cell lattice, basis, and unit cell.
todict()
transform_lattice(scaling_matrix[, ...])
translate(t[, fix_anchor_points]) Translate crystal cell basis.
write_data(**kwargs)
write_dump(**kwargs)
write_xyz(**kwargs)