Probe Software Users Forum

General EPMA => General EDS Issues => Topic started by: Farqhuit on July 16, 2018, 06:48:00 AM

Title: Missing peaks from thin film
Post by: Farqhuit on July 16, 2018, 06:48:00 AM
We were having trouble identifying features on a sample, including various thin film coatings, so as a last resort we ran EDS mapping to help us get oriented, but suspecting that there would be very little signal from the thin films. We assigned some low energy peaks to Ir, even though some higher energy peaks were absent, as we knew Ir was present as a thin film and no other element matched the energy more closely. We were pleasantly surprised that Ir was accurately mapped (see image). Comparing the peaks we measured to the peaks predicted by Inca (attached), the L peaks up around 10 keV are barely present, and the M peaks down around 2 keV are in the wrong proportions relative to each other. Analysis performed at 12 kV.

The thin iridium film (light area) in the map image, has a thin silver underlayer and both are on a silica substrate. Thicknesses to be determined, probably around 500 nm for the Ir, and much thinner for the silver.

We suspect that the 12 kV beam passed right through the Ir/Ag generating very little signal, and that 1.7 keV X-rays from the Si beneath have excited a fluorescence in the Ir giving a strong Ir peak at around 1.55 keV. All other Ir peaks are from a weak interaction with the electron beam. Does this sound plausible? If not, we'd love to hear what you think is going on. I guess it might be useful to run at 3 kV and see if the relative size of the M peaks changes. Angling the sample might also have an effect.

Disclaimer: our EDS system requires calibration as discussed elsewhere on the forum, but can be persuaded to produce spectra and maps.

Thanks for reading, we look forward to any comments.
Title: Re: Missing peaks from thin film
Post by: JonF on July 16, 2018, 10:05:28 AM
Hi Farqhuit,

  I just ran a quick Casino simulation on your case, using a variety of kV and a sequence of 500nm Ir on top of 100nm Ag and then a Si substrate.
According to my simulation (using a suggested Ir density of 22.5 g/cc), the electron beam will actually struggle to get through the Ir at all.

You're seeing a strong Ir M emission. The Ir L emission will be very low intensity due to the low overvoltage being used (Casino suggests the simulated emission depth for Ir L is <50nm) - meaning the electron beam isn't hitting enough Ir atoms before the electron beam has decelerated below the energy it would need to knock out Ir L shell electrons.

The 'ratio' of Ir M lines you're seeing actually looks to me more like an overlap of the Ir M and Si K emission lines. This is slightly puzzling as we shouldn't really be seeing the Si K underneath the Ir and Ag layers, which makes me wonder if the spectrum in your post is actually a sum spectrum of the map you also show, in which case it is seeing the right-hand side Si layer. You mention it is an INCA simulation - I dont have an Oxford instruments EDS but would be interested to hear what settings you put in to simulate that spectra? Does INCA simulate layers? You might be better off using NIST DTSA-II for that?

Rather than dropping the kV, I'd look at increasing it - you're not going to generate layer thicknesses if the electron beam never gets to the other side! Increasing the kV will also increase the likelihood of seeing the Ir L lines, and breaking down in to the Si layer (a small Ag signal may also be visible).
Title: Re: Missing peaks from thin film
Post by: Probeman on July 16, 2018, 10:10:18 AM
Hi Jonathan,
You beat me to it!     :)

Just for kicks you might want to post your simulated spectrum.  I think you are probably right about the Ir M and Si K lines overlapping each other.  And maybe also try a calculation at an even lower voltage to see if the possible Si Ka emission line disappears.
john
Title: Re: Missing peaks from thin film
Post by: jrminter on July 16, 2018, 10:46:59 AM
I know you have had trouble with this system. I have some suggestions that may give you more capabilities until you can get these resolved. This is complementary to the suggestion to use Casino. Casino will let you model. DTSA will let you calibrate and model. If you want to use DTSA to model, let me know because I can supply some scripts. I would at least learn to use DTSA to calibrate your spectra as explained below.

