From b64b556ffaab6ac50a7deeeffe05324db4851a65 Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Tue, 3 Feb 2026 06:11:27 -0700 Subject: [PATCH 01/13] doc: misc changes --- pyPRMS/summary/OutputCSV.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pyPRMS/summary/OutputCSV.py b/pyPRMS/summary/OutputCSV.py index 6737335..6813d6e 100644 --- a/pyPRMS/summary/OutputCSV.py +++ b/pyPRMS/summary/OutputCSV.py @@ -41,6 +41,7 @@ def __init__(self, filename: Union[str, Path], @property def basin_vars(self): + """Returns the basin variables from the CSV output file.""" return self.__basin_vars @property From db56ebd78590f70f8ae0c1aae78cd6f60838debd Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Tue, 3 Feb 2026 06:13:28 -0700 Subject: [PATCH 02/13] feat: add custom metadata when reading paramdb --- pyPRMS/parameters/ParamDb.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/pyPRMS/parameters/ParamDb.py b/pyPRMS/parameters/ParamDb.py index c1b7d92..791d42a 100644 --- a/pyPRMS/parameters/ParamDb.py +++ b/pyPRMS/parameters/ParamDb.py @@ -3,7 +3,10 @@ import pandas as pd # type: ignore from typing import cast, Optional +from ..constants import PRMS_VERSION +from ..Exceptions_custom import ParameterNotValidError from ..prms_helpers import read_xml +from ..metadata import MetaData from .Parameters import Parameters from ..constants import NEW_PTYPE_TO_DTYPE, PARAMETERS_XML, DIMENSIONS_XML from ..base.console import get_console_instance @@ -54,6 +57,12 @@ def _read(self): for xml_dim in dimens_root.findall('dimension'): self.dimensions.add(name=cast(str, xml_dim.attrib.get('name')), size=cast(int, xml_dim.find('size').text)) + # Create a MetaData object to use its parameter parsing function + mobj = MetaData() + pvt_meta = mobj._MetaData__parameters_to_dict(xml_root=params_root, + meta_type='parameters', + req_version=PRMS_VERSION) + # Populate parameterSet with all available parameter names for param in params_root.findall('parameter'): xml_param_name = cast(str, param.attrib.get('name')) @@ -65,7 +74,12 @@ def _read(self): continue if os.path.exists(curr_file): - self.add(xml_param_name) + try: + self.add(xml_param_name) + except ParameterNotValidError: + con.print(f'[orange3]WARNING[/]: {xml_param_name} added custom metadata') + self.add_metadata(xml_param_name, pvt_meta[xml_param_name]) + self.add(xml_param_name) cdtype = NEW_PTYPE_TO_DTYPE[self.get(xml_param_name).meta['datatype']] tmp_data = pd.read_csv(curr_file, From f03735214f4df5c4ebc5881388729f6c6cbe70e0 Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Tue, 3 Feb 2026 06:14:19 -0700 Subject: [PATCH 03/13] messing with shapefile_hrus() and shapefile_segments() --- pyPRMS/parameters/Parameters.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pyPRMS/parameters/Parameters.py b/pyPRMS/parameters/Parameters.py index c728437..05515bb 100644 --- a/pyPRMS/parameters/Parameters.py +++ b/pyPRMS/parameters/Parameters.py @@ -1215,8 +1215,8 @@ def shapefile_hrus(self, filename: str, if self.__hru_poly.crs.name == 'USA_Contiguous_Albers_Equal_Area_Conic_USGS_version': # type: ignore print('Overriding USGS aea crs with EPSG:5070') self.__hru_poly.crs = 'EPSG:5070' # type: ignore - elif self.__hru_poly.crs.name[0:5] == 'NAD83': # type: ignore - self.__hru_poly.to_crs('epsg:4326', inplace=True) + # elif self.__hru_poly.crs.name[0:5] == 'NAD83': # type: ignore + # self.__hru_poly.to_crs('epsg:4326', inplace=True) self.__hru_shape_key = shape_key @@ -1235,8 +1235,8 @@ def shapefile_segments(self, filename: str, if self.__seg_poly.crs.name == 'USA_Contiguous_Albers_Equal_Area_Conic_USGS_version': # type: ignore print('Overriding USGS aea crs with EPSG:5070') self.__seg_poly.crs = 'EPSG:5070' # type: ignore - elif self.__seg_poly.crs.name[0:5] == 'NAD83': # type: ignore - self.__seg_poly.to_crs('epsg:4326', inplace=True) + # elif self.__seg_poly.crs.name[0:5] == 'NAD83': # type: ignore + # self.__seg_poly.to_crs('epsg:4326', inplace=True) self.__seg_shape_key = shape_key From d815f4749a565e1578efa177fb2a61450e8c5d7c Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Tue, 3 Feb 2026 06:14:43 -0700 Subject: [PATCH 04/13] style: fix formatting --- pyPRMS/plot_helpers.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pyPRMS/plot_helpers.py b/pyPRMS/plot_helpers.py index 1936923..c66bc54 100644 --- a/pyPRMS/plot_helpers.py +++ b/pyPRMS/plot_helpers.py @@ -98,6 +98,7 @@ def get_figsize(extent, init_size=(10, 10), **kwargs): # # return extent_dms + def get_projection(gdf: geopandas.GeoDataFrame): """Get projection of geodataframe. @@ -133,6 +134,7 @@ def get_projection(gdf: geopandas.GeoDataFrame): return crs_proj + def plot_line_collection(ax, geoms, values=None, cmap=None, norm=None, vary_width=False, vary_color=True, colors=None, alpha=1.0, linewidth=1.0, **kwargs): """ Plot a collection of line geometries. @@ -199,6 +201,7 @@ def plot_polygon_collection(ax, geoms, values=None, cmap=None, norm=None, # face ax.autoscale_view() return patches + def read_gis(filename: str, layer_name: str): """Read a shapefile or geodatabase that corresponds to HRUs. @@ -212,6 +215,7 @@ def read_gis(filename: str, layer_name: str): gis_obj.crs = 'EPSG:5070' return gis_obj + def set_colormap(the_var: str, param_data: pd.DataFrame, cmap: Optional[Union[str, colors.Colormap]] = None, From 9fd684b211d19db4fccc52a3d0dba87640f29f60 Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Tue, 3 Feb 2026 06:14:51 -0700 Subject: [PATCH 05/13] new test data --- .../test_ParameterFile/updated_param.param | 5398 +++++++++++++++++ 1 file changed, 5398 insertions(+) create mode 100644 tests/func/test_ParameterFile/updated_param.param diff --git a/tests/func/test_ParameterFile/updated_param.param b/tests/func/test_ParameterFile/updated_param.param new file mode 100644 index 0000000..a29e501 --- /dev/null +++ b/tests/func/test_ParameterFile/updated_param.param @@ -0,0 +1,5398 @@ +Written by pyPRMS +Comment: It is all downhill from here +** Dimensions ** +#### +nhru +14 +#### +nsegment +7 +#### +npoigages +1 +#### +ndeplval +11 +#### +nmonths +12 +#### +one +1 +#### +nobs +1 +#### +ndepl +1 +#### +ngw +14 +#### +nssr +14 +** Parameters ** +#### +adjmix_rain +2 +nhru +nmonths +168 +2 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +0.882642 +#### +albedo +1 +one +1 +2 +0.1 +#### +albset_rna +1 +one +1 +2 +0.8 +#### +albset_rnm +1 +one +1 +2 +0.6 +#### +albset_sna +1 +one +1 +2 +0.05 +#### +albset_snm +1 +one +1 +2 +0.2 +#### +alte +1 +nsegment +7 +2 +0.066202 +0.066039 +0.08667 +0.066211 +0.066202 +0.088571 +0.153358 +#### +altw +1 +nsegment +7 +2 +0.066202 +0.066039 +0.08667 +0.066211 +0.066202 +0.088571 +0.153358 +#### +azrh +1 +nsegment +7 +2 +2.614852 +1.4187779 +2.4727831 +0.807738 +1.955292 +2.4274039 +2.708576 +#### +carea_max +1 +nhru +14 +2 +0.388023 +0.2 +0.2 +0.275873 +0.472787 +0.370217 +0.2 +0.405211 +0.283201 +0.358664 +0.395352 +0.260997 +0.406801 +0.422061 +#### +cecn_coef +2 +nhru +nmonths +168 +2 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +5.2803259 +#### +cov_type +1 +nhru +14 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +#### +covden_sum +1 +nhru +14 +2 +0.00755 +0.008062 +0.005665 +0.006677 +0.025557 +0.005111 +0.005002 +0.007642 +0.003469 +0.004852 +0.006358 +0.003703 +0.005883 +0.003675 +#### +covden_win +1 +nhru +14 +2 +0.000125 +0.000197 +0.000131 +0.000073 +0.000492 +0.000204 +0.00013 +0.000093 +0.000112 +0.000156 +0.000184 +0.000096 +0.000091 +0.00006 +#### +dday_intcp +2 +nhru +nmonths +168 +2 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-10.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-30.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-25.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-20.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-16.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-13.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +-11.0 +#### +dday_slope +2 +nhru +nmonths +168 +2 +0.592787 +0.609303 +0.611684 +0.608678 +0.58939 +0.605783 +0.617179 +0.602383 +0.616168 +0.614916 +0.609912 +0.61662 +0.6107 +0.612148 +0.53264 +0.545124 +0.545184 +0.545265 +0.530742 +0.538729 +0.558735 +0.536394 +0.587364 +0.582702 +0.568589 +0.584894 +0.563157 +0.553815 +0.447259 +0.449288 +0.453561 +0.453386 +0.447155 +0.45401 +0.454516 +0.45302 +0.456601 +0.457845 +0.456241 +0.457637 +0.457378 +0.459199 +0.373397 +0.37802 +0.377786 +0.377536 +0.3731 +0.378326 +0.382549 +0.374317 +0.381917 +0.380956 +0.375838 +0.382535 +0.376498 +0.377504 +0.34272 +0.348176 +0.349596 +0.348351 +0.344325 +0.345816 +0.351297 +0.34581 +0.351333 +0.350747 +0.347313 +0.351378 +0.345951 +0.346503 +0.369768 +0.373859 +0.374049 +0.373869 +0.370568 +0.370871 +0.376229 +0.37135 +0.376737 +0.376017 +0.373377 +0.376548 +0.372004 +0.372123 +0.422574 +0.427081 +0.426416 +0.4267 +0.424001 +0.42442 +0.429031 +0.424154 +0.42935 +0.428475 +0.426058 +0.42961 +0.424657 +0.424724 +0.355645 +0.358261 +0.358318 +0.358692 +0.356209 +0.356589 +0.359757 +0.356852 +0.359778 +0.359254 +0.357246 +0.359885 +0.356804 +0.357147 +0.329283 +0.333951 +0.333624 +0.333604 +0.330735 +0.331407 +0.3354 +0.331435 +0.335409 +0.334366 +0.331974 +0.335866 +0.331818 +0.331884 +0.333359 +0.338378 +0.337636 +0.33811 +0.33395 +0.335406 +0.340253 +0.335219 +0.341282 +0.340033 +0.33756 +0.341371 +0.335509 +0.336616 +0.405741 +0.419003 +0.419215 +0.416588 +0.4091 +0.413371 +0.422597 +0.413813 +0.4196 +0.418181 +0.411437 +0.417791 +0.414106 +0.415337 +0.552857 +0.568168 +0.570417 +0.569271 +0.554226 +0.563341 +0.572971 +0.561716 +0.569383 +0.567388 +0.556879 +0.569807 +0.565004 +0.565868 +#### +den_init +1 +nhru +14 +2 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +#### +den_max +1 +nhru +14 +2 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +0.6 +#### +dprst_depth_avg +1 +nhru +14 +2 +61.8549004 +62.0340004 +58.8030014 +54.1608009 +132.0 +75.5742035 +57.9202995 +80.5283966 +57.6571999 +101.303299 +83.9057999 +69.4219971 +106.2740021 +66.4644012 +#### +dprst_et_coef +1 +nhru +14 +2 +0.7689 +0.7536 +0.7503 +0.7511 +1.0 +0.7545 +0.7665 +0.9079 +0.7547 +0.8597 +0.7603 +0.7569 +1.2282 +0.7638 +#### +dprst_flow_coef +1 +nhru +14 +2 +0.0367 +0.0219 +0.0772 +0.01 +0.05 +0.0125 +0.0008 +0.0177 +0.0891 +0.0447 +0.0807 +0.0938 +0.0196 +0.0252 +#### +dprst_frac +1 +nhru +14 +2 +0.008502 +0.029514 +0.022931 +0.004468 +0.0 +0.039956 +0.051539 +0.005081 +0.037658 +0.017896 +0.006191 +0.030403 +0.005862 +0.015073 +#### +dprst_frac_init +1 +nhru +14 +2 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +#### +dprst_frac_open +1 +nhru +14 +2 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +#### +dprst_seep_rate_clos +1 +nhru +14 +2 +0.0168 +0.018 +0.0162 +0.0169 +0.02 +0.0207 +0.0127 +0.0124 +0.0162 +0.0186 +0.0117 +0.0192 +0.016 +0.0193 +#### +dprst_seep_rate_open +1 +nhru +14 +2 +0.0168 +0.018 +0.0162 +0.0169 +0.02 +0.0207 +0.0127 +0.0124 +0.0162 +0.0186 +0.0117 +0.0192 +0.016 +0.0193 +#### +elev_units +1 +one +1 +1 +1 +#### +emis_noppt +1 +nhru +14 +2 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +0.881886 +#### +epan_coef +2 +nhru +nmonths +168 +2 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +#### +fastcoef_lin +1 +nhru +14 +2 +0.093026 +0.202777 +0.055133 +0.126914 +0.031127 +0.213387 +0.141052 +0.139137 +0.165824 +0.092392 +0.086647 +0.137308 +0.16063 +0.074063 +#### +fastcoef_sq +1 +nhru +14 +2 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +0.8 +#### +freeh2o_cap +1 +nhru +14 +2 +0.057443 +0.095547 +0.068952 +0.091222 +0.1 +0.076507 +0.1 +0.042439 +0.025291 +0.091069 +0.086449 +0.070481 +0.1 +0.052024 +#### +gw_tau +1 +nsegment +7 +1 +42 +42 +42 +42 +42 +42 +42 +#### +gwflow_coef +1 +ngw +14 +2 +0.072118 +0.096741 +0.074658 +0.071941 +0.091905 +0.075309 +0.083304 +0.084682 +0.073687 +0.081416 +0.076167 +0.076419 +0.071462 +0.1 +#### +gwsink_coef +1 +ngw +14 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +gwstor_init +1 +ngw +14 +2 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +#### +gwstor_min +1 +ngw +14 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +hru_area +1 +nhru +14 +2 +6747.7109375 +54949.0429688 +27400.3339844 +4578.6157227 +558.9060059 +33827.8046875 +149514.25 +5643.940918 +36182.9335938 +29424.890625 +5031.4829102 +37884.5859375 +17224.5839844 +10224.3535156 +#### +hru_aspect +1 +nhru +14 +2 +228.9423676 +81.0457993 +50.6671028 +49.7727203 +223.1616058 +247.4237366 +34.6055489 +233.6339111 +16.932539 +28.7642574 +93.9236374 +54.4561348 +41.7426567 +226.6892548 +#### +hru_deplcrv +1 +nhru +14 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +#### +hru_elev +1 +nhru +14 +2 +476.0 +553.0 +519.0 +519.0 +474.0 +483.0 +568.0 +483.0 +563.0 +543.0 +503.0 +564.0 +490.0 +489.0 +#### +hru_lat +1 +nhru +14 +2 +47.222538 +47.1781273 +47.2745247 +47.3269653 +47.3391571 +47.3506966 +47.2844315 +47.4186058 +47.3727455 +47.3909492 +47.4557076 +47.3835106 +47.4586983 +47.4993362 +#### +hru_lon +1 +nhru +14 +2 +-98.9777985 +-99.1295166 +-99.1339798 +-99.1929398 +-99.1392365 +-99.0877914 +-99.3570099 +-99.2247009 +-99.5831375 +-99.4605103 +-99.4384766 +-99.6773682 +-99.3375931 +-99.325058 +#### +hru_percent_imperv +1 +nhru +14 +2 +0.000132 +0.000065 +0.0 +0.0 +0.0 +0.000092 +0.000018 +0.0 +0.0 +0.000174 +0.000044 +0.000053 +0.000026 +0.000109 +#### +hru_segment +1 +nhru +14 +1 +7 +7 +3 +6 +6 +3 +1 +1 +2 +4 +4 +2 +5 +5 +#### +hru_segment_nhm +1 +nhru +14 +1 +30119 +30119 +30115 +30118 +30118 +30115 +30113 +30113 +30114 +30116 +30116 +30114 +30117 +30117 +#### +hru_slope +1 +nhru +14 +2 +0.023172 +0.034225 +0.034866 +0.036133 +0.016013 +0.011291 +0.029303 +0.011717 +0.022086 +0.020286 +0.011165 +0.022832 +0.010706 +0.009482 +#### +hru_type +1 +nhru +14 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +#### +imperv_stor_max +1 +nhru +14 +2 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +0.05 +#### +jh_coef +2 +nhru +nmonths +168 +2 +0.002992 +0.001498 +0.002774 +0.003671 +0.002828 +0.001613 +0.001666 +0.003489 +0.002348 +0.003382 +0.003245 +0.001008 +0.003375 +0.003292 +0.005782 +0.004212 +0.005545 +0.006353 +0.005523 +0.004367 +0.004261 +0.006168 +0.004751 +0.005703 +0.005689 +0.003599 +0.005673 +0.005806 +0.006817 +0.005188 +0.006373 +0.007168 +0.006312 +0.005156 +0.005262 +0.006958 +0.006146 +0.006993 +0.006881 +0.00506 +0.006729 +0.006748 +0.006519 +0.004764 +0.005973 +0.006768 +0.005946 +0.004808 +0.004822 +0.006638 +0.005776 +0.00667 +0.006605 +0.004728 +0.006436 +0.006431 +0.00693 +0.005116 +0.006261 +0.0071 +0.006297 +0.005182 +0.005151 +0.006993 +0.006136 +0.00701 +0.00695 +0.005124 +0.006831 +0.00681 +0.007032 +0.005235 +0.006402 +0.007219 +0.006414 +0.005327 +0.005274 +0.007132 +0.006257 +0.007137 +0.007066 +0.005266 +0.006962 +0.006948 +0.006535 +0.004724 +0.005917 +0.006736 +0.005922 +0.004829 +0.00478 +0.006667 +0.00577 +0.006679 +0.006605 +0.004769 +0.006507 +0.006492 +0.007056 +0.005283 +0.006453 +0.007255 +0.006441 +0.005355 +0.005315 +0.007174 +0.006284 +0.007192 +0.007127 +0.005287 +0.007029 +0.007007 +0.007941 +0.006155 +0.007317 +0.008122 +0.007288 +0.006194 +0.006184 +0.008017 +0.007131 +0.008041 +0.00798 +0.006134 +0.007877 +0.007872 +0.009159 +0.007475 +0.008645 +0.009418 +0.008541 +0.007455 +0.00753 +0.009275 +0.008323 +0.009237 +0.009161 +0.007323 +0.009191 +0.009148 +0.009049 +0.00734 +0.008526 +0.009431 +0.008541 +0.00736 +0.00742 +0.009184 +0.00824 +0.009173 +0.009226 +0.007261 +0.009176 +0.009139 +0.005318 +0.003967 +0.005138 +0.006035 +0.00508 +0.003869 +0.004126 +0.005794 +0.004705 +0.005746 +0.00571 +0.003445 +0.005802 +0.005731 +#### +jh_coef_hru +1 +nhru +14 +2 +-36.8953018 +-37.6272011 +-37.5222015 +-37.5414009 +-37.2999992 +-37.2294998 +-38.5063019 +-37.6399002 +-38.7681999 +-38.1721992 +-38.1162987 +-38.7005005 +-38.1127014 +-38.2000008 +#### +lat_temp_adj +2 +nsegment +nmonths +84 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +mann_n +1 +nsegment +7 +2 +0.017602 +0.02704 +0.013185 +0.020673 +0.018947 +0.014048 +0.017306 +#### +maxiter_sntemp +1 +one +1 +1 +1000 +#### +melt_force +1 +nhru +14 +1 +140 +140 +140 +140 +140 +140 +140 +140 +140 +140 +140 +140 +140 +140 +#### +melt_look +1 +nhru +14 +1 +90 +90 +90 +90 +90 +90 +90 +90 +90 +90 +90 +90 +90 +90 +#### +melt_temp +1 +one +1 +2 +1.5 +#### +nhm_id +1 +nhru +14 +1 +57863 +57864 +57867 +57868 +57869 +57872 +57873 +57874 +57877 +57878 +57879 +57880 +57881 +57882 +#### +nhm_seg +1 +nsegment +7 +1 +30113 +30114 +30115 +30116 +30117 +30118 +30119 +#### +obsin_segment +1 +nsegment +7 +1 +0 +0 +0 +0 +0 +0 +0 +#### +obsout_segment +1 +nsegment +7 +1 +0 +0 +0 +0 +0 +0 +0 +#### +op_flow_thres +1 +nhru +14 +2 +0.9074 +0.974 +0.9832 +0.821 +1.0 +0.9763 +0.9264 +0.9251 +0.7863 +0.7763 +0.8943 +0.9023 +0.9804 +0.8989 +#### +outlet_sta +1 +one +1 +1 +1 +#### +poi_gage_id +1 +npoigages +1 +4 +06469400 +#### +poi_gage_segment +1 +npoigages +1 +1 +7 +#### +poi_type +1 +npoigages +1 +1 +0 +#### +potet_sublim +1 +nhru +14 +2 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +0.501412 +#### +ppt_rad_adj +2 +nhru +nmonths +168 +2 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +#### +ppt_zero_thresh +1 +one +1 +2 +0.0 +#### +precip_units +1 +one +1 +1 +0 +#### +pref_flow_den +1 +nhru +14 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +print_freq +1 +one +1 +1 +0 +#### +print_type +1 +one +1 +1 +0 +#### +rad_trncf +1 +nhru +14 +2 +0.307842 +0.298211 +0.290051 +0.302258 +0.207042 +0.225366 +0.297209 +0.329494 +0.361646 +0.330316 +0.262879 +0.258089 +0.20956 +0.299941 +#### +radadj_intcp +2 +nhru +nmonths +168 +2 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +#### +radadj_slope +2 +nhru +nmonths +168 +2 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +0.02 +#### +radj_sppt +1 +nhru +14 +2 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +0.44 +#### +radj_wppt +1 +nhru +14 +2 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +#### +radmax +2 +nhru +nmonths +168 +2 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +0.639551 +#### +rain_cbh_adj +2 +nhru +nmonths +168 +2 +0.5 +0.5 +0.5 +0.5 +0.620611 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.685859 +0.5 +0.5 +0.5 +0.766868 +0.694581 +0.5 +0.5 +0.5 +0.791451 +0.5 +0.829659 +1.009048 +0.552238 +0.928346 +0.5 +0.61608 +0.5 +0.766231 +0.692682 +0.5 +0.5 +0.5 +0.791351 +0.5 +0.818595 +1.002492 +0.545554 +0.925008 +0.5 +0.605309 +0.5 +0.766231 +0.692682 +0.5 +0.5 +0.5 +0.791351 +0.5 +0.818595 +1.002492 +0.545554 +0.925008 +0.5 +0.605309 +0.5 +0.5 +0.5 +0.698373 +0.5 +0.5 +0.5 +0.5 +0.5 +0.733558 +0.5 +0.6818 +0.579258 +0.5 +0.5 +0.5 +0.5 +0.693239 +0.5 +0.5 +0.5 +0.5 +0.5 +0.727905 +0.5 +0.680034 +0.578202 +0.5 +0.5 +0.5 +0.5 +0.693239 +0.5 +0.5 +0.5 +0.5 +0.5 +0.727905 +0.5 +0.680034 +0.578202 +0.5 +0.5 +0.5 +0.622834 +0.616298 +0.5 +0.5 +0.5 +0.5 +0.646749 +0.5 +0.5 +0.615349 +0.5 +0.5 +0.5 +0.5 +0.611428 +0.605163 +0.5 +0.5 +0.5 +0.5 +0.640758 +0.5 +0.5 +0.625711 +0.5 +0.5 +0.5 +0.5 +0.611428 +0.605163 +0.5 +0.5 +0.5 +0.5 +0.640758 +0.5 +0.5 +0.625711 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.672942 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.683689 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.620611 +0.5 +0.5 +0.5 +0.5 +0.5 +0.5 +0.685859 +0.5 +0.5 +#### +runoff_units +1 +one +1 +1 +0 +#### +sat_threshold +1 +nhru +14 +2 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +999.0 +#### +seg_cum_area +1 +nsegment +7 +2 +291131.03125 +74067.515625 +357496.6875 +108523.890625 +135972.828125 +296268.53125 +419193.4375 +#### +seg_depth +1 +nsegment +7 +2 +1.192112 +0.894294 +1.244646 +0.968989 +1.015976 +1.1964999 +1.286962 +#### +seg_elev +1 +nsegment +7 +2 +472.7799988 +515.4400024 +466.6600037 +496.2099915 +482.8399963 +469.3800049 +461.8299866 +#### +seg_humidity +2 +nsegment +nmonths +84 +2 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +0.7 +#### +seg_lat +1 +nsegment +7 +2 +47.3865967 +47.4463921 +47.2877731 +47.4459534 +47.4855461 +47.337944 +47.200531 +#### +seg_length +1 +nsegment +7 +2 +21300.4746094 +19677.1054688 +17341.3027344 +16927.3945312 +19998.6816406 +6178.1342773 +22132.5839844 +#### +seg_slope +1 +nsegment +7 +2 +0.000423 +0.002554 +0.000141 +0.000811 +0.000567 +0.000178 +0.000395 +#### +segment_flow_init +1 +nsegment +7 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +segment_type +1 +nsegment +7 +1 +0 +1 +0 +0 +0 +0 +0 +#### +settle_const +1 +nhru +14 +2 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +0.1 +#### +slowcoef_lin +1 +nhru +14 +2 +0.005 +0.005004 +0.005003 +0.005 +0.005001 +0.005 +0.005 +0.005 +0.005 +0.005 +0.005 +0.005 +0.005 +0.005 +#### +slowcoef_sq +1 +nhru +14 +2 +0.560827 +1.0 +0.591841 +1.0 +0.638332 +0.774809 +0.903465 +0.951165 +0.404636 +0.303003 +0.995742 +0.30309 +0.304552 +0.686914 +#### +smidx_coef +1 +nhru +14 +2 +0.000175 +0.0001 +0.0001 +0.0001 +0.002025 +0.0001 +0.0001 +0.000495 +0.0001 +0.0001 +0.00034 +0.0001 +0.0001 +0.0001 +#### +smidx_exp +1 +nhru +14 +2 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +#### +snarea_curve +1 +ndeplval +11 +2 +0.0 +0.22 +0.43 +0.62 +0.77 +0.88 +0.95 +0.99 +1.0 +1.0 +1.0 +#### +snarea_thresh +1 +nhru +14 +2 +12.6538448 +10.8468628 +17.3088722 +27.1331291 +17.7303352 +19.8551064 +9.2653923 +12.3033705 +11.7321434 +4.4092231 +4.9083781 +12.5004873 +18.2419128 +8.3666458 +#### +snow_cbh_adj +2 +nhru +nmonths +168 +2 +1.205265 +1.75 +1.75 +1.75 +1.75 +1.75 +1.244349 +1.620815 +1.271508 +1.75 +1.75 +1.693109 +1.736199 +1.294871 +1.399309 +1.75 +1.75 +1.528989 +1.75 +1.75 +1.75 +1.75 +1.75 +1.75 +1.738016 +1.75 +1.723575 +1.75 +1.403952 +1.75 +1.75 +1.540432 +1.75 +1.75 +1.75 +1.75 +1.75 +1.75 +1.737675 +1.75 +1.726404 +1.75 +1.403952 +1.75 +1.75 +1.540432 +1.75 +1.75 +1.75 +1.75 +1.75 +1.75 +1.737675 +1.75 +1.726404 +1.75 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.75 +1.597513 +1.715588 +1.48137 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.75 +1.597513 +1.597513 +1.597513 +1.597513 +1.725232 +1.597513 +1.75 +1.6983939 +1.731922 +1.75 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.597513 +1.412333 +1.75 +1.75 +1.514285 +1.75 +1.75 +1.711834 +1.4941061 +1.75 +1.732536 +1.75 +1.75 +1.61529 +1.75 +1.203395 +1.75 +1.75 +1.75 +1.75 +1.75 +1.234715 +1.592803 +1.268458 +1.749608 +1.75 +1.681186 +1.7470191 +1.2914799 +1.205265 +1.75 +1.75 +1.75 +1.75 +1.75 +1.244349 +1.620815 +1.271508 +1.75 +1.75 +1.693109 +1.739204 +1.294871 +#### +snow_intcp +1 +nhru +14 +2 +0.019966 +0.019934 +0.02018 +0.01965 +0.020529 +0.021435 +0.019211 +0.020356 +0.02017 +0.02119 +0.021536 +0.019851 +0.020401 +0.020237 +#### +snowinfil_max +1 +nhru +14 +2 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +3.4752381 +#### +snowpack_init +1 +nhru +14 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +soil2gw_max +1 +nhru +14 +2 +0.017103 +0.0 +0.055827 +0.020876 +0.013009 +0.022391 +0.0 +0.0 +0.091246 +0.043139 +0.0 +0.0 +0.046756 +0.0 +#### +soil_moist_init_frac +1 +nhru +14 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +soil_moist_max +1 +nhru +14 +2 +2.4618969 +3.854913 +1.869907 +1.041351 +0.748117 +4.7398329 +3.1047969 +1.219604 +1.3210011 +1.200762 +1.308717 +1.771493 +0.870635 +3.019114 +#### +soil_rechr_init_frac +1 +nhru +14 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +soil_rechr_max_frac +1 +nhru +14 +2 +0.264389 +0.232094 +0.296707 +0.288296 +0.229329 +0.311594 +0.267951 +0.238019 +0.268317 +0.349157 +0.219394 +0.231753 +0.286163 +0.322642 +#### +soil_type +1 +nhru +14 +1 +2 +2 +2 +2 +1 +2 +2 +2 +2 +2 +2 +2 +2 +2 +#### +srain_intcp +1 +nhru +14 +2 +0.019926 +0.019964 +0.020149 +0.019624 +0.020959 +0.021397 +0.019222 +0.020156 +0.020173 +0.021125 +0.02097 +0.019834 +0.020029 +0.020064 +#### +sro_to_dprst_imperv +1 +nhru +14 +2 +0.0 +0.8125 +0.0 +0.0 +0.0 +0.214286 +0.333333 +0.0 +0.0 +0.130435 +0.0 +0.555556 +0.0 +0.2 +#### +sro_to_dprst_perv +1 +nhru +14 +2 +0.069337 +0.485926 +0.352003 +0.048251 +0.0 +0.543188 +0.680326 +0.034524 +0.420172 +0.327938 +0.040094 +0.457313 +0.084009 +0.144794 +#### +ss_tau +1 +nsegment +7 +1 +1 +1 +1 +1 +1 +1 +1 +#### +ssr2gw_exp +1 +nssr +14 +2 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +1.901672 +#### +ssr2gw_rate +1 +nssr +14 +2 +0.01 +0.039007 +0.012814 +0.01 +0.01 +0.01 +0.01 +0.01 +0.01 +0.01 +0.01 +0.01 +0.01 +0.01 +#### +ssstor_init_frac +1 +nssr +14 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +stream_tave_init +1 +nsegment +7 +2 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +#### +temp_units +1 +one +1 +1 +0 +#### +tmax_allrain_offset +2 +nhru +nmonths +168 +2 +3.9157939 +4.2014179 +4.085535 +4.0903492 +4.0869379 +4.130713 +4.1677408 +4.225533 +3.914299 +4.1253881 +3.878809 +4.005343 +4.0244341 +4.004777 +3.5989759 +3.7650681 +3.742938 +3.7366829 +3.7336559 +3.664994 +3.7527561 +3.725271 +3.831003 +3.676074 +3.7775459 +3.9243519 +3.8445361 +3.7664249 +4.3019691 +4.4760299 +4.4569631 +4.4521818 +4.448947 +4.396337 +4.4583368 +4.4507122 +4.371408 +4.3920078 +4.3511891 +4.4524398 +4.448915 +4.38866 +4.5025339 +4.763629 +4.721839 +4.748064 +4.7439222 +4.7074022 +4.7893729 +4.7871709 +4.770689 +4.7225361 +4.7258248 +4.865582 +4.8207521 +4.7548862 +3.928123 +4.375391 +4.2320042 +4.3038321 +4.298563 +3.9750869 +4.1949749 +4.0996871 +4.2268939 +3.9932289 +4.305748 +4.2617269 +4.3391471 +4.2307348 +2.880353 +3.065465 +3.0328641 +3.0350189 +3.0319271 +2.9819 +3.045902 +3.03579 +3.00404 +2.978754 +2.9777949 +3.0815151 +3.060559 +3.0018389 +2.880353 +3.065583 +3.0328641 +3.0350189 +3.0319271 +2.9819 +3.045902 +3.03579 +3.0040851 +2.9787941 +2.9777949 +3.0816009 +3.060559 +3.0018389 +2.880353 +3.065583 +3.0328641 +3.0350189 +3.0319271 +2.9819 +3.045902 +3.03579 +3.0040851 +2.9787941 +2.9777949 +3.0816009 +3.060559 +3.0018389 +2.8694041 +3.053086 +3.0204899 +3.021996 +3.018923 +2.9694681 +3.0326669 +3.0226221 +2.9892521 +2.964761 +2.963984 +3.0661881 +3.046782 +2.9882109 +4.351975 +4.7114859 +4.635179 +4.6942229 +4.6892099 +4.6114478 +4.7163301 +4.721251 +4.6339021 +4.6056752 +4.5797629 +4.7306871 +4.6875911 +4.632834 +4.3282328 +4.481184 +4.4887629 +4.4865961 +4.4832821 +4.456984 +4.5226669 +4.5195408 +4.4729309 +4.4590821 +4.4554348 +4.5519252 +4.5490541 +4.4847279 +4.0696578 +4.2453551 +4.2151718 +4.206985 +4.2039008 +4.1331239 +4.219357 +4.194613 +4.215301 +4.142005 +4.2168951 +4.2828889 +4.291636 +4.2152801 +#### +tmax_allsnow +2 +nhru +nmonths +168 +2 +28.819622 +28.9195213 +28.8329277 +28.8064308 +28.8406601 +28.9225159 +28.8634605 +28.7968407 +28.9082832 +28.8683929 +28.8341789 +28.8895073 +28.7831955 +28.9063072 +28.7914505 +28.8881264 +28.8035049 +28.7763977 +28.8106194 +28.8906021 +28.8302917 +28.7631073 +28.8754425 +28.8322754 +28.7978134 +28.8586578 +28.7471619 +28.870388 +29.0605011 +29.1303482 +29.0517693 +29.0140686 +29.0487747 +29.1596298 +29.0881615 +29.0275459 +29.1352844 +29.1040916 +29.0607719 +29.1164703 +29.0113487 +29.1366119 +30.023098 +29.9828911 +29.9392204 +29.8632088 +29.8996887 +29.9907341 +29.8972511 +29.8254662 +29.8731842 +29.8933678 +29.8327141 +29.8363762 +29.784626 +29.9141426 +31.160717 +30.9561882 +30.9981995 +30.8819847 +30.9204254 +31.3377037 +31.0854607 +31.1164894 +31.0373306 +31.247982 +30.8259811 +31.0788307 +30.8425865 +31.026001 +32.53619 +32.6483269 +32.5549278 +32.5279694 +32.5654259 +32.6570396 +32.5914879 +32.5179634 +32.6436462 +32.5931549 +32.5645142 +32.6214905 +32.5076485 +32.6418457 +32.53619 +32.6483269 +32.5549278 +32.5279694 +32.5654259 +32.6570396 +32.5914879 +32.5179634 +32.6436462 +32.5931549 +32.5645142 +32.6214905 +32.5076485 +32.6418457 +32.53619 +32.6483269 +32.5549278 +32.5279694 +32.5654259 +32.6570396 +32.5914879 +32.5179634 +32.6436462 +32.5931549 +32.5645142 +32.6214905 +32.5076485 +32.6418457 +32.53619 +32.6483269 +32.5549278 +32.5279694 +32.5654259 +32.6570396 +32.5914879 +32.5179634 +32.6436462 +32.5931549 +32.5645142 +32.6214905 +32.5076485 +32.6418457 +30.3978386 +30.2419777 +30.2331619 +30.1165199 +30.1543198 +30.2757721 +30.1580429 +30.0656319 +30.235157 +30.2095833 +30.2079773 +30.1946716 +30.1348076 +30.2466087 +29.445385 +29.4665146 +29.3934669 +29.333889 +29.3694687 +29.4746666 +29.3861885 +29.3202591 +29.3912277 +29.3942795 +29.3362808 +29.3623695 +29.2883301 +29.4158783 +28.8159447 +28.9007607 +28.8212128 +28.7907066 +28.8250313 +28.9170227 +28.8510742 +28.7876053 +28.883831 +28.8544731 +28.8129768 +28.8633575 +28.7644501 +28.8893738 +#### +tmax_cbh_adj +2 +nhru +nmonths +168 +2 +3.0 +2.370692 +2.278661 +3.0 +2.6401391 +3.0 +1.157313 +3.0 +1.026351 +2.7581949 +3.0 +-0.865671 +3.0 +3.0 +3.0 +2.6850209 +-1.092881 +3.0 +3.0 +3.0 +-0.855009 +3.0 +1.0209889 +1.016003 +1.0986609 +0.003444 +1.928442 +3.0 +3.0 +2.6831989 +-1.039626 +3.0 +3.0 +3.0 +-0.793667 +3.0 +0.934588 +1.02608 +0.93269 +-0.25724 +1.795517 +3.0 +3.0 +2.6831989 +-1.039626 +3.0 +3.0 +3.0 +-0.793667 +3.0 +0.934588 +1.02608 +0.93269 +-0.25724 +1.795517 +3.0 +-0.148528 +1.9284509 +3.0 +2.715987 +3.0 +2.0061531 +0.984509 +1.554915 +-0.148014 +2.622062 +-0.987916 +-0.896852 +-0.681317 +1.841929 +-0.06215 +1.9216959 +3.0 +2.6674709 +3.0 +1.961639 +0.974305 +1.564342 +-0.079928 +2.6963489 +-0.966681 +-0.86811 +-0.583981 +1.889007 +-0.06215 +1.9216959 +3.0 +2.6674709 +3.0 +1.961639 +0.974305 +1.564342 +-0.079928 +2.6963489 +-0.966681 +-0.86811 +-0.583981 +1.889007 +0.464916 +1.617692 +3.0 +2.5343821 +3.0 +1.180191 +0.448011 +2.785887 +3.0 +3.0 +3.0 +1.4595751 +3.0 +3.0 +0.484398 +1.692206 +3.0 +2.5856969 +3.0 +1.244682 +0.461038 +2.8421061 +3.0 +3.0 +3.0 +1.269675 +3.0 +3.0 +0.484398 +1.692206 +3.0 +2.5856969 +3.0 +1.244682 +0.461038 +2.8421061 +3.0 +3.0 +3.0 +1.269675 +3.0 +3.0 +3.0 +2.320612 +2.4045019 +3.0 +2.615047 +3.0 +1.214274 +3.0 +1.037074 +2.8746519 +3.0 +-0.878181 +3.0 +3.0 +3.0 +2.370692 +2.278661 +3.0 +2.6401391 +3.0 +1.157313 +3.0 +1.031713 +2.7581949 +3.0 +-0.865671 +3.0 +3.0 +#### +tmax_index +2 +nhru +nmonths +168 +2 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +50.0 +#### +tmin_cbh_adj +2 +nhru +nmonths +168 +2 +-3.0 +-1.6430579 +-0.995888 +-0.710147 +-1.089074 +-2.9309521 +-2.6462049 +0.074723 +-0.463835 +-3.0 +-0.371692 +0.036783 +-2.4993601 +-0.780216 +-0.978245 +0.182033 +-1.847836 +-2.180568 +-0.560388 +-3.0 +-3.0 +-0.670022 +-1.344736 +-0.792024 +-0.937329 +-2.3539121 +-3.0 +-0.835275 +-1.051834 +0.126587 +-1.855546 +-2.1741159 +-0.578969 +-3.0 +-3.0 +-0.768917 +-1.411903 +-0.747387 +-0.926306 +-2.2939451 +-3.0 +-0.961195 +-1.051834 +0.126587 +-1.855546 +-2.1741159 +-0.578969 +-3.0 +-3.0 +-0.768917 +-1.411903 +-0.747387 +-0.920898 +-2.2939451 +-3.0 +-0.961195 +-2.5554979 +-2.750154 +-2.5820069 +-1.5021501 +-2.948786 +-2.0453081 +-2.971128 +-2.5059519 +-2.202616 +0.732802 +-0.904257 +-0.652112 +-2.7894909 +-3.0 +-2.461092 +-2.742255 +-2.3849549 +-1.505407 +-2.993474 +-1.9402061 +-2.924052 +-2.3725159 +-2.0012801 +0.693499 +-0.872326 +-0.774646 +-2.7414961 +-3.0 +-2.461092 +-2.742255 +-2.187902 +-1.505407 +-3.0 +-1.9402061 +-2.924052 +-2.3725159 +-2.0012801 +0.693499 +-0.872326 +-0.774646 +-2.7414961 +-3.0 +-1.269979 +-0.486018 +-1.990851 +-2.39943 +-3.0 +-0.964642 +-1.9081481 +-0.768004 +0.004451 +-0.036642 +0.551564 +-1.9533581 +0.679936 +0.046788 +-1.388427 +-0.905339 +-1.75633 +-2.337882 +-2.912185 +-0.989273 +-1.9196531 +-0.521168 +-0.023107 +-0.048362 +0.251193 +-1.763922 +0.371572 +-0.219293 +-1.388427 +-1.140085 +-1.75633 +-2.337882 +-2.912185 +-0.989273 +-1.9196531 +-0.521168 +-0.023107 +-0.048362 +-0.049179 +-1.763922 +0.371572 +-0.219293 +-3.0 +-1.743982 +-0.955136 +-0.678219 +-1.220421 +-2.8822291 +-2.635987 +0.081749 +-0.345894 +-3.0 +-0.349551 +0.043095 +-2.3571301 +-0.760663 +-3.0 +-1.6430579 +-0.995888 +-0.710147 +-1.089074 +-2.9309521 +-2.6462049 +0.074723 +-0.463835 +-3.0 +-0.371692 +0.036783 +-2.4993601 +-0.780216 +#### +tosegment +1 +nsegment +7 +1 +6 +4 +7 +5 +1 +3 +0 +#### +tosegment_nhm +1 +nsegment +7 +1 +30118 +30116 +30119 +30117 +30113 +30115 +30120 +#### +transp_beg +1 +nhru +14 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +1 +#### +transp_end +1 +nhru +14 +1 +13 +13 +13 +13 +13 +13 +13 +13 +13 +13 +13 +13 +13 +13 +#### +transp_tmax +1 +nhru +14 +2 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +1.0 +#### +tstorm_mo +2 +nhru +nmonths +168 +1 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +#### +va_clos_exp +1 +nhru +14 +2 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +#### +va_open_exp +1 +nhru +14 +2 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +0.001 +#### +vce +1 +nsegment +7 +2 +11.4266319 +4.1155281 +1.3607661 +4.7426429 +5.9532189 +1.685446 +0.286066 +#### +vcw +1 +nsegment +7 +2 +10.2149239 +0.872105 +1.3607661 +2.2149091 +7.6624632 +1.940011 +5.0560312 +#### +vdemn +1 +nsegment +7 +2 +0.416346 +0.348774 +0.320753 +0.375534 +0.406274 +0.320844 +0.440328 +#### +vdemx +1 +nsegment +7 +2 +0.416346 +0.348774 +0.320753 +0.375534 +0.406274 +0.320844 +0.440328 +#### +vdwmn +1 +nsegment +7 +2 +0.379941 +0.346536 +0.320753 +0.330082 +0.389634 +0.339329 +0.31811 +#### +vdwmx +1 +nsegment +7 +2 +0.379941 +0.346536 +0.320753 +0.330082 +0.389634 +0.339329 +0.31811 +#### +vhe +1 +nsegment +7 +2 +11.4266319 +4.1155281 +1.3607661 +4.7426429 +5.9532189 +1.685446 +0.286066 +#### +vhw +1 +nsegment +7 +2 +10.2149239 +0.872105 +1.3607661 +2.2149091 +7.6624632 +1.940011 +5.0560312 +#### +voe +1 +nsegment +7 +2 +34.3899994 +34.4749985 +18.875 +34.3849983 +34.3899994 +18.1299992 +5.3049998 +#### +vow +1 +nsegment +7 +2 +34.3899994 +34.4749985 +18.875 +34.3849983 +34.3899994 +18.1299992 +5.3049998 +#### +width_alpha +1 +nsegment +7 +2 +68.7799988 +68.9499969 +37.75 +68.7699966 +68.7799988 +36.2599983 +10.6099997 +#### +width_m +1 +nsegment +7 +2 +0.015 +0.015 +0.015 +0.015 +0.015 +0.015 +0.015 +#### +wrain_intcp +1 +nhru +14 +2 +0.019816 +0.019782 +0.020071 +0.019582 +0.020529 +0.021342 +0.019122 +0.020126 +0.020109 +0.021073 +0.02097 +0.019791 +0.020016 +0.020039 +#### +x_coef +1 +nsegment +7 +2 +0.2 +0.2 +0.2 +0.2 +0.2 +0.2 +0.2 +#### +pref_flow_infil_frac +1 +nhru +14 +2 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 +-1.0 From e1ffc83742252ed37f71053b6340dbdeb9dd0abe Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 10:53:56 -0700 Subject: [PATCH 06/13] feat: Add support for creating control object without default values - added include_missing as argument to __init__(). The default is True which replicates the prior behavior when creating a control object. When include_missing is False then an empty control object is created - an internal copy of metadata is now created - add() was modified to use internal metadata --- pyPRMS/control/Control.py | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/pyPRMS/control/Control.py b/pyPRMS/control/Control.py index e84da81..051889e 100644 --- a/pyPRMS/control/Control.py +++ b/pyPRMS/control/Control.py @@ -24,10 +24,6 @@ con = None -# Rich library -# pretty.install() -# con = Console(record=False, width=200) - cond_check = {'=': operator.eq, '>': operator.gt, '<': operator.lt} @@ -40,7 +36,9 @@ class Control(object): # Author: Parker Norton (pnorton@usgs.gov) # Create date: 2019-04-18 - def __init__(self, metadata: MetaDataType, verbose: Optional[bool] = False): + def __init__(self, metadata: MetaDataType, + include_missing: Optional[bool] = True, + verbose: Optional[bool] = False): """Create Control object. """ @@ -48,20 +46,14 @@ def __init__(self, metadata: MetaDataType, verbose: Optional[bool] = False): con = get_console_instance() # Container to hold dicionary of ControlVariables - # self.__control_vars = OrderedDict() self.__control_vars: Dict = {} self.__header: Optional[List[str]] = None - self.__verbose = verbose - # Create an entry for each variable in the control section of - # the metadata dictionary - # for cvar, cvals in metadata['control'].items(): - # self.add(name=cvar, meta=cvals) - for cvar in metadata['control'].keys(): - self.add(name=cvar, meta=metadata['control']) + self.__metadata = metadata + self.__verbose = verbose - if verbose: - con.print('[bold]Pre-populate control variables done[/]') + if include_missing: + self._preload_metadata() def __getitem__(self, item: str) -> ControlVariable: """Get ControlVariable object for a variable. @@ -203,7 +195,7 @@ def modules(self) -> Dict[str, str]: return mod_dict - def add(self, name: str, meta=None): + def add(self, name: str): # , meta=None): """Add a control variable by name. :param name: Name of the control variable @@ -214,8 +206,7 @@ def add(self, name: str, meta=None): if self.exists(name): raise ControlError("Control variable already exists") - self.__control_vars[name] = ControlVariable(name=name, meta=meta) - # self.__control_vars[name] = ControlVariable(name=name, datatype=datatype, meta=meta) + self.__control_vars[name] = ControlVariable(name=name, meta=self.__metadata['control']) def diff(self, other: 'Control') -> dict: """A difference listing/dictionary against another Control object. @@ -421,3 +412,12 @@ def _read(self): """Abstract function for reading. """ assert False, 'Control._read() must be defined by child class' + + def _preload_metadata(self): + # Create an entry for each variable in the control section of + # the metadata dictionary + for cvar in self.__metadata['control'].keys(): + self.add(name=cvar) # , meta=self.__metadata['control']) + + if self.__verbose: + con.print('[bold]Pre-populate control variables done[/]') From d2b7a86969d5864459d9e06421d974ef11889707 Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 10:57:00 -0700 Subject: [PATCH 07/13] feat: Add support for creating control object without default values - added include_missing as argument to __init__(). The default is False which is different from prior behavior, so reading a control file with the default results in a control object that only contains the control variables from the file. --- pyPRMS/control/ControlFile.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pyPRMS/control/ControlFile.py b/pyPRMS/control/ControlFile.py index 0ff05cd..670ef5a 100644 --- a/pyPRMS/control/ControlFile.py +++ b/pyPRMS/control/ControlFile.py @@ -23,14 +23,16 @@ class ControlFile(Control): def __init__(self, filename: Union[str, Path], metadata, + include_missing: Optional[bool] = False, verbose: Optional[bool] = False): - super(ControlFile, self).__init__(metadata=metadata, verbose=verbose) + super(ControlFile, self).__init__(metadata=metadata, include_missing=include_missing, verbose=verbose) global con con = get_console_instance() self.__verbose = verbose self.__isloaded = False + self.__include_missing = include_missing if isinstance(filename, str): filename = Path(filename) @@ -85,6 +87,12 @@ def _read(self): con.print(f'[orange3]WARNING[/]: [bold]{varname}[/] already exists') chk_vars.append(varname) + if not self.__include_missing: + try: + self.add(name=varname) # , meta=self.__metadata['control']) + except ControlError: + con.print(f'[orange3]WARNING[/]: [bold]{varname}[/] duplicated in the control file') + numval = int(next(it)) # number of values for this variable valuetype = int(next(it)) # Variable type (1 - integer, 2 - float, 4 - character) From 091534b9ec1b7bd240dda636b75aae5cc5c9c30e Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 10:57:30 -0700 Subject: [PATCH 08/13] removed cbh_binary_flag from control file --- tests/func/test_ParameterFile/control.default.bandit | 5 ----- 1 file changed, 5 deletions(-) diff --git a/tests/func/test_ParameterFile/control.default.bandit b/tests/func/test_ParameterFile/control.default.bandit index 94d4a6d..efa4c5d 100644 --- a/tests/func/test_ParameterFile/control.default.bandit +++ b/tests/func/test_ParameterFile/control.default.bandit @@ -744,8 +744,3 @@ segment_transfer_file 1 4 seg.transfer -#### -cbh_binary_flag -1 -1 -0 From 08157cc2922cb25af82f5db7a22f56f0122353e5 Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 10:57:55 -0700 Subject: [PATCH 09/13] removed potet_coef_dynamic from control file --- tests/func/test_Cbh/control.default.bandit | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/func/test_Cbh/control.default.bandit b/tests/func/test_Cbh/control.default.bandit index 6a27972..8900b52 100644 --- a/tests/func/test_Cbh/control.default.bandit +++ b/tests/func/test_Cbh/control.default.bandit @@ -745,7 +745,7 @@ precip_map_file 4 precip.map #### -potet_coef_dynamic +potetcoef_dynamic 1 4 dyn_potet_coef.param From 85c7baf5c846b98d43b2bb9a26dc514d41937ec7 Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 10:59:18 -0700 Subject: [PATCH 10/13] test: add test for reading and writing netCDF CBH files --- tests/func/test_Cbh.py | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/tests/func/test_Cbh.py b/tests/func/test_Cbh.py index 2ba15f6..f7ae39f 100644 --- a/tests/func/test_Cbh.py +++ b/tests/func/test_Cbh.py @@ -1,5 +1,7 @@ import pytest import os +import numpy as np +import xarray as xr from pathlib import Path from distutils import dir_util @@ -54,7 +56,8 @@ def test_read_ctl_ascii_roundtrip_ascii(self, datadir, pdb_instance, meta_instan nhm_ids = pdb_instance.get('nhm_id').data ctl = ControlFile(datadir / 'control.default.bandit', metadata=meta_instance.metadata, verbose=False) - cbh = Cbh(str(datadir), engine='ascii', metadata=meta_instance.metadata, control=ctl) + cbh = Cbh(str(datadir), engine='ascii', metadata=meta_instance.metadata, control=ctl, + parameters=pdb_instance, verbose=True) assert not cbh.has_nhm_id cbh.set_nhm_id(nhm_ids) @@ -92,3 +95,21 @@ def test_read_single_ascii_roundtrip_ascii(self, datadir, pdb_instance, meta_ins lines_chk = f.readlines() assert lines_orig == lines_chk + + def test_read_netcdf_roundtrip_netcdf(self, datadir, pdb_instance, meta_instance, tmp_path): + out_path = tmp_path / 'run_files' + out_path.mkdir() + + cbh = Cbh(str(datadir.join('cbh.nc')), engine='netcdf', metadata=meta_instance.metadata) + + out_file = out_path / 'cbh.nc' + cbh.write_netcdf(out_file) + + # Check that the values of the data variables match + ds_tmp = xr.open_dataset(out_file, chunks={}) + ds_tmp = ds_tmp.assign_coords(nhru=ds_tmp.nhm_id) + + ds_orig = cbh.data + + for vv in ds_orig.data_vars: + np.testing.assert_equal(ds_orig[vv].values, ds_tmp[vv].values) From e581b5873d3c701d85fe81c5b2eb8027df246d0a Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 11:02:04 -0700 Subject: [PATCH 11/13] test: updated tests to work with Control class changes - added test_cbh_files() - open Control object with verbose=True - test_add_invalid_variable() remove meta argument - test_add_duplicate_variable() remove meta argument --- tests/func/test_Control.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/tests/func/test_Control.py b/tests/func/test_Control.py index a912475..f98bcb4 100644 --- a/tests/func/test_Control.py +++ b/tests/func/test_Control.py @@ -8,7 +8,7 @@ @pytest.fixture(scope='class') def control_object(): prms_meta = MetaData(verbose=False).metadata - ctl = Control(metadata=prms_meta) + ctl = Control(metadata=prms_meta, verbose=True) return ctl @@ -224,6 +224,19 @@ def test_set_header_with_none(self, control_object): control_object.header = None assert control_object.header is None + def test_cbh_files(self, control_object): + """Check the default set of CBH files""" + expected = ['cloudcover.day', + 'humidity.day', + 'potet.day', + 'precip.day', + 'swrad.day', + 'tmax.day', + 'tmin.day', + 'transp.day', + 'windspeed.day'] + assert control_object.cbh_files == expected + def test_default_modules(self, control_object): """Check the default set of modules is correct""" expected = {'et_module': 'potet_jh', @@ -275,13 +288,13 @@ def test_add_invalid_variable(self, control_object, metadata_ctl, name): """Add an invalid control variable name""" with pytest.raises(ValueError): - control_object.add(name=name, meta=metadata_ctl) + control_object.add(name=name) def test_add_duplicate_variable(self, control_object, metadata_ctl): """Add a duplicate control variable""" with pytest.raises(ControlError): - control_object.add(name='et_module', meta=metadata_ctl) + control_object.add(name='et_module') def test_remove_variable(self, control_object): control_object.remove('albedo_day') From 8f3417f1355da654107ea61b0f824990a4072424 Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 11:04:43 -0700 Subject: [PATCH 12/13] test: updated tests to work with Control and ControlFile class changes - test_diff_control() add include_missing=True to ControlFile call. This replicates the prior behavoir of the test - test_bad_var_in_file() changed assert to checking for ValueError during ControlFile instantiation --- tests/func/test_ControlFile.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tests/func/test_ControlFile.py b/tests/func/test_ControlFile.py index bd2d6a9..9e3844f 100644 --- a/tests/func/test_ControlFile.py +++ b/tests/func/test_ControlFile.py @@ -31,7 +31,7 @@ def test_diff_control(self, datadir): prms_meta = MetaData(verbose=False).metadata - ctl = ControlFile(control_file, metadata=prms_meta, verbose=False) + ctl = ControlFile(control_file, metadata=prms_meta, include_missing=True, verbose=False) # Create a instance of a base control class ctl_base = Control(metadata=prms_meta) @@ -77,9 +77,8 @@ def test_bad_var_in_file(self, datadir): prms_meta = MetaData(verbose=True).metadata - ctl = ControlFile(control_file, metadata=prms_meta, verbose=False) - - assert not ctl.exists('random_ctl_var') + with pytest.raises(ValueError): + ctl = ControlFile(control_file, metadata=prms_meta, verbose=False) def test_bad_num_vals_in_file(self, datadir): """Too many values for a variable should raise ControlError""" From 3ed815f9aa3d3bc4a030fa47637588e91e3178db Mon Sep 17 00:00:00 2001 From: Parker Norton Date: Fri, 6 Feb 2026 11:05:26 -0700 Subject: [PATCH 13/13] style: changed wording for control_to_dict warnings --- pyPRMS/metadata/metadata.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyPRMS/metadata/metadata.py b/pyPRMS/metadata/metadata.py index 55427c2..c09681d 100644 --- a/pyPRMS/metadata/metadata.py +++ b/pyPRMS/metadata/metadata.py @@ -106,7 +106,7 @@ def __control_to_dict(self, xml_root: xmlET.Element, if var_version > req_version: if self.__verbose: # pragma: no cover - con.print(f'[green]INFO[/]: [bold]{name}[/] rejected by version {str(var_version)}, req: {str(req_version)}') + con.print(f'[green]INFO[/]: [bold]{name}[/] requires version {str(var_version)}') del meta_dict[name] continue @@ -119,7 +119,7 @@ def __control_to_dict(self, xml_root: xmlET.Element, if depr_version <= req_version: if self.__verbose: # pragma: no cover - con.print(f'[green]INFO[/]: [bold]{name}[/] rejected by deprecation version {str(depr_version)}, req: {str(req_version)}') + con.print(f'[green]INFO[/]: [bold]{name}[/] was deprecated at version {str(depr_version)}') del meta_dict[name] continue