Simulating Lagrangian particles in the ocean using the Transport Matrix Method
Simulating Lagrangian particles in the ocean using the Transport Matrix Method
Abstract:
Marine particles are increasingly recognized to play a fundamental role in global biogeochemical cycles. For instance, the sinking of organic matter produced by photosynthesizing phytoplankton at the surface of the ocean transport large amounts of carbon from the atmosphere into the deep ocean. Such particles also scavenge and transport trace elements, thus playing a key role in their geochemical cycling. However, most existing ocean models are Eulerian in nature (i.e., are designed to represent tracer concentrations) and are thus unsuited to simulate the fundamentally discrete and Lagrangian nature of these particles. Here we present a novel computational approach to efficiently simulate marine particles by exploiting the Transport Matrix Method (TMM), a widely used framework for simulating ocean biogeochemical tracers. The TMM encapsulates the advective-diffusive transport of tracers, including that due to (parameterized) eddies and small scale turbulence, in any ocean circulation model as a sparse matrix. By interpreting the (deterministic) values embedded in the transport matrix as probabilities governing where a particle is likely to move we can also use the TMM to simulate Lagrangian particles. We implement this idea using the PETSc (https://www.mcs.anl.gov/petsc/) numerical library, which provides both efficient parallelization and the facility to associate particles with an arbitrary number of attributes (e.g., size and composition). These attributes may optionally evolve in time through user-provided transformations (e.g., bacterial remineralization). Parallelization is performed via physical domain decomposition, with each process responsible only for particles that lie in the local domain. Migration of particles (and their attributes) across processors (MPI ranks), when they are transported by the flow from one region to another that belongs to a different sub-domain, is transparently managed by the underlying PETSc library. We illustrate the method using a variety of examples.