vic: model overview

Click here to load reader

Upload: ulla

Post on 10-Jan-2016

170 views

Category:

Documents


14 download

DESCRIPTION

VIC: Model Overview. Ted Bohn UW Surface Water Hydrology Seminar November 15, 2012. Outline. VIC Overview VIC Web Site How to Run VIC How to Run the Routing Model Future Development Conclusions. VIC Model Overview. What is VIC? Large-scale hydrologic model (Liang et al, 1994) - PowerPoint PPT Presentation

TRANSCRIPT

  • VIC: Model OverviewTed BohnUW Surface Water Hydrology SeminarNovember 15, 2012

  • OutlineVIC OverviewVIC Web SiteHow to Run VICHow to Run the Routing ModelFuture DevelopmentConclusions

  • VIC Model OverviewWhat is VIC?Large-scale hydrologic model (Liang et al, 1994)Simulates water & energy storages and fluxesInputs: daily or sub-daily meteorological driversPrecipitationAir temperatureWind speedetcModel time step length = daily or sub-daily

  • VIC Model OverviewVIC is intended forLarge regions (> 100,100 km2)Monthly flows and land-atmosphere fluxesCoupling with GCMs

  • VIC Model OverviewVIC Makes Some Approximations:

    Land surface = grid of large (>1km), flat, uniform cells Equations derived for small, uniform cases are applied to very large heterogeneous areasSub-grid heterogeneity is handled via statistical distributionsElevationLand coverWater can only enter a grid cell via the atmosphereNon-channel flow between grid cells is ignoredMOST runoff reaches local channel network before reaching grid cell boundaryOnce water reaches the channel network, it is assumed to stay in the channel (it cannot flow back into the soil)Grid cells are simulated independently of each otherRouting of stream flow is performed separately from the land surface simulation, using a separate model (Lohmann et al., 1996 and 1998)

  • VIC Model FeaturesValidity of these assumptions?

    1. Uniform grid cells/small-scale equationsDepends on:Linearity of the processes (does average land surface produce average results?)Statistical independence of processes (no correlations/interactions)

    2. Runoff goes to local channels/ doesnt come back/independence of grid cellsDepends on:Grid cell sizeChannel network densityRule of thumb: Grid cell size > spacing between channels (or big enough to contain typical hill or mountain)Groundwater flow must be small

  • VIC Model FeaturesMeteorological InputsVIC can accept any combination of daily or sub-daily met. variablesAt minimum, VIC requires daily Prcp, Tmin, Tmax, and Wind SpeedVIC uses MTCLIM algorithms to compute daily (and hourly) incoming shortwave radiation and daily humidityVIC uses Prata algorithm to compute daily incoming longwave algorithmVIC uses cubic spline to interpolate diurnal cycle of TFrom diurnal T, computes sub-daily values of other forcingsPrcp and Wind held constant throughout day

  • VIC Model FeaturesLand CoverTiles Each type of vegetation gets 1 tileOptional lake/wetland tileSpatial distribution ignoredEach tile is homogeneousTrees have same height, LAI, etcEach tile modeled separatelyFluxes and storages from the tiles are averaged together (weighted by area fraction) to give grid-cell average for output

  • VIC Model FeaturesEvapotranspiration (ET)From canopy storageFrom soil via transpiration OR bare soil evapIf veg present, no bare soil evapIf overstory, no understory evap6 types of Potential Evap (PET)Open waterWet soilNatural Veg with no soil moisture limitation (but other resistances intact)Natural Veg with no environmental limitationsShort reference cropTall reference crop

  • VIC Model FeaturesPenman-Monteith formulation= f(radiation, humidity, wind, surface roughness, architectural resistance, stomatal resistance)

    Architectural ResistanceShape of canopy; impedance to turbulent transport= f(LAI, canopy structure)Stomatal ResistanceStomata: pores in leaves for transport of H2O, CO2Plants actively change stomatal opening to optimize photosynthesis and retain moisture= f(radiation, temperature, humidity, soil moisture, LAI)Evap of canopy storage (dew on leaves)= Penman-Monteith with stomatal resistance set to 0Transpiration= Penman-MonteithBare soil evap= Penman-Monteith with architectural and stomatal resistance set to 0Only applied to saturated soil fraction

  • VIC Model FeaturesSoilTypically 3 soil layersInfiltration into the top-most layers controlled by variable infiltration capacity (VIC) parameterization Top-most layers can lose moisture to evapotranspiration Gravity-driven flow from upper layers to lower layersQ = f(soil moisture, Ksat)ARNO baseflow formulation for drainage from bottom layer Optional organic content in soil parameter fileOptional water table position computed via Van Genuchten curve

  • VIC Model FeaturesSoil T profile1. QUICK_FLUX approximation(QUICK_FLUX TRUE in global parameter file)Assumes exponential decay towards deep temperature with depth2. Finite element scheme(QUICK_FLUX FALSE in global parameter file)Heat diffusion equationAnywhere from 3 to 50 nodesHydro soil layer average T can be output (as of VIC 4.1.2)Optional soil freeze/thaw: FROZEN_SOIL TRUE in global parameter fileFinite element + Frozen Soil is computationally expensiveOnly recommended where soil freezing is important process

  • VIC Model FeaturesSoil T heterogeneityOption: SPATIAL_FROST (user_def.h)Linear (uniform) distribution of soil T around meanAllows some moisture movement in soil when avg T below freezing

  • VIC Model FeaturesSnow2-layer formulationPrecip, Sublimation and meltAlbedo decayEnergy balanceNeed diurnal radiation to get snowmelt rate rightSNOW_STEP in global parameter filePartial snow cover can also be considered (affects melt rate)(SPATIAL_SNOW TRUE in user_def.h)

  • VIC Model FeaturesElevation BandsSnow pack size depends non-linearly on altitude, via precipitation and temperatureIn temperate mountainous regions, with seasonally-varying snow line, using the average elevation, temperature, and precipitation over the entire grid cell gives wrong answerHow it works:Subdivide grid cell into arbitrary number of elevation bandsWithin each band, meteorologic forcings are lapsed from grid cell average elevation to band's elevation Geographic locations or configurations of elevation bands are not considered; VIC lumps all areas of same elevation range into 1 band Fluxes and storages from the bands are averaged together (weighted by area fraction) to give grid-cell average for writing to output files Specify in global parameter fileLess necessary when running VIC at high resolution (1/16 degree)

  • VIC Model FeaturesDynamic Lake/Wetland Model (Bowling, 2002, 2009)Multi-layer lake model of Hostetler et al. 2000Energy-balance modelMixing, radiation attenuation, variable ice coverDynamic lake area (taken from topography) allows seasonal inundation of adjacent wetlands1 composite lake per cellLakes can (as of VIC 4.1.2) receive input from upstream channel network:Requires running upstream cells firstOne option: run entire basin without lakes, then route flows, then simulate lake as single grid cellNote: lake parameters (bathymetry, wfrac, mindepth, etc) not available on global scale; so far calibrating case-by-case

  • VIC Model FeaturesRiver RoutingRouting of stream flow is performed separately from the land surface simulation, using a separate model, typically the routing model of Lohmann, et al. (1996; 1998) Each grid cell is represented by a node in the channel network The total runoff and baseflow from each grid cell is first convolved with a unit hydrograph representing the distribution of travel times of water from its points of origin to the channel network Then, each grid cell's input into the channel network is routed through the channel using linearized St. Venant's equations A lot of slop here: we typically dont calibrate the unit hydrograph, channel velocities, etc. Errors are small when looking at monthly flows from large basins

  • OutlineVIC OverviewVIC Web SiteHow to Run VICHow to Run the Routing ModelFuture DevelopmentConclusions

  • VIC Web Sitewww.hydro.washington.edu/Lettenmaier/Models/VIC/

  • OutlineVIC OverviewVIC Web SiteHow to Run VICHow to Run the Routing ModelFuture DevelopmentConclusions

  • How to Run VICDownload source codeCompile (via make)Prepare input filesRun VICvicNl g global_parameter_file >& log.file.txtOther Usage:To see version info:vicNl vTo see compile-time option settings:vicNl o

  • Global Parameter FileGlobal Parameter File = Master Input FileNames/locations of all other input/output filesContents/formatting of input forcing and output filesYou can make whatever output files you wantSettings of most simulation optionsStart/stop datesModel time stepWater Balance v. Full Energy modeEtcOptions and their allowed values are listed in vicNl_def.h

  • Other Parameter FilesASCII text1+ line(s) per grid cellFormats described on VIC web siteOptionally, soil parameters can be specified in Arc/INFO grid format

  • Met. Forcing FilesASCII or binaryCan be traditional units (e.g. mm) or ALMA convention (e.g. m3/sec)ALMA = standard for atmospheric modelsYou MUST describe file contents in the global parameter fileVariablesStart dateTime stepMeasurement heightUsually 1 file per grid cellOptionally a 2nd fileCan have different variables, time step, start date than first fileNew input forcing variable, CHANNEL_IN, is only used for input into a lakeCan be the routed runoff of upstream cells

  • State FilesCan be ASCII or BinaryInitial state file has same format as final state fileInitial state file can be the final state file from a previous VIC run

  • Output FilesCan be ASCII or BinaryUnits can be traditional or ALMA convention1+ file(s) per grid cellYou can either:Specify the files names and contents in the global parameter fileOr omit this information and have VIC create default output files You can either:Specify the output time step (n-hourly or daily)Or omit this and the output time step will = model time step

  • VIC Simulation Mode Settings2 types of settings:Run-timeMost options are of this typeSet in global parameter fileExamples of most available in global.param.sampleCompile-timeOnly a few optionsSet in user_def.hValues in user_def.h may be misleading, if it has been edited since the last makeTo see their current values, typevicNl oTo change these:Edit user_def.hMake cleanMake

  • vicNl_def.h Describes Most Model OptionsInput Forcing Variables/***** Forcing Variable Types *****/#define N_FORCING_TYPES 24#define AIR_TEMP 0 /* air temperature per time step [C] (ALMA_INPUT: [K]) */#define ALBEDO 1 /* surface albedo [fraction] */#define CHANNEL_IN 2 /* incoming channel flow [m3] (ALMA_INPUT: [m3/s]) */Output Forcing Variables/***** Output Variable Types *****/#define N_OUTVAR_TYPES 160// Water Balance Terms - state variables#define OUT_ASAT 0 /* Saturated Area Fraction */#define OUT_LAKE_AREA_FRAC 1 /* lake surface area as fraction of the grid cell area [fraction] */#define OUT_LAKE_DEPTH 2 /* lake depth (distance between surface and deepest point) [m] */

  • vicNl_def.h Describes Most Model OptionsSimulation Modes: options_structtypedef struct {

    // simulation modes int AboveTreelineVeg; /* Default veg type to use above treeline; Negative number indicates bare soil. */ char AERO_RESIST_CANSNOW; /* "AR_406" = multiply aerodynamic resistance} option_struct

  • Global.param.sample######################################################################## VIC Model Parameters - 4.1.x######################################################################## $Id: global.param.sample,v 5.7.2.28 2012/04/15 05:39:10 vicadmin Exp $######################################################################## Simulation Parameters#######################################################################NLAYER 3 # number of soil layersNODES 10 # number of soil thermal nodesTIME_STEP 3 # model time step in hours (set to 24 if FULL_ENERGY = FALSE, set to < 24 if FULL_ENERGY = TRUE)SNOW_STEP 3 # time step in hours for which to solve the snow model (should = TIME_STEP if TIME_STEP < 24)STARTYEAR 2000 # year model simulation startsSTARTMONTH 01 # month model simulation startsSTARTDAY 01 # day model simulation startsSTARTHOUR 00 # hour model simulation startsENDYEAR 2000 # year model simulation endsENDMONTH 12 # month model simulation endsENDDAY 31 # day model simulation endsFULL_ENERGY TRUE # TRUE = calculate full energy balance; FALSE = compute water balance onlyFROZEN_SOIL TRUE # TRUE = calculate frozen soils

    ######################################################################## Soil Temperature Parameters

    Example global parameter fileIncluded in code distributionTo make global parameter file for your project, copy this file and edit itContains most options, set to default values

  • OutlineVIC OverviewVIC Web SiteHow to Run VICHow to Run the Routing ModelFuture DevelopmentConclusions

  • How to Run the Routing ModelDownload source codeCompile (via make)Prepare input filesRun routrout input_file >& log.file.txt

  • Input FilesInput File = Master Input FileNames/locations of all other input/output filesSettings of simulation optionsStart/stop datesEtc

    Unit Hydrograph FileDistribution of overland travel times for a pulse of runoff to reach the channel (impulse response)ASCII textFormat:time(h) flow_fraction

    Station Location FileASCII textList row,column coordinates of station(s) for which you want a hydrograph

  • Input FilesFlow Direction FileASCII Arc/INFONumeric code indicates pixels flow directionFlow Fraction FileASCII Arc/INFOFraction of pixels runoff that enters channel networkUsually = fraction of pixel thats in the basin

  • Input FilesOther Optional ASCII Arc/INFO Files:(You can either specify a filename or just a single value that will be used in all pixels)Flow Velocity FileDiffusivity File

  • Input FilesRunoff FilesASCII Text (or NetCDF, in surface water monitor)ASCII: require the following formatYear Month Day (data) (data) Runoff BaseflowExtra columns at the end of the line are allowed (and ignored)VICs default output fluxes files have this formatDaily runoff and baseflow will be added together

  • Output FilesDaily, Monthly, Annual flow filesUnits depend on settings in main input file

  • OutlineVIC OverviewVIC Web SiteHow to Run VICHow to Run the Routing ModelFuture DevelopmentConclusions

  • Future DevelopmentPossible additions:NetCDF Input/OutputComplete Carbon Cycle (port from my work)Lakebottom heat flux (port from my work)Distrib water table (port from my work)Methane?More user-friendly lake modelMultiple soil types per cellReplace (veg tile, snow band) array with patches, each with own soil, veg, elevation, etc characteristicsFlow routing within VICSuggestions?

  • Large-Scale Modeling: ChallengesHow to Validate Model Results?Large-scale simulations vs. point measurementsSoil moisture extremely heterogeneousOne point is NOT representative of entire grid cellStreamflow is our friend!Aggregates the runoff of the entire basin above the gaugeHow would we do this with other hydrologic variables?Satellites can measure things visible at surfaceProblem: lateral extent (e.g. snow cover) not equal to total storage (e.g. snow depth)

  • ConclusionsGoals of large-scale models not the same as hillslope-scale modelsDifferent assumptions & approximationsLarge-scale behavior may look different from small-scaleNon-linearitiesInteractionsFine-scale variations, where important, represented by statistical distributionsValidation of large-scale models requires large-scale observations, special techniques

  • Thank YouMore information at VIC web site:

    www.hydro.washington.edu/Lettenmaier/Models/VIC/

  • Large-Scale Modeling: OverviewWhat is a model?(Idealized) Representation of some aspect of natural worldAid to understanding the real world(Usually) Simpler than the real worldCaptures most important features of the systemLess important features may be omitted or approximated

  • Large-Scale Modeling: OverviewTypes of Models:Numerical (computer)Analytical (equations)Penman-Monteith TranspirationNewtons GravityConceptual (need not be mathematical)Role modelFashion modelModel airplaneEtc

  • VIC = Large-Scale Land Surface Hydrology Model

    Captures important features of large hydrologic systemsSub-continental to global systems>100,000 km2Coarse resolution (why?)Spatial: 1/16- to 2-degree (5-200 km)Temporal: generally analyze outputs at monthly scalesInputsMeteorologySoil, vegetation, topographyOutputsWater & energy storages and fluxes (snowpack, streamflow, soil moisture, etc)

  • Large-Scale Modeling: OverviewWhy use a large-scale hydrologic model?Hydrologic impacts of large-scale climate variations/changeEl Nino, Pacific Decadal Oscillation, etcGlobal Warming(These all have signatures that vary over large spatial scales)Land surface component of global climate modelEstimating continental/global:water budgetsland-atmosphere energy fluxesAllocation of international water resourcesDrinking waterAgricultureHydropowerEnvironmental

  • Large-Scale Modeling: OverviewWhy Coarse Resolution?Computational EfficiencyLarge-scale questions dont require fine resolutionUncertainties at fine resolutionObservationsModel Equations

  • Large-Scale Modeling: OverviewPrimary Analysis Needs:Availability of water resourcesRiver dischargeSoil moistureSnow pack & Reservoir storageLarge areasHistorical and projectedSeasonal averagesInterannual variability & trends

    Generally, coarse outputs (monthly data, at 1/8-degree or larger resolution), are sufficientRoom for slop

  • Large-Scale Modeling: OverviewWhat are the largest sources of uncertainty in hydrologic modeling?

    ObservationsS = P ET RR: Moderately well-observed (at surface) at large scale (but not everywhere)P: Well-sampled only in populated affluent areasET: Very poorly sampledS (Snow, Soil Moisture, Lakes/Reservoirs): Very poorly sampledMeteorologic inputs are a substantial component of uncertainty

    Model equationsEquations from pure lab settings applied to large, heterogeneous areasUsually cant predict effective parameters of these equations a prioriMust calibrate them by comparing model outputs to observationsModel behaviors generally not sufficiently constrained by observationsErrors in S can be compensated by errors in ET

    Aggregating these over larger scales reduces errors (at the expense of precision)

  • Large-Scale Modeling: OverviewTherefore, large-scale models may use different equations from what you might expect on the hillslope scale

    **