hbc2d_NoNormalFlow_LinearEuler2D_t Function

public pure function hbc2d_NoNormalFlow_LinearEuler2D_t(this, s, nhat) result(exts)

Arguments

TypeIntentOptionalAttributesName
class(LinearEuler2D_t), intent(in) :: this
real(kind=prec), intent(in) :: s(1:this%nvar)
real(kind=prec), intent(in) :: nhat(1:2)

Return Value real(kind=prec)(1:this%nvar)


Contents


Source Code

  pure function hbc2d_NoNormalFlow_LinearEuler2D_t(this,s,nhat) result(exts)
    class(LinearEuler2D_t),intent(in) :: this
    real(prec),intent(in) :: s(1:this%nvar)
    real(prec),intent(in) :: nhat(1:2)
    real(prec) :: exts(1:this%nvar)
    ! Local
    integer :: ivar

    exts(1) = s(1) ! density
    exts(2) = (nhat(2)**2-nhat(1)**2)*s(2)-2.0_prec*nhat(1)*nhat(2)*s(3) ! u
    exts(3) = (nhat(1)**2-nhat(2)**2)*s(3)-2.0_prec*nhat(1)*nhat(2)*s(2) ! v
    exts(4) = s(4) ! p

  endfunction hbc2d_NoNormalFlow_LinearEuler2D_t