vibesketcher.chem.nanotube_cells¶
Periodic carbon nanotube cells from chiral indices (n, m).
One or more translation periods of a single- or multi-walled tube along z,
rolled with the chiral-vector construction of
vibesketcher.chem.nanostructures (Saito, Dresselhaus and Dresselhaus,
Physical Properties of Carbon Nanotubes, Imperial College Press 1998, ch. 3;
Hamada, Sawada and Oshiyama, Phys. Rev. Lett. 68, 1579, 1992). The x and y
cell vectors hold the outer diameter plus a stated vacuum gap, and are not
periodic. Walls of a multi-walled cell must have commensurate periods; an
incommensurate pair is refused, never strained.
Functions
The periodic tube cell the recipe describes, or a refusal with the reason. |
Classes
|
A periodic carbon nanotube: armchair (n,n), zigzag (n,0) or chiral (n,m). |
- class vibesketcher.chem.nanotube_cells.NanotubeRecipe(*, kind='nanotube', identifier, n, m=None, type='chiral', outer_walls=<factory>, periods=1, vacuum=10.0)[source]¶
Bases:
BaseModelA periodic carbon nanotube: armchair (n,n), zigzag (n,0) or chiral (n,m).
- Parameters:
kind (Literal['nanotube'])
identifier (Annotated[str, _PydanticGeneralMetadata(pattern='^[A-Za-z][A-Za-z0-9_-]{0,63}$')])
type (Literal['chiral', 'armchair', 'zigzag'])
outer_walls (Annotated[list[Chirality], MaxLen(max_length=9)])
vacuum (Annotated[float, Ge(ge=3), Le(le=200), AllowInfNan(allow_inf_nan=False)])
- model_config = {'extra': 'forbid'}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- kind: Literal['nanotube']¶
- type: Literal['chiral', 'armchair', 'zigzag']¶
- vibesketcher.chem.nanotube_cells.build_nanotube_cell(p)[source]¶
The periodic tube cell the recipe describes, or a refusal with the reason.
- Parameters:
p (NanotubeRecipe)
- Return type: