Deltas

class picodaq.stimulus.Deltas(amplitude: Voltage = 0 * V, start: Voltage = 0 * V, scale: Voltage = 0 * V, amplitude2: Voltage = 0 * V, end: Voltage = 0 * V, duration: Time = 0 * s, duration2: Time = 0 * s, pulsecount: int = 0, pulseperiod: Time = 0 * s, trainperiod: Time = 0 * s)

Representation of changes to stimulation parameters

This can be used to apply changes on a per-pulse basis within a train, or on a per-train basis within a series.

Each parameter applies an additive change to the like-named parameter of a Pulse or Train. Specifically:

Parameters:
  • amplitude – additive change to the amplitude parameter of Pulse, Square, or Triangle shapes

  • amplitude2 – additive change to the amplitude2 parameter of Square or Triangle shapes

  • duration – additive change to the duration parameter of any shape

  • duration2 – additive change to the duration2 parameter of Square or Triangle shapes

  • start – additive change to the start parameter of the Sawtooth shape

  • end – additive change to the end parameter of the Sawtooth shape

  • scale – additive change to the scale parameter of the Wave shape

  • pulsecount – additive change to the number of pulses in a train

  • pulseperiod – additive change to the period between pulses in a train

  • trainperiod – additive change to the period between trains in a series

(There is no traincount parameter that would modify the number of trains in a series, as our convention is that there is only a single series, which may be repeated verbatim.)

Applying changes to a parameter that does not exist for a given pulse may lead to unexpected behavior. For instance, you cannot change the duration of a Wave stimulus.

It is an error to apply changes to pulsecount or trainperiod on a per-pulse basis, but changing pulseperiod on a per-pulse basis is allowed.