Note
Go to the end to download the full example code.
EELS curve fitting#
Performs curve fitting to an EELS spectrum, plots the result and saves it as png file.

0%| | 0.00/42.3M [00:00<?, ?B/s]
0%| | 12.3k/42.3M [00:00<06:11, 114kB/s]
0%| | 48.1k/42.3M [00:00<03:00, 234kB/s]
0%| | 106k/42.3M [00:00<01:56, 362kB/s]
1%|▏ | 251k/42.3M [00:00<00:58, 719kB/s]
1%|▍ | 520k/42.3M [00:00<00:31, 1.31MB/s]
3%|▉ | 1.06M/42.3M [00:00<00:16, 2.47MB/s]
5%|█▉ | 2.16M/42.3M [00:00<00:08, 4.79MB/s]
10%|███▊ | 4.35M/42.3M [00:00<00:04, 9.36MB/s]
17%|██████▍ | 7.32M/42.3M [00:01<00:02, 14.6MB/s]
23%|████████▋ | 9.87M/42.3M [00:01<00:01, 16.9MB/s]
31%|███████████▌ | 13.1M/42.3M [00:01<00:01, 20.5MB/s]
39%|██████████████▎ | 16.4M/42.3M [00:01<00:01, 22.8MB/s]
47%|█████████████████▏ | 19.7M/42.3M [00:01<00:00, 24.6MB/s]
55%|████████████████████▎ | 23.3M/42.3M [00:01<00:00, 26.6MB/s]
63%|███████████████████████▍ | 26.7M/42.3M [00:01<00:00, 27.7MB/s]
70%|██████████████████████████ | 29.7M/42.3M [00:01<00:00, 27.2MB/s]
78%|████████████████████████████▋ | 32.8M/42.3M [00:01<00:00, 27.2MB/s]
85%|███████████████████████████████▍ | 36.0M/42.3M [00:02<00:00, 27.3MB/s]
94%|██████████████████████████████████▋ | 39.6M/42.3M [00:02<00:00, 28.4MB/s]
0%| | 0.00/42.3M [00:00<?, ?B/s]
100%|██████████████████████████████████████| 42.3M/42.3M [00:00<00:00, 214GB/s]
0%| | 0.00/66.1M [00:00<?, ?B/s]
0%| | 14.3k/66.1M [00:00<08:22, 131kB/s]
0%| | 41.0k/66.1M [00:00<05:53, 187kB/s]
0%| | 115k/66.1M [00:00<02:47, 394kB/s]
0%|▏ | 250k/66.1M [00:00<01:32, 714kB/s]
1%|▎ | 511k/66.1M [00:00<00:51, 1.28MB/s]
2%|▌ | 1.07M/66.1M [00:00<00:26, 2.50MB/s]
3%|█▏ | 2.16M/66.1M [00:00<00:13, 4.81MB/s]
7%|██▍ | 4.35M/66.1M [00:00<00:06, 9.36MB/s]
11%|████ | 7.30M/66.1M [00:01<00:04, 14.4MB/s]
16%|█████▊ | 10.4M/66.1M [00:01<00:03, 18.3MB/s]
21%|███████▌ | 13.6M/66.1M [00:01<00:02, 21.1MB/s]
25%|█████████▏ | 16.4M/66.1M [00:01<00:02, 22.0MB/s]
30%|███████████ | 19.7M/66.1M [00:01<00:01, 23.9MB/s]
34%|████████████▋ | 22.6M/66.1M [00:01<00:01, 24.4MB/s]
39%|██████████████▌ | 26.0M/66.1M [00:01<00:01, 25.7MB/s]
44%|████████████████▏ | 28.9M/66.1M [00:01<00:01, 25.4MB/s]
50%|██████████████████▎ | 32.8M/66.1M [00:01<00:01, 28.0MB/s]
56%|████████████████████▌ | 36.8M/66.1M [00:02<00:00, 30.0MB/s]
60%|██████████████████████▎ | 39.8M/66.1M [00:02<00:00, 28.9MB/s]
65%|███████████████████████▉ | 42.7M/66.1M [00:02<00:00, 27.5MB/s]
69%|█████████████████████████▋ | 45.9M/66.1M [00:02<00:00, 27.8MB/s]
74%|███████████████████████████▎ | 48.8M/66.1M [00:02<00:00, 26.9MB/s]
79%|█████████████████████████████▎ | 52.4M/66.1M [00:02<00:00, 28.3MB/s]
84%|███████████████████████████████▏ | 55.6M/66.1M [00:02<00:00, 28.2MB/s]
88%|████████████████████████████████▋ | 58.5M/66.1M [00:02<00:00, 25.3MB/s]
92%|██████████████████████████████████▏ | 61.0M/66.1M [00:03<00:00, 25.1MB/s]
96%|███████████████████████████████████▌ | 63.6M/66.1M [00:03<00:00, 24.7MB/s]
0%| | 0.00/66.1M [00:00<?, ?B/s]
100%|██████████████████████████████████████| 66.1M/66.1M [00:00<00:00, 364GB/s]
import hyperspy.api as hs
s = hs.load("coreloss_spectrum.msa", signal_type="EELS")
low_loss = hs.load("lowloss_spectrum.msa", signal_type="EELS")
s.add_elements(("Mn", "O"))
s.set_microscope_parameters(
beam_energy=300, convergence_angle=24.6, collection_angle=13.6
)
m = s.create_model(low_loss=low_loss)
m.enable_fine_structure()
m.multifit(kind="smart")
m.plot()
# one can also use the Dirac GOS by specifying the GOS parameter
m = s.create_model(low_loss=low_loss, GOS="dirac")
m.enable_fine_structure()
m.multifit(kind="smart")
m.plot()
Total running time of the script: (0 minutes 14.674 seconds)