nibcq.LCREISTestParameters

class nibcq.LCREISTestParameters

Bases: nibcq._lcr_acir.LCRTestParameters

Test parameters for LCR EIS multi-frequency impedance measurements.

Inherits from LCRTestParameters to share common LCR configuration fields. Unlike LCRACIR which measures at a single frequency (1000 Hz), EIS sweeps through multiple frequencies to characterize the frequency-dependent impedance behavior.

The frequency sweep is defined by a dictionary mapping each frequency (Hz) to its corresponding current amplitude (A). The sweep runs from highest to lowest frequency.

Note: The inherited current_amplitude field is not used directly. Instead, each frequency point in the sweep has its own current amplitude defined in frequency_sweep_characteristics.

cable_length

Cable length setting. Default is NI_STANDARD_1M (1 meter).

Type:

nidcpower.CableLength

voltage_range

Peak voltage range (10V or 40V), converted to RMS internally. Default is PEAK_10V (7V RMS).

Type:

LCRVoltageRange

open_compensation_enabled

Enable open compensation from onboard storage.

Type:

bool

short_compensation_enabled

Enable short compensation from onboard storage.

Type:

bool

load_compensation_enabled

Enable load compensation from onboard storage. Note: Load compensation requires both open AND short to be enabled.

Type:

bool

frequency_sweep_characteristics

Dictionary mapping frequency (Hz) to current amplitude (A). The sweep will be sorted and run from high to low frequency.

Type:

dict[float, float]

Examples

>>> # Direct instantiation
>>> params = LCREISTestParameters(
...     voltage_range=LCRVoltageRange.PEAK_10V,
...     frequency_sweep_characteristics={
...         10000.0: 0.07,
...         1000.0: 0.07,
...         100.0: 0.07,
...     },
... )
>>> # From JSON file
>>> params = LCREISTestParameters.from_file("config/lcr_eis_config.json")
classmethod from_json(json_data: Dict[str, Any]) LCREISTestParameters

Create LCREISTestParameters instance from JSON dictionary.

Parameters:

json_data (Dict[str, Any]) – Dictionary containing LCR EIS configuration data.

Returns:

Instance configured from JSON data.

Return type:

LCREISTestParameters

Raises:
  • LCRParameterError – If voltage range or current amplitude values are invalid.

  • FrequencyError – If frequency values are invalid or duplicated in the sweep.

classmethod from_file(file_path: str) LCREISTestParameters

Create LCREISTestParameters instance from JSON configuration file.

Parameters:

file_path (str) – Path to JSON configuration file.

Returns:

Instance configured from file.

Return type:

LCREISTestParameters

Raises: