Hurricane WRF (HWRF) | Code Management


Streamline the transfer of research and development to the operational HWRF system by:

  • Facilitating transfer of code between EMC, DTC, HWRF developers and HWRF users by improving the way code is shared and managed.
  • Reducing the overhead in transferring code between multiple repositories.
  • Minimizing human error in the code management process.
  • Installing safeguards to protect integrity of the code.

Overall Methods

  • The unified HWRF code repository used for development, hereafter referred to as the HWRF repository, resides at DTC. A read-only mirror of this repository is kept at the EMC subversion server to facilitate future implementations by NCO.
  • The /sorc code directory contains SVN externals (similar to symbolic links) that point to external repositories of WPS, WRF, UPP, hwrf-utilities (contains the vortex initialization), ncep-coupler, pomtc, and gfdl-vortextracker. The GSI checkout is done in a separate step. Additionally, the HWRF repository has a /build directory that contains a script for building and installing all the source code in the structure required by the system run scripts. This script calls the makefiles of the source codes of the HWRF components.
  • A HYCOM repository is also available for those working on that ocean model.
  • For all HWRF components with externals, the externals point to community code repositories for that component. They do not point to the trunk of the community code repositories, but to a permanent branch in each community code repository called branches/HWRF. Therefore, commits to the source code in the trunk of the hwrf repository actually happen to this permanent branch in the respective community repository.
  • DTC will frequently update branches/HWRF of all components (except GSI) with development happening in the general community. Updates will occur only after the proper tests have been conducted and passed.
  • EMC will update branches/HWRF of the GSI component with community development approximately once per year, only after developments have been reviewed and tested for their impact on the HWRF forecast. Bug fixes may be included more frequently.