Class ThermalLossChannel

Inheritance Relationships

Base Type

Class Documentation

class ThermalLossChannel : public blackbird::Operation

Represents the thermal loss channel For more details, see the Strawberry Fields convention page.

Loss parameter \(T\) and mean thermal population \(\bar{n}\) accessible via:

  • \(T\): ThermalLossChannel->f1
  • \(\bar{n}\): ThermalLossChannel->f2

Public Functions

ThermalLossChannel(complexvec phi, intvec m)

Constructor that throws an error if complex parameters are provided.

Parameters
  • phi: vector<complex<double>> parameters
  • m: vector<int> containing mode the gate acts on
Exceptions
  • invalid_argument: Operation must have real arguments

ThermalLossChannel(intvec phi, intvec m)

Constructor that throws an error if complex parameters are provided.

Parameters
  • phi: vector<complex<double>> parameters
  • m: vector<int> containing mode the gate acts on
Exceptions
  • invalid_argument: Operation must have real arguments

ThermalLossChannel(floatvec T, intvec m)

Constructor to initialize a thermal loss channel acting on modes m

Parameters
  • T: vector<double> of length 2 containing the parameter and thermal population
  • m: vector<int> containing mode the gate acts on