Lattice ======= Overview -------- The Lattice class provides slip system information, given the lattice vectors and symmetry group describing the crystal system. The class is intelligent enough to automatically generate the complete set of slip group direction and normal vectors given the direction and planes in Miller indices. NEML divides slip systems into crystallographically identical groups, i.e. all systems generated by the combination of a particular slip direction and normal. The documentation uses the index :math:`g` to indicate the slip group and the index :math:`i` to indicate the particular slip system. Subclasses ---------- Lattice subclasses specialize the general form to particular types of crystal systems, eliminating the need for the user to explicitly provide the lattice vectors and symmetry group. .. toctree:: :maxdepth: 1 GeneralLattice CubicLattice HCPLattice Parameters ---------- .. csv-table:: :header: "Parameter", "Object type", "Description", "Default" :widths: 12, 30, 50, 8 ``a1``, :cpp:class:`neml::Vector`, First lattice vector, No ``a2``, :cpp:class:`neml::Vector`, Second lattice vector, No ``a3``, :cpp:class:`neml::Vector`, Third lattice vector, No ``symmetry``, :cpp:class:`neml::SymmetryGroup`, Crystal symmetry group, No ``isystems``, :code:`list_systems`, Initial list of slip systems, ``{}`` Class description ----------------- .. doxygenclass:: neml::Lattice :members: