r_roT Function

public elemental function r_roT(ro, T) result(r)

r = rho*h consistent with (ro,T), fast direct evaluation

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: ro
real(kind=dp), intent(in) :: T

Return Value real(kind=dp)


Calls

proc~~r_rot~~CallsGraph proc~r_rot r_roT proc~fill_f_terms fill_f_terms proc~r_rot->proc~fill_f_terms proc~fill_ff_terms fill_ff_terms proc~r_rot->proc~fill_ff_terms proc~fill_g_dreg_terms fill_g_Dreg_terms proc~r_rot->proc~fill_g_dreg_terms

Called by

proc~~r_rot~~CalledByGraph proc~r_rot r_roT proc~solve_junction solve_junction proc~solve_junction->proc~r_rot proc~junction_resolution_from_and_to_ports Junction_resolution_from_and_to_ports proc~junction_resolution_from_and_to_ports->proc~solve_junction proc~main_loop main_loop proc~main_loop->proc~junction_resolution_from_and_to_ports program~reims_p reims_p program~reims_p->proc~main_loop

Source Code

elemental function r_roT(ro, T) result(r)
    !! r = rho*h consistent with (ro,T), fast direct evaluation
    real(dp), intent(in) :: ro, T
    real(dp) :: r
    type(ThArrays_t) :: ThAr
    real(dp) :: ro_Arp
    integer  :: n

    ro_Arp = ro/(MolMass*1000.0_dp)
    call fill_f_terms(ro_Arp, ThAr)
    call fill_ff_terms(ro_Arp, ThAr)
    call fill_g_Dreg_terms(T, ThAr)
    ThAr%hh = ro_Arp * ThAr%ff
    ThAr%gg = ThAr%g - T*ThAr%Derg

    r = (cp0_Arp*T + q0_Arp)*ro_Arp
    do n = 1, 14
        r = r + ThAr%gg(n)*ThAr%hh(n) + ThAr%f(n)*ThAr%g(n)
    enddo
    r = r * 1.0e6_dp
end function r_roT