subroutine ConsvVariable use basicmod implicit none integer::i,j,k !$acc kernels !$acc loop collapse(3) independent do k=ks,ke do j=js,je do i=is,ie et(i,j,k) = 0.5d0*d(i,j,k)*( & & +v1(i,j,k)**2 & & +v2(i,j,k)**2 & & +v3(i,j,k)**2) & & +0.5d0*( & & +b1(i,j,k)**2 & & +b2(i,j,k)**2 & & +b3(i,j,k)**2) & & +ei(i,j,k) mv1(i,j,k) =d(i,j,k)*v1(i,j,k) mv2(i,j,k) =d(i,j,k)*v2(i,j,k) mv3(i,j,k) =d(i,j,k)*v3(i,j,k) DXcomp(1:ncomp,i,j,k) = d(i,j,k)*Xcomp(1:ncomp,i,j,k) enddo enddo enddo !$acc end kernels return end subroutine Consvvariable