derUstar_acoustic Subroutine

public pure subroutine derUstar_acoustic(BB, DerBBdU, dc, sgnBC, c_LR, ro_LR, u_LR, DerUstar)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: BB
real(kind=dp), intent(in) :: DerBBdU(Nb_VarC)
real(kind=dp), intent(in) :: dc(Nb_VarC)
real(kind=dp), intent(in) :: sgnBC
real(kind=dp), intent(in) :: c_LR
real(kind=dp), intent(in) :: ro_LR
real(kind=dp), intent(in) :: u_LR
real(kind=dp), intent(out) :: DerUstar(Nb_VarC)

Called by

proc~~derustar_acoustic~~CalledByGraph proc~derustar_acoustic derUstar_acoustic proc~solve_boundary_pt solve_boundary_PT proc~solve_boundary_pt->proc~derustar_acoustic proc~boundary_resolution_from_and_to_ports boundary_resolution_from_and_to_ports proc~boundary_resolution_from_and_to_ports->proc~solve_boundary_pt proc~main_loop main_loop proc~main_loop->proc~boundary_resolution_from_and_to_ports program~reims_p reims_p program~reims_p->proc~main_loop

Source Code

pure subroutine derUstar_acoustic(BB, DerBBdU, dc, sgnBC, c_LR, ro_LR, u_LR, DerUstar)
  real(dp), intent(in)  :: BB, DerBBdU(Nb_VarC), dc(Nb_VarC), sgnBC, c_LR, ro_LR, u_LR
  real(dp), intent(out) :: DerUstar(Nb_VarC)
  real(dp) :: inv_roc2
  inv_roc2 = sgnBC / (c_LR**2 * ro_LR)
  DerUstar(:) = inv_roc2 * (DerBBdU(:)*c_LR - BB*dc(:))
  DerUstar(1) = DerUstar(1) - u_LR/ro_LR - sgnBC*BB/(ro_LR**2 * c_LR)
  DerUstar(2) = DerUstar(2) + 1.0_dp/ro_LR
end subroutine derUstar_acoustic