1. Download and install DTSA on your PC (https://www.cstl.nist.gov/div837/837.02/epq/dtsa2/index.html (https://www.cstl.nist.gov/div837/837.02/epq/dtsa2/index.html)). Create a DTSA detector configuration that matches the parameters of your detector. Eventually you will want versions that match the time constants and other detector parameters for all the configurations you use.

2. Run a high count spectrum of a piece of Cu at an accelerating voltage that gives you decent counts in both the Cu K and L lines. Export this spectrum and the spectra from your thin film sample taken with the same detector parameters as .msa files. The Inca software can do this. Use the Cu spectrum to calibrate your "DTSA detector configuration" using the built-in "Calibration Alien". You could also track the stability of your energy calibration using the DTSA "Quality Control Alien".

3. Then you can use this "calibrated" detector to assign your peak IDs.



Title: Re: Missing peaks from thin film
Post by: jrminter on July 16, 2018, 04:25:24 PM
I had some time to run some Monte Carlo simulations on Farqhuit's system. I agree with JonF that 500 nm of Ir is hardly "thin". I used DTSA-II Kelvin to do the simulations. Farqhuit described the substrate as "silica". So following JonF, I simulated the following systems at 30 kV: 100 nm Ir and 50 nm Ag, 200 nm Ir 100 nm Ag, 400 nm Ir 200 nm Ag, and  500 nm Ir 200 nm Ag on SiO2. I am attaching a png of the results.

I used a Python (Jython) script that runs with "out of the box" DTSA-II Kelvin. I am attaching the script. You can download that from the DTSA-II website. A couple of notes of caution:

1. Python/Jython uses indentation to signify different levels. Spaces are the default (Pep8). Do not mix tabs and spaces. It will not end well.

2. I modeled the system using a detector configuration file from my FEI Sirion FEG SEM with an Oxford 80 sq. mm. SDD. I really miss having daily access to that system now that I am retired. I included an option to use the "Si(Li)" detector that DTSA-II comes with. Ideally you will configure a customized detector for your system.

3. Depending on the thickness of the layers, 10000 trajectories took between 10 and 18 minutes on my late 2013 MacBook Pro with a SSD.

I don't think a top-down analysis of this system is the right approach. I think it is a case that when you have a hammer, everything looks like a nail. X-ray absorption by Ir and Ag will be a big issue. I spent a lot of time analyzing multi-layer metallic electroplated lines and multi-layered Al printing plates. We had great success by cutting reasonably thick sections (2 micron) Focused Ion Beam lift-out sections. We would mount
these on highly polished carbon planchettes. We put down a very thin rubber cement layer from toluene to get the section to stick to the planchette. We would lightly C coat the specimen and analyze at low voltage.

I would note that all the elements we need to see have transitions below 3 kV. If we analyze the section at 7 kV, all the transitions are well excited. I was able to get very nice maps using this procedure from our Oxford system with the drift correction. My clients were quite pleased with these results.
Title: Re: Missing peaks from thin film
Post by: Farqhuit on July 17, 2018, 04:25:27 AM
Thank you all for the detailed responses.

JonF, you are correct, the yellow spectrum is a sum spectrum from the map. I did try to upload the same spectrum without the simulated lines, and also a log scale version, but it doesn't seem to have selected properly. I will try again with this post. I didn't even think to simulate with Casino, I am so used to seeing several microns of penetration even at limited kV, but then I am thinking of much lighter metals (Al etc.).  The INCA simulation was not fed any parameters at all by me, other than what is built in. I am afraid you are crediting me with more sophistication than is justified! There is a feature in INCA that suggests elements when you click on a peak in the spectrum. Selecting an element from the list of suggestions overlays the purple and green lines onto the spectrum. I would think the default settings are assuming a smooth, polished sample and certainly not thin films and layers. i am still finding my way with the technique and the software, with very limited documentation (and limited brains). Between us, we assigned the small peak between the two main Ir M lines as the Si K line. The Ir peak suggested by INCA that coincides with this is one of the smaller ones. It turns out the substrate is coated with an (unspecified) alloy (it is a crystal from a thin film monitor head), so the Si signal looks very similar either side of the edge of the Ir. I will bear in mind that penetration of the beam in Ir is far lower than I assumed, but I also may have overestimated the Ir thickness, less than 100 nm now looks more likely. Interesting point about the shallow L depth and the low overvoltage - noted, thank you.

Probeman, as above, the only simulation I have is the INCA stock one. I am unsure if INCA varies this spectrum to match the microscope settings at the time. I suspect not.

Jrminter, your suggestions regarding DTSA are gratefully received. It looks slightly daunting, but I will give it a go. Previous discussions have highlighted the need for an Oxford engineer to calibrate the system, but this is not going to happen any time soon due to shortage of cash. It would be handy if I could generate what I need to feed back into INCA to stop all the error messages and enable some more peak ID functionality, but I am not sure if DTSA will help me in this. I must pluck up the nerve to hit the calibrate button on INCA and see what it asks for. Your simulations are interesting. Even with very thin layers, the 2 keV Ir peak is a fair bit larger than the 1.5 keV one, whereas my 1.5 keV dominates. Maybe there is some coincident peak contributing. Thanks for the script, I'll try to pick it apart and identify the bits I need to adjust and give it a whirl - my Python knowledge is very thin. Your point about hammer and nails is very true ("Can't you just stick it in the SEM?").

I take from this lots of extra ideas that I an call on when interpreting what we see. I'll be less inclined to make assumptions about beam penetration, and will make more use of the simulation tools (I'd forgotten that Casino gives the M and L depths). If we get any more results that are relevant to the discussion I'll post them here.

