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