Skip to content

Commit cdea781

Browse files
jokasimrjl-wynenpre-commit-ci-lite[bot]
authored
feat: initial beer mcstas workflow (#184)
* feat: initial beer mcstas workflow * fix: add data * docs: fix name * refactor: remove unnecessary coordinates and coord transformations * refactor: make clustering step configurable + separate tof code from clustering * docs: add header and 2D figure illustrating the intensity * docs: add ground truth peak positions to notebook * fix: coordinate tranformations * feat: mask regions where streaks are too close * feat: add workflow for BEER frame unwrapping when peak positions are known * ci: add example data from different chopper settings * docs: update notebook with new files * feat: read both banks * docs: update to display both banks * fix: remove peak list from default parameters * fix: remove dspacing coord from DetectorTofData * fix: simplify fit to streaks * docs: type annotations * feat: make two theta mask user configurable * fix * typo * tests: can apply workflows and get sensible result * test: relax tolerance * docs: compare to true peak positions for both workflows * fix: remove unused coordinates * fix: move approximate t0 to clustering routine where it is used * docs: update si example file * fix: don't read data several times * refactor: rename and document parameters * docs: add entries to api reference, and docstrings on top level functions * Update docs/api-reference/index.md Co-authored-by: Jan-Lukas Wynen <jan-lukas.wynen@ess.eu> * Update src/ess/beer/clustering.py Co-authored-by: Jan-Lukas Wynen <jan-lukas.wynen@ess.eu> * Update src/ess/beer/clustering.py Co-authored-by: Jan-Lukas Wynen <jan-lukas.wynen@ess.eu> * Apply automatic formatting * fix: use implementation from scippneutron * docs: rename sections * fix: retry if pooch download fails, to avoid "chunk encoding error" * data: add quartz sample data * fix: more robust sample component loading * fix: more robust peak height limit * docs: add quartz example to docs * fix: remove dhkl from graph - to avoid need for keep_intermediates * spelling * refactor: rename workflows to communicate they are for the modulation mode * docs: update notebook - fix ids comments * fix: table * docs: remove quartz sample from docs --------- Co-authored-by: Jan-Lukas Wynen <jan-lukas.wynen@ess.eu> Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
1 parent 23a7ac2 commit cdea781

File tree

13 files changed

+1304
-1
lines changed

13 files changed

+1304
-1
lines changed

docs/api-reference/index.md

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
types
4343
```
4444

45-
## ESSdream
45+
## DREAM
4646

4747
### Workflows
4848

@@ -98,6 +98,47 @@
9898
io
9999
```
100100

101+
## BEER
102+
103+
### Workflows
104+
105+
106+
```{eval-rst}
107+
.. currentmodule:: ess.beer
108+
109+
.. autosummary::
110+
:toctree: ../generated/functions
111+
112+
BeerModMcStasWorkflowKnownPeaks
113+
BeerModMcStasWorkflow
114+
```
115+
116+
### Top-level functions
117+
118+
```{eval-rst}
119+
.. currentmodule:: ess.beer
120+
121+
.. autosummary::
122+
:toctree: ../generated/functions
123+
124+
load_beer_mcstas
125+
```
126+
127+
### Submodules
128+
129+
```{eval-rst}
130+
.. autosummary::
131+
:toctree: ../generated/modules
132+
:template: module-template.rst
133+
:recursive:
134+
135+
clustering
136+
conversions
137+
data
138+
io
139+
workflow
140+
```
141+
101142
## SNS powder
102143

103144
```{eval-rst}

docs/bibliography.bib

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,15 @@ @book{Arblaster:2018
66
ISBN = {978-1-62708-154-2},
77
url = {https://www.asminternational.org/selected-values-of-the-crystallographic-properties-of-the-elements/results/-/journal_content/56/39867022/PUBLICATION/}
88
}
9+
@article{ROUIJAA20187,
10+
title = {Beam modulation: A novel ToF-technique for high resolution diffraction at the Beamline for European Materials Engineering Research (BEER)},
11+
journal = {Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment},
12+
volume = {889},
13+
pages = {7-15},
14+
year = {2018},
15+
issn = {0168-9002},
16+
doi = {https://doi.org/10.1016/j.nima.2017.12.083},
17+
author = {M. Rouijaa and R. Kampmann and J. Šaroun and J. Fenske and P. Beran and M. Müller and P. Lukáš and A. Schreyer},
18+
keywords = {Time-of-flight diffractometer, Strain scanner, Residual stress},
19+
abstract = {The Beamline for European Materials Engineering Research (BEER) is under construction at the European Spallation Source (ESS) in Lund, Sweden. A basic requirement on BEER is to make best use of the long ESS pulse (2.86 ms) for engineering investigations. High-resolution diffraction, however, demands timing resolution up to 0.1% corresponding to a pulse length down to about 70 μs for the case of thermal neutrons (λ ∼ 1.8 Å). Such timing resolution can be achieved by pulse shaping techniques cutting a short section out of the long pulse, and thus paying for resolution by strong loss of intensity. In contrast to this, BEER proposes a novel operation mode called pulse modulation technique based on a new chopper design, which extracts several short pulses out of the long ESS pulse, and hence leads to a remarkable gain of intensity compared to nowadays existing conventional pulse shaping techniques. The potential of the new technique can be used with full advantage for investigating strains and textures of highly symmetric materials. Due to its instrument design and the high brilliance of the ESS pulse, BEER is expected to become the European flagship for engineering research for strain mapping and texture analysis.}
20+
}

0 commit comments

Comments
 (0)