state_roT Subroutine

public elemental subroutine state_roT(ro, T, r, p, e, c)

Full state from (ro,T): r, p, e, c.

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: ro
real(kind=dp), intent(in) :: T
real(kind=dp), intent(out) :: r
real(kind=dp), intent(out) :: p
real(kind=dp), intent(out) :: e
real(kind=dp), intent(out) :: c

Calls

proc~~state_rot~~CallsGraph proc~state_rot state_roT proc~jacobian_rot jacobian_roT proc~state_rot->proc~jacobian_rot proc~eos_terms eos_terms proc~jacobian_rot->proc~eos_terms proc~eos_e_terms eos_e_terms proc~eos_terms->proc~eos_e_terms proc~fill_f_terms fill_f_terms proc~eos_terms->proc~fill_f_terms proc~fill_e_tpart fill_e_Tpart proc~eos_e_terms->proc~fill_e_tpart proc~fill_ff_terms fill_ff_terms proc~eos_e_terms->proc~fill_ff_terms proc~fill_g_dreg_terms fill_g_Dreg_terms proc~fill_e_tpart->proc~fill_g_dreg_terms

Called by

proc~~state_rot~~CalledByGraph proc~state_rot state_roT proc~channel_init_part1 channel_init_part1 proc~channel_init_part1->proc~state_rot proc~ffsrclink_prelax_resolution_from_and_to_ports FFsrcLink_Prelax_resolution_from_and_to_ports proc~ffsrclink_prelax_resolution_from_and_to_ports->proc~state_rot proc~last_tasks_for_channels last_tasks_for_channels proc~last_tasks_for_channels->proc~state_rot proc~solve_boundary_pt solve_boundary_PT proc~solve_boundary_pt->proc~state_rot 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~ffsrclink_prelax_resolution_from_and_to_ports proc~main_loop->proc~last_tasks_for_channels proc~main_loop->proc~boundary_resolution_from_and_to_ports program~reims_p reims_p program~reims_p->proc~channel_init_part1 program~reims_p->proc~main_loop

Source Code

elemental subroutine state_roT(ro, T, r, p, e, c)
    !! Full state from (ro,T): r, p, e, c.
    real(dp), intent(in)  :: ro, T
    real(dp), intent(out) :: r, p, e, c
    real(dp) :: dPdRo, dPdT, dTdRo, cv

    call jacobian_roT(ro, T, cv, dPdT, dTdRo=dTdRo, r=r, p=p)
    dPdRo = -dTdRo*dPdT
    c = sqrt(dPdRo + T*(dPdT**2)/(cv*(ro**2)))
    e = (r - p)/ro
end subroutine state_roT