next up previous
Next: prism_get Up: Exchange of coupling and Previous: Exchange of coupling and


prism_put

prism_put (var_id, date, date_bounds, var_array, info, ierror)




Table 5.20: prism_put arguments
\begin{table}
% latex2html id marker 1687
\begin{tabularx}{16cm}[t]{\vert l\ver...
...\texttt{Integer}&
returned error code\\
\hline
\end{tabularx}\end{table}




This routine is called to send var_array content to a target component or file. The target is defined by the user in the SMIOC XML files (see section 6.5). This routine will return even if the corresponding prism_get has not been performed on the target side, both for an exchange through the Transformer and for a direct exchange (for direct exchange the content of the var_array is buffered in the PSMILe and for an exchange through the Transformer the data are buffered in the Transformer). The shape of var_array is given in table 5.21 for the different grid types.


Table 5.21: Dimensions of var_array for the various grid_type; i, j, k, npt_hor are the extent of the respective numerical dimensions (see table 5.8).
\begin{table}\begin{tabularx}{8.2cm}[t]{\vert l\vert l\vert}
\hline
\texttt{gr...
...{PRISM\_irrlonlat\_regvrt} &
(i,j,k) \\
\hline
\end{tabularx}\end{table}


This routine can be called in the component code at each timestep but the sending is actually performed only if the time $period$ covered by the date bounds (with $ period = ]date\_bounds(1), date\_bounds(2)] $ i.e. with the lower and upper date bounds being respectively excluded and included) covers a valid coupling or I/O date, given the field coupling or I/O period indicated by the user in the SMIOC XML files. The date and date_bounds arguments must be given as PRISM_Time_Struct structures (see /oasis4/lib /common_oa4/src/prism_constants.F90). The sum of the time periods covered by the date_bounds of the different prism_put calls of a run must cover exactly the whole run duration without any gap and any overlap. The meaning of the different info returned are as follows:

The meaning of the different ierror returned can be accessed using the routine prism_error (see section 5.9.3).


next up previous
Next: prism_get Up: Exchange of coupling and Previous: Exchange of coupling and
Laure Coquart 2011-12-01