Source code for sofia_redux.scan.channels.mode.acceleration_response

# Licensed under a 3-clause BSD style license - see LICENSE.rst

from sofia_redux.scan.channels.mode.motion_response import MotionResponse

__all__ = ['AccelerationResponse']


[docs] class AccelerationResponse(MotionResponse): def __init__(self, channel_group=None, gain_provider=None, name=None): """ Creates a position response mode based on acceleration. A mode is an object that is applied to a given channel group, defining what constitutes its "gain" and how to operate thereon. This is also dependent on a gain provider. The acceleration response is designed to extract a signal from an integration based on some function of acceleration, defined in a specific direction. The direction operator is an instance of the `MotionFlags` class. Parameters ---------- channel_group : ChannelGroup, optional The channel group owned by the mode. gain_provider : str or GainProvider, optional If a string is provided a `FieldGainProvider` will be set to operate on the given field of the channel group. name : str, optional The name of the mode. If not provided, will be determined from the channel group name (if available). To set the direction, the name should be of the form <name>-<direction> or <name>:<direction>. """ super().__init__(channel_group=channel_group, gain_provider=gain_provider, name=name)
[docs] def get_signal_from_direction(self, integration, direction): """ Return a signal object from an integration and direction. Parameters ---------- integration : Integration direction : MotionFlags Returns ------- Signal """ return integration.get_acceleration_signal(direction, mode=self)