网页 综合 更新时间 2026-11-14 16:58:34

Dumbbell lattice — Atomap 0.4.3.dev1 documentation

自动蜘蛛 atomap.org 正文约 3008 字
There is also a notebook in the Atomap-demos repository: https://github.com/atomap-dev/atomap-demos/blob/main/dumbbell_example_notebook/dumbbell_example.ipynb
Analysis of atomic resolution images can be tricky if the atoms are too close together, leading to overlap. For these images, several atomic columns must be fitted simultaneously. However, fitting many 2-D Gaussians over a large at the same time will be significantly slower than fitting a couple. So in these cases, only the atoms which overlap should be fitted simultaneously.
A very common example of this is dumbbells, often seen in zincblende structures such as Si or GaAs. Processing and analysing these require some specialized functions, which will be shown here. To do this, we’ll use a dataset emulating a zincblende heterostructure.
The first step is finding the “dumbbell vector”, which is the distance and direction between the atoms in the dumbbells. We do this by getting all the atomic positions, firstly by finding an appropriate feature separation. As the atoms in the dumbbells are typically pretty close together, we use a low separation_range between 2 and 6.
The first separation, 2, seems to work well here. Use get_atom_positions() to get an array with all of these atomic positions.
To find the dumbbell vector, these atom positions are passed to the find_dumbbell_vector() function:
Then the dumbbells themselves has to be found, by finding one atom in each of the dumbbells. As these are further apart, we use a higher separation_range between 5 and 20.
Here, the third separation, 8, seems to work well. Use this get the dumbbell_positions.
The dumbbell_vector and dumbbell_positions are then used to make a dumbbell_lattice, with the make_atom_lattice_dumbbell_structure() function:
Due to the atom columns being too close together, we can’t use the standard refine methods, but rather have to use a special one which fits both atoms in the dumbbell at the same time: atomap.atom_lattice.Dumbbell_Lattice.refine_position_gaussian().
There are several ways to analyse the image using the Dumbbell_Lattice object. Many of these are shared with the Atom_Lattice class, examples of these are seen in Analysing atom lattices.
A relevant one for a heterostructure is the atom column intensity.
Or out-of-plane lattice plane distances
There are also some specific for the Dumbbell_Lattice object:
dumbbell_x, the x-position of the dumbbell, which is defined as the mean x-position of the two atoms in the dumbbell
dumbbell_y, the y-position of the dumbbell, which is defined as the mean y-position of the two atoms in the dumbbell
dumbbell_distance, distance between the atoms in each dumbbell
dumbbell_angle, angle between the atoms in each dumbbell, in relation to the horizontal axis
get_dumbbell_intensity_difference, intensity difference between the two atoms in the dumbbell
These can be visualized using various plot functions. For dumbbell_distance:
For the dumbbell intensity difference:
© Copyright 2024, Magnus Nord.
访问原文 返回搜索 https://atomap.org/dumbbell_lattice.html
本页为82搜索生成的网页快照,内容来自站内索引;演示数据的原文链接仅作示例。