sknano.structures.SWNTBundle¶
-
class
sknano.structures.SWNTBundle(*args, **kwargs)[source][source]¶ SWNTbundle structure class.Parameters: nx :
int, optionalNumber of nanotubes along the \(x\) axis
ny :
int, optionalNumber of nanotubes along the \(y\) axis
nz :
int, optionalNumber of repeat unit cells in the \(z\) direction, along the length of the nanotube.
basis : {
list}, optionalList 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
Atom1 and 2Deprecated since version 0.3.10: Use
basisinsteadbond : float, optional
\(\mathrm{a}_{\mathrm{CC}} =\) distance between nearest neighbor atoms. Must be in units of Angstroms.
Lz : float, optional
Length of nanotube in units of nanometers. Overrides the
nzvalue.New in version 0.2.5.
tube_length : float, optional
fix_Lz : bool, optional
Generate the nanotube with length as close to the specified \(L_z\) as possible. If True, then non integer \(n_z\) cells are permitted.
New in version 0.2.6.
verbose : bool, optional
if True, show verbose output
Examples
Create a \(\mathbf{C}_{h} = (10, 10)\) hexagonally close packed (hcp) \(5\times 3\times 10\)
SWNTbundle.>>> from sknano.structures import SWNTBundle >>> swnt_bundle = SWNTBundle((10, 10), nx=5, ny=3, nz=10, ... bundle_packing='hcp') >>> print(swnt_bundle) SWNTBundle((10, 10), nx=5, ny=3, nz=10, basis=['C', 'C'], bond=1.42, bundle_packing='hcp', bundle_geometry=None)
Attributes
ChSWNT circumference \(|\mathbf{C}_h|\) in Å Ch_vecSWNT chiral vector. LxLyLzSWNT length \(L_z = L_{\mathrm{tube}}\) in nanometers. M\(M = np - nq\) NNumber of graphene hexagons in nanotube unit cell. NatomsNumber of atoms in nanotube bundle. Natoms_listNatoms_per_bundleNatoms_per_tubeAlias for Natoms_list.Natoms_per_unit_cellNumber of atoms in nanotube unit cell. NtubesRSymmetry vector \(\mathbf{R} = (p, q)\). TLength of nanotube unit cell \(|\mathbf{T}|\) in Å. TvecSWNTtranslation vector.atomsStructure StructureAtoms.basisNanoStructureBasebasis atoms.bundle_densitybundle_geometrybundle_massbundle_packingchiral_angleChiral angle \(\theta_c\) in degrees. chiral_typeSWNTchiral type.crystal_cellStructure CrystalCell.d\(d=\gcd{(n, m)}\) dR\(d_R=\gcd{(2n + m, 2m + n)}\) dtNanotube diameter \(d_t = \frac{|\mathbf{C}_h|}{\pi}\) in Å. electronic_typeSWNT electronic type. element1Basis element 1 element2Basis element 2 fix_LzfmtstrFormat string. latticeStructure Crystal3DLattice.linear_mass_densityLinear mass density of nanotube in g/nm. mChiral index \(m\). nChiral index \(n\). nxNumber of nanotubes along the \(x\)-axis. nyNumber of nanotubes along the \(y\)-axis. nzNumber of nanotube unit cells along the \(z\)-axis. rtNanotube radius \(r_t = \frac{|\mathbf{C}_h|}{2\pi}\) in Å. scaling_matrixCrystalCell.scaling_matrix.structurePointer to self. structure_dataAlias for BaseStructureMixin.structure.t1\(t_{1} = \frac{2m + n}{d_{R}}\) t2\(t_2 = -\frac{2n + m}{d_R}\) tube_lengthAlias for SWNT.Lztube_massSWNT mass in grams. unit_cellStructure UnitCell.unit_cell_massUnit cell mass in atomic mass units. unit_cell_symmetry_paramsTuple of SWNTunit cell symmetry parameters.vdw_distancevan der Waals distance. vdw_radiusvan der Waals radius Methods
clear()Clear list of BaseStructureMixin.atoms.generate_bundle_coords()Generate coordinates of bundle tubes. generate_unit_cell()Generate the nanotube unit cell. 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)