Skip to content

Commit cbdc1fa

Browse files
authored
Merge pull request #288 from Exabyte-io/feature/SOF-7472
update: add island tutroial wip
2 parents ae93c9c + 7293793 commit cbdc1fa

File tree

8 files changed

+204
-0
lines changed

8 files changed

+204
-0
lines changed
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 3 additions & 0 deletions
Loading
Lines changed: 185 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,185 @@
1+
---
2+
# YAML header
3+
render_macros: true
4+
---
5+
6+
# Island Surface Defect Formation in TiN
7+
8+
## Introduction
9+
10+
This tutorial demonstrates the process of creating material with island on the surface of TiN(001) based on the work presented in the following manuscript.
11+
12+
[//]: # (<embed src="https://journals.aps.org/prb/abstract/10.1103/PhysRevB.97.035406" width="100%" height="300">)
13+
14+
!!!note "Reference"
15+
**D. G. Sangiovanni, A. B. Mei, D. Edström, L. Hultman, V. Chirita, I. Petrov, and J. E. Greene**,
16+
"Effects of surface vibrations on interlayer mass transport: Ab initio molecular dynamics investigation of Ti adatom descent pathways and rates from TiN/TiN(001) islands", Physical Review B, 2018. [DOI: 10.1103/PhysRevB.97.035406](https://journals.aps.org/prb/abstract/10.1103/PhysRevB.97.035406){:target='_blank'}.
17+
18+
We use the [Materials Designer](../../../materials-designer/overview.md) to create a slab of TiN, identify the cartesian coordinates for an island on the surface, and build it.
19+
20+
We will focus on creating graphene-nitrogen structures from FIG. 2.
21+
Specifically, the material from FIG. 2. a) of the paper:
22+
23+
24+
![Surface Defect](/images/tutorials/materials/defects/defect-creation-surface-island-titanium-nitride/0.png "Surface Defect, Island FIG. 2. a)")
25+
26+
27+
## 1. Create and preview TiN Slab
28+
29+
First, we navigate to [Materials Designer](../../../materials-designer/overview.md) and import the graphene material from the [Standata](../../../materials-designer/header-menu/input-output/standata-import.md).
30+
31+
![Standata Graphene Import](/images/tutorials/materials/defects/defect_creation_point_substitution_graphene/1-standata-graphene.webp "Standata Graphene Import")
32+
33+
34+
Then we will use the [JupyterLite](../../../jupyterlite/overview.md) environment to create a TiN slab.
35+
36+
### 1.1. Launch JupyterLite Session
37+
38+
Select the "Advanced > [JupyterLite Transformation](../../../materials-designer/header-menu/advanced/jupyterlite-dialog.md)" menu item to launch the JupyterLite environment.
39+
40+
![JupyterLite Dialog](/images/jupyterlite/md-advanced-jl.webp "JupyterLite Dialog")
41+
42+
43+
### 1.2. Open and modify the notebook
44+
45+
Next, edit `create_slab.ipynb` notebook to modify the parameters by adding the following content to the "1.1. Set up slab parameters" cell in the notebook:
46+
47+
```python
48+
# Enable interactive selection of terminations via UI prompt
49+
IS_TERMINATIONS_SELECTION_INTERACTIVE = False
50+
51+
MILLER_INDICES = (0, 0, 1)
52+
THICKNESS = 3 # in atomic layers
53+
VACUUM = 10.0 # in angstroms
54+
XY_SUPERCELL_MATRIX = [[10, 0], [0, 10]]
55+
USE_ORTHOGONAL_Z = True
56+
USE_CONVENTIONAL_CELL = True
57+
58+
# Index of the termination pair to be selected
59+
TERMINATION_INDEX = 0
60+
```
61+
62+
### 1.3. Run the Notebook
63+
64+
Run the notebook by clicking `Run` > `Run All` in the top menu to run cells and wait for the results to appear.
65+
66+
![Run All](/images/jupyterlite/run-all.webp "Run All")
67+
68+
### 1.4. Analyze the Results
69+
70+
After running the notebook, the user will be able to visualize the created TiN slab.
71+
72+
![Review the Results](/images/tutorials/materials/defects/defect-creation-surface-island-titanium-nitride/1.png "Review the Results")
73+
74+
We don't need to save the material at this point, as we will recreate the slab with island on the surface in the next notebook. This step is needed to identify the coordinates of the island vertices.
75+
76+
## 2. Identifying the Island vertices coordinates
77+
78+
We are creating an island defect that covers an area of 4.5x4.5 unit cells (which corresponds to 9x9 atoms). This island will be placed inside a 10x10 supercell (20x20 atoms).
79+
To position the island correctly, we need to select coordinates that are `0.45` crystal units apart along both lattice directions (a and b), ensuring the island is centered.
80+
81+
The initial coordinates for this are `[0.0, 0.0]` and `[0.45, 0.45]`.
82+
83+
To ensure the island starts from the Ti atom on the edge in the next layer, we will slightly adjust the coordinates:
84+
85+
- Shift the left border by `0.05` (1/20 of the distance between atoms),
86+
- Shift the top border by `-0.05` (also 1/20 of the atom spacing).
87+
88+
For the z-axis, the first vertex will have a z-component of `0` (starting at the base of the supercell), and the second vertex will have a z-component of `1` (reaching the top of the supercell), ensuring the island spans the entire z-direction.
89+
90+
The coordinates after these adjustments are: `[0.05, 0.0, 0]` and `[0.45, 0.4, 1]`.
91+
92+
Finally, to move the island to the center of the supercell, add 2 unit cells (2/10 of the supercell size) to both island vertex coordinates.
93+
94+
The final centered coordinates of the island are: `[0.25, 0.2, 0]` and `[0.65, 0.6, 1]`.
95+
96+
These coordinates will be used in the next step to create the island on the surface.
97+
98+
## 3. Create Island on the Surface
99+
100+
### 3.1. Open `create_point_defect.ipynb` notebook
101+
102+
Close the current notebook. `Introduction` notebook should be open by default.
103+
104+
Find `create_island_defect.ipynb` in the list of notebooks and double-click open it.
105+
106+
### 3.2. Modify the notebook
107+
108+
Next, edit `create_island_defect.ipynb` notebook to modify the parameters by adding a list of [defect configuration objects](https://github.com/Exabyte-io/made/blob/3d938b4d91a31323dca7a02acb12b646dbb26634/src/py/mat3ra/made/tools/build/defect/configuration.py#L191) containing the cartesian coordinates of the island vertices.
109+
110+
With the same TiN material selected in the materials input and coordinates for the island vertices from the previous step, the user can create the island on the surface.
111+
112+
Notice, that we did not create the slab yet, so it is necessary to provide slab parameters in this notebook.
113+
114+
Copy the below content and edit the "1.1. Set up defect parameters" cell in the notebook as follows:
115+
116+
```python
117+
ISLAND_SHAPE = 'box'
118+
AUTO_ADD_VACUUM = True
119+
VACUUM_THICKNESS = 10.0
120+
NUMBER_OF_ADDED_LAYERS = 0.5
121+
122+
BOX_PARAMETERS = {
123+
'min_coordinate': [0.25, 0.2, 0],
124+
'max_coordinate': [0.65, 0.6, 1],
125+
"use_cartesian_coordinates": False
126+
}
127+
128+
DEFAULT_SLAB_PARAMETERS = {
129+
"miller_indices": (0,0,1),
130+
"thickness": 3,
131+
"vacuum": 0.0,
132+
"use_orthogonal_z": True,
133+
"xy_supercell_matrix": [[10, 0], [0, 10]]
134+
}
135+
136+
```
137+
138+
Here's the visual of the updated content:
139+
140+
![Notebook setup](/images/tutorials/materials/defects/defect-creation-surface-island-titanium-nitride/island-setup.png "Notebook setup")
141+
142+
## 4. Run the Notebook
143+
144+
Run the notebook by clicking `Run` > `Run All` in the top menu to run cells and wait for the results to appear.
145+
146+
![Run All](/images/jupyterlite/run-all.webp "Run All")
147+
148+
## 5. Analyze the Results
149+
150+
After running the notebook, the user will be able to visualize the created material with the island on the surface.
151+
152+
![Review the Results](/images/tutorials/materials/defects/defect-creation-surface-island-titanium-nitride/original-result.png "Review the Results")
153+
154+
## 6. Pass the Material to Materials Designer
155+
156+
The user can pass the resulting material to the current Materials Designer environment and save it.
157+
158+
![Final Material](/images/tutorials/materials/defects/defect-creation-surface-island-titanium-nitride/final-material.gif "Island on the Surface")
159+
160+
Or the user can [save or download](../../../materials-designer/header-menu/input-output.md) the material in Material JSON format or POSCAR format.
161+
162+
163+
## Interactive JupyterLite Notebook
164+
165+
The following JupyterLite notebook demonstrates the process of creating material with island. Select "Run" > "Run All Cells".
166+
167+
{% with origin_url=config.extra.jupyterlite.origin_url %}
168+
{% with notebooks_path_root=config.extra.jupyterlite.notebooks_path_root %}
169+
{% with notebook_name='specific_examples/defect_creation_island.ipynb' %}
170+
{% include 'jupyterlite_embed.html' %}
171+
{% endwith %}
172+
{% endwith %}
173+
{% endwith %}
174+
175+
<!--
176+
{# TODO: Update the origin_url
177+
{% with origin_url="https://jupyterlite.mat3ra.com/retro/notebooks/?path=api-examples/other/materials_designer/specific_examples/defect_creation_island.ipynb" %}
178+
{% include 'jupyterlite_embed.html' %}
179+
{% endwith %}
180+
#}
181+
-->
182+
183+
## Tags
184+
185+
`defects`, `island`, `surface`, `surface-defects`, `TiN`, `nitrogen`, `titanium`

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,7 @@ nav:
219219

220220
- Specific:
221221
- Substitutional Point Defects in Graphene: tutorials/materials/specific/defect-creation-point-substitution-graphene.md
222+
- Island Surface Defect Formation in TiN: tutorials/materials/specific/defect-creation-surface-island-titanium-nitride.md
222223

223224

224225
# COMMON UI COMPONENTS

0 commit comments

Comments
 (0)