restage 0.5.1__py3-none-any.whl → 0.7.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- restage/cache.py +6 -10
- restage/run.py +1 -1
- restage/tables.py +1 -1
- {restage-0.5.1.dist-info → restage-0.7.0.dist-info}/METADATA +16 -16
- {restage-0.5.1.dist-info → restage-0.7.0.dist-info}/RECORD +8 -8
- {restage-0.5.1.dist-info → restage-0.7.0.dist-info}/entry_points.txt +0 -1
- {restage-0.5.1.dist-info → restage-0.7.0.dist-info}/WHEEL +0 -0
- {restage-0.5.1.dist-info → restage-0.7.0.dist-info}/top_level.txt +0 -0
restage/cache.py
CHANGED
|
@@ -107,24 +107,20 @@ def directory_under_module_data_path(sub: str, prefix=None, suffix=None, name=No
|
|
|
107
107
|
|
|
108
108
|
def _compile_instr(entry: InstrEntry, instr: Instr, config: dict | None = None,
|
|
109
109
|
mpi: bool = False, acc: bool = False,
|
|
110
|
-
target=None,
|
|
111
|
-
from mccode_antlr import __version__
|
|
110
|
+
target=None, flavor=None):
|
|
111
|
+
from mccode_antlr import __version__, Flavor
|
|
112
112
|
from mccode_antlr.compiler.c import compile_instrument, CBinaryTarget
|
|
113
113
|
if config is None:
|
|
114
114
|
config = dict(default_main=True, enable_trace=False, portable=False, include_runtime=True,
|
|
115
115
|
embed_instrument_file=False, verbose=False)
|
|
116
116
|
if target is None:
|
|
117
117
|
target = CBinaryTarget(mpi=mpi or False, acc=acc or False, count=1, nexus=False)
|
|
118
|
-
if
|
|
119
|
-
|
|
120
|
-
generator = MCSTAS_GENERATOR
|
|
118
|
+
if flavor is None:
|
|
119
|
+
flavor = Flavor.MCSTAS
|
|
121
120
|
|
|
122
121
|
output = directory_under_module_data_path('bin')
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
# FIXME a future mccode-antlr will support setting 'source_file={file_path}'
|
|
126
|
-
# to allow exactly this.
|
|
127
|
-
binary_path = compile_instrument(instr, target, output, generator=generator, config=config, dump_source=True)
|
|
122
|
+
source_file = output.joinpath(instr.name).with_suffix('.c')
|
|
123
|
+
binary_path = compile_instrument(instr, target, output, flavor=flavor, config=config, source_file=source_file)
|
|
128
124
|
entry.mccode_version = __version__
|
|
129
125
|
entry.binary_path = str(binary_path)
|
|
130
126
|
return entry
|
restage/run.py
CHANGED
|
@@ -5,7 +5,7 @@ from .range import Singular
|
|
|
5
5
|
|
|
6
6
|
def make_run_parser():
|
|
7
7
|
from argparse import ArgumentParser
|
|
8
|
-
parser = ArgumentParser('
|
|
8
|
+
parser = ArgumentParser('restage')
|
|
9
9
|
parser.add_argument('primary', nargs=1, type=str, default=None,
|
|
10
10
|
help='Primary spectrometer `.instr` file name')
|
|
11
11
|
parser.add_argument('secondary', nargs=1, type=str, default=None,
|
restage/tables.py
CHANGED
|
@@ -65,7 +65,7 @@ class SimulationEntry:
|
|
|
65
65
|
self.precision[k] = abs(self.precision[best[0]])
|
|
66
66
|
elif self.parameter_values[k].has_value:
|
|
67
67
|
# This abs is *crucial* since a negative parameter value would have a negative precision otherwise
|
|
68
|
-
self.precision[k] = abs(self.parameter_values[k].value /
|
|
68
|
+
self.precision[k] = abs(self.parameter_values[k].value / 10000)
|
|
69
69
|
else:
|
|
70
70
|
log.info(f'SimulationEntry.__post_init__:: No precision match for value-less {k}, using 0.1;'
|
|
71
71
|
' consider specifying precision dict during initialization')
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: restage
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.7.0
|
|
4
4
|
Author-email: Gregory Tucker <gregory.tucker@ess.eu>
|
|
5
5
|
License: BSD-3-Clause
|
|
6
6
|
Classifier: License :: OSI Approved :: BSD License
|
|
@@ -17,7 +17,7 @@ Requires-Dist: zenlog>=1.1
|
|
|
17
17
|
Requires-Dist: platformdirs>=3.11
|
|
18
18
|
Requires-Dist: confuse
|
|
19
19
|
Requires-Dist: psutil>=5.9.6
|
|
20
|
-
Requires-Dist: mccode-antlr[hdf5]>=0.
|
|
20
|
+
Requires-Dist: mccode-antlr[hdf5]>=0.14.0
|
|
21
21
|
Provides-Extra: test
|
|
22
22
|
Requires-Dist: pytest; extra == "test"
|
|
23
23
|
Requires-Dist: chopcal; extra == "test"
|
|
@@ -54,21 +54,21 @@ pip install git+https://github.com/g5t/restage.git
|
|
|
54
54
|
```
|
|
55
55
|
|
|
56
56
|
## Usage
|
|
57
|
-
### `restage`
|
|
58
|
-
The `restage` module provides a function, `restage`, which takes a McStas instrument file as input.
|
|
59
|
-
The function will then parse the instrument file and generate new instrument files for the first and second stage simulations.
|
|
60
|
-
The new instrument files will be named `restaged_lower_<original instrument file name>.instr`,
|
|
61
|
-
and `restaged_upper_<original instrument file name>.instr`, respectively.
|
|
62
57
|
|
|
63
58
|
### `splitrun`
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
59
|
+
The `restage` module provides a command line program, `splitrun`, which
|
|
60
|
+
can be used as a replacement for the `mcrun` function distributed as part of McStas.
|
|
61
|
+
|
|
62
|
+
`splitrun` produces two instrument stages, before and after a split point, and runs
|
|
63
|
+
the specified parameter set(s) in both stages connecting the two through cached MCPL
|
|
64
|
+
state files.
|
|
65
|
+
The first stage results are stored in a user cache directory and the second stage output
|
|
66
|
+
is placed under the working directory following the McStas `mcrun` convention.
|
|
67
|
+
|
|
68
|
+
Command line flags and parameters are mostly the same as used by `mcrun` with a number
|
|
69
|
+
of additions to support `splitrun`'s enhanced behavior.
|
|
70
|
+
One optional argument, `split-at`, is added; it should be the name of
|
|
71
|
+
an `Arm` component inside the instrument file and defaults to `mcpl_split`.
|
|
72
72
|
In contrast to `mcrun`, instrument parameters for `splitrun` are specified as 'MATLAB'-range style keyword arguments.
|
|
73
73
|
A valid range is inclusive of its end points and of the form `start:step:end` or `start:end` (with implicit `step=1`).
|
|
74
74
|
|
|
@@ -103,7 +103,7 @@ mcrun my_instrument.instr -N 90 -n 1000000 -d /data/output sample_angle=1,90 sam
|
|
|
103
103
|
```
|
|
104
104
|
can be replaced by the `splitrun` command
|
|
105
105
|
```bash
|
|
106
|
-
splitrun my_instrument.instr -n 1000000 -d /data/output sample_angle=1:90 sample_radius=10.0
|
|
106
|
+
splitrun my_instrument.instr -n 1000000 --split-at split_at -d /data/output sample_angle=1:90 sample_radius=10.0
|
|
107
107
|
```
|
|
108
108
|
|
|
109
109
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
restage/__init__.py,sha256=HlqvPpL7DKet00NAFyqJBNg9UFO7o05Gt2tFyKBQcsY,744
|
|
2
2
|
restage/bifrost_choppers.py,sha256=xQu21g2NcTLPpZ0ZWOuvN20zh07EWoO4QVoTnoORwZI,6443
|
|
3
|
-
restage/cache.py,sha256=
|
|
3
|
+
restage/cache.py,sha256=Xep5j7jzq_qppp1i-KNSxZLpvyeZdDJkTMnB_PEE1gM,7824
|
|
4
4
|
restage/cspec_choppers.py,sha256=ZWxyCcwYn4z9ZNqj_r6RC9ImbhVjYc1fmv-Ijm8A2Yk,206
|
|
5
5
|
restage/database.py,sha256=anyOby31fUN7rGAVNsnWDUhAISV0vQ7en8aQwVS5ZwA,11051
|
|
6
6
|
restage/emulate.py,sha256=VrhfZJIbECdbDS-MHklqRuAIy9cRkjZkwPBTKQSQoe0,6164
|
|
@@ -8,14 +8,14 @@ restage/energy.py,sha256=w78GUIWcHxANvBl2DTu73FQFawCXfzlK6L32TBQNt4g,3371
|
|
|
8
8
|
restage/instr.py,sha256=A0ShtXkswt_f7o-cIDtsVbG03_tGELe1aS3WzLxzkJM,2494
|
|
9
9
|
restage/mcpl.py,sha256=MKVY-2TYk5p8hW1lXJib5mxdbnILq4GoYiyAUgOBJmA,3269
|
|
10
10
|
restage/range.py,sha256=TjOf4DSKfgoAIcrWQvv6MrtksQpnGJHdsEjVI5K-UfI,8116
|
|
11
|
-
restage/run.py,sha256=
|
|
11
|
+
restage/run.py,sha256=bTcQIN9edKMXU_eFdX3E_mtJjwemoARrIUmZqzEGf0E,1475
|
|
12
12
|
restage/scan.py,sha256=Yx8OQSBG6I2_64sW0LIDb0glVKwWoxUQQznASXgDZFQ,1432
|
|
13
13
|
restage/splitrun.py,sha256=W_pTeiMjc9hhu-zaE6fdetVLG6MGEpnaTOdgmgVkS1g,26061
|
|
14
|
-
restage/tables.py,sha256=
|
|
14
|
+
restage/tables.py,sha256=vQf0GkM7ojQbWee_P_Xqfx0-lXLym7x6kyam8CWpB5s,16373
|
|
15
15
|
restage/config/__init__.py,sha256=zFRT9QXgpUJpBncELCQ6by1-kjYp8Li1yJDfqxkHxAA,965
|
|
16
16
|
restage/config/default.yaml,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
-
restage-0.
|
|
18
|
-
restage-0.
|
|
19
|
-
restage-0.
|
|
20
|
-
restage-0.
|
|
21
|
-
restage-0.
|
|
17
|
+
restage-0.7.0.dist-info/METADATA,sha256=VTicESA3b8fD__6eT-P_Upsx8Nb8AygdlMqT9K50PN8,6606
|
|
18
|
+
restage-0.7.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
19
|
+
restage-0.7.0.dist-info/entry_points.txt,sha256=vYNOPxJ4PzG-1GGFSd08jFxhrtKUWAdWzjJQeFBzFJE,116
|
|
20
|
+
restage-0.7.0.dist-info/top_level.txt,sha256=iM_pb-taTZ0S2WMoDnt_qDMZoNMjmM19z3tTCuVm1IE,8
|
|
21
|
+
restage-0.7.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|