VIC-2L Program Files

The following is a summary of the files and subroutines included in Dag Lohman's cleaned version of the VIC Two Layer model.

Model Main Subroutines:
Filename
Subroutine Name
Input Variables
Returned Variables
Description
vic2l.cmainParameter, Data and Output File Names NoneThis program monitors file I/O and runs model.
cmd_proc.ccmd_procCommand Line Arguments Filename StructExtracts filenames and other info from command line arguments.
aurad.cfltradsehortz, swhortz, slat, jday, tranday Short Wave RaditationComputes net shortwave radiation using sun-earth geometry, and transmissivity.
shradasp, dslop, slat, sehorz, swhorz, jday, tranday Short Wave RadiationComputes net shortwave radiation as above, but including surface characteristics.
rad_and_vpd.crad_and_vpd Atmos Data Struct, Soil Data Struct, Number of Records Array of DMY StructsCalculates daily evaporation, and radiation balance.
calc_netshort.ccalc_netshort Net Short Wave Radiation Calculates the short wave radiation.
calc_trans.ccalc_trans Delta T, Elevationtrans Computes transmissity???
long_shortwave.cin_shortwave Latitude, Day, TransmissivityIncoming Solar Radiation Computes incoming solar radiation, based on time of year, latitude, and clarity of atmosphere.
net_out_longwaveTransmissivity, Trans of Clear Air, Air Temp, Vapor Net Outgoing Longwave RadiationComputes outgoing longwave radiation.
twolayer_vic_roff.ctwolayer_vic_roff Soil Data Struct, PPTSoil Struct Computes runoff from grid cell.
arno_evap.carno_evap Atmos Data Struct, Soil Data Struct, Global Struct Soil StructComputes evaportation of an area as a percentage based on saturation.
canopy_evap.ccanopy_evap Atmos Data Struct, Soil Data Struct, Veg Data Struct, Global Struct Soil Struct, Veg StructComputes evaporation from canopy using penman equations.
priestley.cpriestley Air Temp, Net RadiationPotential Evaporation Computes potential evaporation using Priestley-Taylor.
penman.cpenmanNet Radiation, Vapor Pressure Deficit, Aerodynamical Resistance, Minimum Stomatal Resistance, Architectural Resistance
svp.csvpTemp svp
svp_slopeTemp svp_slope


Model Input and Output:
Filename
Subroutine Name
Input Variables
Returned Variables
Description
get_global_param.cget_global_param Global Parameter FileGlobal Struct Reads in global parameters from global input file.
read_soilparam.cread_soilparam Soil Parameter FileSoil Struct Reads soil parameters from soil input file
read_vegparam.cread_vegparam Vegitation Parameter File, Grid CellVegitation Struct Reads vegetation parameters from vegetation input file.
read_atmosdata.cread_atmosdata Atmos Data File, Snow Data FileAtmos Data Struct, Number of Records Reads atmospheric and snow data from input files.
write_vegparam.cwrite_vegparam Vegitation StructNone Writes values of vegetation parameters to stdout
write_atmosdata.cwrite_atmosdata Atmos Data Struct, Number of RecordsNone Writes atmospheric data values to stdout.
write_data.cwrite_data Array of Out Data, Outfile Struct, Number of Records NoneWrites output for all time steps in simulation.
make_infiles.cmake_infiles Soil StructInput File Pointers, Output File Pointers, Filename Struct Creates input and output filenames using current grid cell lat and lng.
make_outfiles.cmake_outfiles Input File Pointer StructOutput File Pointer Struct Creates and opens output files.
check_files.ccheck_files Filename StructFile Pointer Struct Opens soil, vegetation, and global parameter files.
open_file.copen_file Filename, FiletypeFile Pointer Checks and opens File.
close_files.cclose_files Infile Struct, Outfile StructNone Closes all files.

Data Array Controls:
Filename
Subroutine Name
Input Variables
Returned Variables
Description
make_dmy.cmake_dmyGlobal Struct Array of DMY StructCreates Day, Month, Year records for each time step.
make_veg_var.cmake_veg_var Number of Vegitation TypesArray of Vegitation Structs Creates vegetation records for each vegetation type.
make_soil_var.cmake_soil_var Number of Vegitation TypesArray of Soil Structs Creates soil records for each vegetation type.
make_out_data.cmake_out_data Number of RecordsArray of Out Data Structs Creates out data records for each time step.
put_data.cput_dataSoil Struct, Vegitation Struct, Vegitation Data Struct Output StructSums contributions from all vegetation types, and computes final grid values for output.

Initialization Routines:
Filename
Subroutine Name
Input Variables
Returned Variables
Description
initialize_soil.cinitialize_soil Soil Data Struct, Number of Vegitation Types Soil StructInitializes upper and lower soil layers using initial moisture values.
initialize_veg.cinitialize_veg Vegitation Data Struct, Global Struct Vegitation StructInitializes vegetation with dew levels half maximum.


Return to VIC Water Balance Model Contents
Hydrology Homepage / University of Washington / VIC Administrator