In the model time stepping loop, each process implied in the coupling sends its part of the I/O or coupling field.
Module to be used by the component model to call prism_put_proto.
This routine may be called by the model at each timestep. The sending is actually performed only if the time obtained by adding the field lag (see 4.8) to the argument date corresponds to a time at which it should be activated, given the coupling or I/O period indicated by the user in the namcouple (see section 5). A field will not be sent at all if its coupling or I/O period indicated in the namcouple is greater than the total run time.
If a local time transformation is indicated for the field by the user in the namcouple (INSTANT, AVERAGE, ACCUMUL, T_MIN or T_MAX, see section 6), it is automatically performed and the resulting field is finally sent at the coupling or I/O frequency.
For a coupling field with a positive lag (see 4.8), the OASIS3 restart file (see section 7.3) is automatically written by the last prism_put_proto call of the run, if its argument date + the field lag corresponds to a coupling or I/O period. To force the writing of the field in its coupling restart file, one can use prism_put_restart_proto (see below).
This routine can use the buffered MPI_BSend (by default) or the standard blocking send MPI_Send (if NOBSEND is specified in the namcouple -see $CHANNEL section 5.2) to send the coupling fields.