Skip to content

feature/SOF 7599 categorization new #341

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 26 commits into
base: dev
Choose a base branch
from

Conversation

VsevolodX
Copy link
Member

  • wip: categorization yaml
  • wip: add combinations
  • wip: add pristine structures
  • update: add primitive schemas
  • update: add categorization file
  • update: clenaup
  • update: clenaup 2

crystal_site:
# created by reference to some crystal, can be populated with atom, vacancy, void, can be merged with a crystal of the same lattice
- reference_crystal
- crystal_coordinate
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

host, coordinate, id

- direction = "z"
- number_of_layers = 3
- terminations = [termination_1, termination_3]

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

# You provide material
material: SrTiO3

# You specify the layering configuration (Miller indices)
layers_configuration:
  - crystal = material
  - miller_indices = [ 0, 1, 1 ]
# Function gets all possible layers and their terminations:
layers: get_layers(layers_configuration) => [ layer_1, layer_2, layer_3 ]
terminations: get_terminations(layers) => [ "SrO", "Ti", "TiO" ]

# or layers: generate_layers(layers_configuration) => [ {layer_1, termination_1}, {layer_2, termination_2}, {layer_3, termination_3} ]

# You use those layers object and top and bottom terminations to specify a slab configuration
slab_configuration:
  - stack_components = [ layers, vacuum(10) ]
  - direction = "z"
  - number_of_layers = 7
  - terminations = ["SrO", "SrO" ]
# You can generate the slab, with terminations and vacuum added
slab: generate_slab(slab_configuration)

- is_isometric = bool
combinations:
stack_component:
- structure = (material | vacuum)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't have the structure key it's just material or vacuum

crystal_lattice_planes:
- crystal = material
- miller_indices = [ h, k, l ]
(termination): # not a configuration, but a data-model
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be primitive

(termination): # not a configuration, but a data-model
- stoichiometry # e.g. SrO, TiO, etc.
- symmetry #P6/mmm, P3m1, etc.
unique_atomic_layers:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe atomic_layers_unique atomic_layers_unique_repeated and atomic_layers

- direction = (x | y){1}
wire_section:
# we created a supercell, cut the shape
- supercell = ref:/.../supercell
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The actual wire length, width should be first, not supercell

zero-dimensional:
nanoparticle:
# we created a supercell, cut the shape and added vacuum on all sides
- supercell = ref:/.../supercell
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above

- crystal = ref:/primitive/base/crystal
# In the code properties below can be supplied externally or generated based on the above with a wizard
- stacking_order? = ("natural" | "AB" | "ABC" | ...){1} # Natural by default, can be described as a ABC... configurations based on the symmetry
heterostack:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we can just call it stack

- stack_components = [ slab, vacuum, slab, vacuum ]
- direction = "z"
interface_slab_monolayer:
- stack_components = [ slab, vacuum, monolayer ]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should not have vacuum

- stack_components = [ slab, vacuum, monolayer ]
- direction = "z"
interface_slab_monolayer_vacuum:
- stack_components = [ slab, vacuum, monolayer, vacuum ]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be only one vacuum

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants