StateVevtor Subroutine

subroutine StateVevtor()

Uses

  • proc~~statevevtor~~UsesGraph proc~statevevtor StateVevtor module~basicmod basicmod proc~statevevtor->module~basicmod module~eosmod eosmod proc~statevevtor->module~eosmod module~fluxmod fluxmod proc~statevevtor->module~fluxmod module~config config module~basicmod->module~config module~fluxmod->module~basicmod

Arguments

None

Source Code

      subroutine StateVevtor
      use basicmod
      use fluxmod
      use eosmod
      implicit none
      integer::i,j,k

!$acc kernels
!$acc loop collapse(3) independent
      do k=1,kn-1
      do j=1,jn-1
      do i=1,in-1
         svc(nden,i,j,k) =  d(i,j,k)
         svc(nve1,i,j,k) = v1(i,j,k)
         svc(nve2,i,j,k) = v2(i,j,k)
         svc(nve3,i,j,k) = v3(i,j,k)
         
         svc(nene,i,j,k) = ei(i,j,k)/d(i,j,k)
         svc(npre,i,j,k) = ei(i,j,k)*(gam-1.0d0)
         svc(ncsp,i,j,k) = sqrt(gam*(gam-1.0d0)*ei(i,j,k)/d(i,j,k))
         p(i,j,k) = svc(npre,i,j,k)  ! for output boundary
         
         svc(nbm1,i,j,k) = b1(i,j,k)
         svc(nbm2,i,j,k) = b2(i,j,k)
         svc(nbm3,i,j,k) = b3(i,j,k)
         svc(nbps,i,j,k) = bp(i,j,k)
         svc(nst:ned,i,j,k) = Xcomp(1:ncomp,i,j,k)
            
      enddo
      enddo
      enddo
!$acc end kernels

      return
      end subroutine StateVevtor