Replies: 2 comments
-
|
Hey Keith - I think there's a couple of things that might be going on off the top of my head (aka I haven't investigated at all). Is there any chance you could share your initial conditions file somehow? Or even better a setup including maybe a month/year of forcing data? For completeness, here's my initial thoughts on the issues that might be cropping up:
|
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Hi Keith,
I'm not sure about the int/real problem -- perhaps try making your
nSnow/nSoil variables 'int' (eg 4byte) -- I forget how the code looks for
that.
As Andy suggested, the warning on routingRunoffFuture can be ignored, and
that variable can be deleted for a cold start. I added that variable to
the state files to enable exact restarts when someone is using basin
routing variables, but I also kept the code backward compatible, allowing
you to skip it (with the warning). The variable will be created in a state
file written by SUMMA -- leading to a state file like the following. Note
the dimensions include 'tdh'.
Cheers,
-Andy
netcdf wbout_restart_2011080900 {
dimensions:
scalarv = 1 ;
hru = 43 ;
spectral = 2 ;
midToto = 8 ;
midSoil = 3 ;
ifcToto = 9 ;
tdh = 2000 ;
gru = 43 ;
variables:
double dt_init(scalarv, hru) ;
dt_init:_FillValue = NaN ;
dt_init:long_name = "length of initial time step at start of next data
interval" ;
dt_init:units = "s" ;
double scalarCanopyIce(scalarv, hru) ;
scalarCanopyIce:_FillValue = NaN ;
scalarCanopyIce:long_name = "mass of ice on the vegetation canopy" ;
scalarCanopyIce:units = "kg m-2" ;
double scalarCanopyLiq(scalarv, hru) ;
scalarCanopyLiq:_FillValue = NaN ;
scalarCanopyLiq:long_name = "mass of liquid water on the vegetation canopy"
;
scalarCanopyLiq:units = "kg m-2" ;
double scalarCanopyWat(scalarv, hru) ;
scalarCanopyWat:_FillValue = NaN ;
scalarCanopyWat:long_name = "mass of total water on the vegetation canopy" ;
scalarCanopyWat:units = "kg m-2" ;
double scalarCanairTemp(scalarv, hru) ;
scalarCanairTemp:_FillValue = NaN ;
scalarCanairTemp:long_name = "temperature of the canopy air space" ;
scalarCanairTemp:units = "K" ;
double scalarCanopyTemp(scalarv, hru) ;
scalarCanopyTemp:_FillValue = NaN ;
scalarCanopyTemp:long_name = "temperature of the vegetation canopy" ;
scalarCanopyTemp:units = "K" ;
double spectralSnowAlbedoDiffuse(spectral, hru) ;
spectralSnowAlbedoDiffuse:_FillValue = NaN ;
spectralSnowAlbedoDiffuse:long_name = "diffuse snow albedo for individual
spectral bands" ;
spectralSnowAlbedoDiffuse:units = "-" ;
double scalarSnowAlbedo(scalarv, hru) ;
scalarSnowAlbedo:_FillValue = NaN ;
scalarSnowAlbedo:long_name = "snow albedo for the entire spectral band" ;
scalarSnowAlbedo:units = "-" ;
double scalarSnowDepth(scalarv, hru) ;
scalarSnowDepth:_FillValue = NaN ;
scalarSnowDepth:long_name = "total snow depth" ;
scalarSnowDepth:units = "m" ;
double scalarSWE(scalarv, hru) ;
scalarSWE:_FillValue = NaN ;
scalarSWE:long_name = "snow water equivalent" ;
scalarSWE:units = "kg m-2" ;
double scalarSfcMeltPond(scalarv, hru) ;
scalarSfcMeltPond:_FillValue = NaN ;
scalarSfcMeltPond:long_name = "ponded water caused by melt of the \"snow
without a layer\"" ;
scalarSfcMeltPond:units = "kg m-2" ;
double mLayerTemp(midToto, hru) ;
mLayerTemp:_FillValue = NaN ;
mLayerTemp:long_name = "temperature of each layer" ;
mLayerTemp:units = "K" ;
double mLayerVolFracIce(midToto, hru) ;
mLayerVolFracIce:_FillValue = NaN ;
mLayerVolFracIce:long_name = "volumetric fraction of ice in each layer" ;
mLayerVolFracIce:units = "-" ;
double mLayerVolFracLiq(midToto, hru) ;
mLayerVolFracLiq:_FillValue = NaN ;
mLayerVolFracLiq:long_name = "volumetric fraction of liquid water in each
layer" ;
mLayerVolFracLiq:units = "-" ;
double mLayerVolFracWat(midToto, hru) ;
mLayerVolFracWat:_FillValue = NaN ;
mLayerVolFracWat:long_name = "volumetric fraction of total water in each
layer" ;
mLayerVolFracWat:units = "-" ;
double mLayerMatricHead(midSoil, hru) ;
mLayerMatricHead:_FillValue = NaN ;
mLayerMatricHead:long_name = "matric head of water in the soil" ;
mLayerMatricHead:units = "m" ;
double scalarAquiferStorage(scalarv, hru) ;
scalarAquiferStorage:_FillValue = NaN ;
scalarAquiferStorage:long_name = "water required to bring aquifer to the
bottom of the soil profile" ;
scalarAquiferStorage:units = "m" ;
double scalarSurfaceTemp(scalarv, hru) ;
scalarSurfaceTemp:_FillValue = NaN ;
scalarSurfaceTemp:long_name = "surface temperature (just a copy of the
upper-layer temperature)" ;
scalarSurfaceTemp:units = "K" ;
double mLayerDepth(midToto, hru) ;
mLayerDepth:_FillValue = NaN ;
mLayerDepth:long_name = "depth of each layer" ;
mLayerDepth:units = "m" ;
double mLayerHeight(midToto, hru) ;
mLayerHeight:_FillValue = NaN ;
mLayerHeight:long_name = "height of the layer mid-point (top of soil = 0)" ;
mLayerHeight:units = "m" ;
double iLayerHeight(ifcToto, hru) ;
iLayerHeight:_FillValue = NaN ;
iLayerHeight:long_name = "height of the layer interface (top of soil = 0)" ;
iLayerHeight:units = "m" ;
int nSnow(hru) ;
nSnow:long_name = "number of snow layers" ;
nSnow:units = "-" ;
int nSoil(hru) ;
nSoil:long_name = "number of soil layers" ;
nSoil:units = "-" ;
double routingRunoffFuture(tdh, gru) ;
routingRunoffFuture:_FillValue = NaN ;
routingRunoffFuture:long_name = "runoff in future time steps" ;
routingRunoffFuture:units = "m s-1" ;
…On Tue, Jun 29, 2021 at 11:19 PM Andrew Bennett ***@***.***> wrote:
Hey Keith - I think there's a couple of things that might be going on off
the top of my head (aka I haven't investigated at all). Is there any chance
you could share your initial conditions file somehow? Or even better a
setup including maybe a month/year of forcing data?
For completeness, here's my initial thoughts on the issues that might be
cropping up:
- I'm not sure how the docker builds are updated, there might be
something there that's off. We also have a conda version that you can
install with conda install -c conda-forge summa that might work?
Probably not though is my guess.
- I'm wondering if the routingRunoffFuture variable should be a
function of GRU rather than HRU and maybe somehow that's throwing a weird
error
- Is routingRunoffFuture actually required? You might just be able to
omit it.
- Was this initial conditions file created as a restart file from an
earlier version? I think we tried to keep backwards compatibility, but
maybe something got overlooked?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#473 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABIKARP2YJIP3DHKWJTMHXDTVKSM7ANCNFSM47GSWETA>
.
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi All! Happy to be the first to post a question to the Summa Git page.
I'm using the docker version uwhydro/summa:master pushed on May 28th. I'm running a simple test with 9 HRUs, 1 GRU. I'm getting a runtime error that I think is associated with my initial conditions file. I've exhausted my troubleshooting ideas.
I don't know where the code is expecting an integer where there isn't already an integer. The header of my initial conditions file is:
Likely a separate issue - I don't think I'm correctly defining
routingRunoffFutureb/c it's provided in initial conditions but produces a warning that it is missing.Thanks in advance for any thoughts on how I could troubleshoot this!
-Keith
Beta Was this translation helpful? Give feedback.
All reactions