da_tprh_to_q_lin1.inc
References to this file elsewhere.
1 subroutine da_tprh_to_q_lin1( t, p, es, q, rh, &
2 t_prime, p_prime, rh_prime, q_prime )
3
4 !---------------------------------------------------------------------------
5 ! Purpose: Convert T/pressure/rh to specific humidity increments.
6 !
7 ! Method: q~ = q (rh~/rh + qs~/qs)
8 !---------------------------------------------------------------------------
9
10 implicit none
11
12 real, intent(in) :: t ! Temperature.
13 real, intent(in) :: p ! Pressure.
14 real, intent(in) :: es ! Saturation vapour pressure.
15 real, intent(in) :: q ! Specific humidity.
16 real, intent(in) :: rh ! Relative Humidity.
17 real, intent(in) :: t_prime ! Temperature increment.
18 real, intent(in) :: p_prime ! Pressure increment.
19 real, intent(in) :: rh_prime ! Pressure increment.
20 real, intent(out) :: q_prime ! Pressure increment.
21
22 real :: qs_prime_over_qs ! qs~/qs.
23
24 !---------------------------------------------------------------------------
25 ! [1.0] Calculate saturation specific humidity ratio qs~/qs:
26 !---------------------------------------------------------------------------
27
28 call da_tp_to_qs_lin1( t, p, es, t_prime, p_prime, qs_prime_over_qs )
29
30 !---------------------------------------------------------------------------
31 ! [2.0] Calculate specific humidity increment:
32 !---------------------------------------------------------------------------
33
34 q_prime = q * ( rh_prime / rh + qs_prime_over_qs )
35
36 end subroutine da_tprh_to_q_lin1
37
38