2022-01-12 18:48:38 +05:30
|
|
|
"""Functionality for typehints."""
|
|
|
|
|
2022-02-12 02:10:14 +05:30
|
|
|
from typing import Sequence, Union, Literal, TextIO
|
2022-01-12 18:48:38 +05:30
|
|
|
from pathlib import Path
|
|
|
|
|
|
|
|
import numpy as np
|
|
|
|
|
|
|
|
|
|
|
|
FloatSequence = Union[np.ndarray,Sequence[float]]
|
|
|
|
IntSequence = Union[np.ndarray,Sequence[int]]
|
|
|
|
FileHandle = Union[TextIO, str, Path]
|
2022-02-12 02:10:14 +05:30
|
|
|
CrystalFamily = Union[None,Literal['triclinic', 'monoclinic', 'orthorhombic', 'tetragonal', 'hexagonal', 'cubic']]
|
|
|
|
CrystalLattice = Union[None,Literal['aP', 'mP', 'mS', 'oP', 'oS', 'oI', 'oF', 'tP', 'tI', 'hP', 'cP', 'cI', 'cF']]
|
|
|
|
CrystalKinematics = Literal['slip', 'twin']
|
2022-02-13 05:54:02 +05:30
|
|
|
NumpyRngSeed = Union[int, IntSequence, np.random.SeedSequence, np.random.Generator]
|
2022-02-03 03:34:54 +05:30
|
|
|
# BitGenerator does not exists in older numpy versions
|
|
|
|
#NumpyRngSeed = Union[int, IntSequence, np.random.SeedSequence, np.random.BitGenerator, np.random.Generator]
|