quchip.engine.reference

Reference-plane transforms applied outside the Markovian core.

Functions

carrier_transfer(elements, carrier[, xp])

Return the narrowband filter transfer of one reference leg.

cw_transfer(elements, frequency[, xp])

Return the exact continuous-wave transfer of one reference leg.

has_amplifier(elements)

Return True when elements contains an amplifier.

has_colored_noise(elements)

Return whether a potentially occupied source emits colored noise.

has_filter(elements)

Return whether a reference leg contains a filter section.

noise_colors(elements)

Mark sources whose emission passes through a frequency-dependent filter.

noise_contributions(elements, frequency[, xp])

Return the chain's output-referred normally ordered added noise density.

noise_density(elements, frequency[, xp])

Return total normally ordered added noise from the source-wise propagation.

source_occupation(element)

Return a declared source occupation, or None for implicit vacuum.

time_shift(elements)

Return the summed delay duration of one reference leg, in ns.

Classes

FieldChannel(key, reference[, input_occupation])

Field metadata shared by mode-space and operator-space acquisition.

ReferenceAmplifier(label, gain, added_noise)

A phase-preserving output-line amplifier.

ReferenceDelay(label, duration)

One reference section with propagation duration duration ns.

ReferenceFilter(label, transfer, parameters)

One passive filter reference section and its tracked parameters.

ReferenceLoss(label, eta[, occupation])

One directed traversal of a matched passive output-line component.

ReferencePlane([inbound, outbound])

Inbound and outbound reference runs for one exposure, in propagation order.

class quchip.engine.reference.ReferenceDelay(label, duration)[source]

Bases: object

One reference section with propagation duration duration ns.

label: str
duration: Any
property tracked_values: tuple[Any, ...]

Return the values that can carry JAX tracers.

class quchip.engine.reference.ReferenceFilter(label, transfer, parameters, loss_occupation=None)[source]

Bases: object

One passive filter reference section and its tracked parameters.

transfer(frequency, **parameters) accepts a scalar or array frequency in GHz and returns a complex amplitude transfer.

label: str
transfer: Callable[[...], Any]
parameters: Mapping[str, Any]
loss_occupation: Any = None
property tracked_values: tuple[Any, ...]

Return the values that can carry JAX tracers.

class quchip.engine.reference.ReferenceAmplifier(label, gain, added_noise)[source]

Bases: object

A phase-preserving output-line amplifier.

gain is the power gain G. added_noise is the input-referred symmetrized noise n_add in quanta, with the quantum floor (1 - 1/G) / 2.

label: str
gain: Any
added_noise: Any
property tracked_values: tuple[Any, ...]

Return the values that can carry JAX tracers.

property added_noise_density: Any

Return the output-referred normally ordered added noise density.

For power gain G and input-referred noise n_add, the density is G n_add + (G - 1) / 2.

class quchip.engine.reference.ReferenceLoss(label, eta, occupation=None)[source]

Bases: object

One directed traversal of a matched passive output-line component.

label: str
eta: Any
occupation: Any = None
property tracked_values: tuple[Any, ...]

Return numerical source and transmission parameters.

class quchip.engine.reference.ReferencePlane(inbound=(), outbound=())[source]

Bases: object

Inbound and outbound reference runs for one exposure, in propagation order.

inbound: tuple[ReferenceDelay | ReferenceFilter | ReferenceAmplifier | ReferenceLoss, ...] = ()
outbound: tuple[ReferenceDelay | ReferenceFilter | ReferenceAmplifier | ReferenceLoss, ...] = ()
class quchip.engine.reference.FieldChannel(key, reference, input_occupation=None)[source]

Bases: object

Field metadata shared by mode-space and operator-space acquisition.

key: str
reference: ReferencePlane
input_occupation: Any = None
quchip.engine.reference.cw_transfer(elements, frequency, xp=None)[source]

Return the exact continuous-wave transfer of one reference leg.

At frequency in GHz, each delay contributes exp(+i 2π frequency duration) and each filter contributes H(frequency). Delay durations are in ns.

quchip.engine.reference.carrier_transfer(elements, carrier, xp=None)[source]

Return the narrowband filter transfer of one reference leg.

Evaluate every filter at carrier in GHz. Ignore delays because transient propagation applies them as time shifts.

quchip.engine.reference.noise_contributions(elements, frequency, xp=None)[source]

Return the chain’s output-referred normally ordered added noise density.

At frequency in GHz, walk elements in propagation order. A filter applies N <- |H(f)|^2 N. An amplifier applies N <- G N + G n_add + (G - 1) / 2.

quchip.engine.reference.noise_density(elements, frequency, xp=None)[source]

Return total normally ordered added noise from the source-wise propagation.

quchip.engine.reference.noise_colors(elements)[source]

Mark sources whose emission passes through a frequency-dependent filter.

quchip.engine.reference.has_colored_noise(elements)[source]

Return whether a potentially occupied source emits colored noise.

quchip.engine.reference.source_occupation(element)[source]

Return a declared source occupation, or None for implicit vacuum.

quchip.engine.reference.has_filter(elements)[source]

Return whether a reference leg contains a filter section.

quchip.engine.reference.has_amplifier(elements)[source]

Return True when elements contains an amplifier.

quchip.engine.reference.time_shift(elements)[source]

Return the summed delay duration of one reference leg, in ns.