You are here: Overview > Key Concepts > What's a Coupler?

What's a Coupler?


In order to efficiently represent complex systems, numerical modelling has to rely on many physical models at a time: an ocean model coupled with an atmospheric model is at the basis of climate modelling; a combustion model coupled with a radiation model allows the computation of a combustion chamber temperature. The continuity of the solution is granted only if these models can constantly exchange information.

A coupler is a software tool allowing the concurrent execution and the intercommunication of programs not having been especially designed for that. In addition to the data exchange issues, the coupler can take care of a number of services, such as intermediate computations on the exchanged data, grid to grid interpolations, parallel data redistribution. The couplings, therefore, span from simple sequential code assembling (chaining) to applications involving tens of models. Sometimes the codes must run in parallel, especially if the coupling takes place in the inner iterative processes of the computational entities.

More generally, a component coupling approach often allows to split a system into elementary computational entities that can be handled and maintained more comfortably. This approach has proved to be very effective for the design, the management and the monitoring of large complex systems as, for instance, data assimilation suites.

The main qualities of the PALM coupler are its easy set-up, its flexibility, its performances, the simple updates and evolutions of the coupled application and the many side services and functions that it offers.

Back to top