easyreflectometry 1.2.0__tar.gz → 1.3.0__tar.gz
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.
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/PKG-INFO +1 -1
- easyreflectometry-1.3.0/src/easyreflectometry/__version__.py +1 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/refl1d/wrapper.py +2 -2
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/refnx/wrapper.py +2 -2
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/wrapper_base.py +2 -2
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/model/__init__.py +2 -2
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/model/model.py +4 -4
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/model/resolution_functions.py +4 -4
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/project.py +2 -2
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/summary/summary.py +1 -1
- easyreflectometry-1.2.0/src/easyreflectometry/__version__.py +0 -1
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/.gitignore +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/AUTHORS.rst +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/LICENSE +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/README.md +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/pyproject.toml +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/__init__.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/__init__.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/bornagain/calculator.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/bornagain/wrapper.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/calculator_base.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/factory.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/refl1d/calculator.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/refnx/calculator.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/data/__init__.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/data/data_store.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/data/measurement.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/fitting.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/main.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/model/model_collection.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/plot.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/__init__.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/assemblies/base_assembly.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/assemblies/gradient_layer.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/assemblies/multilayer.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/assemblies/repeating_multilayer.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/assemblies/surfactant_layer.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/base_core.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/collections/base_collection.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/collections/layer_collection.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/collections/material_collection.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/collections/sample.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/elements/layers/layer.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/elements/layers/layer_area_per_molecule.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/elements/materials/material.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/elements/materials/material_density.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/elements/materials/material_mixture.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/elements/materials/material_solvated.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/special/calculations.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/special/parsing.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/summary/__init__.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/summary/html_templates.py +0 -0
- {easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: easyreflectometry
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.3.0
|
|
4
4
|
Summary: A reflectometry python package built on the EasyScience framework.
|
|
5
5
|
Project-URL: homepage, https://docs.easyreflectometry.org
|
|
6
6
|
Project-URL: documentation, https://docs.easyreflectometry.org
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = '1.3.0'
|
|
@@ -6,7 +6,7 @@ import numpy as np
|
|
|
6
6
|
from refl1d import model
|
|
7
7
|
from refl1d import names
|
|
8
8
|
|
|
9
|
-
from easyreflectometry.model import
|
|
9
|
+
from easyreflectometry.model import PercentageFwhm
|
|
10
10
|
|
|
11
11
|
from ..wrapper_base import WrapperBase
|
|
12
12
|
|
|
@@ -157,7 +157,7 @@ class Refl1dWrapper(WrapperBase):
|
|
|
157
157
|
sample = _build_sample(self.storage, model_name)
|
|
158
158
|
dq_array = self._resolution_function.smearing(q_array)
|
|
159
159
|
|
|
160
|
-
if isinstance(self._resolution_function,
|
|
160
|
+
if isinstance(self._resolution_function, PercentageFwhm):
|
|
161
161
|
# Get percentage of Q and change from sigma to FWHM
|
|
162
162
|
dq_array = dq_array * q_array / 100 / (2 * np.sqrt(2 * np.log(2)))
|
|
163
163
|
|
|
@@ -5,7 +5,7 @@ from typing import Tuple
|
|
|
5
5
|
import numpy as np
|
|
6
6
|
from refnx import reflect
|
|
7
7
|
|
|
8
|
-
from easyreflectometry.model import
|
|
8
|
+
from easyreflectometry.model import PercentageFwhm
|
|
9
9
|
|
|
10
10
|
from ..wrapper_base import WrapperBase
|
|
11
11
|
|
|
@@ -143,7 +143,7 @@ class RefnxWrapper(WrapperBase):
|
|
|
143
143
|
)
|
|
144
144
|
|
|
145
145
|
dq_vector = self._resolution_function.smearing(q_array)
|
|
146
|
-
if isinstance(self._resolution_function,
|
|
146
|
+
if isinstance(self._resolution_function, PercentageFwhm):
|
|
147
147
|
# FWHM Percentage resolution is constant given as
|
|
148
148
|
# For a constant resolution percentage refnx supports to pass a scalar value rather than a vector
|
|
149
149
|
dq_vector = dq_vector[0]
|
|
@@ -2,7 +2,7 @@ from abc import abstractmethod
|
|
|
2
2
|
|
|
3
3
|
import numpy as np
|
|
4
4
|
|
|
5
|
-
from easyreflectometry.model import
|
|
5
|
+
from easyreflectometry.model import PercentageFwhm
|
|
6
6
|
from easyreflectometry.model import ResolutionFunction
|
|
7
7
|
|
|
8
8
|
|
|
@@ -16,7 +16,7 @@ class WrapperBase:
|
|
|
16
16
|
'item': {},
|
|
17
17
|
'model': {},
|
|
18
18
|
}
|
|
19
|
-
self._resolution_function =
|
|
19
|
+
self._resolution_function = PercentageFwhm()
|
|
20
20
|
|
|
21
21
|
def reset_storage(self):
|
|
22
22
|
"""Reset the storage area to blank."""
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
from .model import Model
|
|
2
2
|
from .model_collection import ModelCollection
|
|
3
3
|
from .resolution_functions import LinearSpline
|
|
4
|
-
from .resolution_functions import
|
|
4
|
+
from .resolution_functions import PercentageFwhm
|
|
5
5
|
from .resolution_functions import ResolutionFunction
|
|
6
6
|
|
|
7
7
|
__all__ = (
|
|
8
8
|
LinearSpline,
|
|
9
|
-
|
|
9
|
+
PercentageFwhm,
|
|
10
10
|
ResolutionFunction,
|
|
11
11
|
Model,
|
|
12
12
|
ModelCollection,
|
|
@@ -17,7 +17,7 @@ from easyreflectometry.sample import Sample
|
|
|
17
17
|
from easyreflectometry.utils import get_as_parameter
|
|
18
18
|
from easyreflectometry.utils import yaml_dump
|
|
19
19
|
|
|
20
|
-
from .resolution_functions import
|
|
20
|
+
from .resolution_functions import PercentageFwhm
|
|
21
21
|
from .resolution_functions import ResolutionFunction
|
|
22
22
|
|
|
23
23
|
DEFAULTS = {
|
|
@@ -71,7 +71,7 @@ class Model(BaseObj):
|
|
|
71
71
|
:param scale: Scaling factor of profile.
|
|
72
72
|
:param background: Linear background magnitude.
|
|
73
73
|
:param name: Name of the model, defaults to 'EasyModel'.
|
|
74
|
-
:param resolution_function: Resolution function, defaults to
|
|
74
|
+
:param resolution_function: Resolution function, defaults to PercentageFwhm.
|
|
75
75
|
:param interface: Calculator interface, defaults to `None`.
|
|
76
76
|
|
|
77
77
|
"""
|
|
@@ -81,7 +81,7 @@ class Model(BaseObj):
|
|
|
81
81
|
if sample is None:
|
|
82
82
|
sample = Sample(interface=interface)
|
|
83
83
|
if resolution_function is None:
|
|
84
|
-
resolution_function =
|
|
84
|
+
resolution_function = PercentageFwhm(DEFAULTS['resolution']['value'])
|
|
85
85
|
|
|
86
86
|
scale = get_as_parameter('scale', scale, DEFAULTS)
|
|
87
87
|
background = get_as_parameter('background', background, DEFAULTS)
|
|
@@ -168,7 +168,7 @@ class Model(BaseObj):
|
|
|
168
168
|
@property
|
|
169
169
|
def _dict_repr(self) -> dict[str, dict[str, str]]:
|
|
170
170
|
"""A simplified dict representation."""
|
|
171
|
-
if isinstance(self._resolution_function,
|
|
171
|
+
if isinstance(self._resolution_function, PercentageFwhm):
|
|
172
172
|
resolution_value = self._resolution_function.as_dict()['constant']
|
|
173
173
|
resolution = f'{resolution_value} %'
|
|
174
174
|
else:
|
|
@@ -26,14 +26,14 @@ class ResolutionFunction:
|
|
|
26
26
|
|
|
27
27
|
@classmethod
|
|
28
28
|
def from_dict(cls, data: dict) -> ResolutionFunction:
|
|
29
|
-
if data['smearing'] == '
|
|
30
|
-
return
|
|
29
|
+
if data['smearing'] == 'PercentageFwhm':
|
|
30
|
+
return PercentageFwhm(data['constant'])
|
|
31
31
|
if data['smearing'] == 'LinearSpline':
|
|
32
32
|
return LinearSpline(data['q_data_points'], data['fwhm_values'])
|
|
33
33
|
raise ValueError('Unknown resolution function type')
|
|
34
34
|
|
|
35
35
|
|
|
36
|
-
class
|
|
36
|
+
class PercentageFwhm(ResolutionFunction):
|
|
37
37
|
def __init__(self, constant: Union[None, float] = None):
|
|
38
38
|
if constant is None:
|
|
39
39
|
constant = DEFAULT_RESOLUTION_FWHM_PERCENTAGE
|
|
@@ -45,7 +45,7 @@ class PercentageFhwm(ResolutionFunction):
|
|
|
45
45
|
def as_dict(
|
|
46
46
|
self, skip: Optional[List[str]] = None
|
|
47
47
|
) -> dict[str, str]: # skip is kept for consistency of the as_dict signature
|
|
48
|
-
return {'smearing': '
|
|
48
|
+
return {'smearing': 'PercentageFwhm', 'constant': self.constant}
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
class LinearSpline(ResolutionFunction):
|
|
@@ -21,7 +21,7 @@ from easyreflectometry.fitting import MultiFitter
|
|
|
21
21
|
from easyreflectometry.model import LinearSpline
|
|
22
22
|
from easyreflectometry.model import Model
|
|
23
23
|
from easyreflectometry.model import ModelCollection
|
|
24
|
-
from easyreflectometry.model import
|
|
24
|
+
from easyreflectometry.model import PercentageFwhm
|
|
25
25
|
from easyreflectometry.sample import Layer
|
|
26
26
|
from easyreflectometry.sample import Material
|
|
27
27
|
from easyreflectometry.sample import MaterialCollection
|
|
@@ -266,7 +266,7 @@ class Project:
|
|
|
266
266
|
|
|
267
267
|
def sample_data_for_model_at_index(self, index: int = 0, q_range: Optional[np.array] = None) -> DataSet1D:
|
|
268
268
|
original_resolution_function = self.models[index].resolution_function
|
|
269
|
-
self.models[index].resolution_function =
|
|
269
|
+
self.models[index].resolution_function = PercentageFwhm(0)
|
|
270
270
|
reflectivity_data = self.model_data_for_model_at_index(index, q_range)
|
|
271
271
|
self.models[index].resolution_function = original_resolution_function
|
|
272
272
|
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/summary/summary.py
RENAMED
|
@@ -144,7 +144,7 @@ class Summary:
|
|
|
144
144
|
experiment_name = experiment.name
|
|
145
145
|
num_data_points = len(experiment.x)
|
|
146
146
|
resolution_function = self._project.models[idx].resolution_function.as_dict()['smearing']
|
|
147
|
-
if resolution_function == '
|
|
147
|
+
if resolution_function == 'PercentageFwhm':
|
|
148
148
|
precentage = self._project.models[idx].resolution_function.as_dict()['constant']
|
|
149
149
|
resolution_function = f'{resolution_function} {precentage}%'
|
|
150
150
|
range_min = min(experiment.y)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = '1.2.0'
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/calculators/factory.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/data/data_store.py
RENAMED
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/data/measurement.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/model/model_collection.py
RENAMED
|
File without changes
|
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/sample/base_core.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/special/calculations.py
RENAMED
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/special/parsing.py
RENAMED
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/summary/__init__.py
RENAMED
|
File without changes
|
{easyreflectometry-1.2.0 → easyreflectometry-1.3.0}/src/easyreflectometry/summary/html_templates.py
RENAMED
|
File without changes
|
|
File without changes
|