Qrack  9.0
General classical-emulating-quantum development framework
Public Member Functions | Public Attributes | List of all members
Qrack::HamiltonianOp Struct Reference

A Hamiltonian can be specified in terms of arbitrary controlled single bit gates, each one an "HamiltonianOp.". More...

#include <hamiltonian.hpp>

Inheritance diagram for Qrack::HamiltonianOp:
Inheritance graph
[legend]

Public Member Functions

 HamiltonianOp ()
 
 HamiltonianOp (bitLenInt target, BitOp mtrx)
 
 HamiltonianOp (const std::vector< bitLenInt > &ctrls, bitLenInt target, BitOp mtrx, bool antiCtrled=false, const std::vector< bool > &ctrlToggles=std::vector< bool >())
 

Public Attributes

bitLenInt targetBit
 
bool anti
 
bool uniform
 
BitOp matrix
 
std::vector< bitLenIntcontrols
 
std::vector< bool > toggles
 

Detailed Description

A Hamiltonian can be specified in terms of arbitrary controlled single bit gates, each one an "HamiltonianOp.".

Constructor & Destructor Documentation

◆ HamiltonianOp() [1/3]

Qrack::HamiltonianOp::HamiltonianOp ( )
inline

◆ HamiltonianOp() [2/3]

Qrack::HamiltonianOp::HamiltonianOp ( bitLenInt  target,
BitOp  mtrx 
)
inline

◆ HamiltonianOp() [3/3]

Qrack::HamiltonianOp::HamiltonianOp ( const std::vector< bitLenInt > &  ctrls,
bitLenInt  target,
BitOp  mtrx,
bool  antiCtrled = false,
const std::vector< bool > &  ctrlToggles = std::vector<bool>() 
)
inline

Member Data Documentation

◆ anti

bool Qrack::HamiltonianOp::anti

◆ controls

std::vector<bitLenInt> Qrack::HamiltonianOp::controls

◆ matrix

BitOp Qrack::HamiltonianOp::matrix

◆ targetBit

bitLenInt Qrack::HamiltonianOp::targetBit

◆ toggles

std::vector<bool> Qrack::HamiltonianOp::toggles

◆ uniform

bool Qrack::HamiltonianOp::uniform

The documentation for this struct was generated from the following file: