def METHOD_NAME(self, data: SingleSensorData, *, sampling_rate_hz: float, **_) -> Self:
    """Estimate the orientation of the sensor by simple integration of the Gyro data.
    Parameters
    ----------
    data
        Continuous sensor data that includes at least a Gyro.
        The gyro data is expected to be in deg/s!
    sampling_rate_hz
        The sampling rate of the data in Hz
    Returns
    -------
    self
        The class instance with all result attributes populated
    """
    self.data = data
    self.sampling_rate_hz = sampling_rate_hz
    initial_orientation = self.initial_orientation
    memory = self.memory
    if memory is None:
        memory = Memory(None)
    is_single_sensor_data(self.data, check_acc=False, frame="sensor", raise_exception=True)
    if isinstance(initial_orientation, Rotation):
        initial_orientation = Rotation.as_quat(initial_orientation)
    initial_orientation = initial_orientation.copy()
    gyro_data = np.deg2rad(data[SF_GYR].to_numpy())
    simple_gyro_integration_series = memory.cache(_simple_gyro_integration_series)
    rots = simple_gyro_integration_series(
        gyro=gyro_data, initial_orientation=initial_orientation, sampling_rate_hz=sampling_rate_hz
    )
    self.orientation_object_ = Rotation.from_quat(rots)
    return self