Showing posts with label stm. Show all posts
Showing posts with label stm. Show all posts

Thursday, July 17, 2014

Corrugation Comparison

Warning, these notes are still in development...

Quick Description: If we have two structures that we wish to compare, one method to use is to take a look at their corrugation. We can look both at the average height of each structure and how much that height varies (corrugation) for each structure. This gives us an idea of what they should appear as individually and relatively when we are using STM. Moreover, we can use the height information to set the tip-sample distances to be the same for between structures, comparing their STS measurements at various tip-sample distances. Keep in mind that an STS measurement at one height for one structure and at another height for the other structure is like "comparing apples and oranges" (as Prof. Bartels would say), so it's important to analyze in this manner that puts each structure in comparable states.

The Point: Comparing two structures using corrugation.

Prerequisites: Optimized jobs of each structures with WAVECAR files and completed STS calculations  generated for both.

Notes: Although I discuss several ways of obtaining a simulated STM image, in this section, I describe everything in terms of using Jon's code because it outputs the necessary values that I want.

  1. We want to use the same scale for each job. Using Jon's ExampleSTM code, we can generate a simulated STM image for one structure. For example, here I have an image of a 2H MoS2 structure on Cu(111). At a certain tip-sample distance, this will output three relevant values for you: scale, lowest point, and highest point. You can think of the difference between the latter two values as your image corrugation.
  2. Repeat the same process for your second structure, in my case 1T MoS2 on Cu(111). Using the same scale value you just acquired, use this value instead when running "DispSTM" on your second structure. (Both simulated STM images should be generated with the same scale value.) This will move the tip to a location where it experiences a similar current/charge value from your system.
  3. If you take the average of the corrugation values from each system, you can obtain the average height of each system using the following equation.
  4. So now you can compare the heights and corrugations of each system at different tip height settings. Additionally, you can compare the difference that this makes in STS measurements. With Jon's ExampleIV Code, we can set the z values ourselves. Disregarding the offset we use in the above equation, we set the z value to be the height of the tip in the STM simulation. This requires the following change in the code.
  5. Now you can form a table for comparing tip height vs. structure vs. STS (bandgap).
Optional: You may consider using a "more realistic" STM tip by applying median and Gaussian filters to the isosurface data. This involves delving into the molXML code and editing idxTable. Also, you may find that your corrugation and height values become weird at a certain distance away from the surface. I'm still trying to work out what this means, but according to Profesor Bartels, "maybe at the point of inflection (where the first deriv changes sign) we run out of the accuracy of our method".

Wednesday, June 25, 2014

STM Imaging Techniques

Quick Description: There are tons of places on the internet that you can go to in order to understand the principles under which STMs operate. However, achieving a good image can be a bit trickier and less ideal than these explanations. Over the past three years, I've worked with 5 different STMs in 2 different labs and have googled a lot in fits of desperation. I've never found really good documentation on this sort of stuff, so I thought I'd include it here, even if it is a bit tangential to other posts in the blog. 

The Point: Getting good STM images.

