ply_calcDiff_leg_normal Subroutine

public subroutine ply_calcDiff_leg_normal(legCoeffs, legCoeffsDiff, mPd, nVars, elemLength, iDir, dirVec)

do IDeg1 = 1, mPd+1 do IDeg2 = 1, mPd=1 !! iDeg2 = mod(iDeg-1,mpd+1)+1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

do iDeg1 = 1, mPd+1 do iDeg2 = 1, mPd+1 do iDeg3 = 1, mPd+1 leg = (/iDeg1, iDeg2, iDeg3/) dofPos = 1 + (iDeg1-1) & & + (iDeg2-1)(mPd+1) & & + (iDeg3-1)(mPd+1)(mPd+1) legCoeffsDiff(dofPos,:,iDir) = legCoeffsDiff(dofPos,:,iDir) & & * (2.0_rk/elemLength) & & * (2.0_rkleg(iDir) - 1.0_rk) end do end do end do

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in) :: legCoeffs(:,:)
real(kind=rk), intent(inout) :: legCoeffsDiff(:,:)

Modal expansion of the derivative of legCoeffs in terms of Legendre modal coefficients. \n First index is the number of modal coefficients. \n Second index is the number of velocity components \n Third index is the number of partial derivatives, i.e. 3 in 3D.

integer, intent(in) :: mPd
integer, intent(in) :: nVars

The number of varibales to differentiate

real(kind=rk), intent(in) :: elemLength

The physical length of the element to build the derivatives for.

integer, intent(in) :: iDir

The direction to differentiate

integer, optional :: dirVec(3)

The direction vector for the rotation


Called by

proc~~ply_calcdiff_leg_normal~~CalledByGraph proc~ply_calcdiff_leg_normal ply_calcDiff_leg_normal proc~atl_modg_heat_physflux atl_modg_heat_physFlux proc~atl_modg_heat_physflux->proc~ply_calcdiff_leg_normal