Next: Termination
Up: Sending and receiving actions
Previous: Receiving a coupling field
Auxiliary routines
- CALL prism_put_inquire(var_id, date, info)
- var_id [INTEGER; IN]: field ID (from
corresponding prism_def_var_proto)
- date [INTEGER; IN]: number of seconds in the run at the
time of the call
- info [INTEGER; OUT]: returned info code.
This routine may be called at any time to
inquire what would happen to the corresponding field (i.e. with same
var_id and at same date) below the corresponding prism_put_proto. The possible value of the returned info code are
as for prism_put_proto:
- PRISM_Sent(=4) if the field would be sent to another model
(directly or via OASIS3 main process)
- PRISM_LocTrans (=5) if the field would be only used in a time
transformation (not sent, not output)
- PRISM_ToRest (=6) if the field would be written to a restart file only
- PRISM_Output (=7) if the field would be written to an output file only
- PRISM_SentOut (=8) if the field would be both written to an output file
and sent to another model (directly or via OASIS3 main process)
- PRISM_ToRestOut (=9) if the field would be written both to a
restart file and to an output file.
- PRISM_Ok (=0) otherwise and no error occurred.
This is useful when the
calculation of the corresponding field_array is CPU consuming
and should be avoided if the field is not effectively used below the prism_put_proto.
- CALL prism_put_restart_proto(var_id, date, ierror)
- var_id [INTEGER; IN]: field ID (from
corresponding prism_def_var_proto)
- date [INTEGER; IN]: number of seconds in the run at the
time of the call
- info [INTEGER; OUT]: returned error code (should be
PRISM_ToRest=6 if the restart writing was successful)
This routine forces the writing of the field with corresponding var_id in its coupling restart file (see section
7.3). If a time operation is specified for this
field, the value of the field as calculated below the last prism_put_proto is written. If no time operation is specified, the
value of the field transferred to the last prism_put_proto is
written.
- CALL prism_get_freq (var_id, period, ierror)
- var_id [INTEGER; IN]: field ID (from
corresponding prism_def_var_proto)
- period [INTEGER; OUT]: period of coupling (in number of seconds)
- ierror [INTEGER; OUT]: returned error code
This routine can be used to retrieve the coupling period of field with
corresponding var_id, as defined in the namcouple (see
also section 5.3.1).
- CALL prism_abort_proto(compid, routine_name, abort_message)
- compid [INTEGER; IN]: component model ID (from
prism_init_comp_proto)
- routine_name; IN]: name of calling routine
- abort_message; IN]: message to be written out.
If a process needs to abort voluntarily, it should do so by
calling prism_abort_proto. This will ensure a proper
termination of all processes in the coupled model communicator. This
routine writes the name of the calling model, the name of the
calling routine, and the message to the job standard output (stdout).
This routine cannot be called before prism_init_comp_proto.
Next: Termination
Up: Sending and receiving actions
Previous: Receiving a coupling field
Laure Coquart
2013-06-11