easy_vic_build.build_RVIC_Param
Build RVIC routing inputs and configuration files.
Public functions
buildRVICParam_basicGenerate flow-direction, pour-point, UHBOX, and RVIC parameter CFG files.
buildRVICParamRun full RVIC parameter generation (requires
rvicpackage).buildRVICFlowDirectionFileBuild
flow_direction_file.ncfrom hydroanalysis outputs and domain data.buildPourPointFile/buildUHBOXFile/buildParamCFGFile/buildConvCFGFileCreate individual RVIC input/configuration files.
Functions
|
Generate and save the RVIC convolution configuration file. |
|
Generate and save the RVIC parameter configuration file. |
|
Generate a pour point CSV file for RVIC. |
|
Build |
|
Build RVIC input files and run |
|
Build core RVIC input files without running |
|
Generate and save the UHBOX (Unit Hydrograph Box) file. |
- easy_vic_build.build_RVIC_Param.buildRVICParam_basic(evb_dir, domain_dataset, ppf_kwargs={}, uh_params={'createUH_func': <function createGUH>, 'm': 3.0, 'max_day': None, 'max_day_converged_threshold': 0.001, 'max_day_range': (0, 10), 'mu': 5.0, 'plot_bool': True, 'tp': 1.4, 'uh_dt': 3600}, cfg_params={'BASIN_FLOWDAYS': 50, 'CELL_FLOWDAYS': 2, 'DIFFUSION': 800.0, 'OUTPUT_INTERVAL': 86400, 'SUBSET_DAYS': 10, 'VELOCITY': 1.5}, fd_params={'TF_VIC_class': <class 'easy_vic_build.tools.params_func.TransferFunction.TF_VIC'>, 'g_diffusion': None, 'g_velocity': None, 'slope': None})[source]
Build core RVIC input files without running
rvic.parameters.- Parameters:
evb_dir (Evb_dir) – Case directory manager.
domain_dataset (netCDF4.Dataset) – Domain dataset used to write routing fields.
ppf_kwargs (dict, optional) – Keyword arguments forwarded to
buildPourPointFile().uh_params (dict, optional) – Keyword arguments forwarded to
buildUHBOXFile().cfg_params (dict, optional) – Keyword arguments forwarded to
buildParamCFGFile().fd_params (dict, optional) – Keyword arguments forwarded to
buildRVICFlowDirectionFile().
- Returns:
Files are written in
evb_dir.RVICParam_dir.- Return type:
None
- easy_vic_build.build_RVIC_Param.buildRVICParam(evb_dir, domain_dataset, ppf_kwargs={}, uh_params={'createUH_func': <function createGUH>, 'm': 3.0, 'max_day': None, 'max_day_converged_threshold': 0.001, 'max_day_range': (0, 10), 'mu': 5.0, 'plot_bool': True, 'tp': 1.4, 'uh_dt': 3600}, cfg_params={'BASIN_FLOWDAYS': 50, 'CELL_FLOWDAYS': 2, 'DIFFUSION': 800.0, 'OUTPUT_INTERVAL': 86400, 'SUBSET_DAYS': 10, 'VELOCITY': 1.5}, fd_params={'TF_VIC_class': <class 'easy_vic_build.tools.params_func.TransferFunction.TF_VIC'>, 'g_diffusion': None, 'g_velocity': None, 'slope': None}, numofproc=1)[source]
Build RVIC input files and run
rvic.parameters.- Parameters:
evb_dir (Evb_dir) – Case directory manager.
domain_dataset (netCDF4.Dataset) – Domain dataset used to build routing inputs.
ppf_kwargs (dict, optional) – Keyword arguments forwarded to
buildPourPointFile().uh_params (dict, optional) – Keyword arguments forwarded to
buildUHBOXFile().cfg_params (dict, optional) – Keyword arguments forwarded to
buildParamCFGFile().fd_params (dict, optional) – Keyword arguments forwarded to
buildRVICFlowDirectionFile().numofproc (int, optional) – Number of processes passed to
rvic.parameters.
- Returns:
RVIC parameter files are generated and
rvic.parametersis executed.- Return type:
None
- Raises:
ImportError – If the RVIC module is not available.
Notes
If the
rvicpackage is unavailable, this function raisesImportError.
- easy_vic_build.build_RVIC_Param.buildRVICFlowDirectionFile(evb_dir, domain_dataset, g_velocity=None, g_diffusion=None, slope=None, TF_VIC_class=<class 'easy_vic_build.tools.params_func.TransferFunction.TF_VIC'>)[source]
Build
flow_direction_file.ncfrom hydroanalysis rasters and domain data.- Parameters:
evb_dir (Evb_dir) – Case directory manager.
domain_dataset (netCDF4.Dataset) – Domain dataset that provides
lat,lon,mask, andarea.g_velocity (tuple or list, optional) – Parameters for spatial velocity estimation via
TF_VIC_class.velocity.g_diffusion (tuple or list, optional) – Parameters for spatial diffusion estimation via
TF_VIC_class.diffusion.slope (array-like, optional) – Slope field used when estimating velocity.
TF_VIC_class (type, optional) – Transfer-function class for optional velocity/diffusion fields.
- Returns:
The file is written to
evb_dir.flow_direction_file_path.- Return type:
None
- easy_vic_build.build_RVIC_Param.buildPourPointFile(evb_dir, names=None, lons=None, lats=None)[source]
Generate a pour point CSV file for RVIC.
This function writes a CSV with columns
lons,lats, andnames.- Parameters:
evb_dir (Evb_dir) – Case directory manager.
names (list, optional) – Pour-point names.
lons (list, optional) – Pour-point longitudes.
lats (list, optional) – Pour-point latitudes.
- Returns:
The function writes the pour point data to a CSV file.
- Return type:
None
- easy_vic_build.build_RVIC_Param.buildUHBOXFile(evb_dir, createUH_func=<function createGUH>, **kwargs)[source]
Generate and save the UHBOX (Unit Hydrograph Box) file.
This function creates a UHBOX file using a specified unit hydrograph creation function. The resulting UHBOX data is then saved to a CSV file.
- Parameters:
evb_dir (Evb_dir) – Case directory manager.
createUH_func (function, optional) – Function used to generate the unit hydrograph, default is
create_uh.createGUH.**kwargs (dict) – Additional parameters to be passed to the createUH_func.
- Returns:
max_day – Maximum duration (in days) used in the unit hydrograph generation.
- Return type:
int
- easy_vic_build.build_RVIC_Param.buildParamCFGFile(evb_dir, VELOCITY=1.5, DIFFUSION=800.0, OUTPUT_INTERVAL=86400, SUBSET_DAYS=10, CELL_FLOWDAYS=2, BASIN_FLOWDAYS=50, CONSTRAIN_FRACTIONS=True)[source]
Generate and save the RVIC parameter configuration file.
This function creates a configuration (CFG) file for RVIC parameter settings based on a reference configuration file and specified routing parameters.
- Parameters:
evb_dir (Evb_dir) – Case directory manager.
VELOCITY (float, optional) – Flow velocity parameter, default is 1.5, and the acceptable range is 1.0 to 3.0 m/s.
DIFFUSION (float, optional) – Diffusion coefficient for routing, default is 800.0, and the acceptable range is 200 to 4000m3/s.
OUTPUT_INTERVAL (int, optional) – Time interval (seconds) for output, default is 86400 seconds (1 day), and should typically be set as a multiple of 60.
SUBSET_DAYS (int, optional) – Number of days used for subset processing, default is 10.
CELL_FLOWDAYS (int, optional) – Flow duration at the cell level (days), default is 2.
BASIN_FLOWDAYS (int, optional) – Flow duration at the basin level (days), default is 50.
CONSTRAIN_FRACTIONS (bool, optional) – Whether RVIC should constrain source fractions.
Notes
The output file is written to
evb_dir.rvic_param_cfg_file_path.
- easy_vic_build.build_RVIC_Param.buildConvCFGFile(evb_dir, RUN_STARTDATE='1979-09-01-00', DATL_FILE='rasm_sample_runoff.nc', PARAM_FILE_PATH='sample_rasm_parameters.nc', RVICHIST_MFILT=365)[source]
Generate and save the RVIC convolution configuration file.
This function creates a configuration (CFG) file for RVIC convolution settings based on a reference configuration file and specified parameters.
- Parameters:
evb_dir (Evb_dir) – Case directory manager.
RUN_STARTDATE (str, optional) – The start date for the RVIC run in “YYYY-MM-DD-HH” format.
DATL_FILE (str, optional) – The name of the input runoff file. Default is “rasm_sample_runoff.nc”.
PARAM_FILE_PATH (str, optional) – The path to the RVIC parameter file. Default is “sample_rasm_parameters.nc”.
- Returns:
The output file is written to
evb_dir.rvic_conv_cfg_file_path.- Return type:
None