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

Comments on NXluminescence.yaml #36

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 17 additions & 1 deletion optical_spectroscopy/luminescence/NXluminescence.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -155,19 +155,23 @@ symbols:
luminescence_type:
enumeration: [photoluminescence, cathodoluminescence, electroluminescence,
x-rays, sonoluminescence, chemiluminescence, bioluminescence]
# 'x-ray fluorescence' instead of 'x-rays'?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would say that X-ray fluorescence is just a particular case of photoluminescence or is there a good reason to separate those two?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, the excitation sources will be quite different (and photoluminescence is usually associated with laser/lamp exciation), so a disambiguation would make sense I guess.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And in X-ray you may have energy resolved detectors without spectrograph/monochromator elements.


excitation(NXsubentry):
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NXsubentry doesn't make so much sense here. It is intended to include an appdef inside the experiment to support multiple experiments carried out at the same time at e.g. the same beam line. It also has to have a definition as a mandatory field which is not given here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, it is descriptive in its name... or we can have NXobject? It is a group of parameters which do not belong to a single base class.

doc: "Properties of the excitation source. The user has to define at
least one of the excitation sources, i.e. at least one of the
subclasses describing various sources has to be filled out.
The beam path between the excitation source and the sample should be
described in beam_path_before."
# 'beam_path_excitation' instead of 'beam_path_before'?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed to 'beam_path_excitation'

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Then the other part is not after but emission. Actually both changes make sense.


type:
doc: "Type of excitation source."
enumeration: [laser, lamp, X-rays, silicon carbide globar,
super continuum, chemical reaction, ultrasound, living organism,
other]
# 'electron beam' - in that case, to really track all relevant metadata, probably the corresponding
# NXclass for a scanning or transmission electron microscope would need to be used, see below
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'electron source' added

other_source:
exists: optional
doc: "If you specified 'other' as excitation source type, please
Expand Down Expand Up @@ -201,7 +205,14 @@ symbols:
doc: "Source for bioluminescence. Describe what organism was used and
under what conditions."

electron_source(NXem): # use base class that is being developed for electron microscopy, so far only the vendor spedific NXem_nion
exists: optional
doc: "Source for cathodoluminescence. Describe the experimental
conditions under which the electron microscope is operated."
# sort sources alphabetically?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NXem is an application definition. Couldn't find NXem_nion...

beam_path_before(NXbeam_path):
# 'beam_path_excitation' instead of 'beam_path_before'?
exists: optional
doc: "Description of the beam path between the excitation source and
the sample ('before' the sample). Describe all relevant optical
Expand All @@ -212,13 +223,16 @@ symbols:
element/monochromator, and a detector. Describe the beam path
between the sample and the detection unit in beam_path_after."

# 'beam_path_detection' instead of 'beam_path_after'?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed to 'beam_path_detection'

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

well, as noted above: or emission.

# optical elements can be before or after the spectrometer (which can also be left out
# when working with filters only -> so maybe move spectrometer to the beam path>)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree. This would also allow to add a spectrometer in the excitation beam path which would allow for representing line scan experiments.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would also allow for dual or triple monochromator setups

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, and "photoluminescence excitation (PLE)", where a monochromator comes after the lamp.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

An optional field '(NXmonochromator)' was added to NXbeam_path.

beam_path_after(NXbeam_path):
exists: optional
doc: "Description of the beam path between the sample and the
detector unit ('after' the sample). Describe all relevant optical
elements and their parameters in the appropriate subclasses."

spectrometer(NXdetector):
spectrometer(NXdetector): # NXmonochromomator? The detector is the CCD, PMT, StreakCamera, ...
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed to 'spectrometer(NXmonochromator)'

doc: "Which type of spectrometer/detector and dispersive element."

dispersive_element(NXmonochromator): # NXgrating?
Expand All @@ -237,6 +251,7 @@ symbols:
enumeration: [PMT, photodiode, avalanche diode, CCD camera,
CCD spectrometer, bolometer, other]
# x-ray detector?
# streak camera for time-resolved measurements?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could also be represented as a CCD camera as the detector and a MCT + electron tube + phosphorescence screen in the beam_path. But maybe this is too complicated?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds a bit complicated, usually the "streak camera" as a whole system is seen as a detector, I would say.

# which kind of CCD
# base class for optical detectors: details about CCD, PMT etc.
# detection mode (lock-in, etc.)
Expand Down Expand Up @@ -505,3 +520,4 @@ symbols:
doc: "We recommend to use wavelength as a default attribute, but it can be
replaced by any suitable parameter along the X-axis."
# How to record excitation spectrum?
# Possibility for Maps and Linescans, i.e. additional navigation axes
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a general question I already raised for other appdefs: how do we represent arbitrary scan parameters in a clear manner?