28
What’s New in VIC What’s New in VIC 4.0.6 4.0.6 Ted Bohn Ted Bohn Hydro Seminar Hydro Seminar October 12, 2007 October 12, 2007

What’s New in VIC 4.0.6

  • Upload
    aulii

  • View
    34

  • Download
    2

Embed Size (px)

DESCRIPTION

What’s New in VIC 4.0.6. Ted Bohn Hydro Seminar October 12, 2007. Outline. Updates since 4.0.5 New Features Bug Fixes Backwards-compatibility How To Get 4.0.6 Future Plans VIC 4.1.0/4.1.1. New Features. Flexible Output Write exactly the variables you want to see - PowerPoint PPT Presentation

Citation preview

Page 1: What’s New in VIC 4.0.6

What’s New in VIC 4.0.6What’s New in VIC 4.0.6

Ted BohnTed Bohn

Hydro SeminarHydro Seminar

October 12, 2007October 12, 2007

Page 2: What’s New in VIC 4.0.6

OutlineOutline

Updates since 4.0.5Updates since 4.0.5– New FeaturesNew Features– Bug FixesBug Fixes– Backwards-compatibilityBackwards-compatibility

How To Get 4.0.6How To Get 4.0.6

Future PlansFuture Plans– VIC 4.1.0/4.1.1VIC 4.1.0/4.1.1

Page 3: What’s New in VIC 4.0.6

New FeaturesNew Features

Flexible OutputFlexible Output– Write exactly the variables you want to seeWrite exactly the variables you want to see– Reduce disk usage & run timeReduce disk usage & run time

Output AggregationOutput Aggregation– To any multiple of model TIME_STEP, up to dailyTo any multiple of model TIME_STEP, up to daily– Reduce disk usage & run timeReduce disk usage & run time– Avoid unnecessary post-processing (by hand)Avoid unnecessary post-processing (by hand)

ALMA Input/OutputALMA Input/Output– Compliance with ALMA standard for model intercomparisonsCompliance with ALMA standard for model intercomparisons– http://www.lmd.jussieu.fr/~polcher/ALMA/http://www.lmd.jussieu.fr/~polcher/ALMA/

Output HeadersOutput Headers– Document exactly what’s in your file and how createdDocument exactly what’s in your file and how created

Important fortsunami

Page 4: What’s New in VIC 4.0.6

ALMA output

Flexible Output

Output Aggregation

Print Headers

Number of output files

Number of vars in fileFile prefix

Variable name

Multiplier (only usedfor binary output)

Variable typeFormat code

Example Global Parameter File

This variable has 3 elements,but we just specify it once

Page 5: What’s New in VIC 4.0.6

Resulting Output File

ALMA yes/no

Output Time Step

Number of Records

Variable Names

3 Elements of OUT_SOIL_MOIST

Optional Header

Date printed automatically(not printed for OUTPUT_FORCE option)

Page 6: What’s New in VIC 4.0.6

HeadersHeaders

