mpylab.tools.ratio_conversion module

Conversions between amplitude and phase-bearing power-scaled ratios.

mpylab.tools.ratio_conversion.convert_transfer_ratio(quantity, target_unit)

Change a transfer ratio’s magnitude scale while retaining its phase.

Parameters:
  • quantity (scuq.quantities.Quantity) – Amplitude ratio or power-scaled transfer ratio. A complex POWERRATIO is interpreted as abs(S)**2 * exp(1j*phase(S)), as in polar dB DAT.

  • target_unit (scuq.units.Unit) – AMPLITUDERATIO or POWERRATIO.

Returns:

Converted ratio with the original SCUQ uncertainty dependencies. An unchanged unit returns the original object.

Return type:

scuq.quantities.Quantity

Raises:
  • TypeError – If quantity is not a SCUQ Quantity.

  • ValueError – If units, values or uncertainties are invalid, or a power-scaled zero with nonzero uncertainty has no differentiable amplitude conversion.

Notes

This is a transfer representation conversion. A physical, real power ratio is abs(S)**2 and discards phase; it is not this function’s complex output. No impedance renormalization is performed.