The Variable Infiltration Capacity (VIC) Model

The Variable Infiltration Capacity (VIC) model is a macroscale hydrologic model that solves full water and energy balances, originally developed by Xu Liang at the University of Washington (UW). The version of VIC source code used is of 5.0.1 on < https://github.com/UW-Hydro/VIC/>, see Hamman et al. (2018). Development and maintenance of the current official version of the VIC model at present is led by the UW Hydro (Computational Hydrology group) in the Department of Civil and Environmental Engineering at UW. VIC is a research model and in its various forms it has been applied to most of the major river basins around the world, as well as globally. If you make use of this model, please acknowledge the appropriate references listed in the help page of this package or on the references page < http://vic.readthedocs.io/en/master/Documentation/References/> of the VIC official documentation website. These should include Liang et al. (1994) plus any references relevant to the features you are using Reference: Liang, X., D. P. Lettenmaier, E. F. Wood, and S. J. Burges (1994), A simple hydrologically based model of land surface water and energy fluxes for general circulation models, J. Geophys. Res., 99(D7), 14415-14428, . Hamman et al. (2018) about VIC 5.0.1 also can be considered: Hamman, J. J., Nijssen, B., Bohn, T. J., Gergel, D. R., and Mao, Y. (2018), The Variable Infiltration Capacity model version 5 (VIC-5): infrastructure improvements for new applications and reproducibility, Geosci. Model Dev., 11, 3481-3496, .


CRAN RStudio mirror downloads Travis-CI Build Status CRAN version

Overview

VICmodel is an R implementation of the Variable Infiltration Capacity (VIC) macroscale distributed hydrologic model (Liang et al., 1994) originally developed by Xu Liang at the University of Washington (UW), USA, and currently the model is maintained by the Computational Hydrology group (UW Hydro) in the Department of Civil and Environmental Engineering at UW. This R package is developed by Ruida Zhong et al. at the Center for Water Resources and Environment, Sun Yat-sen University (SYSU). This package is built based on the VIC source code V5.0.1 (Hamman et al., 2018), aim to for the more convinient use for the R users and other users or researchers using windows platform.

The VIC model can simulate several land surface processes physically based on both water balance and energy balance, e.g. Evapotranspiration (on vegetation canopy, vegetation transpiration and soil evaporation), runoff (surface and underground), changes of soil moisture, soil ice and soil temperature of each soil layer, accumulation and melt of snow, sensible and latent heat flux between atmosphere and land surface, streamflow of the basin outlet (needed to be coupled with a runoff routing model), and many other variables. The landsurface parameters (about vegetation, soil, topography) and the timeseries of meteorological data (meteorological forcing, including precipitation, air temperature, incomming shortwave and longwave radiation, wind speed, air pressure and vapor pressure) are necessary inputs to run the VIC model.

For more information about VIC please see the official documentation website of VIC.

Dependencies

R >= 3.0.0

R-packages:

  • Rcpp >= 0.12.0
  • foreach

Installation

You can install VICmodel from github with:

# Via devtools
require(devtools)
devtools::install_github("Sibada/VICmodel")

Or get it from the CRAN repository:

install.packages("VICmodel")

References

  • Liang, X., D. P. Lettenmaier, E. F. Wood, and S. J. Burges (1994), A simple hydrologically based model of land surface water and energy fluxes for general circulation models, J. Geophys. Res., 99(D7), 14415-14428, doi:10.1029/94JD00483.

  • Hamman, J. J., Nijssen, B., Bohn, T. J., Gergel, D. R., and Mao, Y. (2018), The Variable Infiltration Capacity model version 5 (VIC-5): infrastructure improvements for new applications and reproducibility, Geosci. Model Dev., 11, 3481-3496, doi:10.5194/gmd-11-3481-2018.

Example

This is an example to run the VIC model using the sample inputs:

#Sample data, with 16 gridcells and 10 day hourly meteorological forcing inputs
data(STEHE)
 
forcing <- STEHE$forcing
soil <- STEHE$soil
veg <- STEHE$veg
 
# Options and settings of the VIC model
vic_param('start_year', 1949)
vic_param('start_month', 1)
vic_param('start_day', 1)
vic_param('end_year', 1949)
vic_param('end_month', 1)
vic_param('end_day', 10)
vic_param('step_per_day', 24)
vic_param('snow_step_per_day', 24)
vic_param('runoff_step_per_day', 24)
 
# Definition of model outputs (output variables, timescale, etc.)
out_info <- list(
  wb = list(timescale = 'hour', aggpar = 6,
            outvars = c('OUT_RUNOFF', 'OUT_BASEFLOW', 'OUT_SOIL_MOIST'),
            aggtypes = c('sum', 'sum', 'end')),
  eb = list(timescale = 'day', aggpar = 1,
            outvars = c('OUT_SWE', 'OUT_SOIL_TEMP'),
            aggtypes = c('avg', 'min'))
)
 
# Run the VIC model
outputs <- vic(forcing, soil, veg, output_info = out_info)
 
# Show information of model run and outputs.
print(outputs)

News

VICmodel 0.1.2

  • Fix the bug of error when only run the model for only a single gridcell.

  • Add some function to calculate Nash-Sutcliffe coefficient of efficiency (NSE) and relative bias (RB) to evaluate the streamflow simulation performance.

  • Longwave radiation and atmospheric pressure are not necessary forcing input now (can be estimated by elevation, air temperature, vapor pressure and solar radiation).

VICmodel 0.1.1

  • Fix some codes with bug or potential problem of the VIC source codes.

  • Fix the data error of the STEHE sample data.

  • Add the observed streamflow data to STEHE sample data for routing model.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("VICmodel")

0.1.2 by Ruida Zhong, 8 months ago


https://github.com/Sibada/VICmodel


Browse source code at https://github.com/cran/VICmodel


Authors: Ruida Zhong [aut, cre] , Xiaohong Chen [aut, ctb] , Zhaoli Wang [aut, ctb] , Chengguang Lai [aut, ctb] , Joseph J Hamman [ctb] (Contributor and maintainer of VIC source code) , Keith Cherkauer [ctb]


Documentation:   PDF Manual  


GPL-3 license


Imports stats, utils, Rcpp, foreach

Suggests doParallel

Linking to Rcpp


See at CRAN