pygsti.do_lgst¶
-
pygsti.
do_lgst
(dataset, specs, targetGateset=None, gateLabels=None, gateLabelAliases={}, spamDict=None, guessGatesetForGauge=None, svdTruncateTo=0, identityVec=None, verbosity=0)¶ Performs Linear-inversion Gate Set Tomography on the dataset.
Parameters: - dataset (DataSet) – The data used to generate the LGST estimates
- specs (2-tuple) – A (prepSpecs,effectSpecs) tuple usually generated by calling build_spam_specs(...)
- targetGateset (GateSet, optional) – A gateset used to specify which gate labels should be estimated, a guess for the in which gauge these estimates should be returned, and the SPAM labels used to connect the dataset values to rhoVec and EVec indices.
- gateLabels (list, optional) – A list of which gate labels (or aliases) should be estimated. Defaults to the gate labels in targetGateset. e.g. [‘Gi’,’Gx’,’Gy’,’Gx2’]
- gateLabelAliases (dictionary, optional) – Dictionary whose keys are gate label “aliases” and whose values are tuples corresponding to what that gate label should be expanded into before querying the dataset. Defaults to the empty dictionary (no aliases defined) e.g. gateLabelAliases[‘Gx^3’] = (‘Gx’,’Gx’,’Gx’)
- spamDict (dictionary, optional) – Dictionary mapping (rhoVec_index,EVec_index) integer tuples to string spam labels. Defaults to the spam dictionary of targetGateset e.g. spamDict[(0,0)] == “plus”
- guessGatesetForGauge (GateSet, optional) – A gateset used to compute a gauge transformation that is applied to the LGST estimates before they are returned. This gauge transformation is computed such that if the estimated gates matched the gateset given, then the gate matrices would match, i.e. the gauge would be the same as the gateset supplied. Defaults to targetGateset.
- svdTruncateTo (int, optional) – The Hilbert space dimension to truncate the gate matrices to using a SVD to keep only the largest svdToTruncateTo singular values of the I_tildle LGST matrix. Defaults to 0 (no truncation)
- identityVec (numpy array, optional) – The vectorized identity density matrix in whatever basis is being used. Size should be [ dmDim^2, 1], e.g. numpy.array([[1.41],[0],[0],[0]]). Defaults to that of the targetGateset.
- verbosity (int, optional) – How much detail to send to stdout.
Returns: A gateset containing all of the estimated labels (or aliases)
Return type: Gateset