25 q_out, ql_out, qi_out, use_qt_split_rain) &
26 bind(c, name=
'ufo_ops_satrad_qsplit_f90')
29 integer(c_int),
intent(in) :: output_type
30 integer(c_int),
intent(in) :: nvals
31 real(c_float),
intent(in) :: p_in(nvals)
32 real(c_float),
intent(in) :: t_in(nvals)
33 real(c_float),
intent(in) :: qtotal_in(nvals)
34 real(c_float),
intent(out) :: q_out(nvals)
35 real(c_float),
intent(out) :: ql_out(nvals)
36 real(c_float),
intent(out) :: qi_out(nvals)
37 logical(c_bool),
intent(in) :: use_qt_split_rain
39 real(kind_real) :: q_out_kind_real(nvals)
40 real(kind_real) :: ql_out_kind_real(nvals)
41 real(kind_real) :: qi_out_kind_real(nvals)
44 q_out_kind_real, ql_out_kind_real, qi_out_kind_real, &
45 logical(use_qt_split_rain))
47 q_out = real(q_out_kind_real)
48 ql_out = real(ql_out_kind_real)
49 qi_out = real(qi_out_kind_real)
58 bind(c, name=
'ufo_ops_satrad_qsatwat_f90')
61 real(c_float),
intent(out) :: qs_out(nvals)
62 real(c_float),
intent(in) :: t_in(nvals)
63 real(c_float),
intent(in) :: p_in(nvals)
64 integer(c_int),
intent(in) :: nvals
66 real(kind_real) :: qs_out_kind_real(nvals)
68 call ops_qsatwat(qs_out_kind_real, dble(t_in), dble(p_in), nvals)
70 qs_out = real(qs_out_kind_real)
subroutine ufo_ops_satrad_qsatwat(qs_out, t_in, p_in, nvals)
subroutine ufo_ops_satrad_qsplit_c(output_type, nvals, p_in, t_in, qtotal_in, q_out, ql_out, qi_out, use_qt_split_rain)
Fortran module with various useful routines.
subroutine, public ops_satrad_qsplit(output_type, p, t, qtotal, q, ql, qi, UseQtSplitRain)
Split the humidity into water vapour, liquid water and ice.
subroutine, public ops_qsatwat(QS, T, P, npnts)
Saturation Specific Humidity Scheme: Vapour to Liquid.