Salish Sea Nowcast System

The Salish Sea Nowcast system is a software automation system that runs the Salish Sea NEMO ocean model in a daily nowcast/forecast mode. The runs use as-recent-as-available (typically previous day) forcing data for the western boundary sea surface height and the Fraser River flow, and atmospheric forcing from the four-times-daily produced forecast product from the Environment Canada High Resolution Deterministic Prediction System (HRDPS) operational GEM 2.5km resolution model.

The runs are automated using an asynchronous, distributed, message-based architecture provided by the NEMO_Nowcast framework package. SalishSeaNowcast is the Python package that uses the NEMO_Nowcast framework to implement the Salish Sea Nowcast system.

The automation system:

  • obtains the forcing datasets from web services

  • pre-processes the forcing datasets into the formats expected by NEMO

  • uploads the forcing dataset files to the HPC or cloud-computing facility where the run will be executed

  • executes the run

  • downloads the results

  • prepares a collection of plots from the run results for monitoring purposes

  • publishes the plots and the processing log to the web

Results of the model runs can be found on the Salish Sea NEMO model results site and on the project’s ERDDAP server.

The system is deployed on a server maintained by the UBC Dept. of Earth, Ocean and Atmospheric Sciences. Computing resources to run the NEMO model are provided by Ocean Networks Canada (cloud) and Westgrid (HPC).

The system consists of long-running message broker, log aggregator, and manager processes. A collection of worker processes are launched by the manager to do particular jobs and terminate when that job is finished. Please see NEMO Nowcast Framework Architecture for a description of the system architecture. The workers are implemented in Python modules in the nowcast.workers and nemo_nowcast.workers namespaces.

Process Flow

The system workflow looks like:

_images/ProcessFlow.png

Work flow of preparation for and execution of the daily runs.

The green boxes in the figure above are Salish Sea Nowcast System Workers.

License

The Salish Sea NEMO model nowcast system code and documentation are Copyright 2013-2019 by the Salish Sea MEOPAR Project Contributors and The University of British Columbia.

They are licensed under the Apache License, Version 2.0. http://www.apache.org/licenses/LICENSE-2.0 Please see the LICENSE file for details of the license.