Thank you again for your responses, they are much appreciated. I really don't mind admitting that the extent to which I know what I'm talking about is limited. It's great that you are willing to engage anyway.

Title: Re: Missing peaks from thin film
Post by: Farqhuit on July 17, 2018, 04:32:03 AM
Missing spectra from original post.
Title: Re: Missing peaks from thin film
Post by: Probeman on July 17, 2018, 07:34:46 AM
Quote from: Farqhuit on July 17, 2018, 04:25:27 AM
Probeman, as above, the only simulation I have is the INCA stock one. I am unsure if INCA varies this spectrum to match the microscope settings at the time. I suspect not.

You can download CalcZAF for free from here:

http://probesoftware.com/download/CalcZAF.msi

It automatically installs CalcZAF, Standard and the complete Penepma apps for Monte Carlo simulations of bulk samples, thin films and couples. Here is a short explanation for simulating thin films in Penepma using the GUI in Standard.exe:

http://smf.probesoftware.com/index.php?topic=57.0
Title: Re: Missing peaks from thin film
Post by: Farqhuit on July 17, 2018, 08:53:09 AM
Thanks Probeman,

Under the Analytical menu in Standard, the lower three entries including PENEPMA are greyed out. Is there another way of accessing the PENEPMA GUI?

Cheers,

Dave
Title: Re: Missing peaks from thin film
Post by: Probeman on July 17, 2018, 08:56:22 AM
Quote from: Farqhuit on July 17, 2018, 08:53:09 AM
Thanks Probeman,

Under the Analytical menu in Standard, the lower three entries including PENEPMA are greyed out. Is there another way of accessing the PENEPMA GUI?

Hi Dave,
Simply open any standard database using the File | Open menu. Penepma needs compositions to calculate spectra...

You can use the default standard database (standard.mdb) or a standard database of your own devising.
john
Title: Trilayer simulation with Penepma from CalcZAF
Post by: jrminter on July 18, 2018, 11:21:57 AM
Probeman, your suggestion to try this with CalcZAF intrigued me.  Farhuit's example was really a tri-layer system with Ir on Ag on silica. As I read the examples on the penepma part of the forum I saw your edits to do a trilayer system from a bilayer simulation where one layer was air. I tried to adapt your method with the input file attached below (Ir-250-on-Ag-150-on-Silica.in). I used standard pure elements from the standards database for Ir and Ag and a SiO2 standard. I renamed the mat files to "Ir.mat", "Ag.mat", and "SiO2.mat" because it made the simulation a bit more readable. I created a trilayer.geo file (tl_250_150nm.geo) based on your example (attached below). I ran the simulation for an hour. I have done this before on bilayers and the noise wasn't as bad (see the png). I thought this capability would complement the simuations I do with DTSA for EDS...

I'd appreciate it if you would take a look at my edits to the '.in' and '.geo' files to see if anything strikes you as wrong. Thought another pair of eyes would be helpful before I set up a 24 hour run to see if the problems is too few counts...

