Esempio n. 1
0
    def _toSLH(self):

        a = Destroy(self.space)
        a_d = a.adjoint()

        S = identity_matrix(1)


        # Include the Hamiltonian only with the first port of the kerr cavity circuit object
        H = self.Delta * a_d * a + (I / 2) * (self.alpha * a_d * a_d - self.alpha.conjugate() * a * a)
        L = Matrix([[sqrt(self.kappa) * a]])

        return SLH(S, L, H)
    def _toSLH(self):

        a = Destroy(self.space)
        a_d = a.adjoint()
        S = identity_matrix(1)
        kappas = [self.kappa_1, self.kappa_2, self.kappa_3]
        kappa = kappas[self.sub_index]
        
        L = Matrix([[sqrt(kappa) * a]])
        # Include the Hamiltonian only with the first port of the kerr cavity circuit object
        H = self.Delta * (a_d * a) + self.chi * (a_d * a_d * a * a) if self.sub_index == 0 else 0
                
        return SLH(S, L, H)
Esempio n. 3
0
    def _toSLH(self):

        a = Destroy(self.space)
        a_d = a.adjoint()
        S = identity_matrix(1)
        kappas = [self.kappa_1, self.kappa_2, self.kappa_3]
        kappa = kappas[self.sub_index]

        L = Matrix([[sqrt(kappa) * a]])
        # Include the Hamiltonian only with the first port of the kerr cavity circuit object
        H = self.Delta * (a_d * a) + self.chi * (
            a_d * a_d * a * a) if self.sub_index == 0 else 0

        return SLH(S, L, H)
Esempio n. 4
0
    def _toSLH(self):

        a = Destroy(self.space)
        a_d = a.adjoint()
        S = identity_matrix(1)

        if self.sub_index == 0:
            # Include the Hamiltonian only with the first port of the kerr cavity circuit object
            H = self.Delta * (a_d * a)
            L = Matrix([[sqrt(self.kappa_1) * a]])
        else:
            H = 0
            L = Matrix([[sqrt(self.kappa_2) * a]])

        return SLH(S, L, H)
    def _toSLH(self):

        sigma_p = LocalSigma(self.tls_space, 'h','g')
        sigma_m = sigma_p.adjoint()

        
        a = Destroy(self.fock_space)
        a_d = a.adjoint()
        
        #coupling to external mode
        L = sqrt(self.kappa) * a
        
        H = self.Delta_f * a_d * a + self.Delta_a * sigma_p * sigma_m + I * self.g * (sigma_p * a - sigma_m * a_d)
        
        return SLH(Matrix([[1]]), Matrix([[L]]), H)
    def _toSLH(self):

        sigma_p = LocalSigma(self.tls_space, 'h', 'g')
        sigma_m = sigma_p.adjoint()

        a = Destroy(self.fock_space)
        a_d = a.adjoint()

        #coupling to external mode
        L = sqrt(self.kappa) * a

        H = self.Delta_f * a_d * a + self.Delta_a * sigma_p * sigma_m + I * self.g * (
            sigma_p * a - sigma_m * a_d)

        return SLH(Matrix([[1]]), Matrix([[L]]), H)
    def _toSLH(self):

        if self.sub_index == 0:

            sigma_p = LocalSigma(self.tls_space, 'h','g')
            sigma_m = sigma_p.adjoint()


            a = Destroy(self.fock_space)
            a_d = a.adjoint()

            #coupling to external mode
            L = sqrt(self.kappa_1) * a

            H = self.Delta_f * a_d * a + self.Delta_a * sigma_p * sigma_m + I * self.g * (sigma_p * a - sigma_m * a_d)

        elif self.sub_index == 1:
            a = Destroy(self.fock_space)
            L = sqrt(self.kappa_2) * a
            H = ZeroOperator

        return SLH(Matrix([[1]]), Matrix([[L]]), H)