Prerequisites: A working STM and patience. (If I ever have time, I'd also like to write a post on debugging STM problems.)

Notes: Some techniques are system specific, but just in case it is useful to you, I'll include all the tips and tricks I've picked up over time here. Remember that each STM and sample are unique and require different parameters; at the end of the day, you probably will need to play with all the parameters and see what works for you.
  • Low voltage scanning:  A lower voltage brings the tip closer the sample, allowing the probe to more closely follow small features. This provides a higher resolution sample. BUT, you must be careful to have a clean and flat surface. In this mode, the tip is grazing the surface of the sample and can easily be damaged or pick up dirt.
  • Shaking the voltage/tip: Quickly pulsing the tip from high to low voltage and back literally shakes the tip and also changes its state dramatically. This can allow you to shake off dirt and/or unwanted instabilities at the tip's apex. You can manually change the voltage very fast, but some STMs have a software feature that will do this for you.
  • High voltage scanning (for moving molecules or for cleaning the tip): You may want to scan at higher voltages in two situations. One, if you want to clean your tip, you can sort of blast the tip (~10V) and sample with a high voltage over an area a few times before running away from this likely dirty location and reducing back down to a normal scanning voltage. Two, if you have a lot of molecules free flowing on your surface, your tunneling current and feedback loop can be disturbed but this "sea of molcules". Back your tip away with a high voltage and try using a large gain to distinguish the features of your surface.
  • Crashing the tip: This is a bit of a sketchy technique, but if used very carefully and in moderation, you can use this technique to brush off your tip, thereby sharpening and/or cleaning it. To do so, lower the tip until the tunneling current disappears and immediately retract away from the sample.
  • Scanning at the edges of your piezos: One trick that we find useful in our lab is to scan towards the limit of the x and y raster piezos. This often reduces noise (perhaps by stiffening the piezos a bit more).
  • Gain values: "Optimize the I-Gain and P-Gain values. These values control the feedback loop that adjusts the tip to maintain a constant tunneling current. Increasing these values will give a sharper image up to a point; increasing them too much leads to instability and a noisy image." - Cornell CNS's Intro to STM PDF
  • Scan speed: "When you are in a scan range and z range close to where you should see atoms, a good thing to do is speed up the time/line value to avoid these little temperature changes.  A suggested value is 0.06 s/line.  If you can't get this value, make sure you experiment by using one lower than the time/line value you previously were using for the larger scan range values." - Cornell CNS's Intro to STM PDF
  • Check for Noise: This may seem obvious, but still... check that you don't have any dangling wires (or any wires with tension on them), things in the surrounding area causing vibration, or the like. If your system uses any sort of spring or air flotation noise suppression, check that those are in place properly. And if other people, experiments, whatever are causing vibrations, try to figure out a way around having that interfere with your experiments. Try looking at the FFT of your current to see if there is a certain frequency contributing to your noisy images. This may clue you in to the source of the noise. Of course this can be filtered out later, but it's better not to have at all in the first place. 
    • 60 Hz is likely electrical noise, perhaps coming from a grounding issue
    • If you have a inner/outer cryostat cooling system, then it's possible that the inner cryostat (essentially a long thin tube) is misaligned and therefor crashing into the side of the outer cryo. This can be fixed by either rebalancing the table or adjusting the bellow top from which the inner cryo hangs.


Have any more tips and tricks? Please drop a comment! :)

Friday, September 20, 2013

Simulated STM


Quick Description of STM: Scanning Tunneling Microscopy (STM) functions via quantum tunneling. When two conductive materials are brought very close to each other (within a few angstroms), applying a bias voltage between the two materials will allow electrons to tunnel through the vacuum space between them. This flow of electrons is referred to as tunneling current and is dependent on three factors: the vacuum distance, the applied voltage, and the local density of states (LDOS). Because tunneling current exhibits an exponential relationship with distance, the tunneling signal is dominated by the current between the two closest atoms between the materials and thus exhibits atomic-scale resolution. For reduced noise, it is thus ideal to have an atomically sharped tip that scans of the sample of interest. Depending on the bias (positive or negative), electrons will either tunnel from sample to tip or from tip to sample. Functionally, a feedback system is used such that tip-sample distance (measured as height along the z-axis)is readjusted during scanning (a raster over x- and y- axes) of the sample to produce a constant current. In this manner, the topography of the sample is measured, thus enabling atomic-scale imaging of the sample.

The Point: Simulated STM creates an atomic scale image based off of computer-based model system. Generally, we can use simulated STM as a test device for evaluating the accuracy of the model. Should the model reproduce characteristic features displayed in experimental images, we are provided with some level of confirmation for the understanding of our sample system.

Prerequisites: An optimized model with a PARCHG file.

Notes: Traditionally, our lab uses much of the Mathematica code developed by Jon. We can also use VESTA to simply open the PARCHG file. Finally, there is also a nice program called HIVE that I link to at the end.

Mathematica:
  1. Use the function chgData = ReadPARGHG[<filepath>] to read out the charge values 
  2. Display the simulated STM with iso = DispIsoSurf[chgData, .1, SphereScale -> .2]
    • adjust parameters as necessary
  3. Use additional options to make the image more viewable. e.g...
    • maxCell = cell[[1]] + cell[[2]] + cell[[3]];
    • Show[ iso, PlotRange -> {{0, maxCell[[1]]}, {0, maxCell[[2]]},(*z-range:*){Surf[atoms] + .25, Surf[atoms] + 4}}, ImageSize -> 800 ]
VESTA (notes provided by Mark Micklich):
  1. Open CHGCAR
  2. Utilities > 2D Data Display
  3. Press the "Slice" button and confirm "OK"
HIVE and HIVE tutorial (email Danny Vanpoucke for the program and manual):
"The HIVE-STM program is a small piece of software ...to generate STM images based on ... DFT-calculations. Starting from ab-initio VASP calculations, it uses the resulting output to allow the simulation of an STM experiment on your simulated model."


Tips and Tricks: Calculations find that the STM tip must preferably lie ~0.92-2 A away from the surface to image small features such as point defects. According to my random survey of scientists, it's normally about 4-7 A away from the surface where you get the best visualization. And in a scrap on information (from HIVE developer Danny Vanpoucke), you generally want the tip to stay within 15 A of the system. For more information on scanning conditions, you might check out here.