Beispiel #1
0
 def __init__(self, state_space, basis, evotype='default'):
     state_space = _StateSpace.cast(state_space)
     evotype = _Evotype.cast(str(evotype), default_prefer_dense_reps=True)  # since we use deriv_wrt_params
     errgen = _op.LindbladErrorgen.from_operation_matrix(
         _np.identity(state_space.dim, 'd'), "H", basis, mx_basis=basis, evotype=evotype)
     operation = _op.ExpErrorgenOp(errgen)
     OpGaugeGroup.__init__(self, operation, UnitaryGaugeGroupElement, "Unitary")
Beispiel #2
0
 def __init__(self, state_space, evotype='default'):
     state_space = _StateSpace.cast(state_space)
     dim = state_space.dim
     ltrans = _np.identity(dim, 'd')
     rtrans = _np.identity(dim, 'd')
     baseMx = _np.identity(dim, 'd')
     parameterArray = _np.zeros(dim, 'd')
     parameterToBaseIndicesMap = {i: [(i, i)] for i in range(dim)}
     operation = _op.LinearlyParamArbitraryOp(baseMx, parameterArray,
                                              parameterToBaseIndicesMap,
                                              ltrans, rtrans, real=True,
                                              evotype=evotype, state_space=state_space)
     OpGaugeGroup.__init__(self, operation, DiagGaugeGroupElement, "Diagonal")
Beispiel #3
0
 def __init__(self, state_space, evotype='default'):
     """
     Create a new gauge group with gauge-transform dimension `dim`, which
     should be the same as `mdl.dim` where `mdl` is a :class:`Model` you
     might gauge-transform.
     """
     state_space = _StateSpace.cast(state_space)
     dim = state_space.dim
     ltrans = _np.identity(dim, 'd')
     rtrans = _np.identity(dim, 'd')
     baseMx = _np.identity(dim, 'd')
     parameterArray = _np.zeros(1, 'd')
     parameterToBaseIndicesMap = {0: [(i, i) for i in range(1, dim)]}
     operation = _op.LinearlyParamArbitraryOp(baseMx, parameterArray,
                                              parameterToBaseIndicesMap,
                                              ltrans, rtrans, real=True,
                                              evotype=evotype, state_space=state_space)
     OpGaugeGroup.__init__(self, operation, TPSpamGaugeGroupElement, "TP Spam")
Beispiel #4
0
 def __init__(self, state_space):
     state_space = _StateSpace.cast(state_space)
     self.state_space = state_space
     GaugeGroup.__init__(self, "Trivial")
Beispiel #5
0
 def __init__(self, state_space, evotype='default'):
     state_space = _StateSpace.cast(state_space)
     operation = _op.FullTPOp(_np.identity(state_space.dim, 'd'), evotype, state_space)
     OpGaugeGroup.__init__(self, operation, TPGaugeGroupElement, "TP")