MPDATA: a finite-difference solver for geophysical flows
Journal of Computational Physics
The C++ Programming Language, Third Edition
The C++ Programming Language, Third Edition
Hi-index | 0.00 |
The object-oriented framework is developed using C++ language and generic programming for one-dimensional river transport modelling. The set of template classes is introduced for the better software reuse and additional ability for libraries to be extended with new sub-models. The presented model is developed using the new OOP framework coupled with modern third-party linear algebra methods libraries (MTL/ITL). The classes dealing with river topology, time series and other model elements are introduced. The new approach makes it possible to split the task of a complex river network simulation into a set of simple 1D branch simulations. This minimizes the amount of code and makes program more understandable and easy to extend. The template programming preserves high computational performance of the system and this allows program to run as fast as its C/FORTRAN analogs.