pygsti.layouts.maplayout
Defines the MapCOPALayout class.
Module Contents
Classes
A circuit outcome probability array (COPA) layout for circuit simulation by state vector maps. |
- class pygsti.layouts.maplayout.MapCOPALayout(circuits, model, dataset=None, max_cache_size=None, num_sub_tables=None, num_table_processors=1, num_param_dimension_processors=(), param_dimensions=(), param_dimension_blk_sizes=(), resource_alloc=None, verbosity=0)
Bases:
pygsti.layouts.distlayout.DistributableCOPALayout
A circuit outcome probability array (COPA) layout for circuit simulation by state vector maps.
A simple distributed layout that divides a list of circuits among available processors and optionally supports caching “prefix” states that result from common prefixes found in the circuits.
Parameters
- circuitslist
A list of:class:Circuit objects representing the circuits this layout will include.
- modelModel
The model that will be used to compute circuit outcome probabilities using this layout. This model is used to complete and expand the circuits in circuits.
- datasetDataSet, optional
If not None, restrict the circuit outcomes stored by this layout to only the outcomes observed in this data set.
- max_cache_sizeint, optional
The maximum number of “prefix” quantum states that may be cached for performance. If None, there is no limit to how large the cache may be.
- num_sub_tablesint, optional
The number of groups (“sub-tables”) to divide the circuits into. This is the number of atoms for this layout.
- num_table_processorsint, optional
The number of atom-processors, i.e. groups of processors that process sub-tables.
- num_param_dimension_processorstuple, optional
A 1- or 2-tuple of integers specifying how many parameter-block processors are used when dividing the physical processors into a grid. The first and second elements correspond to counts for the first and second parameter dimensions, respecively.
- param_dimensionstuple, optional
The number of parameters along each parameter dimension. Can be an empty, 1-, or 2-tuple of integers which dictates how many parameter dimensions this layout supports.
- param_dimension_blk_sizestuple, optional
The parameter block sizes along each present parameter dimension, so this should be the same shape as param_dimensions. A block size of None means that there should be no division into blocks, and that each block processor computes all of its parameter indices at once.
- resource_allocResourceAllocation, optional
The resources available for computing circuit outcome probabilities.
- verbosityint or VerbosityPrinter
Determines how much output to send to stdout. 0 means no output, higher integers mean more output.