From 60e67b71a8e26796e5f0e529e1da5e9c559c8423 Mon Sep 17 00:00:00 2001 From: Fei Ye Date: Tue, 23 Jul 2024 17:13:24 -0400 Subject: [PATCH] STOFS-3D-Atl scripts: minor updates. --- .../Source_sink/v7/gen_sourcesink.py | 198 +++-------- .../STOFS-3D-Atl-operation/pysh/Shapefiles | 1 + .../pysh/mask_boundary_elev.py | 1 + .../2022_MTG_CL_Survey_NAVD88_lonlat_feet.cpg | 1 + .../2022_MTG_CL_Survey_NAVD88_lonlat_feet.dbf | Bin 0 -> 2418274 bytes .../2022_MTG_CL_Survey_NAVD88_lonlat_feet.prj | 1 + .../2022_MTG_CL_Survey_NAVD88_lonlat_feet.qmd | 26 ++ .../2022_MTG_CL_Survey_NAVD88_lonlat_feet.shp | Bin 0 -> 117644 bytes .../2022_MTG_CL_Survey_NAVD88_lonlat_feet.shx | Bin 0 -> 33684 bytes .../Polygons/2022_MTG_Centerline_102008.cpg | 1 + .../Polygons/2022_MTG_Centerline_102008.dbf | Bin 0 -> 22966 bytes .../Polygons/2022_MTG_Centerline_102008.prj | 1 + .../Polygons/2022_MTG_Centerline_102008.qmd | 43 +++ .../Polygons/2022_MTG_Centerline_102008.shp | Bin 0 -> 12388 bytes .../Polygons/2022_MTG_Centerline_102008.shx | Bin 0 -> 260 bytes ...TG Levee Elevations_NAVD88_lonlat_feet.cpg | 1 + ...TG Levee Elevations_NAVD88_lonlat_feet.dbf | Bin 0 -> 886167 bytes ...TG Levee Elevations_NAVD88_lonlat_feet.prj | 1 + ...TG Levee Elevations_NAVD88_lonlat_feet.qmd | 43 +++ ...TG Levee Elevations_NAVD88_lonlat_feet.shp | Bin 0 -> 94744 bytes ...TG Levee Elevations_NAVD88_lonlat_feet.shx | Bin 0 -> 21132 bytes .../Polygons/2024_MTG_Centerline_102008.cpg | 1 + .../Polygons/2024_MTG_Centerline_102008.dbf | Bin 0 -> 17321 bytes .../Polygons/2024_MTG_Centerline_102008.prj | 1 + .../Polygons/2024_MTG_Centerline_102008.qmd | 43 +++ .../Polygons/2024_MTG_Centerline_102008.shp | Bin 0 -> 4864 bytes .../Polygons/2024_MTG_Centerline_102008.shx | Bin 0 -> 220 bytes .../Polygons/MTG_Centerline_102008.cpg | 1 + .../Polygons/MTG_Centerline_102008.dbf | Bin 0 -> 22966 bytes .../Polygons/MTG_Centerline_102008.prj | 1 + .../Polygons/MTG_Centerline_102008.qmd | 26 ++ .../Polygons/MTG_Centerline_102008.shp | Bin 0 -> 12388 bytes .../Polygons/MTG_Centerline_102008.shx | Bin 0 -> 260 bytes .../Polygons/temporary_levee_fix_102008.cpg | 1 + .../Polygons/temporary_levee_fix_102008.dbf | Bin 0 -> 418 bytes .../Polygons/temporary_levee_fix_102008.prj | 1 + .../Polygons/temporary_levee_fix_102008.qmd | 26 ++ .../Polygons/temporary_levee_fix_102008.shp | Bin 0 -> 4164 bytes .../Polygons/temporary_levee_fix_102008.shx | Bin 0 -> 356 bytes .../Pre_processing/Bathy_edit/README | 9 + .../BayouLafourche_lonlat.cpg | 1 + .../BayouLafourche_lonlat.dbf | Bin 0 -> 154 bytes .../BayouLafourche_lonlat.prj | 1 + .../BayouLafourche_lonlat.qmd | 26 ++ .../BayouLafourche_lonlat.shp | Bin 0 -> 2508 bytes .../BayouLafourche_lonlat.shx | Bin 0 -> 108 bytes .../Temporary_Fix_v7/HoumaCanal_lonlat.cpg | 1 + .../Temporary_Fix_v7/HoumaCanal_lonlat.dbf | Bin 0 -> 154 bytes .../Temporary_Fix_v7/HoumaCanal_lonlat.prj | 1 + .../Temporary_Fix_v7/HoumaCanal_lonlat.qmd | 26 ++ .../Temporary_Fix_v7/HoumaCanal_lonlat.shp | Bin 0 -> 4348 bytes .../Temporary_Fix_v7/HoumaCanal_lonlat.shx | Bin 0 -> 108 bytes .../NewOrleansOutfallCanals_lonlat.dbf | Bin 0 -> 201 bytes .../NewOrleansOutfallCanals_lonlat.prj | 1 + .../NewOrleansOutfallCanals_lonlat.shp | Bin 0 -> 3564 bytes .../NewOrleansOutfallCanals_lonlat.shx | Bin 0 -> 124 bytes .../Bathy_edit/Temporary_Fix_v7/temp_fix.py | 45 +++ .../Bathy_edit/xGEOID/convert2xgeoid.py | 10 +- .../Grid/make_dem_source_map.py | 105 ++++++ .../Hotstart/replace_eta2_aviso.py | 71 ++++ .../Hotstart/tweak_stofs3d_hotstart.py | 23 +- .../NWM/__pycache__/__init__.cpython-310.pyc | Bin 235 -> 168 bytes .../gen_sourcesink.cpython-310.pyc | Bin 4276 -> 0 bytes .../Source_sink/NWM/gen_sourcesink.py | 117 ------ .../Source_sink/NWM/gen_sourcesink_nwm.py | 73 ++++ .../Relocate/relocate_source_feeder.py | 333 +++++++++++++++--- .../Pre_processing/logging_config.py | 13 + .../Pre_processing/stofs3d_atl_driver.py | 71 ++-- .../Pre-Processing/modify_WENO_zone.f90 | 182 ++++++++++ 69 files changed, 1178 insertions(+), 350 deletions(-) create mode 120000 src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/Shapefiles create mode 120000 src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/mask_boundary_elev.py create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/README create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.cpg create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.qmd create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.dbf create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.prj create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.shp create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.shx create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/temp_fix.py create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Grid/make_dem_source_map.py create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/replace_eta2_aviso.py delete mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/__pycache__/gen_sourcesink.cpython-310.pyc delete mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/gen_sourcesink.py create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/gen_sourcesink_nwm.py create mode 100644 src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/logging_config.py create mode 100644 src/Utility/Pre-Processing/modify_WENO_zone.f90 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/Source_sink/v7/gen_sourcesink.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/Source_sink/v7/gen_sourcesink.py index dd2859086..abd367bf9 100644 --- a/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/Source_sink/v7/gen_sourcesink.py +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/Source_sink/v7/gen_sourcesink.py @@ -1,76 +1,23 @@ -import os -from datetime import datetime, timedelta +""" +Generate source and sink files for the NWM model for operational forecast. +No dependency on pyschism. +""" + +from datetime import datetime import glob import argparse import json import numpy as np -import pandas as pd from netCDF4 import Dataset -from relocate_source_feeder_lean import SourceSinkIn, relocate_sources - -def write_th_file(dataset, timeinterval, fname, issource=True): - - data = [] - for values, interval in zip(dataset, timeinterval): - if issource: - data.append(" ".join([f"{interval:G}", *[f'{x: .4f}' for x in values], '\n'])) - else: - data.append(" ".join([f"{interval:G}", *[f'{-x: .4f}' for x in values], '\n'])) - - with open(fname, 'w+') as fid: - fid.writelines(data) - -def write_mth_file(temp, salinity, fname): - data = [] - #first record - dt = 0. - line = [dt] - [line.append(x) for x in temp] - [line.append(x) for x in salinity] - data.append(line) - - #last record - dt = 1555200. - line = [dt] - [line.append(x) for x in temp] - [line.append(x) for x in salinity] - data.append(line) - newset = np.array(data) - #data.append(" ".join([f"{dt}", *[f'{x: .1f}' for x in salinity], '\n'])) - - #with open(fname, 'w+') as fid: - # fid.write(str(line)) - np.savetxt(fname, newset, fmt='%.1f') - -def get_aggregated_features(nc_feature_id, features): - - # get unique featureIDs from features - aggregated_features = [] - for source_feats in features: - aggregated_features.extend(list(source_feats)) - - # get the indexes of aggregated_features in nc_feature_id - in_file=[] - for feature in aggregated_features: - idx=np.where(nc_feature_id == int(feature))[0] - in_file.append(idx.item()) - - in_file_2 = [] - sidx = 0 - for source_feats in features: - eidx = sidx + len(source_feats) - in_file_2.append(in_file[sidx:eidx]) - sidx = eidx - return in_file_2 - -def streamflow_lookup(file, indexes, threshold=-1e-5): - nc = Dataset(file) +def streamflow_lookup(nwm_file, indexes, threshold=-1e-5): + '''look up streamflow in NWM's netcdf files''' + nc = Dataset(nwm_file) streamflow = nc["streamflow"][:] streamflow[np.where(streamflow < threshold)] = 0.0 - #change masked value to zero + # change masked value to zero streamflow[np.where(streamflow.mask)] = 0.0 data = [] for indxs in indexes: @@ -79,101 +26,66 @@ def streamflow_lookup(file, indexes, threshold=-1e-5): nc.close() return data -if __name__ == '__main__': + +def main(): ''' - Usage: python gen_sourcesink.py "yyyy-mm-dd" or "yyyy-mm-dd hh:mm:ss" + Usage: python gen_sourcesink.py yyyy-mm-dd or yyyy-mm-dd hh:mm:ss ''' - #cmd line input paramters argparser = argparse.ArgumentParser() - argparser.add_argument('date', - type=datetime.fromisoformat, - help="The date format 'YYYY-MM-DD HH:MM:SS'", - ) - args=argparser.parse_args() - startdate=args.date - #startdate = datetime(2022, 3, 29, 0) - - # ------------------------- hardwired inputs for operation-------------------------- - # folder to save outputs (e.g., outdir='./') - outdir = './' + argparser.add_argument('date', type=datetime.fromisoformat, + help="The date format 'YYYY-MM-DD HH:MM:SS'") + args = argparser.parse_args() + startdate = args.date - # folder holding outputs from the original source/sink files (e.g., outputs from hindcast's NWM/gen_source_sink.py): - # source_sink.in, sources.json - original_source_sink_folder = './original_source_sink' - - # mapping from original to final source locations (e.g., from relocate_map.txt, which is generated from relocate_source_feeder.py) - relocate_map = np.loadtxt(f'./relocate_map.txt', dtype=int) - - # source scaling file, containing element id and scale value, for temporary solution to correct bias - fname_scale = 'source_scale.txt' - - # folder where nwm*.nc saved ( - fdir = 'combine' + # startdate = datetime(2024, 3, 5) + # ------------------------- hardwired inputs for operation-------------------------- + working_dir = '/sciclone/schism10/feiye/STOFS3D-v7/I12w/Source_sink/relocated_source_sink2/' + nwm_folder = '/sciclone/schism10/feiye/STOFS3D-v7/I12w/Source_sink/original_source_sink/20240305/' layer = 'conus' # ------------------------- end hardwired inputs-------------------------- - eid_sources = [] - times = [] - dates = [] - # read source2fid_dict, note that the order of elements may not be the same as in source_sink.in - source2fid_dict = json.load(open(f'./{original_source_sink_folder}/sources.json')) - - #add to the final list, use element order from source_sink.in - old_source_sink_in = SourceSinkIn(filename = f'{original_source_sink_folder}/source_sink.in') - eid_sources.extend(list(old_source_sink_in.ip_group[0])) + source2fid_dict = json.load(open(f'{working_dir}/sources.json', encoding='utf-8')) - #read nc files - files = glob.glob(f'./{fdir}/nwm*.{layer}.nc') - files.sort() + # read nc files + files = sorted(glob.glob(f'{nwm_folder}/nwm*.{layer}.nc')) print(f'file 0 is {files[0]}') - nc_fid0 = Dataset(files[0])["feature_id"][:] - - # get the index of featureID in the netcdf file in the order of source_sink.in's source element order - source2fid = [source2fid_dict[str(x)] for x in eid_sources] - src_ncidxs = [[np.where(nc_fid0 == int(fid))[0].item() for fid in fids] for fids in source2fid] - # src_idxs = get_aggregated_features(nc_fid0, source2fid_dict.values()) - - sources = [] - for fname in files: + nc_fid0 = np.array(Dataset(files[0])["feature_id"]) + + # Get the index of featureID in the netcdf file in the order of sources.json's keys + # "src_ncidxs" is similar to source2fid_dict's values, + # but with the fids replaced by their indexes in the netcdf file + src_ncidxs = [] + for _, fids in source2fid_dict.items(): + src_ncidxs.append([np.where(nc_fid0 == int(fid))[0].item() for fid in fids]) + + times = np.zeros((len(files), 1), dtype=float) # ntimes x 1 + sources = np.zeros((len(files), len(src_ncidxs)), dtype=float) # ntimes x nsrc + for it, fname in enumerate(files): ds = Dataset(fname) - ncfeatureid=ds['feature_id'][:] - if not np.all(ncfeatureid == nc_fid0): # accommodate for product switch (should be rare) - print(f'Indexes of feature_id are changed in {fname}') - src_ncidxs = [[np.where(nc_fid0 == int(fid))[0].item() for fid in fids] for fids in source2fid] - # src_idxs=get_aggregated_features(ncfeatureid, source2fid_dict.values()) - nc_fid0 = ncfeatureid - sources.append(streamflow_lookup(fname, src_ncidxs)) + # accommodate for different nc_fid0 due to product switch (should be rare) + this_nc_fid0 = np.array(ds['feature_id']) + if not np.array_equal(nc_fid0, this_nc_fid0): + print(f'Indexes of feature_id are changed in {fname}, regenerating src_ncidxs ...') + nc_fid0 = this_nc_fid0 # update nc_fid0 for the rest of the files + src_ncidxs = [] # update src_ncidxs for the rest of the files + for _, fids in source2fid_dict.items(): + src_ncidxs.append([np.where(nc_fid0 == int(fid))[0].item() for fid in fids]) + sources[it, :] = streamflow_lookup(fname, src_ncidxs) model_time = datetime.strptime(ds.model_output_valid_time, "%Y-%m-%d_%H:%M:%S") - dates.append(str(model_time)) - times.append((model_time - startdate).total_seconds()) + times[it] = (model_time - startdate).total_seconds() ds.close() - #relocate sources; output: vsource.th and msources.th - df_vsources = relocate_sources( - old_source_sink_in=old_source_sink_in, - old_vsource=sources, - times=np.array(times), - outdir=outdir, - relocate_map=relocate_map - ) - - #source scaling (temporary solution to correct bias) - with open(fname_scale) as f: - total = f.readline().split(' ')[0] - print(f'Total sources need to be scaled: {total}!') - for line in f.read().splitlines(): - scale_idx = line.split(',')[-2].strip() - scale_value = float(line.split(',')[-1]) - print(scale_idx) - print(scale_value) - - print(f'Pre-scaling is {df_vsources[scale_idx]}') - df_vsources[scale_idx] = df_vsources[scale_idx]*scale_value - print(f'Post-scaling is {df_vsources[scale_idx]}') - #overwrite vsource.th with scaled values - df_vsources.to_csv(f'{outdir}/vsource.th', index=False, header=False, sep=' ', float_format='%.2f') + # sort source2fid_dict by keys (element ids) to conform with vsource generated by pyschism + idx = np.argsort(np.array([int(key) for key in source2fid_dict.keys()])) + # write source time history file + np.savetxt(f'{working_dir}/vsource.th', + np.c_[times, sources[:, idx]], fmt='%10.4f', delimiter=' ') + + +if __name__ == '__main__': + main() diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/Shapefiles b/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/Shapefiles new file mode 120000 index 000000000..a9eb7a900 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/Shapefiles @@ -0,0 +1 @@ +../MaskLargeElevation/Shapefiles/ \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/mask_boundary_elev.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/mask_boundary_elev.py new file mode 120000 index 000000000..795863748 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-operation/pysh/mask_boundary_elev.py @@ -0,0 +1 @@ +../MaskLargeElevation/mask_boundary_elev.py \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.cpg b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.cpg new file mode 100644 index 000000000..3ad133c04 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.dbf b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.dbf new file mode 100644 index 0000000000000000000000000000000000000000..f3c3e11b19a6bd755b7dc5793c6aca2b27c4d92a GIT binary patch literal 2418274 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%0Dj! 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%0D*sHQg3CCX*am8LK)34+Hx;mxe{<_aD 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%0AD)>_BAoA4w4xt$~yRaX|yU-&{u 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 + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_CL_Survey_NAVD88_lonlat_feet.shp new file mode 100644 index 0000000000000000000000000000000000000000..2245c56eac7ada61d7a99edeef893fb050387a6e GIT binary patch literal 117644 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�k!EmD@bzIdAz8coo4ICNq=yEM*Ow*~I~l zafZv>o2DY=0Bb?#_*SX7MUh)$k z18<@j$5dvskmamnD|KA9(k*-zrJdh$7`^}2F2WTo<{0?jbG-Rk2G%a$5uL#ia?bfw3fQC%m zf~G^x@D%|XzTLWZ2GEd+ThQE)GkisWhHtm7odGmt;ubWwYblZA%tU~OS)nD`S-XYs zGC1Eu3YvzrH}?X2BGct?}(!9LM+>y5lrffazJ0wp`L2+)v0r=Ync zr?`p$4cBJf`vPdl%q?i{$QiyOK*P6N*UkVMGI0xR7pjYf@YNx zHO)=K6AiaUOZ2n4h43;sUqcESyraoygB2w3j|2c3Dl7|{2Wo_|h9?@v<+`>8&`^n6 z(DbMg#u`AwxLn89@G_VT+=8a<_hW6w + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + + + + + + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.shp new file mode 100644 index 0000000000000000000000000000000000000000..05f00f9ddbb3686d8b463f9f4f5aa89a7a6bbf14 GIT binary patch literal 12388 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 QJpO+C9)aH@@EarW2Rl#5*8l(j literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.shx b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2022_MTG_Centerline_102008.shx new file mode 100644 index 0000000000000000000000000000000000000000..691601ba4e60466e5faecae45c4ff57f80953556 GIT binary patch literal 260 zcmZQzQ0HR64w_ytGcfQ1<%(BWohS^Jab&VpxvqWN=wL_1mY=Eu3XT)l1HPD<8Xd&0 z9YxfLfq}6Gh&KU6uP`t$bph!a3=GU_K)L})uL9B~3=AwvKspFWS3v1=5Smp5NLw&4 zuqFWM7$AKBXch|t1KSB8{{aI7`x+qMfq{YJ1CalQfq@e!#?ZsSz*PXGf$F&~0BN8Y X_ZA?%hk=0yXct=+1B1{bpjkcuIY1;% literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.cpg b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.cpg new file mode 100644 index 000000000..3ad133c04 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.dbf b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.dbf new file mode 100644 index 0000000000000000000000000000000000000000..31798c03c55cb12db48ca60ca894fb9435c20d95 GIT binary patch literal 886167 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 Aj{pDw literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.prj b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.prj new file mode 100644 index 000000000..f45cbadf0 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.qmd b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.qmd new file mode 100644 index 000000000..d5b3bbf5a --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.qmd @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + + + + + + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.shp new file mode 100644 index 0000000000000000000000000000000000000000..33599bde1309e1f5f4f2a39e6cd8778b6361d5f4 GIT binary patch literal 94744 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 a2~l1;r{y(3v$VbPOA(m+miev!jq`s}v&tU; literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.shx b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024-05-22_MTG Levee Elevations_NAVD88_lonlat_feet.shx new file mode 100644 index 0000000000000000000000000000000000000000..2d03719749574169ed1835db4c22849d7d196b61 GIT binary patch literal 21132 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 Mnyuk5m + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + + + + + + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.shp new file mode 100644 index 0000000000000000000000000000000000000000..6a1f3bac19492b7ccce0d2ebf7928f30bc9f7988 GIT binary patch literal 4864 zcmdUzdpwre7RSAjq;o$jay$wGVb+`m@u2{6`+( z{vZ01J%0DOZ7!y3!;enzltH9W*>-SBI;O0l%;?*?GyRL zdzJ-!Vpf`ARrM97yK7(Esww7^RU3>YLV(Q!Y{%H$<&)gSedoW)z;q;?mpUMc$SY%y zLlx&R4b)E8bObg|-gMjI2U<97Ki4*jJy-A0o zEy^(E)>1V)YtUYa>9k!>_jf?d#n;X%S#+wY>fg%esIp)E0Tm=+&F=SLwDrCaWkdq~ z7e-pa8uhw0Z6-R1tm{5_a?wpp*}zDRx?_JAw>R`@s;yN)q`J4Ja|+CN-6dlBRK()` zMqT}uAMEmPwIUsnwzkw@#q>H%vxC0~l{H4h`SH(dsSFnDfW^|1Ba%ZO3w2ANq^5HK=8d^=rg*%}G7MLkC1!&x*8*$Cb0^#%~H-!u1Iv zGu`Z79jV83oV$pLhln|Uod4gURT}1)ur+WYUZkyQe6#*!xJM={B|U#<2O{+vBJFI= zvwGQwv*pG(TW+q%>KEVa@ma^N+r8P$jt}c__m{7|fl=)tL^^bxnjW=^?i@Ct?8Dgx zOPDWI291`rT7y1b-_Jc{kW@Y{1d$Ej1UZa@@w5}~EnWybeXU%%6tK8&k=Nh#hHH=~ z#p+j;PB9%Hh6uwe&uRj_6Tf9GK zZc)NSYyf;Y^13(nEt?|7Q0D)3=>;oRjhh{R;ax?R43=`w{E_kCg!d86ujXy`hox1SwYq85)x z_R}qyHo%@+HYSHbtjgk3BEun8;<5W(nfYrbjfZ9Lv-Oa2vBk3*_Oy4)1K;VeCxcDa z8g*re7&vUo$juYggW{-0aa+?Ql}6o@heBNj<>vX49?#f9lHYgExmMT~&gJO0$Ypc0Q)0FTx=T_P$km zT5vV&T|5?lO{#uzRp_^P^VmF|%56}-589`E+ddQy+P%+OKL20{5%m)3U6o&m@~ArM zO59c;5#$zA33tL3fs8ryE*f>Ned<++e3oa@-*F!Ls%JggHNek@ud6!%=f+)@k*P(* zhdgd^&cU=>=fI?tdPG`siVq%wUg-JwejD!wL?YLndteV7S?|1{tP#fBtKR4U>s}f= zL9z*v9JAJh!E8)B|M@6K2z+0zEutOx@-z3ndM(g{#H3wAz;4=sRj=9+abGLHz7$wx zk(J;EaFmkdR-G(Nok}-Wx7|UcZkfPyW+t4=!A^IJdx(7Sq5inzUt_w#CAHyNCnA~p zZ7P$Yms9MK8#a7^h{LV!L$}f}b!iYT>3occ*`-1Q!ru9S7U;Rzx}*8*nWJcH@W zrv-D3dl6Y3qvjq2To?UD$$J2im5j@xeaT>NdfEBwLFoOep3GK1i7B#PaO(9-L`HN2 zY9B)E#dGnC8U6nplmpq1**c7LBmQcy5lPisQvVY6zSL<-l!*sJ`k7TF?}Ur$P-%3J zob4XrRJBWBE3YqSXU$_sX1`>L8St@%*R>bPGh~N-W05lOAU20uTJX_&CfH1gz6eJ^o3*(U>Q{ehiL zfVpq`fmIq0maa%-NNl9?i5|GioOYV7?Y+p5>2|?d=k|;AbNzt$*s%FBflmfQ4(4Br z?h3+mZupSpx-`hIQl@S|2&RjZBh(v#RcAk2{rAr?y%QhhFQ3W~j|+VTbD$nP>tjsL z0`odFZDv6|RIE<2l{?LlNc%6A@*)2TjqdB*LED>Vw@ptW|D4w4GjxRu;QTRpNKwVQPEjm|e*XX_z_BUE>7wd)MO*egv%NneMCyd$ZZu#k&h!URC!=DsXSn z9a08dP(Pqk4yh^bCxYWEY%%u#X-19e$ciTn*}P(lwUig80T%B$?;B)DO?^k=Hek(6kByEzE#jWBCe|0Y a)1cENaI6+d@tWkWx$~!c6Yc81|Na;Bx^2Y( literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.shx b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/2024_MTG_Centerline_102008.shx new file mode 100644 index 0000000000000000000000000000000000000000..adefe649419a1819ea17a96c8c11061fed4851c2 GIT binary patch literal 220 zcmZQzQ0HR64)R_wGcfQ1;Uo|7#LXp0Qqki7}$WAp@)Hiy#`1F)wACL(hnFII1T{mJph{y9;^TW literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.cpg b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.cpg new file mode 100644 index 000000000..3ad133c04 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.dbf b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.dbf new file mode 100644 index 0000000000000000000000000000000000000000..e686463c5be48ebeb709cc2dcb72aad92ab526c9 GIT binary patch literal 22966 zcmeI3PfNo<6vQLyMeyc9JmoADY`u!mmTJ{nq2FMeEbU_2l+F4Ny!ge%)@|C*q)$9_ z122dxDgnIS*Yfcu~OhbNxreeJ1(`6+kw#Y8R_+l%w}#zZKSK&zQiu~(=YHIa!C zlbL7r(~bQ@IZ{)*_Pc*mm(wuaQK*Z^DDx7^$8Fy)lSD?5Fw*NUE_9S$ZF!dOM$fk| z{wma8RicI}Qs$#r54CuE(xKE__NyRX+AGfI*l!7~mDGMSQlsfaPK{rs@)mM8mDo68)@iA-oLE*N}n+?`ZPbUMBLRSh3d@4#ff`|~;faQExvs4NG*sdi zG(BpBu?EmEF4wU&ybLA-x1eeJ{aBkZImuB3XgIc7jwgVI%)J)}&$BsXd=vXUq2ol7 T&@Xvk#v+QYY literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.prj b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.prj new file mode 100644 index 000000000..a30e6f73c --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.prj @@ -0,0 +1 @@ +PROJCS["North_America_Albers_Equal_Area_Conic",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Albers"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-96.0],PARAMETER["Standard_Parallel_1",20.0],PARAMETER["Standard_Parallel_2",60.0],PARAMETER["Latitude_Of_Origin",40.0],UNIT["Meter",1.0]] \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.qmd b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.qmd new file mode 100644 index 000000000..9962969d5 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.qmd @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.shp new file mode 100644 index 0000000000000000000000000000000000000000..05f00f9ddbb3686d8b463f9f4f5aa89a7a6bbf14 GIT binary patch literal 12388 zcmeI230O|u+Q*B822`Ty**i&wC~cIeSg%xuii#qdG*M>JD3uh^JSbzOLEb{i5Xnvo zY0y9-L*8DMR1`|mxgWRZILA5H`M&d>?|kQ+>%9BA?k7M0wbs7Zz1H6QUTbeYzKKG7 zfAx@Jng{doiGsF0ea`KzrgCJEw&FwO#|#_nexY~5D0vb-bXm9hEQbB7)&KlI`T6+x zz5leWM}sbT`fX#_#654)7VPJc72Agv?bcveD9Fe8R+o2Po;Jh(!bNEZInpt3V6&Mf z!>)HLzHh!qjtD*za!S``Sc~*I9!i07q`~|InWV$8=g(J4`W}!Y_RVQ;EeYuPRcg8? zM{-xNvi|*DOGE|zwdah#F9onb6l6G-Om}qBr zye-4#M|_%D>ILQb*32xoW7y`_6Q3Aw4&f7@wez?=!p1S()R+u)cyj zjp72KJgrov?!vIlhE$UWK^&6f8HFC7#`@2v#D5hHg5K6}=f6?4>gX9T-?Q~x z;^u|HwWK#SM&u!fENn|$BfcHy|HyBl;gww$wfyp0(2^?pRgDgDh(%1a;x=Ftr-uEV zksPAi)+^};96QZ0#3hbHc8QGJ5(3=cEF!h>2#4I43vQYQ-0sV`s~`VU=Otn-JpNy~3@$R#VOZ4HMQ zcIB7!WwY;okHx>yjDR~I-(l`}y|(oF5|Yg!`4Z+mV=^En?}BPK!Fch;k9)u3-9Ufr zPl11M>Cg%esl8-$rXZ4G=UmR&y``E%9(5}p*c>aVv9**#rd^5Z zYdgWPsg;!h)t5QMZ{Z_4F%`z=wCdcNT!=RjWUr+#EYG)VhioqI2YpDW{`CmZ(WYHjNa~Mq;l^R;w=?r%#PjRYl8n0%0u3Z|9I}RMfxWnl>M)s z+uuC(D#_B)W-PUIik``Xao_rneMS6?Yb^zCtK(5Q_240|ppAw)=n zBDQUR-B(_Do^JibD@|O5B70eTb_&#wdw?8s6Pec@ul>Kz&99}om&jLNU-_YL)zVo* zd~4v|c|zIsl@&$m)6w@IXJlS`y!L;Cufw6v zZ0;Pm5Rbk+82(U267oe!v83*CTPac{i@tN`Jl9|D!7Iztcx8EYvDDxE<=%eRaL?Pi zLCb;z=i%k4UaQn*Rqm(Ai^(<*TI%uH%DphT2d``ppSGR^_&BdpzQ=Rh_qzMll1hdK zQ^fA&KC7XipFXa%NDp|TrErM=@Q-a{tH0@27;<9)uK!Ykr{)enND-R9oeuKb4n9PY$Wpg2cc5;;k&%oV@a5Et_lqAfYYpaj zpHnH~I?HLa&`lV>ZJ(*_=@e-$VqWFKv*+SsA&zebMXtEIoSh6@?`s>Me2yX>SvGYy z3Shp>tq^*Y2lGYFL(nFlVQ*%OJt(+Jk=9)*14DpKbYq+2uEBWc$Jv)$h4HQ{$qdK` zR=s~M8u){7a@~dkikv=ZUS|yKwN|#>tcW6`AC5LSm&dTABg`ri`o2kUd{8;`{l{4R zYliA?o)w0We?E5{Pv%xjJO|&$d~E0o1>fD$=XKBQqliqA;EvJ+97m~dP5oHbm2aP8 zbSc~uuDK4=hTKK=zI}&G8AWzqncejw2lA?SuN5kQyZdj;SOMoAzC3JLB}F_*Tb*q- z!?r5!6+cx)k-F@gf%_pB>K@)@>Q+sW@HOX~Rsn}s*)A-u0llH@iz4vkOG8Esen63I zt@mUb-K3zxwJ1PW}eQKbHlcmVoTfn3B4P5U4 zM~V&JqY#Hc})@x!kWLBZS>OIJDdpobH zYqV2jMYOcjKH&RNU&P$rQ^c5Fr|+E%<>y|u{kaEnzp^)~GLTbKCJRq~?xo1UWdF)n z5c?m;;%|=Vf2KGB+-~E}!*EC9C;gcssmhD1dZF)2Y{o>+cBV-eZB{fc6z8GXw?6X9 z?(!HbeF@5ns0dq_@Y5u#Yw#&8;5fb83i={6*}AHxKmxdj$+6fviY5~8+d|g?U!3Pt zy=yf6$8*)@xgEYamL>{XdKxQ1kFgwai;|^D&6cY{+3^g!_ljJeG>0a3A?m0!8^zZZM7X*HwKA}finIP~wO^RQ%zu)|A ze7Q*)_u!S~Y3FO6-dpGj@fLj5-wtJOt=?z*dK*o&I~@iJVV}atqinFE7ftxX8+H|i z!`lDIsFM$N)8vMzbdW^^!|q$Mr(Y$2Cdd1(Opk_m#)cdV^b4j*$T{aDVX+Kbrz~I8 zdWa@Qns2-&{E2ToU(u_7$}jg3`87Xem0oX}0`VxwZxz~nl3~*dyRyCui;*1vwf~*`$d{ev5%q_T& z&)+E*39M?dZfOnh>k!?%6yTd4!TggeXmYBqw`c%-$*hnXFnU9i4MrPH1hz4(zmAfv zcMnY}s$L{+2A0cmcChA`Cr+6wW4(YI)f#6943Q_Nwuw8*ZU4)@VXyurzp!)?+`x_N zXrV0`F3mJ?3d~er06z2HXPh?w6dJpXVRfL4_cs@L>uT->2X`^fU2Jj_bnZiyd#!N? zbu`!*Fm4Vf111MXfysj@fGL70flUIN0yY&)1#CJP12z*(9c(t(955{~t`GCUege}4 z(*rXATMV`o%m{25m6!5qPy!8U-of^7oZ0=5lo2iQ(9 zcQ8*d!^8fwjt$U+7mxmV(|*kyBu{p<>qj<2d=#{iBRi32Ued2B?5ByQH0yBD44ymZ zk*CTcbCM2u2Y#lB?ySDs&7dzmio8ezd7aXTmGPfwqLY{^aT4@{^2pPZkyi%3)Ey7{ znAYdc4WLK)A`fpvKB#;5#QR>D(>?;9K7(GRgM7mmSx!d9)F1ShV^`)eD;QRPH1Y#! zWS>Aa=gFY&{}SZ481yT?$ea0szp}{(>1#4D=h@B#^9P_ub|T++huk(LZ-Nl${u?8* zgyFr5%mie=&BzWh0$Wl*pYN3u#C+$zA$w3mQA_i3%a@k z@=g=vH!hM>>$+%iG+4a40Q9kr$YBSNi$j)*9s_-3f^uFn=ri{r%N#}4eP~mt4SMmy zoZv~T8P@eaa*jUobK~o3a-f&hx|mD_U2`#V-9u#YQvaGhh+pn?%lG=AFSvzVas&CO zWt#CEsNcT)r&0Ex=dM8RGDRLy+j+qd>Q}5;U$0;Z?*l53>#dNh_nz2BgZ_TP>j8bx zC47~(hSW2nDKwBp*#wG8XigiJ;vXFT3tnAQRJkGAEl9MIp? zA|Gl;t{jQaD|@?F-Zk)EmiPQ}vq!%5YIl!z3r))JoL%d?4%Xz2$hoD+P7Si%A<+Kg zupxem@E%vO4!J%8dHbn_X1#FzZhZdWO(y82$C2F|k#ldVdPKned+^ImLya6@?Uau^ ztO@ycoY3k%K6&E4V_dSZBfJ-nM)ui>EbFwv?jz&~n$lxU)`33V9$85i`IWwPSovUi zqEKLG*9`jbg~$_G0c3U(a;-?qyLTe;ka%0G1#_mU7oN0g;~L9!f$kumaaI(~e^<&-+$u29)8h1-Qo`Fz&lpL9qYi zwGFS&9;u(E&7KQ;z8`#}suscC#JBI$!aI>;hU52Y@l$`9F|d>-tvM5AMykWRBqijQ zT;znc3nb)?XtKj$Ve}5rFPS5UI3cSRO!71VeT27bYZ&NOSCFN5BU`TMuZstLLNasg zDd_IT$m%J`b}i5O9gJzR`ps?8ks7dP{StXs2lD*Z@=+^HVDBS&vYJ2WPQM^$rXU+< z3+uLne$-X4AQyD^pOM2hA*&v*4Y_AZlZ0{7nJu7iJ&c?(9=W(_xoPwY$Y<|XMXJn( zeDxV}%01+ds}!0_LGO`DEzkqK*bMot4Dw^^yqfvuH1T>IqJ9~4fz`;)4al;;Tv>0v znkH@mYlQY`!gqI1k(~pPr^&WG)CBz}tAe?wLEkEgY-)onXnwDCwIxktv&e)2&~=w1 zi=IP%B^DDgVlCuj%Av7y=P>Lv5#)er$l2}FcW8lrZ&!iCa?rb)kxM<0ySrXQM_AKD z#ecZ85X=|#cH|j*ku?Un^DVQX$(x@A#{CNQtv>Ji%GFuORp;F6?|{ClAl79l)bGzg zwqTKGi|q+Ww1vH`dOm4c(0zoFpFTle(EX9`lpXB7Nl3WcfxfjJ*+3Gxrb}m>_&S>0 z8I|L{3-tCk$mQb5aW`cRD?#7UxS{L}=uh&IJ$^wh%C?_-!k#9z&EqVyK^MqGE^kGC z`sum4k0VXSl}kFPYccGv-N;In$e~V4((*vRt)(ID0(zw_a+wbDp7#;0Uz}(npECDy z66iNOkSC-eFZk7RzAo%TZ<0CGbqMsP=g6z&kj+jm^3hvQ6OJ^=&Idg*0ePe>@-qv* zLBE1N$;|8GOVF2?B2Qb1eAjQI^|B4Hx1W&WTLHSLH?rGNM#2@!97wya4-XUeIW8FLFC=alQliI(PXx}@M~w#3nw5i@^d}<%*Mlw`f^7H{`Hq%f?_t<`x9b&9dxkG$N@EedjfqS zzBBjz`~~!^a^x}U$Xh)NZ}boumQmN4Oww%s{Rj*X0*o z3iqFMA&1!JcK_rpS50#_(P1G32x@$j7H9y^C&#z2+GuHp!qjDj{plLgqa)dCyRI QJpO+C9)aH@@EarW2Rl#5*8l(j literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.shx b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/MTG_Centerline_102008.shx new file mode 100644 index 0000000000000000000000000000000000000000..691601ba4e60466e5faecae45c4ff57f80953556 GIT binary patch literal 260 zcmZQzQ0HR64w_ytGcfQ1<%(BWohS^Jab&VpxvqWN=wL_1mY=Eu3XT)l1HPD<8Xd&0 z9YxfLfq}6Gh&KU6uP`t$bph!a3=GU_K)L})uL9B~3=AwvKspFWS3v1=5Smp5NLw&4 zuqFWM7$AKBXch|t1KSB8{{aI7`x+qMfq{YJ1CalQfq@e!#?ZsSz*PXGf$F&~0BN8Y X_ZA?%hk=0yXct=+1B1{bpjkcuIY1;% literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.cpg b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.cpg new file mode 100644 index 000000000..3ad133c04 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.dbf b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.dbf new file mode 100644 index 0000000000000000000000000000000000000000..60b674a2ac5d0e666737799823df8bac253d6f49 GIT binary patch literal 418 zcmZvYI|_h63`7^iM)3kxTU$BtUwQ#gVdEVkC!%kyEtT_@H)4>`@1B1SfD#`YwK;7F6n1#sPIi2hl-v5FIq*K(G;PL>Rt? NuZ`bk{!dL>tuGR?GyVVo literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.prj b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.prj new file mode 100644 index 000000000..a30e6f73c --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.prj @@ -0,0 +1 @@ +PROJCS["North_America_Albers_Equal_Area_Conic",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Albers"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-96.0],PARAMETER["Standard_Parallel_1",20.0],PARAMETER["Standard_Parallel_2",60.0],PARAMETER["Latitude_Of_Origin",40.0],UNIT["Meter",1.0]] \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.qmd b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.qmd new file mode 100644 index 000000000..9962969d5 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.qmd @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Levee/Levee_info/Polygons/temporary_levee_fix_102008.shp new file mode 100644 index 0000000000000000000000000000000000000000..f4a5640b0b8c0551a75d60b9b60fe66d00f9d38e GIT binary patch literal 4164 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 literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/README b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/README new file mode 100644 index 000000000..4e3875471 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/README @@ -0,0 +1,9 @@ +1) Use dem_edit.py to apply edits. The usage should be self-evident in the script. + This script drives the scripts in subfolders, each applying one type of edits. + +2) For STOFS3D-v7 (NOAA v3): + 2.1) run the scripts under Temporary_fix_v7/ as the last step. + This fixes the depths of some rivers/canals. + The meshing in those rivers/canals needs to be improved in the next version + 2.2) set dp = min(dp, -8.975) in outfall_canal_fix_min_-8.957_depth.reg to prevent leakage into New Orleans + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.cpg b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.cpg new file mode 100644 index 000000000..3ad133c04 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.dbf b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.dbf new file mode 100644 index 0000000000000000000000000000000000000000..e5b5e2b1f4a89cb1ef0952e16398cf7f4d85db87 GIT binary patch literal 154 zcmZRsVdiIKU|?uukN}dHz}GRv(*+{z2ckI9lmO-Z9DQ9uqRt?K6+|Ebm}a05R{gvR TP@rq*m!Fpk;TV}28b|>EuuclU literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.prj b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.prj new file mode 100644 index 000000000..f45cbadf0 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.qmd b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.qmd new file mode 100644 index 000000000..9962969d5 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.qmd @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.shp new file mode 100644 index 0000000000000000000000000000000000000000..62c17cfbf6896ce9aa304aeaea5ef52204982879 GIT binary patch literal 2508 zcma*pdpMM79|!PJ^l_Lnmn&(qYJ9 zl1XSwqtVLNB+QhGY*sm@gJW{uuj_jI<9)CFKi7TVzwhs%(exE)|N4_| z@0?Df$zaTC_zpKcizVb$GA6vw66*dQ&hqoAETJ9UZN}OXLjCLQ|NW;FjV8_if1ZU4 zY03Y&*Y(XL<2>g5I*(C-+>%JxGB&$R8S_5eAzSGI&+Tyz>L@0ZdU=(|9{$9(-64R- z*td@oxVqs|Knnb(y!n(qJhcCnoEIDvqLrrv&;0N?e=&Td@O#MsmnFRKc+d3hO+scql6{XakPyGE#Dm2UfB_<-usp=ch~si%F(Ir z599I)wW403W6GgXOOGey;rV}hgSqNK; z&NXg>tBigx<-wJfc~1FP3B~o@WEKOv5bm^zY(ljgC{NnJW5HuhCt<$3;R_kq++hJR zo*FMYy5r7eme76mA$3{!&=I9@KRDCh{7+#Pp*|)RhnmC2%zLda@K`asOC7$pzJ2!J zTtaolhe$uV#1gisYSlcyLa4ny4CfG-S+&La#brX7c*blrhV`X(q&~bvs1c?rPXXpu zJ1h}jB-C1EGtG||S;9iGo%iERLiHNjNeSTUmMGNA-cKXc(=&?0 zYB0S)K_~@xt5iqjX0n7|>I~Wsq!KDbv((KL-X9lbG58yyobLIDKfb^cuFLJ+t^rR}C(CKT@uP1$>G1sUt0(d@@P77wJ}lTIJwnAE{^1C(Am==xu91c? z9r#E_v+R2KZoyzrYdTB#dQ`AV8jegA1RRF#ceSY3q!4P)oA7P&Fd2Q4906ai{*ri^ z!xHvS7aRATBh=ERsk>}pnn>O47x-;NV)IZMOBhx^-u5|}P`XK0z87KEZkvZ`u(=v9 z_Xjvr>fkA7_&~p<<61Z|p)PJa99!RBI14^e(|W-a4*EO!={w{SV{T)GCfwI`?7bM4 zQ_?!!eU?y3UQKNRSX+U!@d?}-vBocF%7z2p`S90V8()}{mjY*Hj?vRF{x-11{ur#& zUHpvY|&m5ct|qO)fzT&n7@p`+19;@SKxt`84*We zUeC|oBXDDAS;;Fn<4g6}7Od~2?ELRHVSTl1m&s;Lt+(a#dC%Z-Gi5VH>`!KigyV|+ z38QJ61;ck&xZLK$Z8-|uc37#g;aMxp2w&->i~Tnna`)E5elsIfTpZw=ou$nQaG9Fd z_|*C751MYb7UyS{>K`06oUerq-AaQPcXGE_;{>Ni>dSwICv8?5K7n2My&qk1eN@G_ zT}+(c$-Y{-XK43X3_#jetdAy0iILDlfH_2F!We_ z=PPws~_eTJ{vEhv*6ZLn{r^6x|E+5om>!Lolh%z2m zz=xjhKGgu9c`esJ0P8AA-?@eQZb(VXrKA202e-Zup#J510(X7~^P`xO66Ay1-IE(5 zU}kbwQYG@^?XMZwaA}nTYlVn*f#O()1Qz}4E7g^ zKODmoF1-q`JJ!u9gXhjv9PNR*fi;=3$UpX{Y=}sTs$@W05-dw;n4}psI*Kr!J;`;DaGhdS{X0Wdtkjt_lQ{Z zuju0;#xv00S}SJu*`vQ*rj2XOhfN>p2ET?Exb0(Gz@ph*lneSJ>)pjN2Y8XT^X5W$ z(Z-N3zOYr>%YjkYbJB$!3)9~QypAhZhx1K?+1R+afwDTq4N8U zO%34<>yl@);n4xxQVJI2osWxx?W`Fh2iQ|!^B@QIxM85~3mXrc1xes#^41A4u>D*s inKAh5cUQls_*>l)LM`0y+?TBen%5&Xa3NB;ocn4@a| literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.shx b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/BayouLafourche_lonlat.shx new file mode 100644 index 0000000000000000000000000000000000000000..e6deec66a4bd65c396266e4ac0392a2449ea9799 GIT binary patch literal 108 zcmZQzQ0HR64$NLKGcd3M + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.shp new file mode 100644 index 0000000000000000000000000000000000000000..ee6678f3f1189181e592fbbd844253583f89dfda GIT binary patch literal 4348 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 Ts!hOhMH0`aao+vE|4;ZISRxNR literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.shx b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/HoumaCanal_lonlat.shx new file mode 100644 index 0000000000000000000000000000000000000000..728b79c70450751deb091a323d0a8f2a1e7a2bdc GIT binary patch literal 108 zcmZQzQ0HR64$NLKGcd3M<&Jo`u9Mjqb|4`8#ifK0TZhxjsxAJm2|Eyx;!*Kzimd~7 M?I@x~3=A9|0Q8IzxBvhE literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.dbf b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.dbf new file mode 100644 index 0000000000000000000000000000000000000000..283035d1e4a5643c5f670e70a6e6fdf35f0a59c7 GIT binary patch literal 201 zcmZQh=Hz5%U|?uukN}dHz}GRv(*+{z2ckI9lmO-Z9DQ9uqRt?K6+|Ebm}a05R{gvR XP@rq*m!Fpk;~5#iSZLygIK+(rTgej& literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.prj b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.prj new file mode 100644 index 000000000..f45cbadf0 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.shp b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.shp new file mode 100644 index 0000000000000000000000000000000000000000..2462d39309a747e29e13d7851eb199f743f4cf94 GIT binary patch literal 3564 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 literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.shx b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/NewOrleansOutfallCanals_lonlat.shx new file mode 100644 index 0000000000000000000000000000000000000000..eb020e9ebecafe8dce269f29a7b6441afe628603 GIT binary patch literal 124 zcmZQzQ0HR64(whqGcd3M<>vjkCA^;_{J`hanjNoQY#o#q>t3B07IxrmKacSe7JCQm X+EGM}7#Nr)0P!&(21>A;0@4})2_h2+ literal 0 HcmV?d00001 diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/temp_fix.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/temp_fix.py new file mode 100644 index 000000000..4ea991587 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/Temporary_Fix_v7/temp_fix.py @@ -0,0 +1,45 @@ +from pylib_essentials.schism_file import cread_schism_hgrid +import copy +import geopandas as gpd +import numpy as np + +gd_ll = cread_schism_hgrid('./14a.gr3') + +gd_meters = copy.deepcopy(gd_ll) +gd_meters.proj(prj0='epsg:4326', prj1='esri:102008') +hg_points = gpd.GeoDataFrame(geometry=gpd.points_from_xy(gd_meters.x, gd_meters.y), crs='esri:102008') + +river_fix_dict = { + 'HoumaCanal': { + 'fname': 'HoumaCanal_lonlat.shp', + 'depth': 5, # depth in meters + 'buffer': -3 # from banks + }, + 'BayouLafourche': { + 'fname': 'BayouLafourche_lonlat.shp', + 'depth': 1, # depth in meters + 'buffer': -3 # from banks + }, + 'NewOrleansOutfallCanals': { + 'fname': 'NewOrleansOutfallCanals_lonlat.shp', + 'depth': 1, # depth in meters + 'buffer': -5 # from levee centerline + }, +} + +for river_name, river_info in river_fix_dict.items(): + river_gdf = gpd.read_file(river_info['fname']) + river_gdf.set_crs('epsg:4326', inplace=True) + + river_gdf = river_gdf.to_crs('esri:102008') + river_gdf.geometry = river_gdf.buffer(river_info['buffer']) + + joined_gdf = gpd.sjoin(hg_points, river_gdf, how="inner", predicate='within') + idx = joined_gdf.index.to_numpy() # get the indices of the points inside the polygons + + gd_ll.dp[idx] = np.maximum(gd_ll.dp[idx], river_info['depth']) + print(f'Forcing depth to {river_info["depth"]} meters for {river_name}.') + +gd_ll.grd2sms('temporary_fix_river.2dm') +gd_ll.save('temporary_fix_river.gr3', fmt=1) +pass \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/xGEOID/convert2xgeoid.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/xGEOID/convert2xgeoid.py index e1bd422b4..d0d962ba5 100644 --- a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/xGEOID/convert2xgeoid.py +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Bathy_edit/xGEOID/convert2xgeoid.py @@ -4,7 +4,6 @@ from pathlib import Path from glob import glob -import re from tqdm import tqdm import numpy as np import pandas as pd @@ -12,11 +11,6 @@ from pylib import read_schism_hgrid, inside_polygon, read_schism_bpfile, grd2sms -def extract_trailing_numbers(s): - match = re.search(r'\d+$', s) - return match.group() if match else None - - def prep_folder(wdir): """ Prepare the working directory for vdatum conversion @@ -216,6 +210,10 @@ def convert2xgeoid(wdir, hgrid_obj, diag_output=None): Wrapper function for vdatum.jar to convert the hgrid depth to xGEOID20b Review the workflow and test it manually before using the script, because the script may not work for all cases. + + return: + hgrid_obj: updated hgrid object with the converted depths + depth_diff: converted depth - original depth ''' print("Converting to xGEOID20b ... \n") diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Grid/make_dem_source_map.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Grid/make_dem_source_map.py new file mode 100644 index 000000000..03684e687 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Grid/make_dem_source_map.py @@ -0,0 +1,105 @@ +"""This script creates a DEM source map for the DEM-loaded hgrid, +the output is a shapefile with each polygon representing a DEM source area.""" + + +import numpy as np +import geopandas as gpd +from shapely.geometry import Polygon +from tqdm import tqdm +from pylib_experimental.schism_file import cread_schism_hgrid + + +def create_polygons(points: np.ndarray, elements: np.ndarray): + """ + Function to create polygons from unstructured grid data. + Each polygon is a contiguous area of the same nodal z value. + + Inputs: + points: np.ndarray, shape (n, 3), where n is the number of points and the + columns are (x, y, value) + elements: np.ndarray, shape (m, 4), where m is the number of elements and the + columns are (node1, node2, node3, node4) + + Outputs: + polygons: list of tuples, each tuple contains a Polygon and the value of the points that make up the polygon + """ + + polygons = [] + values = [] + print('Creating polygons...') + for element in tqdm(elements): + nodes_indices = element[:4] + nodes_indices = nodes_indices[nodes_indices >= 0] + value = points[nodes_indices[0], 2] # take the first value + vertices = points[nodes_indices] + polygon = Polygon(vertices) + polygons.append(polygon) + values.append(value) + + gdf = gpd.GeoDataFrame({'geometry': polygons, 'value': values}) + dissolved_gdf= gdf.dissolve(by='value') + dissolved_gdf['dem_id'] = dissolved_gdf.index # add dem_id column, same as index (values) + + return dissolved_gdf + + +def make_dem_dict(working_dir: str): + """Make a dictionary of shortend dem_name and shp_value, + where shp_value is a unique value for each dem source area.""" + + # dem_id at each node + hgrid_dem_id_file = f'{working_dir}/hgrid.ll.dem_loaded.gr3_dem_id' + dem_id_nodal = np.loadtxt(hgrid_dem_id_file).astype(int) + + # dem_name for each dem_id + dem_names_file = f'{working_dir}/hgrid.ll.dem_loaded.gr3_dem_name' + dem_name_dict = {} + with open(dem_names_file, 'r', encoding='utf-8') as f: + for line in f: + line = line.strip().replace(':', ' ').split() + dem_name_dict[int(line[0])] = line[1] + + # condense the dem_name_dict by treating similar names as the same + dem_name_dict_condensed = {} + for dem_id, dem_name in dem_name_dict.items(): + dem_name_condensed = dem_name.replace('.', '_').split('_')[0] # the first part of the name + if dem_name_condensed not in dem_name_dict_condensed.keys(): + dem_name_dict_condensed[dem_id] = dem_name_condensed + # assign a unique value to each shortened dem_name + dem2num_condensed = {} + num2dem_condensed = {} + shp_value = 0 + for _, value in dem_name_dict_condensed.items(): + if value not in dem2num_condensed.keys(): + dem2num_condensed[value] = shp_value + num2dem_condensed[shp_value] = value + shp_value += 1 + + # map each node dem id to the condensed dem name then to the shp_value + dem_name_nodal = [dem_name_dict[id] for id in dem_id_nodal] + dem_short_name_nodal = [dem_name.replace('.', '_').split('_')[0] for dem_name in dem_name_nodal] + dem_num_nodal = [dem2num_condensed[dem_name] for dem_name in dem_short_name_nodal] + + return dem_num_nodal, num2dem_condensed + + +def make_dem_source_map(): + """Master function to create the DEM source map.""" + + WDIR = '/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12/Bathy_edit/DEM_loading/Original/' + + hgrid = cread_schism_hgrid('/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12/hgrid.ll') + + dem_id_nodal, dem_dict = make_dem_dict(working_dir=WDIR) + gdf = create_polygons(np.c_[hgrid.x, hgrid.y, dem_id_nodal], hgrid.elnode) + + # add name attribute to each polygon + for i, poly in gdf.iterrows(): + gdf.loc[i, 'dem_name'] = dem_dict[poly['dem_id']] + + gdf.to_file(f'{WDIR}/dem_source_map.shp') + print('DEM source map created') + + +if __name__ == '__main__': + make_dem_source_map() diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/replace_eta2_aviso.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/replace_eta2_aviso.py new file mode 100644 index 000000000..b0f0d5992 --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/replace_eta2_aviso.py @@ -0,0 +1,71 @@ +import os +import copy + +import xarray as xr +#import scipy as sp +import numpy as np +from netCDF4 import Dataset +from pyschism.forcing.hycom.hycom2schism import interp_to_points_2d + +from pylib import read_schism_hgrid, loadz, zdata, WriteNC +from schism_py_pre_post.Shared_modules.hotstart_proc import Hotstart + +def transform_ll_to_cpp(lon, lat, lonc=-77.07, latc=24.0): + longitude = lon/180*np.pi + latitude = lat/180*np.pi + radius = 6378206.4 + loncc = lonc/180*np.pi + latcc = latc/180*np.pi + lon_new = [radius*(longitude[i]-loncc)*np.cos(latcc) for i in np.arange(len(longitude))] + lat_new = [radius*latitude[i] for i in np.arange(len(latitude))] + return np.array(lon_new), np.array(lat_new) + + +if __name__ == '__main__': + + wdir = './' + griddir = wdir + hycom_hot_file = f'{wdir}/hotstart.nc.tweaked' + my_hot_file = f'{wdir}/hotstart.nc' + + if os.path.exists('grid.npz'): + gd = loadz('grid.npz').hgrid + else: + gd = read_schism_hgrid('hgrid.gr3') + gd.save('grid.npz') + + lon1 = gd.x + lat1 = gd.y + x1,y1 = transform_ll_to_cpp(lon1, lat1) + bxy = np.c_[y1, x1] + + #time period from 2017-12-01T00 to 2019-01-01T00 + ds = xr.open_dataset('aviso_2015_large.nc') + lon2 = ds.longitude.values + lat2 = ds.latitude.values + x2, y2=transform_ll_to_cpp(lon2, lat2) + + #sea surface hegith above geoid + ssh = np.squeeze(ds.adt.values[0, :, :]) + ssh_int = interp_to_points_2d(y2, x2, bxy, ssh) + + ds.close() + + ##read old hotstart.nc + #ds = Dataset('hotstart.nc') + #eta2 = ds['eta2'][:] + #cumsum_eta = ds['cumsum_eta'][:] + + # make a copy of the hycom-based hotstart.nc + if os.path.exists(my_hot_file): + os.system(f"rm {my_hot_file}") + os.system(f"cp {hycom_hot_file} {my_hot_file}") + + my_hot = Hotstart(grid_info = griddir, hot_file = my_hot_file) + eta2_new = copy.deepcopy(my_hot.eta2.val) + idxs = eta2_new == 0 + eta2_new[idxs] = ssh_int[idxs] + + my_hot.eta2.val[:] = eta2_new + + my_hot.writer(fname=my_hot_file) diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/tweak_stofs3d_hotstart.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/tweak_stofs3d_hotstart.py index 2be9e469c..bc11b8e0a 100644 --- a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/tweak_stofs3d_hotstart.py +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Hotstart/tweak_stofs3d_hotstart.py @@ -80,18 +80,19 @@ def tweak_stofs3d_hotstart( mydir = os.path.dirname(schism_py_pre_post.__file__) for shp in city_shapefile_names: shp_basename = Path(shp).stem - os.system(f'cp {mydir}/Datafiles/{shp_basename}.* {wdir}') + if not os.path.exists(f'{wdir}/{shp_basename}.shp'): + os.system(f'cp {mydir}/Datafiles/{shp_basename}.* {wdir}') - # download coastal obs from usgs + print(f'downloading obs from USGS to {output_obs_dir}') get_usgs_obs_for_stofs3d(outdir=output_obs_dir, start_date_str=hotstart_date_str) - # download coastal obs from CBP; only salinity, no temperature (cbp samples are sparse in time) + print('downloading coastal obs from CBP; only salinity, no temperature (cbp samples are sparse in time)') get_cbp_obs_for_stofs3d(outdir=output_obs_dir, sample_time=hotstart_date_str, varname=['sal']) - # interpolate obs onto model grid + print('interpolating obs onto model grid') gen_subregion_ic_stofs3d(wdir=wdir, obsdir=output_obs_dir, hycom_TS_file=hycom_TS_file, date_str=hotstart_date_str) - # make a copy of the hycom-based hotstart.nc + print(f'copying {hycom_TS_file} to {my_hot_file}, which will be modified') if os.path.exists(my_hot_file): os.system(f"rm {my_hot_file}") os.system(f"cp {hycom_hot_file} {my_hot_file}") @@ -106,29 +107,29 @@ def tweak_stofs3d_hotstart( # my_hot.tr_nd0.val[:, :, 0] += 1.0 # my_hot.tr_el.val[:, :, 0] += 1.0 - # tweak coastal values based on obs + print('tweaking coastal values based on obs') for i, var in enumerate(['tem', 'sal']): hg = schism_grid(f'{wdir}/ecgc_coastal_{var}.gr3') # this file is from get*_obs_for_stofs3d idx = hg.dp > -9998 for k in range(my_hot.grid.vgrid.nvrt): my_hot.tr_nd.val[idx, k, i] = hg.dp[idx] - # set salinity to 0 on higher grounds + print('setting salinity to 0 on higher grounds') rat = np.maximum(np.minimum(1.0, (my_hot.grid.hgrid.dp + 3.0) / 3.0), 0.0) # linearly varying from 0 to 3 m my_hot.tr_nd.val[:, :, 1] *= np.transpose(np.tile(rat, (my_hot.grid.vgrid.nvrt, 1))) my_hot.trnd_propogate() # propogate trnd values to trnd0 and tr_el - # set initial elevation: aviso values in the ocean, just below ground on higher grounds and in cities + print('setting initial elevation: aviso values in the ocean, just below ground on higher grounds and in cities') my_hot.eta2.val[:] = gen_elev_ic(hgrid=my_hot.grid.hgrid, h0=0.1, city_shape_fnames=[f'{wdir}/{x}' for x in city_shapefile_names], aviso_file=aviso_file) # no shift based on R11, R24, R11a - # write + print('writing the final hotstart.nc') my_hot.writer(fname=my_hot_file) if __name__ == "__main__": # Modify hycom-based hotstart.nc.hycom with coastal observation values of T and S, and a better initial elevation tweak_stofs3d_hotstart( - wdir='/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I14c/Hotstart/', - hotstart_date_str='2021-08-01', + wdir='./', + hotstart_date_str='2024-05-21', city_shapefile_names = ["LA_urban_polys_lonlat.shp"], # polygon shapefile specifying cities aviso_file = 'aviso.nc' ) diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/__pycache__/__init__.cpython-310.pyc b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/__pycache__/__init__.cpython-310.pyc index de07d03c75c0762fdd0083225d3fa1d83a506621..1ae41b6c0687872598f6f26fac303c3a08b38e44 100644 GIT binary patch delta 43 ycmaFOxPozlyP~&#adKvIPJUjhenx(7s(xB(W@V~=aY=q!v2luSVoA=#)eZn(y%10U delta 110 zcmZ3%_?mHodrF^vadKvIPJUjheoA6VqM?C)T54uxs(!Guhi9;Fe2{B^f3RnWe^4Y) zT}Ebcu6}V*vVLeuW=>{FrG7wBs%}70esXGYab{k+esGAtTd=ONi>_lyj&5;AVoH9w MZkVTU@Wc!U0D~hYwg3PC diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/__pycache__/gen_sourcesink.cpython-310.pyc b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/__pycache__/gen_sourcesink.cpython-310.pyc deleted file mode 100644 index 7c4a673268b19a46d33c5e01fd9ecfd8cd03f16d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4276 zcmZ`+OOG4J5$^7JaQIwmceQ$0b_O=q5S^H`Bqu>+*)U@HA;;P%SjU1H8-p>s$sO)+ zhU%V`yu=U)LIJi9f)NBcIRbW%`U&|1Ip&m8UvtvghX9Tfr>ckC<=V;&rl!04Rb5qI zb#+>=R|q_R)%E^ARtfnhR+gUcjxH77CtCR?5SmQ1)aqj`c+CiO{4q;BUt&PX9C(@$Y<6$PUXe6L) zu^5RYyA?(PRRR4xs6M zSjO$AaujCTfqzeEZ@jO1JCPdoP`2gAg39agsTY6<(xseq8K(isPW+;b+Gv)3za_56W0yCfK&*`o$zW^Crv!>}; z$X2WiEv2Ov?^vQcPu~V~*znFQ^!06WiKsu{16lF?&|n8Vu*@s>Np4+-U7)Ub^+esm zajn{x1QnBSnzzy@$&?=@{@XI$8~cw9n_czM{dl%N7L)SW??+N)SN(}M_QAwZdi)(c zJ?y)9(4c6~ZTQqW5VX<9?v!R=xf%T&mq_Qdut@jbHmQ%7sF%lSymYZ`(l-B~cax?Q3z`3uE;f6c(d?utf)EFk9S!g4tpT zw|GEvaIIpKW;XypmW;I%N*V6UHRyc2Q;B2c86ZD_?`srlgR~mDlmr7bg02?32>MYB zz)i+;wihi*b~+Y`c4U|ggm%L*)VQ|5lG>9ZQM5d3f3H*}tCsu31~BlhaQ$Mh~^Jcu?s_vEgq}F;RiY5+IF$ z`a$`e&e)eXrz~R};>OT2ap2V{#0YL>P7X0_j&%pHj?ux*tz%^6>;UI7ysrp%9~LMt z<|=wJK>5nlp7-={bZ(y`$Gz{of^FQz_;6?K2}u3u`$%n-wluwGfGBIQD_KX<0HSH7 zRhAd9`XeMhlBbYtB6%Lk(?GOyPeyQvJOkyHBQGMqg?zi8?qw2fAzwstgfioM+AW5) zp-G`LdSEIv)bn%$%yfa)DEs%b-%Zv|n5G!>h;Fr9v^n}r5a>z}j8eV_juPlv5Zu`d z&4C29QV{U87X%WQkylQNVFWTbz%=1Bd5t}w?}*rnW)~}nyhr@vBQMGD4Epf4Ama0G?`R8*iclA z=S`j}jO>p?lXmz#^^-L7;h6627>}Hs+lC=eY(HTkL@Xi|gWcC?+6Yeo2#-1a91wes z{K=dF$G-T8NjxZwo5H!!m`gqvr09q9Kp5vyuL$GUalm;Xljo#JC5L!5@4pnjk9z-K z`Q$Hfo?}#8g{lz&l>;*tDcG?H@)~q_6UUgf*A_|*dTFvZ*JcNrAETSXL~fLD$mJ%d z3Ux1aYpodH);5|$+i@E50^=q)SIv152!xSAwRTl1Gr{FKm>9al!KCe7v9BQPD?Fa% zvnUlt1a0%Z(YR%6`yP+vkvh@daKd#rjJ5=yACU{SE%AT2_ZE|{;`FZ|F{W7gp4L%u z=D2Urb+%3~v&-}u>lu2%xVEsGd}lT7j84xGTrlp0IXj z;%( zmZrP@#P^i|-{%VIJ|td3f_?pBI^*-LRq2BL3g1Q(73~&+gFl6LMPT4lM);VbMBvFwNbrbkRpqa+{2r2< zK(u4js9E+>w>jVSG0xG+brX)v@m?0d@}ifea$mlWqqnimO74x8!i9lC<7B?M1^vtw zszF`Wuo|>No0iKqSc9ImJUG>wfCvV85u^5hYVJBaPo==Q;Vd16Q4$1`r3|>Zt6h3& zo&|5e|LeE5uUvoe?$0|n5)e{#Zd|(j>4^+DmC+!ATjc`ZXwi;*8CGbWlNg(&v4R6x z-gw`ng7O1gz7(ee7&wrxW6fV&6We%g1a`YnmdUc)s0E{FW03k$U$}Vg7<23DC!vaZ zZ=^{-8t9c?IL`K@xE;y_ue92^{^l=#`?dzN4FYp_)#ZW6-U9)I1RsDRUT95#EMkY# z2McHNHj0nRl0QZA4wB>GeUwXR?^= 0: - print("p first: " + str(self.ip_group[k][0])) - print("p last: " + str(self.ip_group[k][-1])) - else: - self.np_group = [len(x) for x in ele_groups] - self.ip_group = [np.array(x) for x in ele_groups] - - def writer(self, filename=None): - if filename is None: - filename = self.source_file - - with open(filename, 'w') as fout: - for k in range(0, self.n_group): - print("Points in Group " + str(k+1) + ": " + str(self.np_group[k])) - fout.write(f"{self.np_group[k]}\n") - for i in range(0, self.np_group[k]): - fout.write(f"{self.ip_group[k][i]}\n") - fout.write("\n") # empty line - -def reorder_parings(wdir): - source_sink_in = SourceSinkIn(f'{wdir}/source_sink.in') - - source_parings = json.load(open(f'{wdir}/sources.json')) - sinks_pairings = json.load(open(f'{wdir}/sinks.json')) - - assert np.array_equal( source_sink_in.ip_group[0], sorted(np.array(list(source_parings.keys())).astype(int)) ), 'Source parings do not match' - assert np.array_equal( source_sink_in.ip_group[1], sorted(np.array(list(sinks_pairings.keys())).astype(int)) ), 'Sink parings do not match' - - # reorder source/sink parings - ordered_source_parings = {k: source_parings[k] for k in source_sink_in.ip_group[0].astype(str)} - ordered_sinks_pairings = {k: sinks_pairings[k] for k in source_sink_in.ip_group[1].astype(str)} - - # write to json - json.dump(ordered_source_parings, open(f'{wdir}/sources_conus.json', 'w'), indent=4) - json.dump(ordered_sinks_pairings, open(f'{wdir}/sinks_conus.json', 'w'), indent=4) - - pass - - -def gen_sourcesink(startdate:datetime, rnday:float, cache_folder:pathlib.Path=None): - hgrid = Hgrid.open("./hgrid.gr3", crs="epsg:4326") - - t0 = time() - - #source/sink json files, if not exist, it will call NWMElementPairings to generate. - sources_pairings = pathlib.Path.cwd() / 'sources.json' - sinks_pairings = pathlib.Path.cwd() / 'sinks.json' - output_directory = pathlib.Path.cwd() - - #input directory which saves nc files - if cache_folder is not None and cache_folder.exists(): # if cache folder exists, use it - # cache = pathlib.Path('./NWM_v2.1') - cache = cache_folder - else: # if cache folder does not exist, create it - cache = pathlib.Path(f'./{startdate.strftime("%Y%m%d")}') - cache.mkdir(exist_ok=True, parents=True) - - # check if source/sink json file exists - if all([sources_pairings.is_file(), sinks_pairings.is_file()]) is False: - pairings = NWMElementPairings(hgrid) - sources_pairings.parent.mkdir(exist_ok=True, parents=True) - pairings.save_json(sources=sources_pairings, sinks=sinks_pairings) - else: - pairings = NWMElementPairings.load_json( - hgrid, - sources_pairings, - sinks_pairings) - - #check nc files, if not exist will download - nwm=NationalWaterModel(pairings=pairings, cache=cache) - - nwm.write(output_directory, hgrid, startdate, rnday, overwrite=True) - print(f'It took {time()-t0} seconds to generate source/sink') - -if __name__ == '__main__': - # gen_sourcesink(datetime(2017, 12, 1), 10) - - wdir = '/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12x/Source_sink/original_source_sink/' - reorder_parings(wdir) \ No newline at end of file diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/gen_sourcesink_nwm.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/gen_sourcesink_nwm.py new file mode 100644 index 000000000..a3497249d --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/NWM/gen_sourcesink_nwm.py @@ -0,0 +1,73 @@ +''' +Generate source/sink files from NWM, +source/sink parings between elements and NWM streams (fid) +are saved in sources.json and sinks.json, +which are reusable as long as the horizontal coordinates +of hgrid does not change. +''' + +import os +from datetime import datetime +from time import time +from pathlib import Path +import logging + +from pyschism.forcing.source_sink.nwm import NationalWaterModel, NWMElementPairings +from pyschism.mesh import Hgrid + + +# Configure logging +logger = logging.getLogger(__name__) +logger.setLevel(logging.DEBUG) + + +def gen_sourcesink_nwm(startdate: datetime, rnday: float, cache_folder: Path = None): + '''Generate source/sink files from NWM''' + + t0 = time() + logger.info('Reading hgrid') + hgrid = Hgrid.open("./hgrid.gr3", crs="epsg:4326") + logger.info("Reading hgrid took %.2f seconds", time()-t0) + + t0 = time() + # source/sink json files, if not exist, it will call NWMElementPairings to generate. + sources_pairings_file = Path.cwd() / 'sources.json' + sinks_parings_file = Path.cwd() / 'sinks.json' + output_directory = Path.cwd() + + # input directory which saves nc files + if cache_folder is not None and cache_folder.exists(): # if cache folder exists, use it + cache = cache_folder + else: # if cache folder does not exist, create it + cache = Path(f'./{startdate.strftime("%Y%m%d")}') + cache.mkdir(exist_ok=True, parents=True) + + # check if source/sink json file exists + if all([sources_pairings_file.is_file(), sinks_parings_file.is_file()]) is False: + logger.info('Generating source/sink pairings') + pairings = NWMElementPairings(hgrid) + sources_pairings_file.parent.mkdir(exist_ok=True, parents=True) + logger.info('Saving source/sink pairings to json files') + pairings.save_json(sources=sources_pairings_file, sinks=sinks_parings_file) + else: + logger.info('Loading source/sink pairings from existing json files') + pairings = NWMElementPairings.load_json(hgrid, sources_pairings_file, sinks_parings_file) + + # check nc files, if not exist will download + nwm = NationalWaterModel(pairings=pairings, cache=cache) + + nwm.write(output_directory, hgrid, startdate, rnday, overwrite=True) + logger.info('Generating source/sink files took %.2f seconds', time()-t0) + + +def main(): + '''Sample usage''' + working_dir = Path('/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12z/Source_sink/relocated_source_sink/') + cache_folder = Path('/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12z/Source_sink/original_source_sink/20240305/') + os.chdir(working_dir) + gen_sourcesink(datetime(2024, 3, 5), 5, cache_folder=cache_folder) + + +if __name__ == '__main__': + main() + print('Done') diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/Relocate/relocate_source_feeder.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/Relocate/relocate_source_feeder.py index 6fc2032c5..a712b283d 100755 --- a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/Relocate/relocate_source_feeder.py +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/Relocate/relocate_source_feeder.py @@ -7,6 +7,9 @@ import os from pathlib import Path +import pickle + +import json import numpy as np from scipy import spatial @@ -101,28 +104,257 @@ def nearest_neighbour(points_a, points_b): + '''A wrapper for scipy.spatial.cKDTree to find the nearest neighbour of points_a in points_b''' tree = spatial.cKDTree(points_b) return np.array(tree.query(points_a)[1]).reshape(-1,), np.array(tree.query(points_a)[0]).reshape(-1,) -def dist(points_group_A, points_group_B): - points_A = np.squeeze(points_group_A.view(np.complex128)) - points_B = np.squeeze(points_group_B.view(np.complex128)) - return np.absolute(points_A-points_B) +def cal_dist(points_group_a, points_group_b): + """Calculate the distance between two groups of points""" + points_a = np.squeeze(points_group_a.view(np.complex128)) + points_b = np.squeeze(points_group_b.view(np.complex128)) + return np.absolute(points_a-points_b) def lonlat2cpp(lon, lat, lon0=0, lat0=0): - R = 6378206.4 + """Convert lon/lat to Cartesian coordinates in meters""" + R_EARTH = 6378206.4 lon_radian, lat_radian = lon/180*np.pi, lat/180*np.pi lon0_radian, lat0_radian = lon0/180*np.pi, lat0/180*np.pi - xout = R * (lon_radian - lon0_radian) * np.cos(lat0_radian) - yout = R * lat_radian + xout = R_EARTH * (lon_radian - lon0_radian) * np.cos(lat0_radian) + yout = R_EARTH * lat_radian return [xout, yout] +def relocate_sources2( + old_ss_dir=None, outdir=None, + feeder_info_file=None, hgrid_fname=None, allow_neglection=True, + max_search_radius=1000.0, mandatory_sources_coor=np.empty((0, 4)), + region_list=None, +): + """ + Relocate sources to feeder channels of the resolved rivers + + :old_ss_dir: the directory of the original source_sink files, + which should contain the sources.json file generated by pyschism + :outdir: the output directory + :feeder_info_file: the feeder channel information generated by make_feeder_channel.py + :hgrid_fname: the hgrid file name of the new grid with feeders + :allow_neglection: Allow neglecting channels that cannot be matched to a new source location + within a specified search radius. + :max_search_radius: the maximum search radius to find the closest old source to a new source + :mandatory_sources_coor: a 2D array (n, 4) of source locations + that must be included in the relocation process. + :region_list: a list of polygons, each specified by a 2D array (npts, 2) of coordinates. + This is used to restrict the relocation to specific regions. + """ + + if (not allow_neglection) and region_list is not None: + raise ValueError('must allow neglection if region_list is specified') + + # make the output directory if it doesn't exist + os.makedirs(outdir, exist_ok=True) + + # -------------------------------------info from old source_sink------------------------------------- + # Read original source/sink generated by pyschism based on NWM + old_source_sink = source_sink.from_files(source_dir=old_ss_dir) + old_gd = read_schism_hgrid_cached(f'{old_ss_dir}/hgrid.gr3', overwrite_cache=False) + old_gd.compute_ctr() # computer element center coordinates + + # read source to fid mapping from json + # assuming ordered dictionary keys, i.e., python >= 3.7 + with open(f'{old_ss_dir}/sources.json', 'r', encoding='utf-8') as f: + old_sources2fids = json.load(f) + + # this may not be in the same order as in source_sink.in + old_sources_eles = np.array(list(old_sources2fids.keys()), dtype=int) + + # get mean flow of old sources, using the same order as the keys from sources.json + old_vsource_mean = old_source_sink.vsource.df[old_sources_eles.astype(str)].mean().values + # get old sources' coordinates, in the order of sources.json's keys + old_sources_coor = np.c_[ + old_gd.xctr[old_sources_eles-1], old_gd.yctr[old_sources_eles-1], old_vsource_mean + ] + # diagnostic output + np.savetxt(f'{old_ss_dir}/original_sources.xy', old_sources_coor) + + # -------------------------------------info on feeders------------------------------------- + # Read feeder channel info, which is generated by make_feeder_channel.py + # ".pkl" and "*.xy" are both generated; the latter is preferred because it is human readable + if Path(feeder_info_file).suffix == '.pkl': + with open(feeder_info_file, 'rb') as file: + [_, _, feeder_heads, feeder_bases] = pickle.load(file) # neglected returns: feeder_l2g and feeder_points + np.savetxt(f'{outdir}/feeder_heads_bases.xy', np.c_[feeder_heads[:, :2], feeder_bases[:, :2]]) + elif Path(feeder_info_file).suffix == '.xy': + tmp = np.loadtxt(feeder_info_file) + feeder_heads = tmp[:, :2] + feeder_bases = tmp[:, 2:] + else: + raise ValueError('feeder info file must be .pkl or .xy') + + # -------------------------------------new hgrid------------------------------------- + # get new hgrid (with feeders) + new_gd = read_schism_hgrid_cached(hgrid_fname, overwrite_cache=False) + new_gd.compute_ctr() + + # -------------------- process nan values in mandatory_sources_coor ------------------ + # nan values means the mandatory relocation is the same as the old source location + for i, row in enumerate(mandatory_sources_coor): + if np.isnan(row[2]): + mandatory_sources_coor[i, 2] = mandatory_sources_coor[i, 0] + if np.isnan(row[3]): + mandatory_sources_coor[i, 3] = mandatory_sources_coor[i, 1] + + # -------------------- restrict the relocation to regions if specified -------------------- + if region_list is not None: + idx = np.zeros(len(feeder_heads), dtype=bool) + for region in region_list: + idx += inside_polygon(feeder_heads[:, :2], region[:, 0], region[:, 1]).astype(bool) + if any(idx): # subset if any feeder is in regions + feeder_heads = feeder_heads[idx] + feeder_bases = feeder_bases[idx] + + for region in region_list: + idx = inside_polygon(mandatory_sources_coor[:, :2], region[:, 0], region[:, 1]).astype(bool) + if any(idx): + mandatory_sources_coor = mandatory_sources_coor[idx] + + # -------------------------------------relocation------------------------------------- + # Find matching source point at mandatory_sources_coor and feeders + # These are the desired new source locations + new_sources_coor = np.r_[mandatory_sources_coor[:, :2], feeder_heads[:, :2]] + # These are the locations used to search for the closest old source + # ; in other words, to link the new source to the old source. + # For the mandatory sources, these may be different from the new source locations + # to allow for more reasonable matching between the old source location and the new source location + # than the direct distance between the new sources and the old sources. + # For example, it makes sense to use the feeder base to search for the closest old source, + # but the new source should be placed at the feeder head. + new_sources_search_point_coor = np.r_[mandatory_sources_coor[:, 2:4], feeder_bases[:, :2]] + + # get new source elements (ele_idx, 0-based indexing) + new_sources_ele_idx, _ = nearest_neighbour(new_sources_coor, np.c_[new_gd.xctr, new_gd.yctr]) + new_sources_eles = new_sources_ele_idx + 1 # 1-based indexing + + # projection from lon/lat to meters + old_sources_x, old_sources_y = lonlat2cpp(old_sources_coor[:, 0], lat=old_sources_coor[:, 1]) + # Note: new_sources_x and y are based on new_sources_search_point_coor + new_sources_x, new_sources_y = lonlat2cpp(new_sources_search_point_coor[:, 0], new_sources_search_point_coor[:, 1]) + + # link each new source to the largest old source within the search radius + # mandatory sources are always relocated despite the distance + new2old_sources = - np.ones(len(new_sources_x), dtype=int) + relocation_distance = np.zeros(len(new_sources_x), dtype=float) + # for each new source, find at most 1 old source within the search radius + for i, [x, y] in enumerate(zip(new_sources_x, new_sources_y)): + distance = cal_dist(np.c_[x, y], np.c_[old_sources_x, old_sources_y]) + valid_old_sources_idx = np.argwhere(distance < max_search_radius).reshape(-1,) + if len(valid_old_sources_idx) > 0: + # within valid_old_sources_idx, choose the one with the largest mean flow, + # it is likely the correct old source because the new sources will be in larger channels + target_old_source = valid_old_sources_idx[np.argmax(old_vsource_mean[valid_old_sources_idx])] + # this holds the index of the old source in sources.json, not element idx or id + new2old_sources[i] = target_old_source + relocation_distance[i] = distance[target_old_source] + else: + if i < len(mandatory_sources_coor): + raise ValueError(f'mandatory new source {i}: {x, y} cannot be mapped to an old source') + + # -------------------------------------clean up odd cases------------------------------------- + # check if multiple new sources are linked to the same old source, i.e., double-counting an old source + for old_source in np.unique(new2old_sources): + if old_source == -1: + continue # new source not linked to any old source, skip + + ids = np.argwhere(new2old_sources == old_source) # find all new sources mapped to the same old source + if len(ids) == 0: # impossible + raise ValueError(f'Impossible: old source {old_source} in new2old mapping not mapped to any new source') + if len(ids) > 1: # multiple new sources mapped to the same old source, only retain the closest new source + min_dist_id = np.argmin(relocation_distance[ids]) + new2old_sources[ids] = -1 # remove all corresponding new sources first + new2old_sources[ids[min_dist_id]] = old_source # reset the closest new source as the only one + + # add 1 to get element ids (1-based indexing) + valid_new_sources_eleids = new_sources_eles[new2old_sources >= 0] # 1-based indexing + # 0-based index of the old source in sources.json, not element id + valid_new2old_sources = new2old_sources[new2old_sources >= 0] + + # sanity check + if np.unique(valid_new_sources_eleids).shape[0] != valid_new_sources_eleids.shape[0]: + raise ValueError('Duplicated new sources') + if np.unique(valid_new2old_sources).shape[0] != valid_new2old_sources.shape[0]: + raise ValueError('Duplicated old sources') + + # At this point, all new sources are linked to at most one old source + # , while valid_new_sources are linked to exactly one old source. + # Build a dict with valid new source element ids as keys, + # other potential new sources will be added to the dict if any + # remaining old sources can be linked + new2fid = {str(k): set() for k in valid_new_sources_eleids} + recorded_fid = set() + for new_source_eleid, old_source_idx in zip(valid_new_sources_eleids, valid_new2old_sources): + # add the fids of the old source to the new source + fids = old_sources2fids[str(old_sources_eles[old_source_idx])] + # remove already assigned fids + # duplicates can occur because multiple old sources can be linked to the same fid + fids = [fid for fid in fids if fid not in recorded_fid] + + new2fid[str(new_source_eleid)].update(fids) + recorded_fid.update(fids) + + # check for duplicates in new2fid + tmp = [fid for fids in new2fid.values() for fid in fids] + if len(tmp) != len(set(tmp)): + raise ValueError('Duplicated fids in new2fid') + + # ------------------ find the remaining unassigned old sources ------------------ + if not allow_neglection: + # indices (0-based) in the old source_sink.in + unassigned_old_sources_idx = [i for i in range(len(old_sources_coor)) if i not in valid_new2old_sources] + # find the closest new source to each unassigned old source; + # all new source locations are considered, including unassigned ones, i.e., new2old_sources == -1 + unassigned2new_idx, _ = nearest_neighbour( + np.c_[old_sources_x[unassigned_old_sources_idx], old_sources_y[unassigned_old_sources_idx]], + np.c_[new_sources_x, new_sources_y]) + + # test for duplicates after assigning the unassigned old sources + for unassigned_old_source_idx, candidate_new_idx in zip(unassigned_old_sources_idx, unassigned2new_idx): + old_fids = old_sources2fids[str(old_sources_eles[unassigned_old_source_idx])] + old_fids = [fid for fid in old_fids if fid not in recorded_fid] # remove already assigned fids + + target_newele_id = new_sources_eles[candidate_new_idx] # 1-based indexing + + if str(target_newele_id) not in new2fid.keys(): # some new sources have not been linked to any old source + new2fid[str(target_newele_id)] = set(old_fids) + else: + new2fid[str(target_newele_id)].update(old_fids) # this prevents duplicates in each new source's fids + recorded_fid.update(old_fids) # update the recorded fids + + # check duplicated fids in new2fid + tmp = [fid for fids in new2fid.values() for fid in fids] + if len(tmp) != len(set(tmp)): + raise ValueError('Duplicated fids in new2fid') + + # -------------------------------------write ------------------------------------- + # convert set to list for json serialization + new2fid = {k: list(v) for k, v in new2fid.items()} + json.dump(new2fid, open(f'{outdir}/sources.json', 'w', encoding='utf-8'), indent=4) + # other diagnostic outputs + with open(f'{outdir}/sources.txt', 'w', encoding='utf-8') as f: + f.write('lon, lat, fids\n') + for k, v in new2fid.items(): + f.write(f"{new_gd.xctr[int(k)-1]}, {new_gd.yctr[int(k)-1]}, {'-'.join(map(str, v))}\n") + with open(f'{outdir}/old_sources.txt', 'w', encoding='utf-8') as f: + f.write('lon, lat, fids\n') + for k, v in old_sources2fids.items(): + f.write(f"{old_gd.xctr[int(k)-1]}, {old_gd.yctr[int(k)-1]}, {'-'.join(map(str, v))}\n") + + return new2fid # same format as sources.json + + def relocate_sources( old_ss_dir=None, outdir=None, relocate_map=None, allow_neglection=True, feeder_info_file=None, hgrid_fname=None, @@ -180,9 +412,8 @@ def relocate_sources( # Read feeder channel info, which is generated by make_feeder_channel.py # ".pkl" and "*.xy" are both generated; the latter is preferred because it is human readable if Path(feeder_info_file).suffix == '.pkl': - import pickle with open(feeder_info_file, 'rb') as file: - [feeder_l2g, feeder_points, feeder_heads, feeder_bases] = pickle.load(file) + [_, _, feeder_heads, feeder_bases] = pickle.load(file) np.savetxt(f'{outdir}/feeder_heads_bases.xy', np.c_[feeder_heads[:, :2], feeder_bases[:, :2]]) elif Path(feeder_info_file).suffix == '.xy': tmp = np.loadtxt(feeder_info_file) @@ -203,7 +434,7 @@ def relocate_sources( mandatory_sources_coor[i, 2] = mandatory_sources_coor[i, 0] if np.isnan(row[3]): mandatory_sources_coor[i, 3] = mandatory_sources_coor[i, 1] - + # restrict the relocation to regions if specified if region_list != []: idx = np.zeros(len(feeder_heads), dtype=bool) @@ -213,7 +444,7 @@ def relocate_sources( feeder_heads = feeder_heads[idx] feeder_bases = feeder_bases[idx] - for region in region_list: + for region in region_list: idx = inside_polygon(mandatory_sources_coor[:, :2], region[:, 0], region[:, 1]).astype(bool) if any(idx): mandatory_sources_coor = mandatory_sources_coor[idx] @@ -237,7 +468,8 @@ def relocate_sources( # projection from lon/lat to meters old_sources_x, old_sources_y = lonlat2cpp(old_sources_coor[:, 0], lat=old_sources_coor[:, 1]) # Note: new_sources_x and y are based on new_sources_search_point_coor - new_sources_x, new_sources_y = lonlat2cpp(new_sources_search_point_coor[:, 0], new_sources_search_point_coor[:, 1]) + new_sources_x, new_sources_y = lonlat2cpp( + new_sources_search_point_coor[:, 0], new_sources_search_point_coor[:, 1]) # link each new source to the closest old source # mandatory sources are always relocated despite the distance @@ -246,14 +478,15 @@ def relocate_sources( old_vsource_mean = old_source_sink.vsource.df.mean().values for i, [x, y] in enumerate(zip(new_sources_x, new_sources_y)): # for each new source, find the old sources within the search radius - dist = np.sqrt((old_sources_x - x)**2 + (old_sources_y - y)**2) - valid_old_sources = np.argwhere(dist < max_search_radius).reshape(-1,) + distance = np.sqrt((old_sources_x - x)**2 + (old_sources_y - y)**2) + valid_old_sources = np.argwhere(distance < max_search_radius).reshape(-1,) if len(valid_old_sources) > 0: # within valid_old_sources, choose the one with the largest mean flow, # it is likely the correct old source because the new sources are on larger channels target_old_source = valid_old_sources[np.argmax(old_vsource_mean[valid_old_sources])] - new2old_sources[i] = target_old_source # this holds the index of the old source in source_sink.in, not element idx or id - relocation_distance[i] = dist[target_old_source] + # this holds the index of the old source in source_sink.in, not element idx or id + new2old_sources[i] = target_old_source + relocation_distance[i] = distance[target_old_source] else: if i < len(mandatory_sources_coor): raise ValueError(f'mandatory new source {i}: {x, y} cannot be mapped to an old source') @@ -261,7 +494,8 @@ def relocate_sources( # -------------------------------------clean up odd cases------------------------------------- # check if multiple new sources are linked to the same old source, i.e., double-counting an old source for old_source in np.unique(new2old_sources): - if old_source == -1: continue # skip invalid new sources + if old_source == -1: + continue # skip invalid new sources ids = np.argwhere(new2old_sources == old_source) # find all new sources mapped to the same old source if len(ids) == 0: @@ -273,9 +507,9 @@ def relocate_sources( new2old_sources[ids] = -1 # remove all corresponding new sources first new2old_sources[ids[min_dist_id]] = old_source # keep the closest new source # add 1 to get element ids (1-based indexing) - valid_new_sources_eleids = new_sources_ele_idx[new2old_sources>=0] + 1 + valid_new_sources_eleids = new_sources_ele_idx[new2old_sources >= 0] + 1 # 0-based index of the old source in source_sink.in, not element id - valid_new2old_sources = new2old_sources[new2old_sources>=0] + valid_new2old_sources = new2old_sources[new2old_sources >= 0] # sanity check if np.unique(valid_new_sources_eleids).shape[0] != valid_new_sources_eleids.shape[0]: @@ -298,7 +532,8 @@ def relocate_sources( target_ele_id = new_sources_ele_idx[candidate_new_idx] + 1 is_dup = False - if target_ele_id in valid_new_sources_eleids: # new source location already assigned, need to check for duplicates + if target_ele_id in valid_new_sources_eleids: + # new source location already assigned, need to check for duplicates dup_indices = np.argwhere(valid_new_sources_eleids == target_ele_id).reshape(-1) for existing_idx in dup_indices: vs_existing = old_source_sink.vsource.data[:, valid_new2old_sources[existing_idx]] @@ -318,14 +553,6 @@ def relocate_sources( # -------------------------------------write relocation map------------------------------------- # this can also be used as an input for other runs with the same grid setup to bypass the relocation process np.savetxt(f'{outdir}/relocate_map.txt', np.c_[valid_new_sources_eleids, valid_new2old_sources], fmt='%d %d') - # other diagnostic outputs - # Note: source_eles starts from 1 - new_sources_coor = np.c_[ - new_gd.xctr[new_source_sink.source_sink_in.ip_group[0]-1], - new_gd.yctr[new_source_sink.source_sink_in.ip_group[0]-1], - vsource.df.mean().values - ] - np.savetxt(f'{outdir}/relocated_sources.xyz', new_sources_coor) else: valid_new_sources_eleids = relocate_map[:, 0] @@ -341,7 +568,7 @@ def relocate_sources( columns=['datetime'] + valid_new_sources_eleids.astype('str').tolist() ) ) - + vsource = TimeHistory( data_array=np.c_[old_source_sink.vsource.time, old_source_sink.vsource.data[:, valid_new2old_sources]], columns=['datetime'] + valid_new_sources_eleids.astype('str').tolist() @@ -350,6 +577,14 @@ def relocate_sources( new_source_sink = source_sink(vsource=vsource, msource=msource_list, vsink=None) new_source_sink.writer(outdir) + # Other diagnostic outputs. Note: source_eles starts from 1 + new_sources_coor = np.c_[ + new_gd.xctr[new_source_sink.source_sink_in.ip_group[0]-1], + new_gd.yctr[new_source_sink.source_sink_in.ip_group[0]-1], + vsource.df.mean().values + ] + np.savetxt(f'{outdir}/relocated_sources.xyz', new_sources_coor) + return new_source_sink @@ -358,11 +593,15 @@ def samples(): Sample usage: relocate sources/sinks in a region of the Florence mesh. The mesh is same as the mesh of STOFS-3D-Atl v2.1 in the Florence region and coarser elsewhere. ''' - schism_git_dir = f'/sciclone/data10/feiye/SCHISM_REPOSITORY/schism/' + schism_git_dir = '/sciclone/data10/feiye/SCHISM_REPOSITORY/schism/' # inputs wdir = '/sciclone/schism10/feiye/Test_Project/Runs/R99a/Source_sink/' - feeder_info_file = f'{schism_git_dir}/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/feeder_heads_bases_v2.1.xy' # this file is prepared during mesh generation # f'/sciclone/schism10/feiye/STOFS3D-v5/Inputs/v14/Parallel/SMS_proj/feeder/feeder.pkl' - region_file = f'{schism_git_dir}/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/Source_sink/relocate_florence.reg' + # this file is prepared during mesh generation + # '/sciclone/schism10/feiye/STOFS3D-v5/Inputs/v14/Parallel/SMS_proj/feeder/feeder.pkl' + feeder_info_file = (f'{schism_git_dir}/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/' + 'Pre_processing/Source_sink/feeder_heads_bases_v2.1.xy') + region_file = (f'{schism_git_dir}/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/' + 'Pre_processing/Source_sink/relocate_florence.reg') old_ss_dir = f'{wdir}/original_source_sink/' hgrid_fname = f'{old_ss_dir}/hgrid.gr3' # end inputs @@ -374,7 +613,7 @@ def samples(): # read region region = schism_bpfile() - region.read_reg(fname=region_file) + region.read_reg(fname=region_file) # read original source/sink original_ss = source_sink.from_files(source_dir=old_ss_dir) @@ -385,11 +624,13 @@ def samples(): # relocate sources relocated_ss = relocate_sources( - old_ss_dir=old_ss_dir, # strictly speaking, this is based on the without feeder hgrid, but the with feeder hgrid is also applicable with minor differences in the results - feeder_info_file=feeder_info_file, + # strictly speaking, this should be the hgrid without feeders, + # but an hgrid with feeders is also applicable with minor differences in the results + old_ss_dir=old_ss_dir, + feeder_info_file=feeder_info_file, hgrid_fname=hgrid_fname, # strictly speaking, this is the with feeder hgrid outdir=f'{wdir}/relocated_source_sink/', - max_search_radius=2000, # search radius (in meters) for relocating sources + max_search_radius=2000, # search radius (in meters) for relocating sources mandatory_sources_coor=v16_mandatory_sources_coor, relocate_map=None, region_list=[np.c_[region.x, region.y]] @@ -400,19 +641,19 @@ def samples(): combined_ss.writer(f'{wdir}/combined_source_sink/') # combined_ss.diag_writer(hgrid, f'{wdir}/combined_source_sink/') + def test(): - wdir = '/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12x/Source_sink1/relocated_source_sink/' - relocated_ss = relocate_sources( - old_ss_dir=f'/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12x/Source_sink1/original_source_sink/', - feeder_info_file = f'/sciclone/schism10/Hgrid_projects/STOFS3D-v7/v20.0/Feeder/feeder_heads_bases.xy', - hgrid_fname=f'{wdir}/hgrid.gr3', - outdir=wdir, - max_search_radius=2100, mandatory_sources_coor=v19p2_mandatory_sources_coor, relocate_map=None, - allow_neglection=True + '''temporary tests''' + wdir = '/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12z/Source_sink/relocated_source_sink/' + relocate_sources2( + old_ss_dir='/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12z/Source_sink/original_source_sink/', + feeder_info_file='/sciclone/schism10/Hgrid_projects/STOFS3D-v7/v20.0/Feeder/feeder_heads_bases.xy', + hgrid_fname=f'{wdir}/hgrid.gr3', outdir=wdir, + max_search_radius=2100, mandatory_sources_coor=v19p2_mandatory_sources_coor, + allow_neglection=False ) - relocated_ss.writer(wdir) if __name__ == "__main__": test() - pass \ No newline at end of file + print('Done!') diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/logging_config.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/logging_config.py new file mode 100644 index 000000000..5a7008e6d --- /dev/null +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/logging_config.py @@ -0,0 +1,13 @@ +"""logging configuration for STOFS-3D-ATL.""" + +import logging +import os + + +def setup_logging(level=logging.DEBUG): + '''Setup logging for STOFS-3D-ATL.''' + logging.basicConfig( + format="[%(asctime)s] %(name)s %(levelname)s: %(message)s", + level=level, + stream=os.sys.stdout + ) diff --git a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/stofs3d_atl_driver.py b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/stofs3d_atl_driver.py index ccc587b96..1f97f76f2 100755 --- a/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/stofs3d_atl_driver.py +++ b/src/Utility/Pre-Processing/STOFS-3D-Atl-shadow-VIMS/Pre_processing/stofs3d_atl_driver.py @@ -19,6 +19,7 @@ from pathlib import Path import shutil from datetime import datetime +import logging import subprocess import copy @@ -32,9 +33,10 @@ from pyschism.mesh import Hgrid # import from the sub folders, not from installed packages -from Source_sink.NWM.gen_sourcesink import gen_sourcesink +from logging_config import setup_logging +from Source_sink.NWM.gen_sourcesink_nwm import gen_sourcesink_nwm from Source_sink.Constant_sinks.set_constant_sink import set_constant_sink -from Source_sink.Relocate.relocate_source_feeder import relocate_sources +from Source_sink.Relocate.relocate_source_feeder import relocate_sources2 from Source_sink.Relocate.relocate_source_feeder import v19p2_mandatory_sources_coor from Bctides.bctides.bctides import Bctides # temporary, bctides.py will be merged into pyschism # from pyschism.forcing.bctides import Bctides @@ -350,30 +352,32 @@ def main(): hgrid.gr3 (in lon/lat) must be prepared before running this script ''' + setup_logging(level=logging.DEBUG) # set to INFO to reduce the amount of output + # -----------------input--------------------- # hgrid generated by SMS, pre-processed, and converted to *.gr3 - hgrid_path = '/sciclone/schism10/feiye/STOFS3D-v8/I03a/hgrid.gr3' + hgrid_path = '/sciclone/schism10/feiye/STOFS3D-v8/I04c/hgrid.gr3' # get a default configuration and make changes if necessary config = ConfigStofs3dAtlantic.v8_louisianna() config.nwm_cache_folder = None - config.rnday = 55 - config.startdate = datetime(2021, 8, 1) + config.rnday = 35 + config.startdate = datetime(2024, 3, 5) # define the path where the model inputs are generated project_dir = '/sciclone/schism10/feiye/STOFS3D-v8/' - runid = '05' + runid = '04c' # swithes to generate different input files input_files = { - 'bctides': True, - 'vgrid': False, + 'bctides': False, + 'vgrid': True, 'gr3': False, 'nudge_gr3': False, 'shapiro': False, 'drag': False, 'elev_ic': False, - 'source_sink': True, + 'source_sink': False, # 'hotstart.nc`` # '*D.th.nc' # '*nu.nc' @@ -534,23 +538,32 @@ def main(): mkcd_new_dir(f'{model_input_path}/{sub_dir}') # generate source_sink files by intersecting NWM river segments with the model land boundary - mkcd_new_dir(f'{model_input_path}/{sub_dir}/original_source_sink/') - os.symlink(f'{model_input_path}/hgrid.gr3', 'hgrid.gr3') - gen_sourcesink(startdate=config.startdate, rnday=config.rnday, cache_folder=config.nwm_cache_folder) + # mkcd_new_dir(f'{model_input_path}/{sub_dir}/original_source_sink/') + # os.symlink(f'{model_input_path}/hgrid.gr3', 'hgrid.gr3') + # gen_sourcesink_nwm(startdate=config.startdate, rnday=config.rnday, cache_folder=config.nwm_cache_folder) # relocate source locations to resolved river channels, the result is the "base" source/sink if config.relocate_source: mkcd_new_dir(f'{model_input_path}/{sub_dir}/relocated_source_sink/') os.symlink(f'{model_input_path}/hgrid.gr3', 'hgrid.gr3') - relocated_ss = relocate_sources( + # this will generate relocated sources.json and sinks.json + relocate_sources2( old_ss_dir=f'{model_input_path}/{sub_dir}/original_source_sink/', feeder_info_file=config.feeder_info_file, hgrid_fname=f'{model_input_path}/hgrid.gr3', outdir=f'{model_input_path}/{sub_dir}/relocated_source_sink/', - max_search_radius=2100, mandatory_sources_coor=v19p2_mandatory_sources_coor, relocate_map=None, + max_search_radius=2100, mandatory_sources_coor=v19p2_mandatory_sources_coor, allow_neglection=False ) - base_ss = relocated_ss + # regenerated source/sink based on relocated sources.json and sinks.json + os.symlink('../original_source_sink/sinks.json', 'sinks.json') # dummy + gen_sourcesink_nwm( + startdate=config.startdate, rnday=config.rnday, cache_folder=config.nwm_cache_folder) + relocated_ss = source_sink.from_files(f'{model_input_path}/{sub_dir}/relocated_source_sink/') + # remove sinks + os.unlink('vsink.th') + base_ss = source_sink(vsource=relocated_ss.vsource, vsink=None, msource=relocated_ss.msource) + base_ss.writer(f'{model_input_path}/{sub_dir}/relocated_source_sink/') else: base_ss = source_sink.from_files(f'{model_input_path}/{sub_dir}/original_source_sink/') @@ -560,7 +573,8 @@ def main(): os.system(f'cp {script_path}/Source_sink/Constant_sinks/levee_4_pump_polys.* .') hgrid_utm = copy.deepcopy(hgrid) hgrid_utm.proj(prj0='epsg:4326', prj1='epsg:26918') - background_ss = set_constant_sink(wdir=f'{model_input_path}/{sub_dir}/constant_sink/', hgrid_utm=hgrid_utm) + background_ss = set_constant_sink( + wdir=f'{model_input_path}/{sub_dir}/constant_sink/', hgrid_utm=hgrid_utm) # assemble source/sink files and write to model_input_path total_ss = base_ss + background_ss @@ -595,24 +609,27 @@ def main(): def test(): '''Temporary tests''' + print("--------------------- Temporary tests ---------------------") + + setup_logging(level=logging.DEBUG) # inputs - model_input_path = '/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12y/' + model_input_path = '/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12z/' config = ConfigStofs3dAtlantic.v7() + config.startdate = datetime(2024, 3, 5) + config.rnday = 5 + config.nwm_cache_folder = Path( + '/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12z/Source_sink/original_source_sink/20240305/') hgrid = cread_schism_hgrid('/sciclone/schism10/feiye/STOFS3D-v7/Inputs/I12y/hgrid.gr3') # end inputs sub_dir = 'Source_sink' - relocate_map = np.loadtxt(f'{model_input_path}/{sub_dir}/relocated_source_sink/relocate_map.txt', dtype=int) - relocated_ss = relocate_sources( - old_ss_dir=f'{model_input_path}/{sub_dir}/original_source_sink/', - relocate_map=relocate_map, - feeder_info_file=config.feeder_info_file, - hgrid_fname=f'{model_input_path}/hgrid.gr3', - outdir=f'{model_input_path}/{sub_dir}/relocated_source_sink/', - max_search_radius=2100, mandatory_sources_coor=v19p2_mandatory_sources_coor, - allow_neglection=False - ) + + # generate source_sink files by intersecting NWM river segments with the model land boundary + os.chdir(f'{model_input_path}/{sub_dir}/relocated_source_sink/') + gen_sourcesink_nwm(startdate=config.startdate, rnday=config.rnday, cache_folder=config.nwm_cache_folder) + relocated_ss = source_sink.from_files(f'{model_input_path}/{sub_dir}/relocated_source_sink/') + # set constant sinks (pumps and background sinks) mkcd_new_dir(f'{model_input_path}/{sub_dir}/constant_sink/') # copy *.shp to the current directory diff --git a/src/Utility/Pre-Processing/modify_WENO_zone.f90 b/src/Utility/Pre-Processing/modify_WENO_zone.f90 new file mode 100644 index 000000000..ad301785f --- /dev/null +++ b/src/Utility/Pre-Processing/modify_WENO_zone.f90 @@ -0,0 +1,182 @@ +! Generate tvd.prop for hybrid WENO/ELM and cross-scale applications, based on depth and remove +! 'isolated' WENO elements in shallow water, etc. The goal is to +! minimize the direct 'contact' between WENO and ELM cells, which can cause dispersion. +! Inputs: +! (1) hgrid.gr3 (in any projection or lon/lat; b.c. part not needed) +! (2) iest.gr3 (estuary points) +! (3) inear.gr3 (nearshore points) +! Output: tvd.prop.0 (may be further edited, e.g. look for very skew elem nearby, +! and connectivity) + +! ifort -O2 -o modify_WENO_zone ../UtilLib/schism_geometry.f90 ../UtilLib/pt_in_poly_test.f90 modify_WENO_zone.f90 + + use schism_geometry_mod + use pt_in_poly_test + implicit real*8(a-h,o-z) + real*8, parameter :: small1=1.d-4 + real*8, parameter :: ray_angle=3.13192d0 + + character(len=100) :: file_reg(2000) + integer :: nwild(3) + integer, allocatable :: i34(:),elnode(:,:),nne(:),indel(:,:),nnp(:), & + &indnd(:,:),isbnd(:),itvd(:),itvd0(:),iest(:),iest_e(:),inear(:),inear_e(:) + integer, allocatable :: ic3(:,:),elside(:,:),isdel(:,:),isidenode(:,:),nvertices(:) + + real*8 :: tmp + real*8, allocatable :: xnd(:),ynd(:),dp(:),area(:),xpoly(:),ypoly(:),xcj(:),ycj(:) + + type :: poly_vertex + real*8,pointer :: xy(:,:)=>null() + end type + + open(14,file='hgrid.gr3',status='old') + read(14,*); read(14,*) ne,np + allocate(xnd(np),ynd(np),dp(np),area(ne),i34(ne),elnode(4,ne),nne(np), & + &isbnd(np),itvd(ne),itvd0(ne),iest(np),iest_e(ne),inear(np),inear_e(ne)) + + do i=1,np + read(14,*) j,xnd(i),ynd(i),dp(i) + enddo !i + + do i=1,ne + read(14,*) j,i34(i),elnode(1:i34(i),i) + n1=elnode(1,i) + n2=elnode(2,i) + n3=elnode(3,i) + area(i)=signa(xnd(n1),xnd(n2),xnd(n3),ynd(n1),ynd(n2),ynd(n3)) + if(area(i)<=0) then + write(*,*)'Negative area at elem:',i + stop + endif + + if(i34(i)==4) then + n4=elnode(4,i) + tmp=signa(xnd(n1),xnd(n3),xnd(n4),ynd(n1),ynd(n3),ynd(n4)) + if(tmp<=0) then + write(*,*)'Negative area at elem:',i + stop + endif + area(i)=area(i)+tmp + endif + enddo !i=1,ne + close(14) + +! Neighborhood + nne=0 + do i=1,ne + do j=1,i34(i) + nd=elnode(j,i) + nne(nd)=nne(nd)+1 + enddo + enddo !i + mnei=maxval(nne) + + allocate(indel(mnei,np)) + nne=0 +! nnp=0 !estimate 1st + do i=1,ne + do j=1,i34(i) + nd=elnode(j,i) + nne(nd)=nne(nd)+1 + if(nne(nd)>mnei) stop 'impossible' + indel(nne(nd),nd)=i +! nnp(nd)=nnp(nd)+i34(i)-1 + enddo + enddo !i + + call compute_nside(np,ne,i34,elnode,ns) +! Allocate side-related arrays + allocate(ic3(4,ne),elside(4,ne),isdel(2,ns),isidenode(2,ns),xcj(ns),ycj(ns)) +! Then compute the rest of side related arrays with additional +! inputs (xnd,ynd) (x,y coordinates of each node) + call schism_geometry_double(np,ne,ns,xnd,ynd,i34,elnode,ic3,elside,isdel,isidenode,xcj,ycj) + +! Mark nearshore & estuary nodes + iest=0 !init as outside any estuary of interest + + open(14,file='inear.gr3',status='old') + read(14,*); read(14,*) ne,np + do i=1,np + read(14,*) j,tmp,tmp,inear(i) + enddo !i + close(14) + + open(14,file='iest.gr3',status='old') + read(14,*); read(14,*) ne,np + do i=1,np + read(14,*) j,tmp,tmp,iest(i) + enddo !i + close(14) + + do i=1,ne + inear_e(i)=maxval(inear(elnode(1:i34(i),i))) + iest_e(i)=minval(iest(elnode(1:i34(i),i))) + enddo !i + +! Set TVD flag + itvd(:)=0 !init + do i=1,ne + hmin2=minval(dp(elnode(1:i34(i),i))) + if((inear_e(i)==0.or.iest_e(i)/=0).and.hmin2>=hmin_estu) itvd(i)=1 + enddo !i + +! Augment upwind zone by 1 extra layer for offshore + itvd0=itvd + do i=1,ne + if(inear_e(i)==0.and.itvd0(i)==0) then + do j=1,i34(i) + nd=elnode(j,i) + do m=1,nne(nd) + ie=indel(m,nd) + itvd(ie)=0 + enddo !m + enddo !j + endif !ifl + enddo !i + +! Remove 'isolated' WENO elem + loop1: do + itouched=0 !# of elem changed in this iteration + itvd0=itvd + loop2: do i=1,ne + if(itvd0(i)==0) cycle + + !WENO elem + icount=0 + do j=1,i34(i) + ie=ic3(j,i) + if(ie/=0) then + if(itvd0(ie)/=0) icount=icount+1 + endif !ie + enddo !j + + if(icount<=1) then + itvd(i)=0 + itouched=itouched+1 + endif + end do loop2 !i=1,ne + + print*, '# of elem flipped=',itouched + if(itouched==0) exit loop1 + end do loop1 + +! Output + open(12,file='tvd.prop',status='replace') + do i=1,ne + write(12,*)i,itvd(i) + enddo !i + write(12,*)'hmin=',hmin_estu + close(12) + + stop + end + + function signa(x1,x2,x3,y1,y2,y3) +!... Compute signed area formed by pts 1,2,3 + implicit real*8(a-h,o-z) + + signa=((x1-x3)*(y2-y3)-(x2-x3)*(y1-y3))/2 + + return + end +