https://github.com/csiro-hydroinformatics/pydaisi

Python Data Assimilation Informed model Structure Improvement (PyDAISI). Python code to run the DAISI method applied to the GR2M monthly rainfall-runoff model.

https://github.com/csiro-hydroinformatics/pydaisi

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.7%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Python Data Assimilation Informed model Structure Improvement (PyDAISI). Python code to run the DAISI method applied to the GR2M monthly rainfall-runoff model.

Basic Info
  • Host: GitHub
  • Owner: csiro-hydroinformatics
  • License: other
  • Language: Python
  • Default Branch: master
  • Size: 3.51 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Created over 2 years ago · Last pushed about 2 years ago
Metadata Files
Readme License

README.md

pydaisi

DOI CI codecov

Python Data Assimilation Informed model Structure Improvement (PyDAISI): Python code to run the PyDAISI method applied to the GR2M monthly rainfall-runoff model.

What is pydaisi?

This package implements the Data Assimilation Informed model Structure Improvement (DAISI) method described in the following paper: Lerat, J., Chiew, F., Robertson, D., Andreassian, V., Zheng, H. (2023), "Data Assimilation Informed model Structure Improvement (DAISI) for robust prediction under climate change: Application to 201 catchments in southeastern Australia", WRR, Submitted.

Installation

  • Create a suitable python environment. We recommend using miniconda combined with the environment specification provided in the env_mini.yml file in this repository.
  • Git clone this repository and run pip install .

Basic use

To access the data: ```python from pydaisi import daisi_data

Get the site meta data

sites = daisidata.getsites()

Select a site id among the 201 catchments

For example the Jamieson River at Gerrang Bridge,

(site ID 405218)

siteid = 405218 monthlydata = daisidata.get_data(siteid)

print(monthly_data)

This command shows:

Rain Evap Qobs

1970-07-01 135.9429 33.5447 186.7124

1970-08-01 253.6129 46.9463 207.2174

1970-09-01 87.7752 69.9889 119.4157

1970-10-01 51.4173 114.8741 56.1140

1970-11-01 110.2354 145.4254 27.9042

... ... ... ...

2019-02-01 34.0550 146.5809 3.1161

2019-03-01 62.1733 117.4158 2.5748

2019-04-01 27.0699 75.8672 2.8548

2019-05-01 138.3442 44.7638 8.6404

2019-06-01 141.6448 32.5938 43.1690

```

To run DAISI applied to the GR2M model: ```python

Run DAISI step 0 - calibration of GR2M rainfall runoff model

by default, the script calibrates the model for the

201 catchments.

python scripts/STEP0gr2mcalibration.py

The scripts can be run over a subset of sites (batch)

using the -n (number of batch) and -t (taskid=0..n-1) options

This is useful if one wants to run the script using

parallel computing. The same options are available for

all scripts mentioned below.

Run DAISI step 1 - apply Ensemble Smoother algorithym to GR2M

python scripts/STEP1dataassimilation.py

Run DAISI step 2 - fitting of update coefficients

python scripts/STEP2modelstructure_update.py

Run DAISI step 3 - Computation of diagnostic metrics

python scripts/STEP3dianosticcompute_metrics.py

Run DAISI step 3 - Distribution of performance

python scripts/STEP3dianosticplot_metrics.py ```

License

The source code and documentation of the pydaisi package is licensed under the BSD license.

Owner

  • Name: CSIRO Hydroinformatics
  • Login: csiro-hydroinformatics
  • Kind: organization

CSIRO - hydroinformatics repositories

GitHub Events

Total
Last Year