Next:
1 Description
Up:
NUOPC_refdoc
Previous:
NUOPC_refdoc
Contents
1 Description
2 Design and Implementation Notes
2.1 Generic Components
2.1.1 Component Specialization
2.1.2 Partial Specialization
2.2 Field Dictionary
2.2.1 Field Dictionary file
2.2.2 Preloaded Field Dictionary
2.3 Metadata
2.3.1 Driver Component Metadata
2.3.2 Model Component Metadata
2.3.3 Mediator Component Metadata
2.3.4 Connector Component Metadata
2.3.5 State Metadata
2.3.6 Field Metadata
2.4 Initialization
2.4.1 Phase Maps, Semantic Specialization Labels, and Component Labels
2.4.2 Field Pairing
2.4.3 Namespaces
2.4.4 Using Coupling Sets for Coupling Multiple Nests
2.4.5 Connection Options
2.4.6 Data-Dependencies during Initialize
2.4.7 Transfer of Grid/Mesh/LocStream Objects between Components
2.4.8 Field and Grid/Mesh/LocStream Reference Sharing
2.4.9 Field Mirroring
2.5 Timekeeping
2.6 Component Hierarchies
2.7 Resource Control and Threaded Components
2.8 External NUOPC Interface
3 API
3.1 Generic Component: NUOPC_Driver
3.1.1 NUOPC_DriverAddComp - Add a GridComp child to a Driver
3.1.2 NUOPC_DriverAddComp - Add a GridComp child from shared object to a Driver
3.1.3 NUOPC_DriverAddComp - Add a CplComp child to a Driver
3.1.4 NUOPC_DriverAddRunElement - Add RunElement for Model, Mediator, or Driver
3.1.5 NUOPC_DriverAddRunElement - Add RunElement for Connector
3.1.6 NUOPC_DriverAddRunElement - Add RunElement that links to another slot
3.1.7 NUOPC_DriverEgestRunSequence - Egest the run sequence as FreeFormat
3.1.8 NUOPC_DriverGet - Get info from a Driver
3.1.9 NUOPC_DriverGetComp - Get a GridComp child from a Driver
3.1.10 NUOPC_DriverGetComp - Get a CplComp child from a Driver
3.1.11 NUOPC_DriverGetComp - Get all the GridComp child components from a Driver
3.1.12 NUOPC_DriverGetComp - Get all the CplComp child components from a Driver
3.1.13 NUOPC_DriverIngestRunSequence - Ingest the run sequence from FreeFormat
3.1.14 NUOPC_DriverIngestRunSequence - Ingest the run sequence from HConfig
3.1.15 NUOPC_DriverNewRunSequence - Replace the run sequence in a Driver
3.1.16 NUOPC_DriverPrint - Print internal Driver information
3.1.17 NUOPC_DriverSetRunSequence - Set internals of RunSequence slot
3.2 Generic Component: NUOPC_ModelBase
3.3 Generic Component: NUOPC_Model
3.3.1 NUOPC_ModelGet - Get info from a Model
3.4 Generic Component: NUOPC_Mediator
3.4.1 NUOPC_MediatorGet - Get info from a Mediator
3.5 Generic Component: NUOPC_Connector
3.5.1 NUOPC_ConnectorGet - Get parameters from a Connector
3.5.2 NUOPC_ConnectorSet - Set parameters in a Connector
3.6 General Generic Component Methods
3.6.1 NUOPC_CompAreServicesSet - Check if SetServices was called
3.6.2 NUOPC_CompAreServicesSet - Check if SetServices was called
3.6.3 NUOPC_CompAttributeAdd - Add NUOPC GridComp Attributes
3.6.4 NUOPC_CompAttributeAdd - Add NUOPC CplComp Attributes
3.6.5 NUOPC_CompAttributeEgest - Egest NUOPC GridComp Attributes in FreeFormat
3.6.6 NUOPC_CompAttributeEgest - Egest NUOPC CplComp Attributes in FreeFormat
3.6.7 NUOPC_CompAttributeGet - Get a NUOPC GridComp Attribute - string
3.6.8 NUOPC_CompAttributeGet - Get a NUOPC CplComp Attribute - string
3.6.9 NUOPC_CompAttributeGet - Get a NUOPC GridComp Attribute - integer
3.6.10 NUOPC_CompAttributeGet - Get a NUOPC CplComp Attribute - integer
3.6.11 NUOPC_CompAttributeGet - Get a NUOPC GridComp Attribute - string list
3.6.12 NUOPC_CompAttributeGet - Get a NUOPC CplComp Attribute - string list
3.6.13 NUOPC_CompAttributeGet - Get a NUOPC GridComp Attribute - integer list
3.6.14 NUOPC_CompAttributeGet - Get a NUOPC CplComp Attribute - integer list
3.6.15 NUOPC_CompAttributeIngest - Ingest free format NUOPC GridComp Attributes
3.6.16 NUOPC_CompAttributeIngest - Ingest free format NUOPC CplComp Attributes
3.6.17 NUOPC_CompAttributeIngest - Ingest NUOPC GridComp Attributes from HConfig
3.6.18 NUOPC_CompAttributeIngest - Ingest NUOPC CplComp Attributes from HConfig
3.6.19 NUOPC_CompAttributeReset - Reset NUOPC GridComp Attributes
3.6.20 NUOPC_CompAttributeReset - Reset NUOPC CplComp Attributes
3.6.21 NUOPC_CompAttributeSet - Set a NUOPC GridComp Attribute
3.6.22 NUOPC_CompAttributeSet - Set a NUOPC CplComp Attribute
3.6.23 NUOPC_CompAttributeSet - Set a NUOPC GridComp Attribute
3.6.24 NUOPC_CompAttributeSet - Set a NUOPC CplComp Attribute
3.6.25 NUOPC_CompAttributeSet - Set a NUOPC GridComp List Attribute
3.6.26 NUOPC_CompAttributeSet - Set a NUOPC CplComp List Attribute
3.6.27 NUOPC_CompCheckSetClock - Check Clock compatibility and set stopTime
3.6.28 NUOPC_CompDerive - Derive a GridComp from a generic component
3.6.29 NUOPC_CompDerive - Derive a CplComp from a generic component
3.6.30 NUOPC_CompFilterPhaseMap - Filter the Phase Map of a GridComp
3.6.31 NUOPC_CompFilterPhaseMap - Filter the Phase Map of a CplComp
3.6.32 NUOPC_CompGet - Access info from GridComp
3.6.33 NUOPC_CompGet - Access info from CplComp
3.6.34 NUOPC_CompSearchPhaseMap - Search the Phase Map of a GridComp
3.6.35 NUOPC_CompSearchPhaseMap - Search the Phase Map of a CplComp
3.6.36 NUOPC_CompSearchRevPhaseMap - Reverse Search the Phase Map of a GridComp
3.6.37 NUOPC_CompSearchRevPhaseMap - Reverse Search the Phase Map of a CplComp
3.6.38 NUOPC_CompSetClock - Initialize and set the internal Clock of a GridComp
3.6.39 NUOPC_CompSetEntryPoint - Set entry point for a GridComp (DEPRECATED!)
3.6.40 NUOPC_CompSetEntryPoint - Set entry point for a CplComp (DEPRECATED!)
3.6.41 NUOPC_CompSetInternalEntryPoint - Set internal entry point for a GridComp
3.6.42 NUOPC_CompSetServices - Try to find and call SetServices in a shared object
3.6.43 NUOPC_CompSetVM - Try to find and call SetVM in a shared object
3.6.44 NUOPC_CompSpecialize - Specialize a derived GridComp
3.6.45 NUOPC_CompSpecialize - Specialize a derived CplComp
3.7 Field Dictionary Methods
3.7.1 NUOPC_FieldDictionaryAddEntry - Add an entry to the NUOPC Field dictionary
3.7.2 NUOPC_FieldDictionaryEgest - Egest NUOPC Field dictionary into FreeFormat
3.7.3 NUOPC_FieldDictionaryGetEntry - Get information about a NUOPC Field dictionary entry
3.7.4 NUOPC_FieldDictionaryHasEntry - Check whether the NUOPC Field dictionary has a specific entry
3.7.5 NUOPC_FieldDictionaryMatchSyno - Check whether the NUOPC Field dictionary considers the standard names synonyms
3.7.6 NUOPC_FieldDictionarySetSyno - Set synonyms in the NUOPC Field dictionary
3.7.7 NUOPC_FieldDictionarySetup - Setup the default NUOPC Field dictionary
3.7.8 NUOPC_FieldDictionarySetup - Setup the NUOPC Field dictionary from YAML file
3.8 Free Format Methods
3.8.1 NUOPC_FreeFormatAdd - Add lines to a FreeFormat object
3.8.2 NUOPC_FreeFormatCreate - Create a FreeFormat object
3.8.3 NUOPC_FreeFormatCreate - Create a FreeFormat object from Config
3.8.4 NUOPC_FreeFormatDestroy - Destroy a FreeFormat object
3.8.5 NUOPC_FreeFormatGet - Get information from a FreeFormat object
3.8.6 NUOPC_FreeFormatGetLine - Get line info from a FreeFormat object
3.8.7 NUOPC_FreeFormatLog - Write a FreeFormat object to the default Log
3.8.8 NUOPC_FreeFormatPrint - Print a FreeFormat object
3.9 Utility Routines
3.9.1 NUOPC_AddNamespace - Add a nested state with Namespace to a State
3.9.2 NUOPC_AddNestedState - Add a nested state to a state with NUOPC attributes
3.9.3 NUOPC_Advertise - Advertise a single Field in a State
3.9.4 NUOPC_Advertise - Advertise a list of Fields in a State
3.9.5 NUOPC_AdjustClock - Adjust the timestep in a clock
3.9.6 NUOPC_CheckSetClock - Check a Clock for compatibility and set its values
3.9.7 NUOPC_GetAttribute - Get the value of a NUOPC Field Attribute
3.9.8 NUOPC_GetAttribute - Get the typekind of a NUOPC Field Attribute
3.9.9 NUOPC_GetAttribute - Get the value of a NUOPC State Attribute
3.9.10 NUOPC_GetStateMemberLists - Build lists of information of State members
3.9.11 NUOPC_GetStateMemberCount - Determing number of State members
3.9.12 NUOPC_GetTimestamp - Get the timestamp of a Field
3.9.13 NUOPC_IngestPetList - Ingest a petList from FreeFormat
3.9.14 NUOPC_IngestPetList - Ingest a petList from HConfig
3.9.15 NUOPC_IsAtTime - Check if a Field is at the given Time
3.9.16 NUOPC_IsAtTime - Check if Field(s) in a State are at the given Time
3.9.17 NUOPC_IsConnected - Check if a Field is connected
3.9.18 NUOPC_IsConnected - Check if Field(s) in a State are connected
3.9.19 NUOPC_IsUpdated - Check if a Field is marked as updated
3.9.20 NUOPC_IsUpdated - Check if Field(s) in a State are marked as updated
3.9.21 NUOPC_NoOp - No-Operation attachable method for GridComp
3.9.22 NUOPC_Realize - Realize previously advertised Fields inside a State on a single Grid with internal allocation
3.9.23 NUOPC_Realize - Realize previously advertised Fields inside a State on a single LocStream with internal allocation
3.9.24 NUOPC_Realize - Realize previously advertised Fields inside a State on a single Mesh with internal allocation
3.9.25 NUOPC_Realize - Realize a previously advertised Field in a State
3.9.26 NUOPC_Realize - Realize a previously advertised Field in a State after Transfer of GeomObject
3.9.27 NUOPC_SetAttribute - Set the value of a NUOPC Field Attribute
3.9.28 NUOPC_SetAttribute - Set the value of a NUOPC State Attribute
3.9.29 NUOPC_SetTimestamp - Set the TimeStamp on a Field
3.9.30 NUOPC_SetTimestamp - Set the TimeStamp on Fields in a list
3.9.31 NUOPC_SetTimestamp - Set the TimeStamp on Fields in a list from Clock
3.9.32 NUOPC_SetTimestamp - Set the TimeStamp on all the Fields in a State
3.9.33 NUOPC_SetTimestamp - Set the TimeStamp on all the Fields in a State from Clock
3.10 Auxiliary Routines
3.10.1 NUOPC_Write - Write a distributed interpolation matrix to file in SCRIP format
3.10.2 NUOPC_Write - Write a distributed factorList to file
3.10.3 NUOPC_Write - Write Field data to file
3.10.4 NUOPC_Write - Write the Fields within a State to NetCDF files
3.10.5 NUOPC_Write - Write the Fields within a FieldBundle to NetCDF files
4 Standardized Component Dependencies
4.1 Fortran components that are statically built into the executable
4.2 Fortran components that are provided as shared libraries
4.3 Components that are loaded during run-time as shared objects
4.4 Components that depend on components
4.5 Components written in C/C++
5 NUOPC Layer Compliance
5.1 The Compliance Checker
5.2 The Component Explorer
6 Appendix A: Run Sequence Implementation
7 Appendix B: Initialize Phase Definition Versions
7.1 NUOPC_Driver IPD implementation
7.2 NUOPC_ModelBase IPD implementation
7.3 NUOPC_Model IPD implementation
7.3.1 Initialize Phase Specialization - label_SetClock
7.3.2 Initialize Phase Specialization - label_DataInitialize
7.3.3 Run Phase Specialization - label_SetRunClock
7.3.4 Run Phase Specialization - label_CheckImport
7.3.5 Run Phase Specialization - label_Advance
7.3.6 Run Phase Specialization - label_TimestampExport
7.3.7 Finalize Phase Specialization - label_Finalize
7.4 NUOPC_Mediator IPD implementation
7.5 NUOPC_Connector IPD implementation
esmf_support@ucar.edu