Available for binary output filesAvailable for binary output filesAvailable for forcing files produced with the Available for forcing files produced with the OUTPUT_FORCE optionOUTPUT_FORCE optionVIC will automatically detect and skip headers in VIC will automatically detect and skip headers in forcing files (if they start with #)forcing files (if they start with #)

In global parameter file:In global parameter file:PRT_HEADERPRT_HEADER TRUETRUE– HeaderHeader

PRT_HEADERPRT_HEADER FALSE (or not mentioned)FALSE (or not mentioned)– No headerNo header

Page 7: What’s New in VIC 4.0.6

ALMA InputALMA InputVIC now accepts the following input forcing vars:VIC now accepts the following input forcing vars:– SNOWFSNOWF snowfall rate (kg/m^2s)snowfall rate (kg/m^2s)– RAINFRAINF rainfall rate (kg/m^2s)rainfall rate (kg/m^2s)– CRAINFCRAINF convective rainfall rate (kg/m^2s)convective rainfall rate (kg/m^2s)– LSRAINFLSRAINF large scale rainfall rate (kg/m^2s)large scale rainfall rate (kg/m^2s)– QAIRQAIR specific humidity (kg/kg)specific humidity (kg/kg)– WIND_EWIND_E zonal wind speed (m/s)zonal wind speed (m/s)– WIND_NWIND_N meridional wind speed (m/s)meridional wind speed (m/s)– TAIRTAIR air temperature per time step (K)air temperature per time step (K)– PSURFPSURF atmospheric pressure (Pa)atmospheric pressure (Pa)http://www.lmd.jussieu.fr/~polcher/ALMA/convention_input_3.htmlhttp://www.lmd.jussieu.fr/~polcher/ALMA/convention_input_3.html

To see complete list of available input forcing vars, see To see complete list of available input forcing vars, see vicNl_def.hvicNl_def.hVIC automatically handles these if they are listed in your VIC automatically handles these if they are listed in your global parameter fileglobal parameter file

Page 8: What’s New in VIC 4.0.6

ALMA OutputALMA Output

In global parameter file:In global parameter file:ALMA_OUTPUTALMA_OUTPUT TRUETRUE– Moisture fluxes converted from mm/timestep to mm/sMoisture fluxes converted from mm/timestep to mm/s– Temperatures converted from C to KTemperatures converted from C to K– Pressures converted from kPa to PaPressures converted from kPa to Pa– DeltaCC and DeltaH converted from W/mDeltaCC and DeltaH converted from W/m22 to J/m to J/m22

Recommend %.7e output format for ALMA moisture Recommend %.7e output format for ALMA moisture fluxesfluxesALMA_OUTPUTALMA_OUTPUT FALSE (or not mentioned at all)FALSE (or not mentioned at all)– Default behaviorDefault behavior

More info on ALMA output conventions:More info on ALMA output conventions:http://www.lmd.jussieu.fr/~polcher/ALMA/convention_output_3.htmlhttp://www.lmd.jussieu.fr/~polcher/ALMA/convention_output_3.html

Page 9: What’s New in VIC 4.0.6

List of available input forcing vars: List of available input forcing vars: vicNl_def.hvicNl_def.h

Variable NameNote: name in your global param file must match this exactly

Variable Description

Page 10: What’s New in VIC 4.0.6

List of available output vars: List of available output vars: vicNl_def.hvicNl_def.h

Instructions on how to add a new output variable to VIC will be posted on the VIC web site

Variable NameNote: name in your global param file must match this exactly

Variable Description

Page 11: What’s New in VIC 4.0.6

In the VIC source code folder:In the VIC source code folder:global.param.sampleglobal.param.sample– All available options visibleAll available options visible

““Recipes” for flexible output:Recipes” for flexible output:– output.TRADITIONAL.templateoutput.TRADITIONAL.template– output.OUTPUT_FORCE.templateoutput.OUTPUT_FORCE.template– output.PILPS-2E.ALMA.templateoutput.PILPS-2E.ALMA.template– output.OUTPUT_FORCE.ALMA.templateoutput.OUTPUT_FORCE.ALMA.template– output.LDAS_OUTPUT.templateoutput.LDAS_OUTPUT.template– output.OPTIMIZE.templateoutput.OPTIMIZE.templateYou can paste the contents of these files into your You can paste the contents of these files into your

global param fileglobal param file

Example FilesExample Files

ALMA-compliantformats

Historicalformats

VIC uses these formatsautomatically; just herefor your reference

Page 12: What’s New in VIC 4.0.6

State FilesState Files

SAVE_STATE user_def.h option is goneSAVE_STATE user_def.h option is goneNow, global param file controls reading/writing Now, global param file controls reading/writing state files:state files:– To read an initial state file:To read an initial state file:

INIT_STATEINIT_STATE init_state_filenameinit_state_filename– To save a state file:To save a state file:

STATENAMESTATENAME state_file_namestate_file_nameSTATEYEARSTATEYEAR state_yearstate_yearSTATEMONTHSTATEMONTH state_monthstate_monthSTATEDAYSTATEDAY state_daystate_day

State file is written AFTER the FINAL timestep State file is written AFTER the FINAL timestep on STATEDAYon STATEDAY

Page 13: What’s New in VIC 4.0.6

Bug FixesBug Fixes

BASEFLOW optionBASEFLOW option

Replaces BASEFLOW_NIJSSEN2001 and Replaces BASEFLOW_NIJSSEN2001 and ARNO_PARAMS optionsARNO_PARAMS options

BASEFLOW ARNO (or not mentioned)BASEFLOW ARNO (or not mentioned)– Standard baseflow parameters in the soil parameter Standard baseflow parameters in the soil parameter

filefile

BASEFLOW NIJSSEN2001BASEFLOW NIJSSEN2001– Baseflow parameters from Nijssen et al 2001Baseflow parameters from Nijssen et al 2001– (rarely needed – only for certain global and/or arctic (rarely needed – only for certain global and/or arctic

data sets)data sets)

Page 14: What’s New in VIC 4.0.6

Bug FixesBug Fixes

Aerodynamic Resistance OutputAerodynamic Resistance Output

Pre 4.0.6:Pre 4.0.6:– Value printed was the value before stability correction Value printed was the value before stability correction

appliedapplied– Aggregated by arithmetic average over veg tilesAggregated by arithmetic average over veg tiles

Now:Now:– Corrected valueCorrected value– Aggregated by 1/(arithmetic average of Aggregated by 1/(arithmetic average of

conductances)conductances)

Page 15: What’s New in VIC 4.0.6

Bug FixesBug Fixes

Baseflow formulaBaseflow formula

4.0.4, 4.0.5: typo in non-linear part of 4.0.4, 4.0.5: typo in non-linear part of formulaformula

Now: fixedNow: fixed

Very little difference in results unless your Very little difference in results unless your grid cells commonly experience near-grid cells commonly experience near-saturation in bottom soil layersaturation in bottom soil layer

Page 16: What’s New in VIC 4.0.6

Bug FixesBug Fixes

Liquid soil moisture should never be < Liquid soil moisture should never be < residual moistureresidual moisture

Occasional reports of invalid soil moistureOccasional reports of invalid soil moisture– Can’t reproduce thisCan’t reproduce this

Found & fixed some bugs in codeFound & fixed some bugs in code– No difference in results so farNo difference in results so far

Please let us know if you find soil moisture Please let us know if you find soil moisture < residual moisture< residual moisture

Page 17: What’s New in VIC 4.0.6

Bug FixesBug Fixes

For complete list of bug fixes, see For complete list of bug fixes, see README.txt in source code folderREADME.txt in source code folder

Page 18: What’s New in VIC 4.0.6

Backwards CompatibilityBackwards Compatibility

You should be able to replace 4.0.5 with 4.0.6 with You should be able to replace 4.0.5 with 4.0.6 with few or no changes to your parametersfew or no changes to your parameters

Differences:Differences:Replace ARNO_PARAMS and/or BASEFLOW Replace ARNO_PARAMS and/or BASEFLOW _NIJSSEN2001 with BASEFLOW_NIJSSEN2001 with BASEFLOWState file behavior completely controlled by State file behavior completely controlled by global param fileglobal param fileState files saved at END of STATEDAYState files saved at END of STATEDAY– To read them as initial state files in a later run, start To read them as initial state files in a later run, start

your run on the following dayyour run on the following day

Page 19: What’s New in VIC 4.0.6

Other Useful Features (not new)Other Useful Features (not new)

Command-line optionsCommand-line optionsvicNl –vvicNl –v– Which version am I running?Which version am I running?

vicNl –ovicNl –o– What are the compile-time options (from user_def.h)?What are the compile-time options (from user_def.h)?(these could be different from what’s currently in (these could be different from what’s currently in

user_def.h, if you’ve changed user_def.h but not user_def.h, if you’ve changed user_def.h but not recompiled VIC)recompiled VIC)

vicNl –hvicNl –h– List of valid command-line optionsList of valid command-line options

Page 20: What’s New in VIC 4.0.6

Other Useful Features (not new)Other Useful Features (not new)

COMPUTE_TREELINECOMPUTE_TREELINE

For use with SNOW_BANDS > 1For use with SNOW_BANDS > 1

If TRUE, VIC computes the location of the tree If TRUE, VIC computes the location of the tree line based on lapse rate and mean July air templine based on lapse rate and mean July air temp– Mean July air temp can be specified in 54Mean July air temp can be specified in 54thth column of column of

soil parameter filesoil parameter file

Any bands above the tree line will have tree veg Any bands above the tree line will have tree veg tiles replaced with grass (or veg of your choice)tiles replaced with grass (or veg of your choice)

This can prevent runaway snow packsThis can prevent runaway snow packs

Page 21: What’s New in VIC 4.0.6

Other Useful Features (not new)Other Useful Features (not new)

ARC_SOIL optionARC_SOIL option

If specified, VIC will read soil parameters If specified, VIC will read soil parameters from Arc/Info ascii-format gridsfrom Arc/Info ascii-format grids

Page 22: What’s New in VIC 4.0.6

Known BugsKnown Bugs

(To be addressed in VIC 4.1)(To be addressed in VIC 4.1)For multiple snowbands and For multiple snowbands and FULL_ENERGY/FROZEN_SOILS = FULL_ENERGY/FROZEN_SOILS = TRUE, partitioning of water and ice in soil TRUE, partitioning of water and ice in soil may be wrongmay be wrong– This combination of model modes is not This combination of model modes is not

commoncommon

Forcing disaggregation & lapsing not Forcing disaggregation & lapsing not consistent within modelconsistent within model

Page 23: What’s New in VIC 4.0.6

How to get codeHow to get code

Currently beta-testing VIC 4.0.6 – please Currently beta-testing VIC 4.0.6 – please help!help!

Latest beta version available atLatest beta version available at/usr/local/hydro/build/models/vic/VIC_4.0.6_r1/usr/local/hydro/build/models/vic/VIC_4.0.6_r1

ororftp.hydro.washington.edu/pub/vic/VIC_4.0.6_Code_beta_r1.tar.gzftp.hydro.washington.edu/pub/vic/VIC_4.0.6_Code_beta_r1.tar.gz

Page 24: What’s New in VIC 4.0.6

VIC Web Site:

•Documentation•Source code infoand downloads

Page 25: What’s New in VIC 4.0.6
Page 26: What’s New in VIC 4.0.6

Future PlansFuture Plans

Release VIC 4.0.6: November 1Release VIC 4.0.6: November 1– Will include updating of web documentationWill include updating of web documentation– Hopefully no VIC 4.0.7Hopefully no VIC 4.0.7

VIC 4.1.0/4.1.1VIC 4.1.0/4.1.1– Current beta version is 4.1.0_r4 (freeze Oct 19)Current beta version is 4.1.0_r4 (freeze Oct 19)

Flexible output, output aggregation, ALMA I/O, output headersFlexible output, output aggregation, ALMA I/O, output headersLake modelLake modelSpatial frost, spatial snowSpatial frost, spatial snowBlowing snowBlowing snowPermafrostPermafrostCONTINUE_ON_ERRORCONTINUE_ON_ERROR

– 4.1.0_r5 (freeze Nov 1)4.1.0_r5 (freeze Nov 1)Update to lake model – requires change in lake parameter file formatUpdate to lake model – requires change in lake parameter file formatKostas’s snow model?Kostas’s snow model?

– 4.1.1 (release Dec 1?)4.1.1 (release Dec 1?)Basically 4.1.0_r5 with fixes to any minor bugs found in beta testingBasically 4.1.0_r5 with fixes to any minor bugs found in beta testing

Page 27: What’s New in VIC 4.0.6

Future PlansFuture Plans

Known issues in 4.1.0/4.1.1 (probably will be Known issues in 4.1.0/4.1.1 (probably will be addressed post-4.1.1)addressed post-4.1.1)Results different from 4.0.6 - valid?Results different from 4.0.6 - valid?COMPUTE_TREELINE doesn’t functionCOMPUTE_TREELINE doesn’t functionFor multiple snowbands and For multiple snowbands and FULL_ENERGY/FROZEN_SOILS = TRUE, FULL_ENERGY/FROZEN_SOILS = TRUE, partitioning of water and ice in soil may be wrongpartitioning of water and ice in soil may be wrongForcing disaggregation & lapsing not consistent Forcing disaggregation & lapsing not consistent within modelwithin modelOthers – see VIC web pages for detailsOthers – see VIC web pages for details

Page 28: What’s New in VIC 4.0.6

Best Practices for Running on Best Practices for Running on ClusterCluster

Only write those variables you absolutely needOnly write those variables you absolutely need

Aggregate to daily (OUT_STEP 24) whenever Aggregate to daily (OUT_STEP 24) whenever possiblepossible

If you have a large domain, split it into smaller If you have a large domain, split it into smaller pieces and run each as a separate jobpieces and run each as a separate job

Write output locally (/state/partition1/……) and Write output locally (/state/partition1/……) and only copy output to /raid when job is finishedonly copy output to /raid when job is finished