| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(Scalar1D_t), | intent(in) | :: | this | |||
| real(kind=prec), | intent(inout) | :: | f(1:this%M+1,1:this%nelem,1:this%nvar) | 
  subroutine GridInterp_Scalar1D_t(this,f)
    implicit none
    class(Scalar1D_t),intent(in) :: this
    real(prec),intent(inout) :: f(1:this%M+1,1:this%nelem,1:this%nvar)
    ! Local
    integer :: iel,ivar,i,ii
    real(prec) :: floc
    do concurrent(i=1:this%M+1,iel=1:this%nElem,ivar=1:this%nVar)
      floc = 0.0_prec
      do ii = 1,this%N+1
        floc = floc+this%interp%iMatrix(ii,i)*this%interior(ii,iel,ivar)
      enddo
      f(i,iel,ivar) = floc
    enddo
  endsubroutine GridInterp_Scalar1D_t