anchor.diff:          end do
         end if
   
  -      result = result * arbitrary_basis_element(tt)
  +      result = result * arbitrary_basis_element(t)
   
       end subroutine Lmult1
   
  
positive.code:     subroutine clean_lindblad_fit()
      end subroutine clean_lindblad_fit
  
      subroutine Lmult1 (tt, rhoin, result)
        complex(dpc), intent(in)   :: rhoin(:,:)
        real(dp), intent(in)       :: tt
        complex(dpc), intent(out)  :: result(:,:)
        integer(i4b) :: i
        complex(dpc), parameter:: iconst = dcmplx(0.0, 1.0)
  
negative.code:         call read_evops('E', Uee)
          call close_files('E')
  
          call create_design_matrix(A,B)
  
          call svd(A,U,EIGVAL,VT)
  
          write(*,*) EIGVAL
  
          if(EIGVAL(1) <= 0) then
            write(*,*) 'terrible error in SVD'
            stop
          end if
  
          ! reciprocal eigvals
          do i=1, size(EIGVAL)
            if(EIGVAL(i)/EIGVAL(1) > 1e-7*size(EIGVAL)) then
              EIGVAL(i) = 1.0_dp / EIGVAL(i)
            else
              EIGVAL(i) = 0.0_dp
            end if
          end do
  
          write(*,*) EIGVAL
  
          do i=1, size(EIGVAL)
            write(*,*) dot_product(U(:,i),B)*EIGVAL(i)*conjg(VT(i,:))
            write(*,*)
          end do
  
      end subroutine do_lindblad_fit_work
  
  