Interfacing National Water Model Physics with Abstract Software Modules
Abstract
Incremental changes and improvements to the National Water Model (NWM) code base over the years has resulted in a code base that is increasingly resource intensive to develop and maintain. In the existing operational software architecture, dependencies between different parts of the model are weakly cohesive, yet strongly coupled. Interfaces that enable consistent
cohesion and coupling between data structures and physics routines have yet to be created. Modularization addresses the difficulty of modifying existing code and writing new capabilities for the model. The software modularization project in the NWM has been steadily refactoring the code base of the NWM with the goals of increasing the modernization, modularity and extendability of the code base. The resulting software design for the NWM includes strong cohesion of physics processes being modeled, and reduced coupling of global state. This design allows for changes to model physics to be done without requiring knowledge of the entire model or software orchestration. The new design pattern resulting from modularization has strong implications and improvements for community development within the NWM. From debugging to developing new capabilities, the software architecture allows the development process to progress more rapidly by leveraging the interfaces exposed by the modules. These interfaces provide a well defined system through which new and existing software and model developers can interact with the NWM code. This greatly reduces the difficulty inherent to developing, testing, debugging, and submitting formulations for inclusion into the NWM. We will present the new software architecture and interfaces being designed for the hydrology physics within the NWM and show how they can be used to support and enhance collaborative development of the model.- Publication:
-
AGU Fall Meeting Abstracts
- Pub Date:
- December 2018
- Bibcode:
- 2018AGUFM.H41P2332J
- Keywords:
-
- 3355 Regional modeling;
- ATMOSPHERIC PROCESSESDE: 1803 Anthropogenic effects;
- HYDROLOGYDE: 1805 Computational hydrology;
- HYDROLOGYDE: 1902 Community modeling frameworks;
- INFORMATICS