scippneutron.tof.chopper_cascade.Subframe#

class scippneutron.tof.chopper_cascade.Subframe(time, wavelength)[source]#

Neutron “subframe” at a time-of-flight neutron source, described as the corners of a polygon (initially a rectangle) in time and wavelength.

__init__(time, wavelength)[source]#

Methods

__init__(time, wavelength)

is_regular()

Return True if the subframe is regular, i.e., if the vertex with the minimum wavelength also has the minimum time, and the vertex with the maximum wavelength also has the maximum time.

propagate_by(distance)

Propagate subframe by a distance.

Attributes

end_time

The end time of the subframe for each of the distances in self.time.

end_wavelength

The end wavelength of the subframe for each of the distances in self.time.

start_time

The start time of the subframe for each of the distances in self.time.

start_wavelength

The start wavelength of the subframe for each of the distances in self.time

property end_time: Variable#

The end time of the subframe for each of the distances in self.time.

property end_wavelength: Variable#

The end wavelength of the subframe for each of the distances in self.time.

is_regular()[source]#

Return True if the subframe is regular, i.e., if the vertex with the minimum wavelength also has the minimum time, and the vertex with the maximum wavelength also has the maximum time.

Return type:

bool

propagate_by(distance)[source]#

Propagate subframe by a distance.

Parameters:

distance (Variable) – Distance to propagate. Note that this is a difference, not an absolute value, in contrast to the distance in Frame.propagate_to().

Returns:

Subframe – Propagated subframe.

property start_time: Variable#

The start time of the subframe for each of the distances in self.time.

property start_wavelength: Variable#

The start wavelength of the subframe for each of the distances in self.time