Core structure classes (sknano.core.structures)

Contents

This package defines classes for creating abstract object representations of nanostructures including fullerenes, graphene, and nanotubes.

See the specific class doc pages below for detailed documentation on its use.

Reference/API

sknano.core.structures Package

Functions

cmp_Ch(Ch1, Ch2) Custom comparator function for sorting chirality lists.
compute_Ch(*Ch[, bond]) Compute nanotube circumference \(|\mathbf{C}_{h}|\) in .
compute_Lx(*Ch[, nx, bond, gutter]) Compute the axis-aligned length along the x-axis in Angstroms.
compute_Ly(*Ch[, ny, bond, gutter]) Compute the axis-aligned length along the y-axis in Angstroms.
compute_Lz(*Ch[, nz, bond]) Compute the axis-aligned length along the z-axis in Angstroms.
compute_M(*Ch) Compute \(M = mp - nq\)
compute_N(*Ch) Compute \(N = \frac{2(n^2+m^2+nm)}{d_R}\).
compute_Natoms(*Ch[, nz]) Compute \(N_{\mathrm{atoms/tube}}\)
compute_Natoms_per_tube(*Ch[, nz]) Compute \(N_{\mathrm{atoms/tube}}\)
compute_Natoms_per_unit_cell(*Ch) Compute \(N_{\mathrm{atoms/cell}} = 2N\).
compute_R(*Ch[, bond, length]) Compute symmetry vector \(\mathbf{R} = (p, q)\).
compute_R_chiral_angle(*Ch[, degrees]) Compute “chiral angle” of symmetry vector \(\theta_R\).
compute_T(*Ch[, bond, length]) Compute length of nanotube unit cell \(|\mathbf{T}|\) in Å.
compute_bundle_density(*Ch[, r_vdw, bond, ...]) Compute nanotube bundle mass density \(\rho_{\mathrm{bundle}}(n, m)\) in \(\mathrm{g/cm^3}\).
compute_chiral_angle(*Ch[, degrees]) Compute chiral angle \(\theta_c\).
compute_d(*Ch) Compute \(d=\gcd{(n, m)}\)
compute_dR(*Ch) Compute \(d_R=\gcd{(2n + m, 2m + n)}\)
compute_dt(*Ch[, bond]) Compute nanotube diameter \(d_t\) in Å.
compute_electronic_type(*Ch) Compute nanotube electronic type.
compute_linear_mass_density(*Ch[, bond, ...]) Compute nanotube linear mass density (mass per unit length) in grams/Å.
compute_psi(*Ch) Compute rotation component of symmetry operation \(\psi\) in radians.
compute_rt(*Ch[, bond]) Compute nanotube radius \(r_t\) in Å.
compute_symmetry_chiral_angle(*Ch[, degrees]) Alias for compute_R_chiral_angle.
compute_symmetry_operation(*Ch[, bond]) Compute symmetry operation \((\psi|\tau)\).
compute_t1(*Ch) Compute \(t_1 = \frac{2m + n}{d_R}\)
compute_t2(*Ch) Compute \(t_2 = -\frac{2n + m}{d_R}\)
compute_tau(*Ch[, bond]) Compute translation component of symmetry operation \(\tau\) in .
compute_tube_diameter(*Ch[, bond]) Alias for compute_dt
compute_tube_length(*Ch[, nz, bond]) Alias for compute_Lz
compute_tube_mass(*Ch[, nz, element1, element2]) Compute nanotube mass in grams.
compute_tube_radius(*Ch[, bond]) Alias for compute_rt
compute_unit_cell_mass(*Ch[, element1, element2]) Compute nanotube unit cell mass in Daltons/atomic mass units (amu) units.
compute_unit_cell_symmetry_params(*Ch[, bond]) Tuple of SWNT unit cell symmetry parameters.
filter_Ch(Ch[, even_only, odd_only, ...]) Filter for testing if chirality satisfies given constraint parameters.
filter_Ch_list(Ch_list[, property_filters]) Filter list of chiralities.
generate_Ch_list([ns, ni, nf, dn, ms, mi, ...]) Generate a list of \((n, m)\) chiralities.
generate_Ch_property_grid([compute, imax]) Generate a 2-dimensional, \(i_{\mathrm{max}}\times i_{\mathrm{max}}\) grid of nanotube properties.
get_Ch_indices(*args[, check_type]) Parse the chiral indices n and m from a vararg *args, which may be a tuple or 2 ints or from varkwargs **kwargs.
get_Ch_type(Ch) Identify the type of nanotube based on its chirality
get_chiral_indices(*args[, check_type]) Parse the chiral indices n and m from a vararg *args, which may be a tuple or 2 ints or from varkwargs **kwargs.
get_chiral_indices_from_str(Ch) Return the chiral indicies n and m.
get_chiral_type(Ch) Identify the type of nanotube based on its chirality
load_fullerene_data() Helper function to populate dict of fullerene data files.
map_Ch(Ch[, compute]) Map compute function using Ch as input.
pymatgen_structure(*args[, classmethod]) Helper function to generate a pymatgen.core.Structure.
type_check_chiral_indices(*Ch) Check type of chiral indices.

