qiskit.result.marginal_memory
marginal_memory(memory, indices=None, int_return=False, hex_return=False, avg_data=False, parallel_threshold=1000)
Marginalize shot memory
This function is multithreaded and will launch a thread pool with threads equal to the number of CPUs by default. You can tune the number of threads with the RAYON_NUM_THREADS
environment variable. For example, setting RAYON_NUM_THREADS=4
would limit the thread pool to 4 threads.
Parameters
- memory (List[str] | ndarray) – The input memory list, this is either a list of hexadecimal strings to be marginalized representing measure level 2 memory or a numpy array representing level 0 measurement memory (single or avg) or level 1 measurement memory (single or avg).
- indices (List[int] | None) – The bit positions of interest to marginalize over. If
None
(default), do not marginalize at all. - int_return (bool) – If set to
True
the output will be a list of integers. By default the return type is a bit string. This andhex_return
are mutually exclusive and can not be specified at the same time. This option only has an effect with memory level 2. - hex_return (bool) – If set to
True
the output will be a list of hexadecimal strings. By default the return type is a bit string. This andint_return
are mutually exclusive and can not be specified at the same time. This option only has an effect with memory level 2. - avg_data (bool) – If a 2 dimensional numpy array is passed in for
memory
this can be set toTrue
to indicate it’s a avg level 0 data instead of level 1 single data. - parallel_threshold (int) – The number of elements in
memory
to start running in multiple threads. Iflen(memory)
is >= this value, the function will run in multiple threads. By default this is set to 1000.
Returns
The list of marginalized memory
Return type
marginal_memory
Raises
ValueError – if both int_return
and hex_return
are set to True
Was this page helpful?
Report a bug or request content on GitHub.