anchor.diff:          allocate(Evops(Nl1,Nl2,Nl1,Nl2,STEPS) )
           allocate(DEvops(Nl1,Nl2,Nl1,Nl2,STEPS) )
   
  -        allocate(Evops2(Nl1*Nl2,Nl1*Nl2) )
  -        allocate(DEvops2(Nl1*Nl2,Nl1*Nl2) )
  -        allocate(AAA(Nl1*Nl2,Nl1*Nl2) )
  -        allocate(VT(Nl1*Nl2,Nl1*Nl2) )
  -        allocate(U(Nl1*Nl2,Nl1*Nl2) )
  -        allocate(eigval(Nl1*Nl2) )
  -
           rho1    = 0.0_dp
           prhox1  = 0.0_dp
           prhodx1 = 0.0_dp
   
           Evops = 0.0_dp
           DEvops = 0.0_dp
  -
  -        Evops2 = 0.0_dp
  -        DEvops2 = 0.0_dp
  -        AAA = 0.0_dp
  -        VT = 0.0_dp
  -        U = 0.0_dp
  -        eigval = 0.0_dp
   
       end subroutine init_lindblad_fit
   
  
positive.code:     ! Do all the simulations within the module
      !
      subroutine do_lindblad_fit_work()
          integer(i4b) :: r,s,k,l,i
  
          call init_lindblad_fit()
  
  
negative.code: 
      subroutine calculate_coeff()
          integer(i4b) :: tind, i
          complex(dpc), dimension(:,:), allocatable            :: Evops2, Devops2, AAA, VT, U
          real(dp), dimension(:), allocatable                  :: eigval
  
          allocate(Evops2(Nl1*Nl2,Nl1*Nl2) )
          allocate(DEvops2(Nl1*Nl2,Nl1*Nl2) )
          allocate(AAA(Nl1*Nl2,Nl1*Nl2) )
          allocate(VT(Nl1*Nl2,Nl1*Nl2) )
          allocate(U(Nl1*Nl2,Nl1*Nl2) )
  
          allocate(eigval(Nl1*Nl2) )
  
          Evops2 = 0.0_dp
          DEvops2 = 0.0_dp
          AAA = 0.0_dp
          VT = 0.0_dp
          U = 0.0_dp
  
          eigval = 0.0_dp
  
          do tind=1,STEPS
            call superops_4indexed_to_2indexed(Evops(:,:,:,:,tind),Evops2,type)
  