transfer_functions module
Define instruments transfer functions.
These are the funtions converting acquisition voltages into actual physical quantities.
- current_probe(v_acq, a_probe)[source]
Convert acquisition voltage to multipactor current.
This is the transfer function of
CurrentProbe.\[i = a_\mathrm{probe} \times V_\mathrm{acq}\]- Parameters:
- Return type:
- Returns:
\(i\) in \(\mathrm{\mu A}\), which should be the content of the
NI9205_MPxlcolumns.
- field_probe(v_acq, g_probe, a_rack, b_rack, z_0=50.0)[source]
Convert acquisition voltage to coaxial voltage.
This is the transfer function of
FieldProbe.\[V_\mathrm{coax} = \sqrt{2\times Z_0 \times 10^{-3} \times 10^{ \frac{ a_\mathrm{rack}V_\mathrm{acq} + b_\mathrm{rack} + G_\mathrm{probe} + 3\mathrm{dB} }{ 10 }}}\]- Parameters:
v_acq (
ndarray[tuple[Any,...],dtype[double]]) – Acquisition voltage in \([0, 10~\mathrm{V}]\).g_probe (
float) – Total attenuation. Probe specific, also depends on frequency.a_rack (
float) – Rack calibration slope in \(\mathrm{dBm/V}\).b_rack (
float) – Rack calibration constant in \(\mathrm{dBm}\).z_0 (
float, default:50.0) – Line impedance in \(\mathrm{\Omega}\).
- Return type:
- Returns:
\(V_\mathrm{coax}\) in \(\mathrm{V}\), which should be the content of the
NI9205_Excolumns.
- field_probe_inv(v_coax, g_probe, a_rack, b_rack, z_0=50.0)[source]
Convert coaxial voltage to acquisition voltage.
This is the inverse of the function that is implemented in LabViewer.
- Parameters:
v_coax (
ndarray[tuple[Any,...],dtype[double]]) – \(V_\mathrm{coax}\) in \(\mathrm{V}\), which should be the content of theNI9205_Excolumns.g_probe (
float) – Total attenuation. Probe specific, also depends on frequency.a_rack (
float) – Rack calibration slope in \(\mathrm{dBm/V}\).b_rack (
float) – Rack calibration constant in \(\mathrm{dBm}\).z_0 (
float, default:50.0) – Line impedance in \(\mathrm{\Omega}\).
- Return type:
- Returns:
Acquisition voltage in \([0, 10~\mathrm{V}]\).
- power(v_acq, a_calib, b_calib, ensure_no_negative=False)[source]
Convert acquisition voltage to power.
This is the transfer function of
Power.\[P = a_\mathrm{calib} \times V_\mathrm{acq} + b_\mathrm{calib}\]Note
Original transfer function in LabView is:
\[P = |V_\mathrm{acq}| \times (``REC_LIM_UPP`` - ``REC_LIM_LOW``) + ``REC_LIM_LOW``.\]We removed the absolute value; to avoid negative powers (should not appear), use
ensure_no_negative=True.See also
- Parameters:
v_acq (
ndarray[tuple[Any,...],dtype[double]]) – Acquisition voltage in \([0, 1~\mathrm{V}]\) (not \(10~\mathrm{V}\)!).a_calib (
float) – Calibration slope in \(\mathrm{W/V}\).b_calib (
float) – Calibration offset in \(\mathrm{W}\).ensure_no_negative (
bool, default:False) – Set negative powers to \(0~\mathrm{V}\).
- Return type:
- Returns:
\(P\) in \(\mathrm{W}\), which should be the content of the
NI9205_Powerxcolumns.
- pressure(v_acq, a_calib, b_calib)[source]
Convert acquisition voltage to pressure.
This is the transfer function of
Penning.\[p = 10^{a_\mathrm{calib} \times V_\mathrm{acq} + b_\mathrm{calib}}\]- Parameters:
- Return type:
- Returns:
\(P\) in \(\mathrm{mbar}\), which should be the content of the
NI9205_PenningxandNI9205_bayard-alpertcolumns.