pro virtotempflx,mixrat,virtemp,qflx,tvflx,tflx,badval ; Converts virtual temperature flux into temperature flux. ; KJ Davis, December, 1998. ;INPUTS ; MIXRAT - dry air mixing ratio in g H2O/kg dry air ; VIRTEMP - virtual temperature in K ; QFLX - water vapor flux in g H2O/kg dry air * m/s ; TVFLX - virtual temperature flux, K*m/s ; BADVAL - bad data value marker (usually -999) ;OUTPUTS ; TFLX - temperature flux, K*m/s ; Ratio of water vapor gram molecular weight to 'dry air' gram ; molecular weight is EPS eps = 0.622 ; Convert mixing ratio from g/kg to kg/kg mixr=mixrat/1000. ; Convert water vapor flux from g/kg*m/s to kg/kg*m/s qflux=qflx/1000. if ((mixrat ne badval) and (virtemp ne badval) and (qflx ne badval) and $ (tvflx ne badval)) then begin ; To second order, the following was derived as the conversion from ; virtual temperature flux to temperature flux. tflx = virtemp*(1-eps)*(2*mixr/eps^2.*qflux - qflux/eps) $ + tvflx*(1. - mixr/eps*(1-eps)) endif else begin tflx=badval endelse ;debugging/testing stop ;stop return end