BoundaryInterp_Scalar1D_t Subroutine

public subroutine BoundaryInterp_Scalar1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(Scalar1D_t), intent(inout) :: this

Contents


Source Code

  subroutine BoundaryInterp_Scalar1D_t(this)
    implicit none
    class(Scalar1D_t),intent(inout) :: this
    ! Local
    integer :: ii,iel,ivar
    real(prec) :: fbl,fbr

    do concurrent(iel=1:this%nElem,ivar=1:this%nVar)
      fbl = 0.0_prec
      fbr = 0.0_prec
      do ii = 1,this%N+1
        fbl = fbl+this%interp%bMatrix(ii,1)*this%interior(ii,iel,ivar) ! West
        fbr = fbr+this%interp%bMatrix(ii,2)*this%interior(ii,iel,ivar) ! East
      enddo
      this%boundary(1,iel,ivar) = fbl
      this%boundary(2,iel,ivar) = fbr
    enddo

  endsubroutine BoundaryInterp_Scalar1D_t