Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding example spectra #146

Closed
magnunor opened this issue Jan 29, 2014 · 18 comments
Closed

Adding example spectra #146

magnunor opened this issue Jan 29, 2014 · 18 comments

Comments

@magnunor
Copy link
Contributor

As mentioned in #138 , we should probably have some example EELS and EDX spectra for the user guides and for examples.

I can probably "donate" some SrTiO3 EELS and EDX spectra. Where should we place them, and what format should we use?

@pburdet
Copy link
Contributor

pburdet commented Jan 29, 2014

Totally agree, I can provide some SEM EDX spectra (pure elements and compounds). But they shouldn't be used for a quantification purpose. We don't need many for each techniques.

Should we stored them with their native format (.msa in my case)? They could be used to show user that hyperspy easily deal with constructor format.

It would be convenient to have shortcut such as

s = utils.database.EDSSEMSpectrum.NiTi

To be quicker than

s = signals.EDSSEMSpectrum(np.random.random(1024))

@francisco-dlp
Copy link
Member

We all agree that this is badly needed. However, in the case of EELS single
spectra, I suggest to wait for integration with the EELSdb--Luc, Gäel, any
further thoughts on this?

The EELSdb only accepts single spectra so far, so it would be a good idea
to distribute a line spectrum or even a spectrum image with HyperSpy to
demo the BSS and curve fitting routines. Magnus, can you provide such a
dataset with both core-loss and low-loss spectra acquired from the very
same area and with the correct convergence and collection angle
information? If your EDX spectra were also simultaneously acquired that
would be still better.

It probably does not make sense to create a database of EDX spectra , isn't
it? What about a function that generates EDX spectra consisting of peaks
and maybe a possibly-not-very-realistic-background?

As in the case of EELS, an experimental SEM EDX line spectrum or spectrum
image would be desirable too of course. Pierre, could you donate one, if
possible with its corresponding SEE image?

As for the syntax I suggest the following:

s_eels = datasets.tem_eels.get_exp_SrTiO3_CL_SI()
s_eelsdb = datasets.tem_eels.get_from_eelsdb("Ti") # This should

retrieve a list of all spectra of samples containing titanium.
s_tem_edx = datasets.tem_edx.get_exp_SrTiO3_CL_SI()
s_sem_edx = datasets.sem_edx.get_exp_SrTiO3_CL_SI()

# Single spectrum EDX fake simulation
s_edx = datasets.sem_edx.get_simulated_spectra([("Sr", 1), ("Ti", 1),

("O", 3)])
# SI EDX fake simulation
s_edx_SI = datasets.sem_edx.get_simulated_spectra([("Sr",
strontium_image),

    ("Ti", titanium_image),

    ("O", oxygen_image)])

What to you think?

Francisco

On 29 January 2014 12:36, pburdet notifications@github.com wrote:

Totally agree, I can provide some SEM EDX spectra (pure elements and
compounds). But they shouldn't be used for a quantification purpose. We
don't need many for each techniques.

Should we stored them with their native format (.msa in my case)? They
could be used to show user that hyperspy easily deal with constructor
format.

It would be convenient to have shortcut such as

s = utils.database.EDSSEMSpectrum.NiTi

To be quicker than

s = signals.EDSSEMSpectrum(np.random.random(1024))

--
Reply to this email directly or view it on GitHubhttps://github.com//issues/146#issuecomment-33580675
.

@pburdet
Copy link
Contributor

pburdet commented Jan 30, 2014

I can implement this rough simulation (it is called 'analytical model' in DTSA-II). This would be a nice options. We just need to make sure the user don't think it is a monte carlo simulation. But I keep thinking that a few experimental spectra would be nice (not a database). I can provide EDS maps of published result.

Pierre

Pierre

@francisco-dlp
Copy link
Member

Great! What do you think about the syntax?

Francisco

On 30 January 2014 17:06, pburdet notifications@github.com wrote:

I can implement this rough simulation (it is called 'analytical model' in
DTSA-II). This would be a nice options. We just need to make sure the user
don't think it is a monte carlo simulation. But I keep thinking that a few
experimental spectra would be nice (not a database). I can provide EDS maps
of published result.

Pierre

Pierre

Reply to this email directly or view it on GitHubhttps://github.com//issues/146#issuecomment-33708705
.

@magnunor
Copy link
Contributor Author

I can get simultaneously acquired low loss EELS, core loss EELS, EDX and ADF-STEM of SrTiO3 (or any other materials I happen to be working on).

Magnus

@francisco-dlp
Copy link
Member

That sounds great. Can you release one of your datasets under
CC0http://creativecommons.org/publicdomain/zero/1.0/ for
distribution with HyperSpy? Have you attempted absolute quantification on
them?

Francisco

On 31 January 2014 09:35, magnunor notifications@github.com wrote:

I can get simultaneously acquired low loss EELS, core loss EELS, EDX and
ADF-STEM of SrTiO3 (or any other materials I happen to be working on).

Magnus

Reply to this email directly or view it on GitHubhttps://github.com//issues/146#issuecomment-33772317
.

@pburdet
Copy link
Contributor

pburdet commented Jan 31, 2014

Sounds good.

