Back Goto VIC Operations Page Goto VIC Model Home Page

Overview of Running the VIC Model

In 9 Easy Steps!


There is actually a great deal of information available on the HYDRO web pages for preparation and running of the VIC model. This page serves as on outline to guide a new user through the information available in other locations.

  1. Define area of interest. - Use Arc/Info GIS together with the known gauge location (e.g. from USGS) or predetermined drainage basin boundaries (e.g. from HYDRO 1K).

  2. Generate land surface input data. - Gather maps of land cover type (e.g. from University of Maryland), soil texture (e.g. from Penn State soil maps (USA) or FAO soil map of the world (global)), and LAI to generate the soil and vegetation parameter files and the vegetation library. Prepare a soil parameter file, describing the characteristics of each soil layer for each grid cell. This is also where other basic grid cell information is defined. For the selected land cover classification, set up a vegetation library file. This describes the static (varying by month, but the same values year-to-year) parameters associated with each land cover class. Finally, develop a vegetation parameter file, which describes for each grid cell the proportion of it occupied by each land cover class, as well as information on rooting depths and (optionally) leaf area index.

  3. Generate meteorologic forcing data. - Obtain precipitation and temperature data (as a minimum) from the NCDC or our web site and grid it to the final model resolution. Additional meteorological data can also be compiled as input to the VIC model (see e.g. Forcing Data Files), otherwise these values are parameterized internally to the model. If desired,disaggregate the precipitation into sub-daily increments. This produces a second set of "forcing" files for precipitation.

  4. Prepare a global control file. - The model control file tells VIC where all of the input files and output files are to be located, and sets other user preferences such as model timestep and which optional modules should be run. As specified in the global options of the model control file, many optional modules can be run to enhance the basic VIC water balance application (e.g. full energy balance, snow bands, frozen soils, lakes and wetlands, distributed precipitation, fractional snow and ice, and blowing snow.). Each of the optional modules will affect run-time to varying degrees, and so should be selected with care depending on the goals of the project.

  5. Prepare optional input files. - Several of the oprional modules described above require the specification of additional parameters or additional input files. For example, if desired (especially for larger grid sizes) snow elevation bands can be defined in a separate file, to enhance the sub-grid accuracy of orographic enhancement of snow. Both full energy mode and frozen soils mode require the specification of additional parameters in the soil parameter file.

    • Output of this step: - (Optional) snow band file, lake parameter file, blowing snow parameters, frozen soils parameters, energy balance parameters.

    • Additional information:

      - Preparing the snow elevation band file

      - Preparing the lake parameter file (coming soon!)

      - Calculating blowing snow parameters (coming soon!)

  6. Download and compile the VIC source code. - In order to ensure that you are using the latest and greatest version of the code, fill out the on-line request form to download the most recent version of the VIC source code. Unzip and untar the code into your local source code directory. The code can be compiled using the makefile included in the archive, by typing 'make'. Some modification of the makefile may be necessary depending on your system configuration. The VIC model is written entirely in the C programming language, and can be compiled using a gcc compiler on UNIX, freebsd, linux and DOS operating systems. The compiled code creates an executable entitled 'vicNl'. To begin running the model, simply type 'vicNl -g (global control file name)' at the command prompt.

  7. Develop routing network and files. - The VIC model produces fluxes of water and energy for each model grid cell. In order to generate a streamflow hydrograph for comparison with observations it is necessary to route the runoff from each model grid cell to the basin outlet using a post-processor routing model. Preparation for running the routing model requires development of a routing network for the grid cells, describing the flow paths from cell-to-cell, in addition to several other input files.

    • Output of this step: - routing input file, basin fraction file, flow direction file, station location file, flow length (xmask) file (optional), flow velocity file (optional), flow diffusion file (optional)

    • Additional information:

      - Pre-processing of routing model inputs

      - Using the routing model.

      - The routing model only works with daily runoff and baseflow fluxes, so if a sub-daily time step was used by VIC, the fluxes must be aggregated prior to routing the flows: Reducing hourly output to daily.

  8. Run and calibrate the model. - As described above, after preparing all of the necessary input files, the following steps are used to run the model and generate a streamflow hydrograph:

    • Output of this step: - flux files, snow files, snow band files (optional), frozen soils files (optional) and routed streamflow.

    • Additional information:

      - Dividing the record: for most applications it is necessary to ensure that you have an independent record for calibration and validation (or evaluation) of the streamflow hydrograph. i.e. DO NOT calibrate on your entire period of record, save approximately one half of the time series for an independent evaluation of the calibration.

      - Appropriate calibration parameters: Although the VIC model contains many parameters, it is more appropriate to adjust some of these parameters during calibration than others. Often the distinction is based on the degree to which the parameter values can actually be measured or observed. The parameters most often adjusted during calibration of the VIC model include, b_infilt, Ds, Ws, Dsmax and soil depth.

      -General guide to VIC model calibration

      - Care should always be taken to ensure that the parameters are within physically-realistic ranges. In many cases these ranges are provided by clicking on the variable name in the soil parameter file description, but they must always be tailored to the specific application area.

  9. Prepare summary graphics. - Your VIC model run is meaningless unless you can communicate the results effectively. This requires creating time series and spatial graphics summarizing the huge volumes of VIC output. Currently, GMT is the method of choice in our lab for preparing summary graphics, although some scripts are also available for use in R (the freeware version of Splus). The advantage of using R is that it is a full statistical package, so detailed data analysis can be done simultaneously.

For testing the VIC model (Version 4.0.1), a set of test data files are available at the link below:

Download sample data for VIC run in daily water balance mode (540 KB)


VIC Administrator
Last modified: Tue Nov 15 08:59:26 PST 2005