Summary
Also known as
|
|
Model type
|
Single
|
Model part of larger framework
|
|
Note on status model
|
|
Date note status model
|
|
Technical specs
Supported platforms
|
Unix, Linux, Mac OS, Windows
|
Other platform
|
|
Programming language
|
Python
|
Other program language
|
None (but uses NumPy package)
|
Code optimized
|
Single Processor
|
Multiple processors implemented
|
|
Nr of distributed processors
|
|
Nr of shared processors
|
|
Start year development
|
2001
|
Does model development still take place?
|
Yes
|
If above answer is no, provide end year model development
|
|
Code development status
|
|
When did you indicate the 'code development status'?
|
|
Model availability
|
As code, As teaching tool
|
Source code availability (Or provide future intension)
|
Through CSDMS repository
|
Source web address
|
|
Source csdms web address
|
|
Program license type
|
Apache public license
|
Program license type other
|
|
Memory requirements
|
Standard
|
Typical run time
|
Minutes to hours
|
In/Output
Describe input parameters
|
The input variables for the Energy Balance method of estimating runoff due to snowmelt are defined as follows:
Q_SW = net shortwave radiation (W / m^2)
Q_LW = net longwave radiation (W / m^2)
T_air = air temperature (deg C)
T_surf = surface (snow) temperature (deg C)
RH = relative humidity (none) (in (0,1))
p_0 = atmospheric pressure (mbar)
u_z = wind velocity at height z (m / s)
z = reference height for wind (m)
z0_air = surface roughness height (m)
h0_snow = initial snow depth (m)
h0_swe = initial depth, snow water equivalent (m)
ρ_snow = density of the snow (kg / m^3)
c_snow = specific heat capacity of snow (J / (kg deg_C))
ρ_air = density of the air (kg / m^3)
c_air = specific heat capacity of air (J / (kg deg_C))
L_f = latent heat of fusion, water (J / kg) (334000)
L_v = latent heat of vaporization, water (J / kg) (2500000)
e_air = air vapor pressure at height z (mbar)
e_surf = vapor pressure at the surface (mbar)
g = gravitational constant = 9.81 (m / s^2)
κ = von Karman's constant = 0.41 (unitless)
The behavior of this component is controlled with a configuration (CFG) file, which may point to other files that contain input data. Here is a sample configuration (CFG) file for this component:
Method code: 2
Method name: Energy_Balance
Time step: Scalar 3600.00000000 (sec)
Cp_snow: Scalar 2090.00000000 (J/kg/K)
rho_snow: Scalar 300.00000000 (kg/m^3)
c0: Scalar 2.70000005 (mm/day/deg C)
T0: Scalar -0.20000000 (deg C)
h0_snow: Scalar 0.50000000 (m)
h0_swe: Scalar 0.15000000 (m)
Save grid timestep: Scalar 60.00000000 (sec)
Save mr grids: 0 Case5_2D-SMrate.rts (m/s)
Save hs grids: 0 Case5_2D-hsnow.rts (m)
Save sw grids: 0 Case5_2D-hswe.rts (m)
Save cc grids: 0 Case5_2D-Ecc.rts (J/m^2)
Save pixels timestep: Scalar 60.00000000 (sec)
Save mr pixels: 0 Case5_0D-SMrate.txt (m/s)
Save hs pixels: 0 Case5_0D-hsnow.txt (m)
Save sw pixels: 0 Case5_0D-hswe.txt (m)
Save cc pixels: 0 Case5_0D-Ecc.txt (J/m^2)
|
Input format
|
ASCII, Binary
|
Other input format
|
|
Describe output parameters
|
|
Output format
|
ASCII, Binary
|
Other output format
|
|
Pre-processing software needed?
|
Yes
|
Describe pre-processing software
|
Another program must be used to create the input grids. This includes a D8 flow grid derived from a DEM for the region to be modeled. The earlier, IDL version of TopoFlow can be used to create some of these.
|
Post-processing software needed?
|
Yes
|
Describe post-processing software
|
None, except visualization software. Grid sequences saved in netCDF files can be viewed as animations and saved as movies using VisIt.
|
Visualization software needed?
|
Yes
|
If above answer is yes
|
|
Other visualization software
|
VisIt
|
Process
Describe processes represented by the model
|
The Energy Balance method for modeling snowmelt.
|
Describe key physical parameters and equations
|
Equations Used by the Energy-Balance Method
M = (1000 * Q_m) / (ρ_water * L_f) = meltrate (mm / sec)
M_max = (1000 * h_snow / dt) * (ρ_water / ρ_snow) = max possible meltrate (mm / sec)
dh_snow = M * (ρ_water / ρ_snow) * dt = change in snow depth (m)
Q_m = Q_SW + Q_LW + Q_h + Q_e - Q_cc = energy flux used to melt snow (W / m^2)
Q_h = ρ_air * c_air * D_h * (T_air - T_surf) = sensible heat flux (W / m^2)
Q_e = ρ_air * L_v * D_e * (0.662 / p_0) * (e_air - e_surf) = latent heat flux (W / m^2)
D_n = κ^2 * u_z / LN((z - h_snow) / z0_air)^2 = bulk exchange coefficient (neutrally stable conditions) (m / s)
D_h = D_n / (1 + (10 * Ri)), (T_air > T_surf) = bulk exchange coefficient for heat (m / s) (stable)
= D_n * (1 - (10 * Ri)), (Tair < Tsurf) = bulk exchange coefficient for heat (m / s) (unstable)
D_e = D_h = bulk exchange coefficient for vapor (m / s)
Ri = g * z * (T_air - T_surf) / (u_z^2 (T_air + 273.15)) = Richardson's number (unitless)
Q_cc = (see note below) = cold content flux (W / m^2)
E_cc(0) = h0_snow * ρ_snow * c_snow * (T_0 - T_snow) = initial cold content (J / m^2) (T0 = 0 now)
e_air = e_sat(T_air) * RH = vapor pressure of air (mbar)
e_surf = e_sat(T_surf) = vapor pressure at surface (mbar)
e_sat = 6.11 * exp((17.3 * T) / (T + 237.3)) = saturation vapor pressure (mbar, not KPa), Brutsaert (1975)
|
Describe length scale and resolution constraints
|
Recommended grid cell size is around 100 meters, but can be parameterized to run with a wide range of grid cell sizes. DEM grid dimensions are typically less than 1000 columns by 1000 rows.
|
Describe time scale and resolution constraints
|
The basic stability condition is: dt < (dx / u_min), where dt is the timestep, dx is the grid cell size and u_min is the smallest velocity in the grid. This ensures that flow cannot cross a grid cell in less than one time step. Typical timesteps are on the order of seconds to minutes. Model can be run for a full year or longer, if necessary.
|
Describe any numerical limitations and issues
|
This model/component needs more rigorous testing.
|
Testing
Describe available calibration data sets
|
This model/component is typically not calibrated to fit data, but is run with a best guess or measured value for each input parameter.
|
Upload calibration data sets if available:
|
|
Describe available test data sets
|
Available test data sets:
- Treynor watershed, in the Nishnabotna River basin, Iowa, USA.
- (Two large rainfall events.)
- Small basin in Kentucky.
- Inclined plane for testing.
- Arctic watershed data from Larry Hinzman (UAF).
- See /data/progs/topoflow/3.0/data on CSDMS cluster.
|
Upload test data sets if available:
|
|
Describe ideal data for testing
|
Several test datasets are stored on the CSDMS cluster at: /data/progs/topoflow/3.0/data.
|
Other
Do you have current or future plans for collaborating with other researchers?
|
Collaborators include: Larry Hinzman (UAF), Bob Bolton, Anna Liljedahl (UAF), Stefan Pohl and others
|
Is there a manual available?
|
Yes
|
Upload manual if available:
|
|
Model website if any
|
This site.
|
Model forum / discussion board
|
|
Comments
|
About this component:
- This component was developed as part of the TopoFlow hydrologic model, which was originally written in IDL and had a point-and-click GUI. For more information on TopoFlow, please goto: http://csdms.colorado.edu/wiki/Model:TopoFlow.
- When used from within the CSDMS Modeling Tool (CMT), this component has "config" button which launches a graphical user interface (GUI) for changing input parameters. The GUI is a tabbed dialog with a Help button at the bottom that displays HTML help in a browser window.
- This component also has a configuration (CFG) file, with a name of the form: <case_prefix>_channels_diff_wave.cfg. This file can be edited with a text editor.
- The Numerical Python module (numpy) is used for fast, array-based processing.
- This model has an OpenMI-style interface, similar to OpenMI 2.0. Part of this interface is inherited from "CSDMS_base.py".
|
Introduction
History
Papers
Issues
Help
Input Files
Output Files
Download
Source |