class sknano.generators.PrimitiveCellGrapheneGenerator(*args, *, autogen=True, **kwargs)[source][source]

N-layer graphene generator class using a primitive unit cell.


edge_length : float

Length of graphene edges in nanometers

basis : {list}, optional

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

bond : float, optional

bond length between nearest-neighbor atoms in Angstroms.

nlayers : int, optional

Number of graphene layers.

layer_spacing : float, optional

Distance between layers in Angstroms.

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.

autogen : bool, optional

automatically generate unit cell and full structure

verbose : bool, optional

verbose output


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


clear() Clear list of BaseStructureMixin.atoms.
generate() Generate the full structure coordinates.
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.
save([fname]) Save structure data.
transform_lattice(scaling_matrix[, ...])
translate(t[, fix_anchor_points]) Translate crystal cell basis.