smash.Model.signatures#
- Model.signatures(sign=None, obs_comp=True, event_seg=None)[source]#
Compute continuous or/and flood event signatures of the Model.
Hint
See the User Guide and Math / Num Documentation for more.
- Parameters:
- signstr, list of str or None, default None
Define signature(s) to compute. Should be one of
‘Crc’, ‘Crchf’, ‘Crclf’, ‘Crch2r’, ‘Cfp2’, ‘Cfp10’, ‘Cfp50’, ‘Cfp90’ (continuous signatures)
‘Eff’, ‘Ebf’, ‘Erc’, ‘Erchf’, ‘Erclf’, ‘Erch2r’, ‘Elt’, ‘Epf’ (flood event signatures)
Note
If not given, all of continuous and flood event signatures will be computed.
- obs_compbool, default True
If True, compute also the signatures from observed discharge in addition to simulated discharge.
- event_segdict or None, default None
A dictionary of event segmentation options when calculating flood event signatures. The keys are
‘peak_quant’
‘max_duration’
See
smash.Model.event_segmentationfor more.Note
If not given in case flood signatures are computed, the default values will be set for these parameters.
- Returns:
- resSignResult
The signatures computation results represented as a
SignResultobject.
See also
SignResultRepresents signatures computation result.
Examples
>>> setup, mesh = smash.load_dataset("cance") >>> model = smash.Model(setup, mesh) >>> model.run(inplace=True)
Compute all observed and simulated signatures:
>>> res = model.signatures() >>> res.cont["obs"] # observed continuous signatures code Crc Crchf ... Cfp50 Cfp90 0 V3524010 0.516207 0.191349 ... 3.3225 42.631802 1 V3515010 0.509180 0.147217 ... 1.5755 10.628400 2 V3517010 0.514302 0.148364 ... 0.3235 2.776700
[3 rows x 9 columns]
>>> res.event["sim"] # simulated flood event signatures code season start ... Elt Epf 0 V3524010 autumn 2014-11-03 03:00:00 ... 3 106.190651 1 V3515010 autumn 2014-11-03 10:00:00 ... 0 21.160324 2 V3517010 autumn 2014-11-03 08:00:00 ... 1 5.613392
[3 rows x 12 columns]