Classes

AlphaQuartz([lattice]) Alpha quartz structure class.
BCCStructure(*args, **kwargs) BCC structure class.
BetaQuartz([lattice]) Beta quartz structure class.
BilayerGraphene(**kwargs) Bilayer Graphene structure class.
CCPStructure alias of CubicClosePackedStructure
CaesiumChlorideStructure([lattice, basis]) Abstract representation of caesium chloride structure.
Composition([components]) Base class for abstract representation of a composition.
Compositions([compositions, update_item_class]) Base class for collection of Composition objects.
ConventionalCellGraphene([l1, l2, n1, n2]) Graphene structure class built from a conventional unit cell.
Copper(**kwargs) Copper structure.
Crystal2DStructure([lattice, basis, coords, ...]) Base class for 2D crystal structures.
Crystal3DStructure([lattice, basis, coords, ...]) Base class for 3D crystal structures.
CrystalStructureBase(*args[, lattice, ...]) Base class for abstract representions of crystal structures.
CsClStructure alias of CaesiumChlorideStructure
CubicClosePackedStructure([lattice, basis, ...]) Abstract representation of cubic close-packed structure.
CubicStructure(*args[, centering, lattice, ...]) Base class for a cubic Crystal3DStructure.
DiamondStructure([lattice, basis]) Abstract representation of diamond structure.
FCCStructure(*args, **kwargs) FCC structure class.
Fullerene(*args[, N, PG, Niso]) Fullerene structure class.
Fullerenes
Gold(**kwargs) Gold structure.
Graphene([l1, l2, n1, n2]) Graphene structure class.
GrapheneBase([nlayers, layer_spacing, ...]) Graphene base structure class.
GrapheneConventionalCell([bond, a, b, c, ...]) Conventional (rectangular) graphene unit cell with 4 atom basis.
GrapheneMixin Mixin class for graphene structure classes.
GrapheneNanoribbon(**kwargs) Graphene nanoribbon structure class.
GraphenePrimitiveCell([bond, a, c, gamma, ...]) Primitive graphene unit cell with 2 atom basis.
HCPStructure alias of HexagonalClosePackedStructure
HexagonalCellGraphene alias of PrimitiveCellGraphene
HexagonalClosePackedStructure([lattice, ...]) Abstract representation of hexagonal close-packed structure.
HexagonalGraphene alias of PrimitiveCellGraphene
HexagonalStructure(*args[, lattice, basis, ...]) Base Crystal3DStructure for a hexagonal crystal system.
Iron(**kwargs) Iron structure.
MWNT(*args[, nx, ny, bundle_packing, ...]) MWNT structure class.
MWNTBase([Ch_list, Nwalls, Lz, nz, ...]) MWNT structure class.
MWNTMixin Mixin class for MWNTs.
MoS2([lattice]) Molybdenum disulphide structure class.
NaClStructure alias of RocksaltStructure
NanoStructureBase(*args[, basis, bond]) Base class for creating abstract representations of nanostructure.
Nanotube alias of SWNT
NanotubeBundleBase(*args[, nx, ny, ...]) Nanotube bundle structure base class.
NanotubeBundleMixin Mixin class for nanotube bundles.
NanotubeMixin alias of SWNTMixin
NanotubeUnitCell(*args[, lattice]) Primitive graphene unit cell with 2 atom basis.
PointDefect() Base class representation of point defects.
PrimitiveCellGraphene([edge_length, ncells]) Graphene structure class built from a primitive unit cell.
RectangularCellGraphene alias of ConventionalCellGraphene
RectangularGraphene alias of ConventionalCellGraphene
RockSaltStructure alias of RocksaltStructure
RocksaltStructure([lattice, basis]) Abstract representation of rock salt structure.
SWNT(*args[, nx, ny, bundle_packing, ...]) SWNT structure class.
SWNTBase(*Ch[, nz, gutter, Lz, fix_Lz, ...]) Base SWNT structure class.
SWNTMixin Mixin class for nanotube classes.
SphaleriteStructure alias of ZincblendeStructure
StructureBase(*args, **kwargs) Base structure class for structure data.
StructureMixin Mixin class for crystal structures.
UnrolledSWNT(*args[, nx, Lx, fix_Lx]) Unrolled SWNT structure class.
UnrolledSWNTBase(*args[, nx, Lx, fix_Lx]) Base unrolled SWNT structure class.
UnrolledSWNTMixin Mixin class for unrolled nanotubes.
Vacancy(type, size)

