anchor.diff:    use moduleWrite,only:t
     double precision flux,source,error,buff,Dist,conds,newconds,area
     double precision lookupTab ! functions
  +  double precision dPF,sf(3),tf(3),rf(3),gradTf(3),Afs
     allocate(newTemp(-nFacet:nEle))
     allocate(newe(1:nEle))
     allocate(newcond(-nFacet:nEle))
  
positive.code:               exit
              end if
            end do
            flux=flux+0.5d0*conds*area/Dist*(Temp(i)-Temp(Ele(i)%Neib(j))& ! explicit
            &                               +auxTcorr(i,j)-auxTcorr(Ele(i)%Neib(j),k))&
            &        +0.5d0*newconds*area/Dist*(newTemp(i)-newTemp(Ele(i)%Neib(j))& ! implicit
            &                                  +auxTcorr(i,j)-auxTcorr(Ele(i)%Neib(j),k))
          end if
        end do
        
  
negative.code:     ! solve
      !$omp parallel do &
      !$omp default(shared) &
      !$omp private(flux,source,Dist,area,conds,newconds,buff,i,j,k,dPF,sf,tf,rf,gradTf,Afs) &
      !$omp reduction(max:error)
      do i=1,nEle
        flux=0d0
  