function get_tokay_rainrate,dbz,zdr,kdp,rhv,hid,method,MISSING=missing ; ; *** Function that accepts a dbz, zdr and kdp value and then ; *** returns a rain rate value and method. This is the algorithm ; *** provided by Ali Tokay and is based on JW disdrometer data. ; *** Site options are KWAJ or KMLB ; *** ; *** Rain rate equations were derived from JW disdrometer data ; *** at KMLB (UCF) or KWAJ ; **************************************************************** ; * Ali Tokay's equations for KWAJ * ; * Eqn. 1: R = A * KD^b * DR^c A = 62.52 b=0.978 c=-0.562 * ; * Eqn. 2: R = A * KD^b A = 54.24 b=0.795 * ; * Eqn. 3: R = A * Z^b * DR^c A = 0.00167 b=0.962 c=-0.912 * ; * Eqn. 4: R = A * Z^b A = 0.0264 b=0.682 * ; **************************************************************** ; * Ali Tokay's equations for KMLB * ; * Eqn. 1: R = A * KD^b * DR^c A = 62.64 b=0.985 c=-0.582 * ; * Eqn. 2: R = A * KD^b A = 45.14 b=0.779 * ; * Eqn. 3: R = A * Z^b * DR^c A = 0.0016 b=0.961 c=-0.953 * ; * Eqn. 4: R = A * Z^b A = 0.0269 b=0.652 * ; **************************************************************** ; * * ; * if(KD >= 1 and CZ >= 35) then begin * ; * * ; * if(DR >= 0.5) then equation 1 * ; * if(DR < 0.5) then equation 2 * ; * * ; * endif else begin * ; * * ; * Convert dBZ -> Z * ; * if(DR >= 0.5) then begin * ; * Equation 3 * ; * endif else begin * ; * Equation 4 * ; * endelse * ; * * ; * endelse * ; **************************************************************** if(NOT KEYWORD_SET(MISSING)) then missing=-32767.0 if(dbz eq missing) then begin r = missing method = 0 return, r endif dbz_lin = 10^(0.1D * dbz) ; ; *** Set coefficients and exponents based on site ; ; if (site eq 'KMLB') then begin ; A1 = 62.6408 & b1 = 0.9851 & c1 = -0.5816; Kdp+Zdr (Zdr in dB) ; A2 = 45.13869 & b2 = 0.77876; Kdp ; A3 = 0.0016 & b3 = 0.9605 & c3 = -0.9526; Zh+Zdr (Zh linear) ; A4 = 0.02689 & b4 = 0.65166; (Zh linear) ; endif ; if (site eq 'KWAJ') then begin ; A1 = 62.52 & b1 = 0.978 & c1 = -0.562; Kdp+Zdr ; A2 = 54.24 & b2 = 0.795; Kdp ; A3 = 0.00167 & b3 = 0.962 & c3 = -0.912; Zh+Zdr (Zh linear) ; A4 = 0.0264 & b4 = 0.682; (Zh linear) ; endif A1 = 62.6408 & b1 = 0.9851 & c1 = -0.5816 ; Kdp+Zdr (Zdr in dB) A2 = 45.13869 & b2 = 0.77876 ; Kdp A3 = 0.0016 & b3 = 0.9605 & c3 = -0.9526 ; Zh+Zdr (Zh linear) A4 = 0.02689 & b4 = 0.65166 ; (Zh linear) ; ; *** Process the data and return rain rate and method ; if(kdp gt 1.0 and dbz gt 35.) then begin if(zdr ge 0.5) then begin r = A1 * kdp^(b1) * zdr^(c1) method = 1 ; Kdp/Zdr endif else begin r = A2 * kdp^(b2) method = 2 ; Kdp only endelse endif else begin if(zdr ge 0.5) then begin r = A3 * dbz_lin^(b3) * zdr^(c3) method = 3 ; Zh (linear)/Zdr endif else begin r = A4 * dbz_lin^(b4) method = 4 ; Zh linear only endelse endelse return, r end