def plot_sim_reflect(): print(" SIM REFLECTIVITY") # Set Figure Size (1000 x 800) plt.figure(figsize=(width, height), frameon=False) QR = nc.variables['QRAIN'] try: QS = nc.variables['QSNOW'] except: QS = np.zeros(np.shape(QR)) # Define 'constant' densities (kg m-3) rhor = 1000 rhos = 100 rhog = 400 rhoi = 917 # Define "fixed intercepts" (m-4) Norain = 8.0E6 #Nosnow = 2.0E7 Nosnow = 2.0E6 * np.exp(-0.12 * (temps[time] - 273)) Nograu = 4.0E6 # First, find the density at the first sigma level # above the surface density = np.divide(psfc[time], (287.0 * temps[time])) #print "Rho: ", np.mean(density) Qra = QR[time, 1] Qsn = QS[time, 1] Qra = np.nan_to_num(Qra) Qsn = np.nan_to_num(Qsn) # Calculate slope factor lambda lambr = np.divide((3.14159 * Norain * rhor), np.multiply(density, Qra)) lambr = lambr**0.25 #lambs = np.divide((3.14159 * Nosnow * rhoi), np.multiply(density, Qsn)) #lambs = lambs ** 0.25 lambs = np.exp(-0.0536 * (temps[time] - 273)) # Calculate equivalent reflectivity factor Zer = (720.0 * Norain * (lambr**-7.0)) * 1E18 Zes = (0.224 * 720.0 * Nosnow * (lambr**-7.0) * (rhos / rhoi)**2) * 1E18 Zes_int = np.divide((lambs * Qsn * density), Nosnow) Zes = ((0.224 * 720 * 1E18) / (3.14159 * rhor)**2) * Zes_int**2 Ze = np.add(Zer, Zes) #Ze = Zer # Convert to dBZ dBZ = 10 * np.log10(Ze) dBZ = np.nan_to_num(dBZ) units = 'dBZe' print " MAX: ", np.max(dBZ) # Now plot REF_LEVELS = range(5, 90, 5) SREFLECT = plt.contourf(x, y, dBZ, REF_LEVELS, cmap=coltbls.reflect_ncdc()) #SREFLECT=plt.contourf(x,y,dBZ) title = 'Simulated Surface Reflectivity' prodid = 'sref' drawmap(SREFLECT, title, prodid, units)
def plot_comp_reflect(): print(" COMP REFLECTIVITY") # Set Figure Size (1000 x 800) plt.figure(figsize=(width,height),frameon=False) QR = nc.variables['QRAIN'] try: QS = nc.variables['QSNOW'] except: QS = np.zeros(np.shape(QR)) # Define 'constant' densities (kg m-3) rhor = 1000 rhos = 100 rhog = 400 rhoi = 917 # Define "fixed intercepts" (m-4) Norain = 8.0E6 #Nosnow = 2.0E7 Nosnow = 2.0E6*np.exp(-0.12 * (temps[time]-273)) Nograu = 4.0E6 # First, find the density at the first sigma level # above the surface density = np.divide(psfc[time],(287.0 * temps[time])) #print "Rho: ", np.mean(density) Qra_all = QR[time] Qsn_all = QS[time] for j in range(len(Qra_all[1,:,1])): curcol_r = [] curcol_s = [] for i in range(len(Qra_all[1,1,:])): maxrval = np.max(Qra_all[:,j,i]) maxsval = np.max(Qsn_all[:,j,i]) curcol_r.append(maxrval) curcol_s.append(maxsval) np_curcol_r = np.array(curcol_r) np_curcol_s = np.array(curcol_s) if j == 0: Qra = np_curcol_r Qsn = np_curcol_s else: Qra = np.row_stack((Qra, np_curcol_r)) Qsn = np.row_stack((Qsn, np_curcol_s)) #print "Qra shp: ", np.shape(Qra) #print "Den shp: ", np.shape(density) # Calculate slope factor lambda lambr = np.divide((3.14159 * Norain * rhor), np.multiply(density, Qra)) lambr = lambr ** 0.25 #lambs = np.divide((3.14159 * Nosnow * rhoi), np.multiply(density, Qsn)) #lambs = lambs ** 0.25 lambs = np.exp(-0.0536 * (temps[time] - 273)) # Calculate equivalent reflectivity factor Zer = (720.0 * Norain * (lambr ** -7.0)) * 1E18 Zes = (0.224 * 720.0 * Nosnow * (lambr ** -7.0) * (rhos/rhoi) ** 2) * 1E18 Zes_int = np.divide((lambs * Qsn * density), Nosnow) Zes = ((0.224 * 720 * 1E18) / (3.14159 * rhor) ** 2) * Zes_int ** 2 Ze = np.add(Zer, Zes) #Ze = Zer # Convert to dBZ dBZ = 10 * np.log10(Ze) dBZ = np.nan_to_num(dBZ) units = 'dBZe' print " MAX: ", np.max(dBZ) # Now plot REF_LEVELS = range(5,90,5) CREFLECT=plt.contourf(x,y,dBZ,REF_LEVELS,cmap=coltbls.reflect_ncdc()) #SREFLECT=plt.contourf(x,y,dBZ) title = 'Simulated Composite Reflectivity' prodid = 'cref' drawmap(CREFLECT, title, prodid, units)
def plot_sim_reflect(): print(" SIM REFLECTIVITY") # Set Figure Size (1000 x 800) plt.figure(figsize=(width,height),frameon=False) QR = nc.variables['QRAIN'] try: QS = nc.variables['QSNOW'] except: QS = np.zeros(np.shape(QR)) # Define 'constant' densities (kg m-3) rhor = 1000 rhos = 100 rhog = 400 rhoi = 917 # Define "fixed intercepts" (m-4) Norain = 8.0E6 #Nosnow = 2.0E7 Nosnow = 2.0E6*np.exp(-0.12 * (temps[time]-273)) Nograu = 4.0E6 # First, find the density at the first sigma level # above the surface density = np.divide(psfc[time],(287.0 * temps[time])) #print "Rho: ", np.mean(density) Qra = QR[time,1] Qsn = QS[time,1] Qra = np.nan_to_num(Qra) Qsn = np.nan_to_num(Qsn) # Calculate slope factor lambda lambr = np.divide((3.14159 * Norain * rhor), np.multiply(density, Qra)) lambr = lambr ** 0.25 #lambs = np.divide((3.14159 * Nosnow * rhoi), np.multiply(density, Qsn)) #lambs = lambs ** 0.25 lambs = np.exp(-0.0536 * (temps[time] - 273)) # Calculate equivalent reflectivity factor Zer = (720.0 * Norain * (lambr ** -7.0)) * 1E18 Zes = (0.224 * 720.0 * Nosnow * (lambr ** -7.0) * (rhos/rhoi) ** 2) * 1E18 Zes_int = np.divide((lambs * Qsn * density), Nosnow) Zes = ((0.224 * 720 * 1E18) / (3.14159 * rhor) ** 2) * Zes_int ** 2 Ze = np.add(Zer, Zes) #Ze = Zer # Convert to dBZ dBZ = 10 * np.log10(Ze) dBZ = np.nan_to_num(dBZ) units = 'dBZe' print " MAX: ", np.max(dBZ) # Now plot REF_LEVELS = range(5,90,5) SREFLECT=plt.contourf(x,y,dBZ,REF_LEVELS,cmap=coltbls.reflect_ncdc()) #SREFLECT=plt.contourf(x,y,dBZ) title = 'Simulated Surface Reflectivity' prodid = 'sref' drawmap(SREFLECT, title, prodid, units)
def plot_comp_reflect(): print(" COMP REFLECTIVITY") # Set Figure Size (1000 x 800) plt.figure(figsize=(width, height), frameon=False) QR = nc.variables['QRAIN'] try: QS = nc.variables['QSNOW'] except: QS = np.zeros(np.shape(QR)) # Define 'constant' densities (kg m-3) rhor = 1000 rhos = 100 rhog = 400 rhoi = 917 # Define "fixed intercepts" (m-4) Norain = 8.0E6 #Nosnow = 2.0E7 Nosnow = 2.0E6 * np.exp(-0.12 * (temps[time] - 273)) Nograu = 4.0E6 # First, find the density at the first sigma level # above the surface density = np.divide(psfc[time], (287.0 * temps[time])) #print "Rho: ", np.mean(density) Qra_all = QR[time] Qsn_all = QS[time] for j in range(len(Qra_all[1, :, 1])): curcol_r = [] curcol_s = [] for i in range(len(Qra_all[1, 1, :])): maxrval = np.max(Qra_all[:, j, i]) maxsval = np.max(Qsn_all[:, j, i]) curcol_r.append(maxrval) curcol_s.append(maxsval) np_curcol_r = np.array(curcol_r) np_curcol_s = np.array(curcol_s) if j == 0: Qra = np_curcol_r Qsn = np_curcol_s else: Qra = np.row_stack((Qra, np_curcol_r)) Qsn = np.row_stack((Qsn, np_curcol_s)) #print "Qra shp: ", np.shape(Qra) #print "Den shp: ", np.shape(density) # Calculate slope factor lambda lambr = np.divide((3.14159 * Norain * rhor), np.multiply(density, Qra)) lambr = lambr**0.25 #lambs = np.divide((3.14159 * Nosnow * rhoi), np.multiply(density, Qsn)) #lambs = lambs ** 0.25 lambs = np.exp(-0.0536 * (temps[time] - 273)) # Calculate equivalent reflectivity factor Zer = (720.0 * Norain * (lambr**-7.0)) * 1E18 Zes = (0.224 * 720.0 * Nosnow * (lambr**-7.0) * (rhos / rhoi)**2) * 1E18 Zes_int = np.divide((lambs * Qsn * density), Nosnow) Zes = ((0.224 * 720 * 1E18) / (3.14159 * rhor)**2) * Zes_int**2 Ze = np.add(Zer, Zes) #Ze = Zer # Convert to dBZ dBZ = 10 * np.log10(Ze) dBZ = np.nan_to_num(dBZ) units = 'dBZe' print " MAX: ", np.max(dBZ) # Now plot REF_LEVELS = range(5, 90, 5) CREFLECT = plt.contourf(x, y, dBZ, REF_LEVELS, cmap=coltbls.reflect_ncdc()) #SREFLECT=plt.contourf(x,y,dBZ) title = 'Simulated Composite Reflectivity' prodid = 'cref' drawmap(CREFLECT, title, prodid, units)