Yue (Michael) Ying

Data assimilation in neXtSIM-DG with NEDAS

A tutorial session was offered in the neXtSIM workshop in 2025. In this tutorial, we show how DA works for neXtSIM-DG in an Observing System Simulation Experiment (OSSE):

This is a rather idealized setting, using very small ensemble size, low model resolution and short test time period. Real practice is of course more complex than this small demo. However, this tutorial is a good entry point for those who want a hands-on view of how DA works and start to dig into the details.


NEDAS: The Next-generation Ensemble Data Assimilation System

NEDAS provides a light-weight Python solution to the ensemble data assimilation (DA) problem for geophysical models. It serves as a new test environment for DA researchers. Thanks to its modular and scalable design, new DA algorithms can be rapidly tested and developed even for large-dimensional models. NEDAS offers a collection of state-of-the-art DA algorithms, including both serial and batch assimilation approaches. NEDAS offers DA researchers with new ideas to test their prototypes early-on in real-model-like environments, before committing resources to full implementation in operational systems.


Parallel programming in Python

parallel_python_tutorial is a short demonstration of how to use Python libraries to achieve parallelism and speed up a program: multiprocessing, threading, concurrent.futures, mpi4py, and dask.


Tutorial on Multiscale Data Assimilation Approaches

In NERSC "Crash Course on DA", I gave this specific tutorial on multiscale data assimilation.


2D vortex dynamic model

A two-dimensional vortex with simple vorticity dynamics, for testing multiscale data assimilation algorithms with alignment techniques: rankine.


Quasi-geostrophic system

A multiscale DA algorithms testbed written in Python, the QG model from Dr. Shafer Smith is used as the dynamical system: QG_Multiscale_DA


The PSU_WRF_EnKF data assimilation system

The Pennsylvania State University Ensemble Kalman Filter system for the Weather Research and Forecasting model (PSU_WRF_EnKF) originated from Fuqing Zhang's project code when he was a postdoc at NCAR. The project was a proof of concept for radar data assimilation for the convective-scale weather. It quickly evolved and became a reseach testbed for ensemble data assimilation methods and their application to various weather systems. It was also developed into a quasi-operational hurricane ensemble forecast system. The PennState ADAPT center currently host the PSU_WRF_EnKF system development team, and aims to further apply data assimilation and predictability techniques to many fields beyond weather prediction.

The PSU_WRF_EnKF code should be downloaded from the official Code Release Page.

I contributed to the development of the PSU_WRF_EnKF system as Fuqing's PhD student. In 2012, I rewrote the Fortran MPI parallel algorithms and increased the efficiency of the system. I also participated in the development of assimilation capability for satellite radiance data and many other types of observing systems. By the time I graduate in 2018, I wrote this Technical Note to comprehensively document the current system and describe its components.


Lorenz-96 system

A toy system for testing data assimilation algorithms using the Lorenz-96 model: L96_DA


Shallow water models

Matlab code for demonstration of the shallow-water systems: 1D model, 2D model


Supercomputer Cluster User Guide

In 2009, as I started my master degree program in Peking University, I learned how to use high performance supercomputers and worked as a part-time system administrator for a small 32-node cluster hosted in the Department of Atmospheric Science. I wrote this Cluster User Guide V2 (in Chinese) to help fellow students learn how to use the cluster system for their research. The document received more attention than I expected, it was even circulating among students and researchers outside Peking University.