2 Coupling scalar values

OASIS3-MCT does not have a distinct feature to support scalar coupling. By scalar coupling, we mean scalar variables such as date and time, logical flags, integer or real parameters, or other scalar data that might be defined identically across all MPI tasks in a component or even just on the root task or a subset of tasks. It is often desirable to communicate scalar data between components to coordinate scientific or technical features. There isn't a feature that supports this type of coupling specifically, but it is possible to do so using available interfaces. The most robust implementation is probably to setup root to root coupling of scalars between components. To do so :

This can be extended as needed to send or receive from non root processes. But you cannot send the scalar data to multiple processes as this violates the halo restriction in MCT. Users need to be aware which processes contain valid scalar data both on the source and destination side and to manage data synchronization between processes within a component outside the OASIS3-MCT layer.