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¶