fricVel_musker_newton Subroutine

private subroutine fricVel_musker_newton(velTau, velSW, distToBnd, viscKine, nElems)

This routine computes friction velocity from Musker wall model profile using Newton iteration method


real(kind=rk), intent(inout) :: velTau(:)

Friction velocity computed from wall model. it is inout to provide velTau from previous timestep as initial velTau for fixed-point or Newton iteration solver

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

Stream-wise velocity component from which friction velocity is computed

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

Distance to the boundary in the discrete normai direction

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

Kinematic viscosity

integer, intent(in) :: nElems

Number of elements in input and output arrays



real(kind=rk), private :: error
integer, private :: iElem
integer, private :: iter
real(kind=rk), private :: velTau_old
real(kind=rk), private :: velTau_new
real(kind=rk), private :: yPlus
real(kind=rk), private :: yPlus_fac
real(kind=rk), private :: log_num
real(kind=rk), private :: log_den
real(kind=rk), private :: tan_num
real(kind=rk), private :: fx
real(kind=rk), private :: dfdx