C $Header: /u/gcmpack/MITgcm/pkg/atm_ocn_coupler/accept_component_registrations.F,v 1.3 2006/06/15 23:29:17 jmc Exp $
C $Name:  $

#include "CPP_OPTIONS.h"

CStartOfInterface
      SUBROUTINE ACCEPT_COMPONENT_REGISTRATIONS
C     /==========================================================\
C     | SUBROUTINE ACCEPT_COMPONENT_REGISTRATIONS                |
C     | o Routine to coordinate registration of component other  |
C     |   component processes.                                   |
C     |==========================================================|
C     | During registration each component process sends its     |
C     | attributes. Currently attributes are the layout of tiles |
C     | that the process owns. The 'Coupler' component (i.e. this|
C     | process) stores these attributes. Subsequent transfers   |
C     | to/from the 'Coupler' process implicitly assume these    |
C     | gridding attributes. Only one set of attributes is       |
C     | allowed per process. The dimension arguments in the      |
C     | 'Coupler' process calls to the registration routine are  |
C     | used to check consistency. The tile interior extents     |
C     | registered by a component have to lie within the global  |
C     | extents set in the 'Coupler' process for that component. |
C     \==========================================================/
      IMPLICIT NONE
C     === GLobal variables ==
#include "CPLIDS.h"
#include "ATMSIZE.h"
#include "OCNSIZE.h"
#include "ATMIDS.h"
#include "OCNIDS.h"

CEndOfInterface

C     === Local variables ===

C     During registration the coupler process collects attributes from each 
C     of the "component" participants. It collects the attributes from each 
C     participating component in turn. Individual components comprise of one 
C     or more processes. Each component process does its own registration call 
C     to report its attributes. The attributes that are collected
C     include information on the grid region that a particular process "owns"
C     and sends out information from.

C     Get attributes for atmosphere component.
      CALL CPL_REGISTER_ATM

C     Get attributes for ocean component.
      CALL CPL_REGISTER_OCN


      RETURN
      END