Skip to content

Add first NXraman Version#1375

Closed
RonHildebrandt wants to merge 658 commits intonexusformat:mainfrom
FAIRmat-NFDI:add_first_NXraman_version
Closed

Add first NXraman Version#1375
RonHildebrandt wants to merge 658 commits intonexusformat:mainfrom
FAIRmat-NFDI:add_first_NXraman_version

Conversation

@RonHildebrandt
Copy link
Copy Markdown
Contributor

I want to implement the first NeXus definition for NXraman.

As the latest version of NXellipsometry is derived from NXopt, the NXraman here is as well derived from NXopt.
Therefore, the Version here used "NXbeam_path", which will be replaced in the future by using "NXbeam_device" via "previous_devices". This was motivated by the fact, that there is right now no "NXlens_opt(NXbeam_device)" or "NXdetector(NXbeam_device)".

What is necessary?
From a physical point of view, these are the most important things for a Raman scattering experiment:

  1. The incident wavelength (a quite trivial parameter and the spectral shape of a Raman spectrum can be extremely sensitive to this)
  2. The scattering configuration, i.e. what is the incident and scattered light direction and polarization.

Beyond this, there are many nice to have parameters, but from my point of view not necessary to be able to use this spectrum.

Questions:
A) No symbols were used here, as these were not used in the original NXellipsometry(NXopt) definition. It this fine that way, or at which pointare these symbols used?
B) Is the "scattering_configuration" implemented fine this way? Usually, the "Porto notation" is enough to describe the experiment and beatiful simple. But, it can be the case, that you want to give the specific vectors instead of x,y,z. I just wanted to do this as List of 4 Vectors with dimension 3. Is this okay?
C) Depending on the NXbeam_path or NXbeam_device approach, I may have to completely redo this PR. What is the strategy?

TL;DR: Created NXraman.yaml file similar to NXellipsometry.yaml

RubelMozumder and others added 30 commits November 30, 2023 23:11
Start discussing XRD application definition
…documentation, adding first round of changes relevant for the implementation of the refactoring of the em-related readers in pynxtools
…age of more general base classes NXserialized, NXidentifier, and CG base classes, also incorporate feedback from discussions with Cameca and generally allow that NXapm can store different state of LEAP-based analyses, reorganizing constraints is another reason for NXapm refactoring, ii) make the currently paraprobe-specific base classes more generally applicable: an example currently NXapm_paraprobe_nanochem allowed to store only the specific way how delocalization based analyses work and what they mean and generate when using paraprobe, but ideally we would like to use a base class NXdelocalization also store delocalizations done with other tools (foremost) those by cameca to arrive at a suggestion for a description format whereby users can store serialized analysis results from atom probe on zenodo in a pre-harmonized way despite not having an appdef designed for it yet, iii) reduce redundancies and make descriptions like for the em refactoring more succinct
…n a minimum example, next steps i) apply to paraprobe_ranger, ii) refactor NXapm appdef, iii) update pynxtools, iv) discuss
lukaspie and others added 26 commits February 29, 2024 10:33
…gestions and reviews and feedback from community should target NXem first before thinking about offsprings
* Pin nyaml==0.0.8

* Regenerate nxdls
…in-nxsource

Remove unneeded fields in NXsource
* Add nexus definitions/files for beam path description

* Update base_classes/nyaml/NXopt_assembly.yaml

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Update base_classes/nyaml/NXopt_assembly.yaml

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>

* add_NX_defs_for_beam_path

* modifying_yaml_files

* fixing_nyaml_make_file

* Adjusted files with Sandor together according to
earlier hardcoded .nxs file

* Added the missing nxdl.xml files via nyaml2nxdl
Version=0.0.8 was used for nyaml.

* moved created nxdl.xml files to correct directory

* Suggestions to fix ci/cd by in NXtransfer_matrix_table.yaml

Co-authored-by: Florian Dobener <github@schroedingerscat.org>

* renaming transfer_matrix_table to beam_transfermatrix_table and opt_element to beam_device; also merging NXopt_beam to NXbeam

* remove old nxdl files

---------

Co-authored-by: Ron Hildebrandt <RonHildebrandt@uni-leipzig.de>
Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>
Co-authored-by: Florian Dobener <github@schroedingerscat.org>
* replace block dimensions

* pinning lxml, because old versions fail
@RonHildebrandt RonHildebrandt deleted the add_first_NXraman_version branch March 21, 2024 09:29
@RonHildebrandt RonHildebrandt restored the add_first_NXraman_version branch March 21, 2024 09:37
@RonHildebrandt
Copy link
Copy Markdown
Contributor Author

Sorry for this mistake - wrong base was selected in creation of the draft

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants