def _geocoor(self): r_data = list() x_data = list() y_data = list() h_data = list() for i in self.rl: r, x, y = grid_2d(i.data, i.lon, i.lat) r_data.append(r) x_data.append(x) y_data.append(y) for radial, elev in zip(self.rl, self.el): hgh = height(radial.dist, elev, 0) hgh_radial = np.asarray(hgh.tolist() * radial.data.shape[0]).reshape(radial.data.shape) hgh_grid, x, y = grid_2d(hgh_radial, radial.lon, radial.lat) h_data.append(hgh_grid) return x_data, y_data, h_data, r_data
def quick_cr(r_list: Volume_T, resolution: Optional[tuple] = None) -> Grid: r""" Calculate composite reflectivity Paramters --------- r_list: list of cinrad.datastruct.Radial Returns ------- l2_obj: cinrad.datastruct.Grid composite reflectivity """ r_data = list() for i in r_list: r, x, y = grid_2d(i.data, i.lon, i.lat, resolution=resolution) r_data.append(r) cr = np.max(r_data, axis=0) x, y = np.meshgrid(x, y) l2_obj = Grid( np.ma.array(cr, mask=(cr <= 0)), i.drange, i.reso, i.code, i.name, i.scantime, "CR", i.stp["lon"], i.stp["lat"], x, y, **i.scan_info ) return l2_obj
def _geocoor(self) -> tuple: r_data = list() x_data = list() y_data = list() h_data = list() for i in self.rl: if i.dtype in ["VEL", "SW"]: r, x, y = grid_2d(i.data[0], i.lon, i.lat) else: r, x, y = grid_2d(i.data, i.lon, i.lat) r_data.append(r) x_data.append(x) y_data.append(y) hgh_grid, x, y = grid_2d(i.height, i.lon, i.lat) h_data.append(hgh_grid) return x_data, y_data, h_data, r_data
def quick_cr(r_list: Volume_T, resolution: tuple = (1000, 1000)) -> Dataset: r""" Calculate composite reflectivity Paramters --------- r_list: list of xarray.Dataset Returns ------- ret: xarray.Dataset composite reflectivity """ r_data = list() for i in r_list: r, x, y = grid_2d( i["REF"].values, i["longitude"].values, i["latitude"].values, resolution=resolution, ) r_data.append(r) cr = np.nanmax(r_data, axis=0) ret = Dataset( {"CR": DataArray(cr, coords=[x, y], dims=["longitude", "latitude"])}) ret.attrs = i.attrs ret.attrs["elevation"] = 0 return ret
def _geocoor(self) -> Tuple[list]: r_data = list() x_data = list() y_data = list() h_data = list() for i in self.rl: _lon = i["longitude"].values _lat = i["latitude"].values r, x, y = grid_2d(i[self.dtype].values, _lon, _lat) r, x, y = grid_2d(i[self.dtype].values, _lon, _lat) r_data.append(r) x_data.append(x) y_data.append(y) hgh_grid, x, y = grid_2d(i["height"].values, _lon, _lat) h_data.append(hgh_grid) return x_data, y_data, h_data, r_data
def merge(self): lon = self.gen_longitude() lat = self.gen_latitude() data_tmp = list() for i in self.data_list: data, x, y = grid_2d(i.data, i.lon, i.lat, x_out=lon, y_out=lat) data_tmp.append(np.ma.array(data, mask=(data == 0))) out_data = np.ma.average(data_tmp, axis=0) return x, y, out_data
def quick_cr(r_list: RList) -> Grid: r''' Calculate composite reflectivity Paramters --------- r_list: list of cinrad.datastruct.Radial Returns ------- l2_obj: cinrad.datastruct.Grid composite reflectivity ''' r_data = list() for i in r_list: r, x, y = grid_2d(i.data, i.lon, i.lat) r_data.append(r) cr = np.max(r_data, axis=0) x, y = np.meshgrid(x, y) l2_obj = Grid(np.ma.array(cr, mask=(cr <= 0)), i.drange, 1, i.code, i.name, i.scantime, 'CR', x, y) return l2_obj