Subsections

3 API


3.1 Generic Component: NUOPC_Driver


MODULE:

  module NUOPC_Driver


DESCRIPTION:
Component that drives and coordinates initialization of its child components: Model, Mediator, and Connector components. For every Driver time step the same run sequence, i.e. sequence of Model, Mediator, and Connector Run methods is called. The run sequence is fully customizable. The default run sequence implements explicit time stepping.


SUPER:

  ESMF_GridComp


USE DEPENDENCIES:

  use ESMF


SETSERVICES:

  subroutine SetServices(driver, rc)
    type(ESMF_GridComp)   :: driver
    integer, intent(out)  :: rc


SEMANTIC SPECIALIZATION LABELS:


3.2 Generic Component: NUOPC_ModelBase


MODULE:

  module NUOPC_ModelBase


DESCRIPTION:
Partial specialization of a component with a default explicit time dependency. Each time the Run method is called the component steps one timeStep forward on the passed in parent clock. The component flags incompatibility during Run if the current time of the incoming clock does not match the current time of the internal clock.


SUPER:

  ESMF_GridComp


USE DEPENDENCIES:

  use ESMF


SETSERVICES:

  subroutine SetServices(modelBase, rc)
    type(ESMF_GridComp)   :: modelBase
    integer, intent(out)  :: rc


SEMANTIC SPECIALIZATION LABELS:


3.3 Generic Component: NUOPC_Model


MODULE:

  module NUOPC_Model


DESCRIPTION:
Model component with a default explicit time dependency. Each time the Run method is called the model integrates one timeStep forward on the passed in parent clock. The internal clock is advanced at the end of each Run call. The component flags incompatibility during Run if the current time of the incoming clock does not match the current time of the internal clock.


SUPER:

  NUOPC_ModelBase


USE DEPENDENCIES:

  use ESMF


SETSERVICES:

  subroutine SetServices(model, rc)
    type(ESMF_GridComp)   :: model
    integer, intent(out)  :: rc


SEMANTIC SPECIALIZATION LABELS:


3.4 Generic Component: NUOPC_Mediator


MODULE:

  module NUOPC_Mediator


DESCRIPTION:
Mediator component with a default explicit time dependency. Each time the Run method is called, the time stamp on the imported Fields must match the current time (on both the incoming and internal clock). Before returning, the Mediator time stamps the exported Fields with the same current time, before advancing the internal clock one timeStep forward.


SUPER:

  NUOPC_ModelBase


USE DEPENDENCIES:

  use ESMF


SETSERVICES:

  subroutine SetServices(mediator, rc)
    type(ESMF_GridComp)   :: mediator
    integer, intent(out)  :: rc


SEMANTIC SPECIALIZATION LABELS:


3.5 Generic Component: NUOPC_Connector


MODULE:

  module NUOPC_Connector


DESCRIPTION:
Component that makes a unidirectional connection between model, mediator, and or driver components. During initialization field pairing is performed between the import and export side according to section 2.4.2, and paired fields are connected. By default the bilinear regrid method is used during Run to transfer data from the connected import Fields to the connected export Fields.


SUPER:

  ESMF_CplComp


USE DEPENDENCIES:

  use ESMF


SETSERVICES:

  subroutine SetServices(connector, rc)
    type(ESMF_CplComp)    :: connector
    integer, intent(out)  :: rc


SEMANTIC SPECIALIZATION LABELS:

3.6 General Generic Component Methods

3.7 Field Dictionary Methods

3.8 Free Format Methods

3.9 Utility Routines

3.10 Auxiliary Routines

Auxiliary routines are provided with the NUOPC Layer as a convenience to the user. Typically more work is needed on these methods before considering them NUOPC core functionality.
esmf_support@ucar.edu