qcodes/instrument_drivers/QuantumDesign/DynaCoolPPMS/DynaCool.py
def _do_blocking_ramp(self, target_in_tesla: float,
                          start_field_in_tesla: float) -> None:
        """
        Perform a blocking ramp. Only call this function from withing the
        `ramp` method.

        This method is slow; it waits for the magnet to settle. The waiting is
        done in two steps, since users have reported that the magnet state does
        not immediately change to 'ramping' when asked to ramp.
        """

        target_in_oe = target_in_tesla*1e4
        ramp_range = np.abs(target_in_tesla - start_field_in_tesla)

        self._field_setter(param='field_target', value=target_in_oe)

        # step 1: wait for the magnet to actually start ramping
        # NB: depending on the `field_approach`, we may reach the target
        # several times before the ramp is over (oscillations around target)
        while np.abs(self.field_measured() - start_field_in_tesla) \
                < ramp_range * 0.5:
            sleep(self._ramp_time_resolution)

        # step 2: wait for the magnet to report that is has reached the
        # setpoint

        while self.magnet_state() != 'holding':
            sleep(self._ramp_time_resolution)

        Perform a blocking ramp. Only call this function from withing the
        `ramp` method.

        This method is slow; it waits for the magnet to settle. The waiting is
        done in two steps, since users have reported that the magnet state does
        not immediately change to 'ramping' when asked to ramp.
        
Perform a blocking ramp. Only call this function from withing the
`ramp` method.

This method is slow; it waits for the magnet to settle. The waiting is
done in two steps, since users have reported that the magnet state does
not immediately change to 'ramping' when asked to ramp.
Perform a blocking ramp . Only call this function from withing the ` ramp ` method . This method is slow ; it waits for the magnet to settle . The waiting is done in two steps since users have reported that the magnet state does not immediately change to ' ramping ' when asked to ramp .
def _do_blocking_ramp(self, target_in_tesla: float,
                          start_field_in_tesla: float) -> None:
        target_in_oe = target_in_tesla*1e4
        ramp_range = np.abs(target_in_tesla - start_field_in_tesla)
        self._field_setter(param='field_target', value=target_in_oe)
        while np.abs(self.field_measured() - start_field_in_tesla) \
                < ramp_range * 0.5:
            sleep(self._ramp_time_resolution)
        while self.magnet_state() != 'holding':
            sleep(self._ramp_time_resolution)
def _do_blocking_ramp ( self , target_in_tesla : float , start_field_in_tesla : float ) -> None : target_in_oe = target_in_tesla * 1e4 ramp_range = np . abs ( target_in_tesla - start_field_in_tesla ) self . _field_setter ( param = 'field_target' , value = target_in_oe ) while np . abs ( self . field_measured ( ) - start_field_in_tesla ) < ramp_range * 0.5 : sleep ( self . _ramp_time_resolution ) while self . magnet_state ( ) != 'holding' : sleep ( self . _ramp_time_resolution )
Perform a blocking ramp.
Perform a blocking ramp .
"""
        Perform a blocking ramp. Only call this function from withing the
        `ramp` method.

        This method is slow; it waits for the magnet to settle. The waiting is
        done in two steps, since users have reported that the magnet state does
        not immediately change to 'ramping' when asked to ramp.
        """ # step 1: wait for the magnet to actually start ramping # NB: depending on the `field_approach`, we may reach the target # several times before the ramp is over (oscillations around target) # step 2: wait for the magnet to report that is has reached the # setpoint
self
target_in_tesla
float
start_field_in_tesla
float