quairkit.operator.channel.custom

The source file of the classes for custom quantum channels.

class quairkit.operator.channel.custom.ChoiRepr(choi_repr, system_idx=None, acted_system_dim=2)

A custom channel in Choi representation.

Parameters:
choi_repr : Tensor

Choi operator of this channel.

system_idx : Iterable[Iterable[int]] | Iterable[int] | int

Indices of the systems on which this channel acts. Defaults to None.

acted_system_dim : List[int] | int

dimension of systems that this channel acts on. Can be a list of system dimensions or an int representing the dimension of all systems. Defaults to be qubit case.

class quairkit.operator.channel.custom.KrausRepr(kraus_repr, system_idx=None, acted_system_dim=2)

A custom channel in Kraus representation.

Parameters:
kraus_repr : Tensor | List[Tensor]

list of Kraus operators of this channel.

system_idx : Iterable[Iterable[int]] | Iterable[int] | int

Indices of the systems on which this channel acts. Defaults to None.

acted_system_dim : List[int] | int

dimension of systems that this channel acts on. Can be a list of system dimensions or an int representing the dimension of all systems. Defaults to be qubit case.

class quairkit.operator.channel.custom.StinespringRepr(stinespring_mat, system_idx=None, acted_system_dim=2)

A custom channel in Stinespring representation.

Parameters:
stinespring_mat : Tensor

Stinespring matrix that represents this channel.

system_idx : Iterable[Iterable[int]] | Iterable[int] | int

Indices of the systems on which this channel acts. Defaults to None.

acted_system_dim : List[int] | int

dimension of systems that this channel acts on. Can be a list of system dimensions or an int representing the dimension of all systems. Defaults to be qubit case.