"Nomencalture-wise" is datasets the best name? Will it be a database as well with EELS_db? Should we make a difference?

More specifically.

  • I prefer get_analytical_modeled_spectrum instead of get_simulated_spectra
  • get_analytical_modeled_spectrum(['Sr','Ti','O'],weight_percent=[30,30,40])

Pierre

@francisco-dlp
Copy link
Member

I think that "datasets" is more explicit than "database" that seems to have
a more general meaning.

What about get_analytical_model instead of
get_analytical_modeled_spectrum?

Francisco

On 31 January 2014 09:48, pburdet notifications@github.com wrote:

Sounds good.

"Nomencalture-wise" is datasets the best name? Will it be a database as
well with EELS_db? Should we make a difference?

More specifically.

  • I prefer get_analytical_modeled_spectrum instead of
    get_simulated_spectra

    get_analytical_modeled_spectrum(['Sr','Ti','O'],weight_percent=[30,30,40])

Pierre

Reply to this email directly or view it on GitHubhttps://github.com//issues/146#issuecomment-33773093
.

@magnunor
Copy link
Contributor Author

Francisco: I haven't acquired the datasets yet, will probably do it during next week.

@magnunor
Copy link
Contributor Author

magnunor commented Feb 7, 2014

I have the spectra now: LAADF, HAADF, core loss EELS, low loss EELS and EDX of SrTiO3. Both line scan and map.

Unfortunately I don't have collection or convergence angles. The instrument got installed quite recently, and we haven't had time to find those yet. I'll (hopefully) get some instrument time next week to calculate them.

@magnunor
Copy link
Contributor Author

I put the example spectra in example/example_spectra in https://github.com/magnunor/hyperspy/tree/example_spectra , magnunor@7984c04

Is that an appropriate place to put them?

I'll try to implement the syntax proposed earlier, so one can call them directly in Hyperspy:
s_eels = datasets.tem_eels.get_exp_SrTiO3_CL_SI()

How do I do the license part? A separate file in the folder? Or somewhere else?

@francisco-dlp
Copy link
Member

Magnus,

We still have to discuss how to better distribute experimental data
HyperSpy. My current preference is to use Datahub or something similar for
storage and provide a nice interface to interact with it.

This week we will definitely release HyperSpy 0.7 and therefore we should
concentrate our efforts in polishing the documentation and fixing remaining
bugs and regressions. Therefore, this feature won't make it into the next
release...

On 17 February 2014 15:44, magnunor notifications@github.com wrote:

I put the example spectra in example/example_spectra in
https://github.com/magnunor/hyperspy/tree/example_spectra , magnunor@
7984c04magnunor@7984c04

Is that an appropriate place to put them?

I'll try to implement the syntax proposed earlier, so one can call them
directly in Hyperspy:
s_eels = datasets.tem_eels.get_exp_SrTiO3_CL_SI()

How do I do the license part? A separate file in the folder? Or somewhere
else?

Reply to this email directly or view it on GitHubhttps://github.com//issues/146#issuecomment-35294670
.

@magnunor
Copy link
Contributor Author

Ok, sounds good.

I'll put this on hold until we've figured out how to distribute stuff.

@francisco-dlp francisco-dlp added this to the 0.8 milestone Apr 1, 2014
@magnunor
Copy link
Contributor Author

Any update on this? Would be nice to have some example spectra for the user guide.

@francisco-dlp
Copy link
Member

I have no news from Luc regarding the EELSdb API. I am not sure if he reads
the comments on this issue, but he does read the hyperspy-users mailing
list so it might be worth asking there.

On 11 June 2014 10:37, magnunor notifications@github.com wrote:

Any update on this? Would be nice to have some example spectra for the
user guide.


Reply to this email directly or view it on GitHub
#146 (comment).

@francisco-dlp
Copy link
Member

We have just added a new repository to the Hyperspy organization,
hyperspy-demos https://github.com/hyperspy/hyperspy-demos, to provide
demos using the ipython notebook. Pierre has added the first demo that
requieres some extra files that he stores in our lab server. Until there is
a better way to distribute data, this is a good temporary solution for the
demos, although I don't think that it'll be a good idea to use the same
approach for the Use Guide.

2014-06-11 10:54 GMT+01:00 Francisco de la Peña frandelapena@gmail.com:

I have no news from Luc regarding the EELSdb API. I am not sure if he
reads the comments on this issue, but he does read the hyperspy-users
mailing list so it might be worth asking there.

On 11 June 2014 10:37, magnunor notifications@github.com wrote:

Any update on this? Would be nice to have some example spectra for the
user guide.


Reply to this email directly or view it on GitHub
#146 (comment).

@magnunor
Copy link
Contributor Author

With the implementation fetching single EEL spectra from EELS DB, I'm guessing this has been partly resolved. But as far as I know, it is only possible to upload single spectrum to EELS DB (ergo no line scans are maps).

It would be useful to have easy access to these things directly in HyperSpy.

@ericpre
Copy link
Member

ericpre commented Apr 28, 2018

Artificial data such as EELS linescan has been implemented in #1789.

@ericpre ericpre closed this as completed Apr 28, 2018
@ericpre ericpre removed this from the Wish list milestone Apr 28, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants