def _create_resample_kdtree(source_lons, source_lats, valid_input_index, nprocs=1): """Set up kd tree on input.""" source_lons_valid = source_lons[valid_input_index] source_lats_valid = source_lats[valid_input_index] if nprocs > 1: cartesian = _spatial_mp.Cartesian_MP(nprocs) else: cartesian = _spatial_mp.Cartesian() input_coords = cartesian.transform_lonlats(source_lons_valid, source_lats_valid) if input_coords.size == 0: raise EmptyResult('No valid data points in input data') # Build kd-tree on input if nprocs > 1: resample_kdtree = _spatial_mp.cKDTree_MP(input_coords, nprocs=nprocs) else: resample_kdtree = KDTree(input_coords) return resample_kdtree
def _create_resample_kdtree(source_lons, source_lats, valid_input_index, nprocs=1): """Set up kd tree on input""" """ if not isinstance(source_geo_def, geometry.BaseDefinition): raise TypeError('source_geo_def must be of geometry type') #Get reduced cartesian coordinates and flatten them source_cartesian_coords = source_geo_def.get_cartesian_coords(nprocs=nprocs) input_coords = geometry._flatten_cartesian_coords(source_cartesian_coords) input_coords = input_coords[valid_input_index] """ source_lons_valid = source_lons[valid_input_index] source_lats_valid = source_lats[valid_input_index] if nprocs > 1: cartesian = _spatial_mp.Cartesian_MP(nprocs) else: cartesian = _spatial_mp.Cartesian() input_coords = cartesian.transform_lonlats(source_lons_valid, source_lats_valid) if input_coords.size == 0: raise EmptyResult('No valid data points in input data') # Build kd-tree on input if kd_tree_name == 'pykdtree': resample_kdtree = KDTree(input_coords) elif nprocs > 1: resample_kdtree = _spatial_mp.cKDTree_MP(input_coords, nprocs=nprocs) else: resample_kdtree = sp.cKDTree(input_coords) return resample_kdtree
def _create_resample_kdtree(source_lons, source_lats, valid_input_index, nprocs=1): """Set up kd tree on input""" """ if not isinstance(source_geo_def, geometry.BaseDefinition): raise TypeError('source_geo_def must be of geometry type') #Get reduced cartesian coordinates and flatten them source_cartesian_coords = source_geo_def.get_cartesian_coords(nprocs=nprocs) input_coords = geometry._flatten_cartesian_coords(source_cartesian_coords) input_coords = input_coords[valid_input_index] """ source_lons_valid = source_lons[valid_input_index] source_lats_valid = source_lats[valid_input_index] if nprocs > 1: cartesian = _spatial_mp.Cartesian_MP(nprocs) else: cartesian = _spatial_mp.Cartesian() input_coords = cartesian.transform_lonlats( source_lons_valid, source_lats_valid) if input_coords.size == 0: raise EmptyResult('No valid data points in input data') # Build kd-tree on input if kd_tree_name == 'pykdtree': resample_kdtree = KDTree(input_coords) elif nprocs > 1: resample_kdtree = _spatial_mp.cKDTree_MP(input_coords, nprocs=nprocs) else: resample_kdtree = sp.cKDTree(input_coords) return resample_kdtree