Skip to content

Commit

Permalink
sort out LumiTransientSpec inheritance
Browse files Browse the repository at this point in the history
  • Loading branch information
jlaehne committed Jan 27, 2024
1 parent c251da6 commit 20c32b3
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 9 deletions.
5 changes: 3 additions & 2 deletions lumispy/hyperspy_extension.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ signals:
module: lumispy.signals.luminescence_transient

LumiTransientSpectrum:
signal_type: TransientSpec
signal_type: Luminescence
signal_type_aliases:
- TRLumiSpec
- TR luminescence spectrum
Expand All @@ -161,8 +161,9 @@ signals:
lazy: False
module: lumispy.signals.luminescence_transientspec
LazyLumiTransientSpectrum:
signal_type: TransientSpec
signal_type: Luminescence
signal_type_aliases:
- TransientSpec
- TRLumiSpec
- TR luminescence spectrum
- time-resolved luminescence spectrum
Expand Down
10 changes: 8 additions & 2 deletions lumispy/signals/luminescence_spectrum.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
from traits.api import Undefined

from lumispy.signals.common_luminescence import CommonLumi
from lumispy.signals.luminescence_transient import LumiTransient
from lumispy import to_array, savetxt
from lumispy.utils import solve_grating_equation
from lumispy.utils.axes import GRATING_EQUATION_DOCSTRING_PARAMETERS
Expand All @@ -41,11 +42,16 @@
class LumiSpectrum(Signal1D, CommonLumi):
"""**General 1D luminescence signal class.**"""

_signal_type = "Luminescence"
_signal_dimension = 1
_signal_type = "Luminescence"

def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
if hasattr(self,'axes_manager') and self.axes_manager[-1].units in ["fs", "ps", "ns", "µs", "mus", "ms", "s"]:
self.metadata.Signal.signal_type = "Transient"
self.__class__ = LumiTransient
self.__init__(*args, **kwargs)
else:
super().__init__(*args, **kwargs)

def remove_background_from_file(self, background=None, inplace=False, **kwargs):
"""Subtract the background to the signal in all navigation axes. If no
Expand Down
2 changes: 1 addition & 1 deletion lumispy/signals/luminescence_transientspec.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
class LumiTransientSpectrum(Signal2D, CommonLumi, CommonTransient):
"""**General 2D luminescence signal class (transient/time resolved)**"""

_signal_type = "TransientSpec"
_signal_type = "Luminescence"
_signal_dimension = 2


Expand Down
10 changes: 6 additions & 4 deletions lumispy/tests/utils/test_axis_conversion.py
Original file line number Diff line number Diff line change
Expand Up @@ -194,15 +194,17 @@ def test_eV_slicing():
S.to_eV(inplace=True)
S.isig[3.251:4.052]


def test_to_eV_2D():
axis1 = UniformDataAxis(size=10, offset=200, scale=10, units='nm')
axis2 = UniformDataAxis(size=8, offset=0, scale=0.1, units='ns')
data = arange(80).reshape(8,10)
axis1 = UniformDataAxis(size=10, offset=200, scale=10, units="nm")
axis2 = UniformDataAxis(size=8, offset=0, scale=0.1, units="ns")
data = arange(80).reshape(8, 10)
S1 = LumiTransientSpectrum(data, axes=[axis2, axis1])
S2 = S1.to_eV(inplace=True, jacobian=False)

Check notice

Code scanning / CodeQL

Unused local variable Note test

Variable S2 is not used.
assert S1.axes_manager[0].units == "eV"
assert S1.axes_manager[0].axis[-1] == nm2eV(axis1.axis[0])
assert S1.data[0,0] == data[0,-1]
assert S1.data[0, 0] == data[0, -1]


@mark.parametrize(("jacobian"), (True, False))
def test_reset_variance_linear_model_eV(jacobian):
Expand Down

0 comments on commit 20c32b3

Please sign in to comment.