Model Hub
The GreyJay Model Hub was created as a development/archiving hub created to promote, preserve, and advance hydrological modelling capability in Canada.
Hydrological processes in Canada are as varied as the landscapes they occur in and there is no one-size-fits-all model. Many good models have been developed by practitioners and academics and are being used in a wide variety of applications. The Model Hub offers a place for these models to reside,
develop and be shared – all at no charge to developers and users. If the project is on the Model Hub, the executable and supporting documentation can be downloaded right from the Model Hub servers. If the developer has designated the project as open source, users can also access the source code.
Developers have access to wide range of development and backup tools that are customized to your needs. The Model Hub offers versioning systems via Git and SVN protocol, automated backups of source and compiled code, issue tracking, secure user logins and user permission settings, and the ability to designate your code as open or closed source. Some of the projects already on the Model Hub are: Raven, hydRology, MESH, WATFLOOD, HBV-EC, and WDPM (see below).
The Model Hub is operated by the CSHS as part of the GreyJay Project, which is a non-profit that promotes hydrological sciences in Canada. The Model Hub receives support from organizations like National Research Council, Github, and Manitoba Hydro. If you like what the GreyJay Project does, please consider contributing in your time or resources to the project.
Model Hub projects
CSHS hydRology package
hydRology is an R package of functions used by Canadian hydrologists. It contains functions for statistical hydrology, basic data manipulation, visualization, spatial hydrology, and streamflow measurement analysis.
- Source code can be accessed on Github
- The package can be downloaded directly into R/Rstudio from CRAN
MESH
MESH (Modélisation Environnementale communautaire – Surface Hydrology) is the hydrology land-surface scheme (HLSS) of Environment and Climate Change Canada’s (ECCC’s) community environmental modelling system. MESH allows different surface component models to coexist within the same modelling framework so that they can easily be compared for the same experiment using exactly the same forcings, interpolation procedures, grid, time period, time step and output specifications.
- The MESH executable can be downloaded here.
Raven
Raven is a robust and flexible hydrological modelling framework, designed for application to challenging hydrological problems in academia and practice. This fully object-oriented code provides complete flexibility in spatial discretization, interpolation, process representation, and forcing function generation. Models built with Raven can be as simple as a single watershed lumped model with only a handful of state variables to a full semi-distributed system model with physically-based infiltration, snowmelt, and routing.
- Raven executable and release source code can be downloaded here.
- Raven development source code can be accessed on GitHub.
Watflood
WATFLOOD is an integrated set of computer programs to forecast flood flows or do simulations for watersheds having response times ranging from one hour to several weeks. The emphasis of the WATFLOOD system is on making optimal use of remotely sensed land cover data, digital elevation models and numerical weather data.
- WATFLOOD executable can be downloaded here.
FAQ
What is the lottery test?
The lottery test is an easy way to find out how sustainable a project is. If the lead developer of a project were to win the lottery and was never heard of again, would the project continue? Or would it be shelved?
There are many good hydrological models that have been built across Canada, but many of them don’t pass the lottery test. The GreyJay Model Hub was created to address this problem by creating a central repository where developers can safely store, access, develop and publish their models. Developers can choose where they want their project to reside and who they want to participate in development. The goal is to bring developers and users together so that good projects can pass the lottery test.
Can I get more information about the backups and versioning protocol?
The GreyJay Model Hub offers three different methods of source code control to provide maximum flexibility to developers.
- CSHS-Github
- uses the Git protocol and Github for server and hosting services
- repositories can be public or private, according to the developers wishes
- servers are located on GitHub’s network
- full suite of backup, version control, ticketing and issue tracking services
- free to use
- CSHS-SVN
- uses the SVN protocol and private server located in Waterloo
- repositories can be public or private, according to the developers wishes
- basic storage and versioning system; no ticketing or issue tracking functionality is currently offered
- free to use
- NRC-SVN CHyMs project
- uses the SVN protocol
- repositories can be public or private, according to the developers wishes
- server and services are located that the National Research Council
- full suite of backup, version control, ticketing and issue tracking services
- please contact NRC for hosting costs
How can I get my project on GreyJay?
Please contact cshs@cwra.org.
What is the login information for NRC?
go to chyms.nrc.gc.ca and log on:
What is the login information for Github?
Users can create their own account through Github. For access to the source code of private repositories, they can request access from the owner of that repository
Why can’t I access the source code to some of the projects?
Not all of the projects on CHyMS are open source. Project creators can decide if they want their code to be open to the public or a team of developers.
Does CSHS charge fees?
No, CSHS does not charge fees for users or developers on its GitHub or SVN servers. CSHS is a non-profit initiative and relies on donations. If you wish to have your model hosted and supported by NRC, please write NRC.CHyMS-PIMHyC.CNRC@nrc-cnrc.gc.ca.
Why shouldn’t I just use my personal Github account to store my project?
Often it makes sense to go this route. Using the CSHS-Github account offers a few advantages over a personal Github project. Most importantly, the project will be plugged into a whole Canadian hydrology community by having it on GreyJay. Secondly, CSHS-Github offers private repositories and user permissions, should a developer wish to have more control over their project. Lastly, by having the CSHS involved in your project, you making great progress towards passing the lottery test.
Who actually uses these projects?
Some of the end users of hydrological models on GreyJay are:
- BC Hydro
- Environment and Climate Change Canada
- International Joint Commission
- Lake of the Woods Control Board
- Manitoba Hydro
- New Brunswick
- Ontario Power Generation
- University of Waterloo