CASE (RequestTransverseWaves)
BpAsdq=0.; BmAsdq=0.; speed=0.; wave=0.
speed(iEdge,1) = vR(iEdge) - cR(iEdge)
wave(iEdge,1,1) = one
wave(iEdge,mu,1) = uR(iEdge)
wave(iEdge,mv,1) = speed(iEdge,1)
wave(iEdge,4,1) = hR(iEdge) - vR(iEdge)*cR(iEdge)
speed(iEdge,2) = vR(iEdge)
wave(iEdge,1,2) = zero
wave(iEdge,mu,2) = one
wave(iEdge,mv,2) = zero
wave(iEdge,4,2) = uR(iEdge)
speed(iEdge,3) = vR(iEdge)
wave(iEdge,1,3) = one
wave(iEdge,mu,3) = uR(iEdge)
wave(iEdge,mv,3) = vR(iEdge)
wave(iEdge,4,3) = half*u2v2(iEdge)
speed(iEdge,4) = vR(iEdge) + cR(iEdge)
wave(iEdge,1,4) = one
wave(iEdge,mu,4) = uR(iEdge)
wave(iEdge,mv,4) = speed(iEdge,4)
wave(iEdge,4,4) = hR(iEdge) + vR(iEdge)*cR(iEdge)
IF (mwaves==5) THEN
speed(iEdge,5) = vR(iEdge)
wave(iEdge,1:4,5) = zero
wave(iEdge,5,5) = one
END IF
DO j=2-mbc,mx+mbc
delta(1:NrVars) = Asdq(j,1:NrVars)
coef(3) = g1c2(j) * (euv(j)*delta(1) + uR(j)*delta(mu) + vR(j)*delta(mv) - delta(4))
coef(2) = delta(mu) - uR(j)*delta(1)
coef(4) = (delta(mv) + (cR(j)-vR(j))*delta(1) - cR(j)*coef(3)) / (two*cR(j))
coef(1) = delta(1) - coef(3) - coef(4)
IF (NrVars==5) THEN
coef(5) = delta(5)
END IF
DO mw=1,mwaves
wave(j,1:NrVars,mw) = coef(mw)*wave(j,1:NrVars,mw)
END DO
END DO
DO mwav=1,mwaves
DO j=2-mbc,mx+mbc
IF (speed(j,mwav) < zero) THEN
BmAsdq(j,1:NrVars) = BmAsdq(j,1:NrVars) + &
speed(j,mwav) * wave(j,1:NrVars,mwav)
ELSE
BpAsdq(j,1:NrVars) = BpAsdq(j,1:NrVars) + &
speed(j,mwav) * wave(j,1:NrVars,mwav)
END IF
END DO
END DO