DiagonalOp Struct Reference

Represents a diagonal complex operator on the full Hilbert state of a Qureg. More...

#include <QuEST.h>

Data Fields

int chunkId
 The position of the chunk of the operator held by this process in the full operator. More...
 
ComplexArray deviceOperator
 A copy of the elements stored persistently on the GPU. More...
 
qrealimag
 The imaginary values of the 2^numQubits complex elements. More...
 
int numChunks
 The number of nodes between which the elements of this operator are split. More...
 
long long int numElemsPerChunk
 The number of the 2^numQubits amplitudes stored on each distributed node. More...
 
int numQubits
 The number of qubits this operator can act on (informing its size) More...
 
qrealreal
 The real values of the 2^numQubits complex elements. More...
 

Detailed Description

Represents a diagonal complex operator on the full Hilbert state of a Qureg.

The operator need not be unitary nor Hermitian (which would constrain it to real values)

Author
Tyson Jones

Field Documentation

◆ chunkId

int DiagonalOp::chunkId

The position of the chunk of the operator held by this process in the full operator.

Referenced by TEST_CASE().

◆ deviceOperator

ComplexArray DiagonalOp::deviceOperator

A copy of the elements stored persistently on the GPU.

Referenced by functor_getDiagonalOpAmp::operator()(), and functor_multDiagOntoDensMatr::operator()().

◆ imag

qreal* DiagonalOp::imag

The imaginary values of the 2^numQubits complex elements.

Referenced by TEST_CASE(), and toQVector().

◆ numChunks

int DiagonalOp::numChunks

The number of nodes between which the elements of this operator are split.

Referenced by TEST_CASE().

◆ numElemsPerChunk

long long int DiagonalOp::numElemsPerChunk

The number of the 2^numQubits amplitudes stored on each distributed node.

Referenced by TEST_CASE(), and toQVector().

◆ numQubits

int DiagonalOp::numQubits

The number of qubits this operator can act on (informing its size)

Referenced by initDiagonalOp(), functor_multDiagOntoDensMatr::operator()(), TEST_CASE(), toQMatrix(), and toQVector().

◆ real

qreal* DiagonalOp::real

The real values of the 2^numQubits complex elements.

Referenced by TEST_CASE(), and toQVector().


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