Skip to content

Building lattices with particular exposed faces #482

Open
@mattwthompson

Description

@mattwthompson

The idea is that I need a particular plane (i.e. [1, 1, 1]) to be exposed along a plane, say [0, 0, 1]. So the API should be something like

si_lattice = diamond_lattice.populate(compound_dict={'A' : si},
                                      x=5, y=5, z=5,
                                      algin_this=[1, 1, 1],
                                      align_to=[0, 0, 1])

and produce for me a system that has a smooth, continuous [1, 1, 1] face pointing in the z direction. We discussed a few ways to do this but haven't decided on which is best.

  1. Populating out a large crystal, rotating it to align vectors appropriately, and carving things back into a rectangular system.

    • Probably doable but neither elegant nor simple
  2. Manipulating the mb.Lattice object before populating

    • May not be possible, or at least feasible, for arbitrary lattices
  3. Populating out a large crystal and then "wrapping" it into alignment with the desired plane and its normal plane

    • Also may not be possible, or at least feasible, for arbitrary lattices

May or may not tie in to #439 #108

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions