quchip.extensions.couplings

Reference coupling models with time dependence and coupling-owned loss.

Classes

CollectiveDecayCoupling(device_a, device_b)

Exchange coupling with an equal-phase collective decay channel.

ModulatedCapacitive(device_a, device_b[, ...])

Capacitive interaction with a prescribed sinusoidal strength variation.

class quchip.extensions.couplings.ModulatedCapacitive(device_a, device_b, static_strength=unbound, modulation_amplitude=unbound, modulation_frequency=unbound, modulation_phase=0.0, *, label=None)[source]

Bases: CouplingModel

Capacitive interaction with a prescribed sinusoidal strength variation.

Parameters:
static_strength: Any = Parameter(default=unbound, positive=False, nonnegative=False, serialize=True, unit='GHz', symbol='g_0', noise=False, kw_only=False, required=False)
modulation_amplitude: Any = Parameter(default=unbound, positive=False, nonnegative=False, serialize=True, unit='GHz', symbol='\\delta g', noise=False, kw_only=False, required=False)
modulation_frequency: Any = Parameter(default=unbound, positive=True, nonnegative=False, serialize=True, unit='GHz', symbol='\\nu_m', noise=False, kw_only=False, required=False)
modulation_phase: Any = Parameter(default=0.0, positive=False, nonnegative=False, serialize=True, unit='rad', symbol='\\phi_m', noise=False, kw_only=False, required=False)
interaction(a, b, p)[source]

Return the full two-body interaction expression.

Parameters:
  • a (EndpointOps) – Operator namespaces for the two coupled endpoints. Same-endpoint operators compose with @; cross-endpoint operators combine with * (tensor product).

  • b (EndpointOps) – Operator namespaces for the two coupled endpoints. Same-endpoint operators compose with @; cross-endpoint operators combine with * (tensor product).

  • p (Any)

Returns:

The interaction Hamiltonian expression, in ordinary-frequency units (GHz).

Return type:

PhysicsExpr

time_terms(a, b, p)[source]

Return time-dependent interaction terms.

Parameters:
  • a (EndpointOps) – Operator namespaces for the two coupled endpoints.

  • b (EndpointOps) – Operator namespaces for the two coupled endpoints.

  • p (Any)

Returns:

Local operators and their scalar time coefficients. The empty tuple denotes a purely static coupling.

Return type:

tuple of TimeDependentTerm

class quchip.extensions.couplings.CollectiveDecayCoupling(device_a, device_b, exchange_strength=unbound, *, decay_rate=unbound, label=None)[source]

Bases: CouplingModel

Exchange coupling with an equal-phase collective decay channel.

Parameters:
exchange_strength: Any = Parameter(default=unbound, positive=False, nonnegative=False, serialize=True, unit='GHz', symbol='g', noise=False, kw_only=False, required=False)
decay_rate: Any = Parameter(default=unbound, positive=False, nonnegative=True, serialize=True, unit='1/ns', symbol='\\gamma_c', noise=True, kw_only=True, required=False)
interaction(a, b, p)[source]

Return the full two-body interaction expression.

Parameters:
  • a (EndpointOps) – Operator namespaces for the two coupled endpoints. Same-endpoint operators compose with @; cross-endpoint operators combine with * (tensor product).

  • b (EndpointOps) – Operator namespaces for the two coupled endpoints. Same-endpoint operators compose with @; cross-endpoint operators combine with * (tensor product).

  • p (Any)

Returns:

The interaction Hamiltonian expression, in ordinary-frequency units (GHz).

Return type:

PhysicsExpr

dissipation(a, b, p)[source]

Return authored two-endpoint Lindblad channels.

Parameters:
Return type:

tuple[CollapseChannel, …]