Thanks for all your work on this...

Best regards,
John
Title: Re: Missing peaks from thin film
Post by: jon_wade on July 19, 2018, 07:12:38 AM
heres your geometry file at 20kV. 
If I could get fortran to work again (bloody anaconda!) I'd turn it into something that looks like an EDS spectrum, but the lines are right.


a few things about the .in file - I haven't bothered to check, but the initial values for WCC and WCR seem a bit odd ( I set them to 1e3 for the sake of speed).  This was run on Penpema 2015

and the mean take off angle for your eds detector - is it 35 degrees? not that its critical here....

I'll run it again at 12 and quant the lot if you want. 
Title: Re: Missing peaks from thin film
Post by: jrminter on July 19, 2018, 08:33:59 AM
Thank you, Jon Wade. I'd like to get this running under penepma12 (that comes with CalcZAF). Would you please attach your editied copies of the .in and .geom file. I made what I thought were the corrections you suggested and penepma12 crashed complaining about my Ir.mat file that penepma12 generated. Once I get something that works I can tweak it.  I have written R code that converts the penepma spectra to .msa format that I can compare to results from DTSA-II.
Title: Re: Missing peaks from thin film
Post by: jon_wade on July 19, 2018, 09:09:42 AM
Hi John

Your .geo file looked ok, the .in file I used is attached.  I use the standalone version of Penepma, partly as I run it on a old mac pro, but partly as I find it gives more flexibility.  You may need to edit this - REFLIN may not be supported in the 2012 version and I don't recall how John's version supports multiple detectors.  As you probably know, you can make this run a lot faster if you're only interested in the higher energy lines

I'm running a bunch of sims now at 12 and 15 kV and I'll quant them tomorrow (assuming I remember ).
Title: Re: Missing peaks from thin film
Post by: jrminter on July 19, 2018, 10:53:54 AM
Thanks for your help, Jon. I found and fixed my error. I the fixed version running now. Intermediate results look as expected (I have an R function that plots the intermediate spectra when i want.) At some point I would like to script the quantification. I'll have to figure out from which files to extract the results...

Best regards,
John Minter
Title: Re: Missing peaks from thin film
Post by: jon_wade on July 19, 2018, 11:04:25 AM
Hi John

The output files 'pe-spect-x.dat' files contain the full spectra data (i.e. lines plus background, plotted here) and the 'pe-intens-x.dat' files contain the characteristic lines and how they are generated.

Blasphemy I know, but the full version of Penepma is worth a look if you're scripting it.  It also has a fair few things to help refine the simulation and speed it up.  I've done similar to you in python and bash scripts for extracting the data (I think I posted one here once upon a time) but I'd be interested in seeing your R versions (I'm tossing up wether to invest a bit of time learning R)

Do you use DTSA for quanting the data ?
all the best

Jon
Title: Re: Missing peaks from thin film
Post by: jrminter on July 22, 2018, 02:22:15 PM
Thanks for the additional information. I'm still refining my simulations and want to get to quantification. I'd like to get the full version of penepma2014. I have a working version of penepma2012 from CalcZaf that I have been using. I got the source code for penelope2014 and built most of it. It doesn't have the penepma code. I emailed Xavier Llovet with a request for the 2014 penepma code... I've been going through the geom files and trying to get format straight. Some of the headers don't match with the Z_SHIFT values... The docs say this is supposed to be in cm and the ZSHIFT values are cumulative sums. One of the functions I wrote was to take a list of layer thickenesses and convert it to the right format for Z_SHIFT. The format is not "DRY" - it is easy to get inconsistent values...

My R package is a work-in-progress. I host it on github here: https://github.com/jrminter/rpemepma (https://github.com/jrminter/rpemepma). I'll add capabilites to it as I progress. I really like the combination of R/RStudio/github. RStudio is a great IDE and lets one work with RMarkdown for documentation. Rmarkdown also can include code-chunks in bash, python, and R if need be. I can use LaTeX math if need be but markdown is a pretty easy format to work in. This afternoon I am running some simulations with my corrected input files. The results I'm getting now make more sense to me and look like what DTSA-II reports for the "emitted spectrum". I'll attach some when the simulations finish...

