CV Measurement

Implements the Measurement class for obtaining the capacitance-voltage profile.

class CapacitanceVoltageProfiling(frequency: float, start_voltage: float, end_voltage: float, voltage_step: float, oscillator_voltage: float | False, oscillator_current: float | False = False)[source]

Bases: Measurement

A Measurement class for obtaining the capacitance-voltage characteristic of a device.

Parameters:
  • frequency – The oscillator frequency of the applied AC field.

  • start_voltage – Begin of the measurement range in V.

  • end_voltage – End of the measurement range in V.

  • voltage_step – Voltage change for each datapoint in V. Must be larger than 0.

  • oscillator_voltage – Oscillating voltage level of the applied AC field. If set to None, the oscillator_current will be used.

  • oscillator_current – Oscillating current level of the applied AC field. Only used if oscillator_voltage is set to None.

Raises:

ValueError – If voltage_step is not larger than 0.

run(device: Device, data_stream: Queue | None = None) ndarray[source]

Performs the measurement by iterating over the voltage range and returns the results as structured array. If a data_stream queue is provided, the results will also be sent there.

Parameters:
  • device – An instance of a class which inherits the Device and complies with the required_channels.

  • data_stream – A queue-like object where the measurement results can be sent to, e.g., for real-time plotting of the measurement.

Returns:

A Numpy structured array with tuples of datapoints: (‘Magnitude (1)’, ‘Phase (deg)’).