Developing for QuOp_MPI

Propagator Modules

A propagator module consists of an Unitary that implements the methods:

The propagate() method computes the action of a phase-shift or mixing using a method that is compatible with QuOp_MPI’s parallel partitioning scheme for Quantum simulation. The plan() and copy_plan() handle the generation of parallel partitioning schemes and the copying of parallel partitioning schemes from other unitary instances. The plan() and destroy() methods handle the allocation and freeing of memory that is managed by Python extension modules that are called by propagate().

A propagator() module should also implement an operator submodule containing Operator Functions that are compatible with the implemented propagate() method.