Best regards,
John
Title: Re: Missing peaks from thin film
Post by: Probeman on July 22, 2018, 02:48:36 PM
Attached below are Penelope-2016 and Penepma-2016.

I cannot promise that they will work with CalcZAF/Standard as Salvat and Llovet sometimes change the input/outfile file formats without warning, and are often not backward compatible with older version of Penelope/Penepma...  but 2016 does fix some problems with boron and lighter element emissions.
Title: Re: Missing peaks from thin film
Post by: jrminter on July 22, 2018, 03:31:00 PM
Greatly appreciated, Probeman!
Title: penepma 16 woes...
Post by: jrminter on July 22, 2018, 06:48:08 PM
Probeman, I got everything to compile on penelope16 and penepma16 but I am ripping my hair out over an error I get when I run penepma16 and I can't find the problem.

The error writes to the screen and is recorded in the penepma.dat file: No problems with the mat files as far as I can tell...
(I generated them with material.exe from penelope16...)
The program complains that I did not declare photon detectors... The program didn't read NBE...

  ------------------------------------------------------------------------
  >>>>>>  Energy and angular distributions of emerging particles.
  E:       NBE = ***,  EMIN = 1.000000E+01 eV,  EMAX = 3.000000E+04 eV
  Theta:  NBTH =  90 (linear scale)
  Phi:    NBPH =   1
No photon detectors were defined.
You must define at least one photon detector.

I tried several permutations. I can't find any way for it to read the NBE. Hopefully another pair of eyes will help... Hope you see something I missed... Thanks for the help...
Title: Re: Missing peaks from thin film
Post by: Probeman on July 22, 2018, 10:08:11 PM
Hi John,
Sorry to hear that.  I haven't had a chance to try Penepma-2016 myself, so I can't really help.  Maybe Jon Wade or Ben Buse have used it?   It's on my "to-do" list but just haven't gotten around to looking at it in any detail.

Otherwise you'd be best off contacting Xavier directly.
john
Title: Re: Missing peaks from thin film
Post by: Ben Buse on July 22, 2018, 11:18:21 PM
Hi John,

Just looking quickly it seems you've got an extra '.' between photon detectors and their definition

>>>>>>>> Photon detectors (up to 25 different detectors).
                IPSF=0, do not create a phase-space file.
                IPSF=1, creates a phase-space file.
       .
PDANGL 50.0 60.0 0.0 360.0 0             [Angular window, in deg, IPSF]


Also I not sure but should

NBTH   45                     [No. of bins for the polar angle THETA]
NBPH   30                   [No. of bins for the azimuthal angle PHI]


be

NBANGL 45 30              [Nos. of bins for the angles THETA and PHI]

Maybe it doesn't matter, or I've got the versions wrong

Also are you aware that the good thing is you can now stop penepma simulations when the required error is reached using:

REFLIN 50040900 1 1E-2           [IZ*1e6+S1*1e4+S2*1e2,detector,tol.]

in job properties
Title: Re: Missing peaks from thin film
Post by: jon_wade on July 23, 2018, 05:02:24 AM
what ben says.

if you open up the uncompiled .f version the comments have  a good explanation of what the .in file should be, as well as the various options.
The big change with this version appears to be the ability to map the origin of x-rays received by the detector.

( I dunno if this has changed, but years ago, when I was working somewhere that really cared about such things, we had to get the uncompiled version of PENELOPE thru the NEA.
There was some reason for this, I cant remember what, but I can speculate)

https://www.oecd-nea.org/tools/abstract/detail/nea-1525

Title: Re: Missing peaks from thin film
Post by: jrminter on July 23, 2018, 05:32:47 AM
Thank you, Ben and Jon!!! The extra dot was not the problem. I made the other edits and it is running now. Attaching the final version for others who struggle...

I thought I should add that I compiled this on a Windows 7 x64 box. I am a R user so I have the Rtools application installed that supplies the Fortran compilers I need. I wrote a compile.cmd file that I stored in my ./work/compile folder. I commented out (using REM) the parts I wasn't compiling on each run and hard-coded the path to the 64 bit compiler. I am attaching the file in case it helps some who follows...