cuDensityMat (cuquantum.bindings.cudensitymat
)¶
Python objects & constants¶
Enums and constants¶
|
See |
|
|
|
|
|
|
|
|
|
Functions¶
Handle Management API¶
|
Creates and initializes the library context. |
|
Destroys the library context. |
Resets the current distributed execution configuration associated with the given library context. |
|
|
Returns the total number of distributed processes associated with the given library context. |
|
Returns the rank of the current process in the distributed configuration associated with the given library context. |
|
Resets the random seed used by the random number generator inside the library context. |
Memory Management API¶
|
Creates a workspace descriptor. |
|
Destroys a workspace descriptor. |
|
Queries the required workspace buffer size. |
|
Attaches memory to a workspace buffer. |
|
Retrieves a workspace buffer. |
Operator API¶
|
Creates an elementary tensor operator acting on a given number of quantum state modes (aka space modes). |
Destroys an elementary tensor operator. |
|
|
Creates an empty operator term which is going to be a sum of tensor products of individual tensor operators, where each individual tensor operator within a product acts on disjoint quantum state modes (quantum degrees of freedom). |
|
Destroys an operator term. |
Appends a product of elementary tensor operators acting on quantum state modes to the operator term. |
|
Appends a product of generic dense tensor operators acting on different quantum state modes to the operator term. |
|
|
Creates an empty operator which is going to be a collection of operator terms. |
|
Destroys an operator. |
|
Appends an operator term to the operator. |
|
Prepares the operator for an action on a quantum state. |
|
Computes the action of the operator on a given input quantum state, accumulating the result in the output quantum state (accumulative action). |
|
Creates an action descriptor for one or more operators, thus defining an aggregate action of the operator(s) on a set of input quantum states compliant with the operator domains, where all input quantum states can also be batched. |
|
Destroys the operator action descriptor. |
|
Prepares the (aggregate) operator(s) action for computation. |
|
Executes the action of one or more operators constituting the aggreggate operator(s) action on the same number of input quantum states, accumulating the results into a single output quantum state. |
Quantum State API¶
|
Defines an empty quantum state of a given purity and shape, or a batch of such quantum states. |
|
Destroys the quantum state. |
|
Queries the number of components (tensors) constituting the chosen quantum state representation (on the current process in multi-process runs). |
Queries the number of modes in a local component tensor (on the current process in multi-process runs). |
|
|
Queries information for a locally stored component tensor which represents either the full component or its slice (on the current process in multi-process runs). |
Attaches a user-owned GPU-accessible storage buffer for each component (tensor) constituting the quantum state representation (on the current process in multi-process runs). |
|
Queries the storage size (in bytes) for each component (tensor) constituting the quantum state representation (on the current process in multi-process runs). |
|
|
Initializes the quantum state to zero (null state). |
|
Initializes the quantum state to a random value. |
|
Computes the squared Frobenius norm(s) of the quantum state(s). |
|
Computes the trace(s) of the quantum state(s). |
|
Computes accumulation of a quantum state(s) into another quantum state(s) of compatible shape. |
|
Computes the inner product(s) between the left quantum state(s) and the right quantum state(s): < state(s)Left | state(s)Right >. |
Expectation API¶
|
Creates the operator expectation value computation object. |
|
Destroys an expectation value object. |
|
Prepares the expectation value object for computation. |
|
Computes the operator expectation value(s) with respect to the given quantum state(s). |