Attributes

ZincBlendeStructure alias of ZincblendeStructure
ZincblendeStructure([lattice, basis]) Abstract representation of zinc blende structure.

Class Inheritance Diagram

Inheritance diagram of sknano.core.structures.xtal_structures.AlphaQuartz, sknano.core.structures.xtal_structures.BCCStructure, sknano.core.structures.xtal_structures.BetaQuartz, sknano.core.structures.bilayer_graphene.BilayerGraphene, sknano.core.structures.xtal_structures.CubicClosePackedStructure, sknano.core.structures.xtal_structures.CaesiumChlorideStructure, sknano.core.structures.compositions.Composition, sknano.core.structures.compositions.Compositions, sknano.core.structures.graphene.ConventionalCellGraphene, sknano.core.structures.xtal_structures.Copper, sknano.core.structures.xtal_structures.Crystal2DStructure, sknano.core.structures.xtal_structures.Crystal3DStructure, sknano.core.structures.base.CrystalStructureBase, sknano.core.structures.xtal_structures.CaesiumChlorideStructure, sknano.core.structures.xtal_structures.CubicClosePackedStructure, sknano.core.structures.xtal_structures.CubicStructure, sknano.core.structures.xtal_structures.DiamondStructure, sknano.core.structures.xtal_structures.FCCStructure, sknano.core.structures.fullerenes.Fullerene, sknano.core.structures.fullerenes.Fullerenes, sknano.core.structures.xtal_structures.Gold, sknano.core.structures.graphene.Graphene, sknano.core.structures.graphene.GrapheneBase, sknano.core.structures.graphene.GrapheneConventionalCell, sknano.core.structures.graphene.GrapheneMixin, sknano.core.structures.graphene.GrapheneNanoribbon, sknano.core.structures.graphene.GraphenePrimitiveCell, sknano.core.structures.xtal_structures.HexagonalClosePackedStructure, sknano.core.structures.graphene.PrimitiveCellGraphene, sknano.core.structures.xtal_structures.HexagonalClosePackedStructure, sknano.core.structures.graphene.PrimitiveCellGraphene, sknano.core.structures.xtal_structures.HexagonalStructure, sknano.core.structures.xtal_structures.Iron, sknano.core.structures.mwnt.MWNT, sknano.core.structures.mwnt.MWNTBase, sknano.core.structures.mwnt.MWNTMixin, sknano.core.structures.xtal_structures.MoS2, sknano.core.structures.xtal_structures.RocksaltStructure, sknano.core.structures.base.NanoStructureBase, sknano.core.structures.swnt.SWNT, sknano.core.structures.nanotube_bundle.NanotubeBundleBase, sknano.core.structures.nanotube_bundle.NanotubeBundleMixin, sknano.core.structures.swnt.SWNTMixin, sknano.core.structures.swnt.NanotubeUnitCell, sknano.core.structures.defects.PointDefect, sknano.core.structures.graphene.PrimitiveCellGraphene, sknano.core.structures.graphene.ConventionalCellGraphene, sknano.core.structures.graphene.ConventionalCellGraphene, sknano.core.structures.xtal_structures.RocksaltStructure, sknano.core.structures.xtal_structures.RocksaltStructure, sknano.core.structures.swnt.SWNT, sknano.core.structures.swnt.SWNTBase, sknano.core.structures.swnt.SWNTMixin, sknano.core.structures.xtal_structures.ZincblendeStructure, sknano.core.structures.base.StructureBase, sknano.core.structures.base.StructureMixin, sknano.core.structures.unrolled_swnt.UnrolledSWNT, sknano.core.structures.unrolled_swnt.UnrolledSWNTBase, sknano.core.structures.unrolled_swnt.UnrolledSWNTMixin, sknano.core.structures.defects.Vacancy, sknano.core.structures.xtal_structures.ZincblendeStructure, sknano.core.structures.xtal_structures.ZincblendeStructure