Next:
Contents
Contents
National Unified Operational Prediction Capability
NUOPC Layer Reference
ESMF 8.6.0
Content Standards Committee (CSC) Members
November 14, 2023
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
3
.
1
.
2
NUOPC_DriverAddComp
3
.
1
.
3
NUOPC_DriverAddComp
3
.
1
.
4
NUOPC_DriverAddRunElement
3
.
1
.
5
NUOPC_DriverAddRunElement
3
.
1
.
6
NUOPC_DriverAddRunElement
3
.
1
.
7
NUOPC_DriverEgestRunSequence
3
.
1
.
8
NUOPC_DriverGet
3
.
1
.
9
NUOPC_DriverGetComp
3
.
1
.
10
NUOPC_DriverGetComp
3
.
1
.
11
NUOPC_DriverGetComp
3
.
1
.
12
NUOPC_DriverGetComp
3
.
1
.
13
NUOPC_DriverIngestRunSequence
3
.
1
.
14
NUOPC_DriverIngestRunSequence
3
.
1
.
15
NUOPC_DriverNewRunSequence
3
.
1
.
16
NUOPC_DriverPrint
3
.
1
.
17
NUOPC_DriverSetRunSequence
3
.
2
Generic Component: NUOPC_ModelBase
3
.
3
Generic Component: NUOPC_Model
3
.
3
.
1
NUOPC_ModelGet
3
.
4
Generic Component: NUOPC_Mediator
3
.
4
.
1
NUOPC_MediatorGet
3
.
5
Generic Component: NUOPC_Connector
3
.
5
.
1
NUOPC_ConnectorGet
3
.
5
.
2
NUOPC_ConnectorSet
3
.
6
General Generic Component Methods
3
.
6
.
1
NUOPC_CompAreServicesSet
3
.
6
.
2
NUOPC_CompAreServicesSet
3
.
6
.
3
NUOPC_CompAttributeAdd
3
.
6
.
4
NUOPC_CompAttributeAdd
3
.
6
.
5
NUOPC_CompAttributeEgest
3
.
6
.
6
NUOPC_CompAttributeEgest
3
.
6
.
7
NUOPC_CompAttributeGet
3
.
6
.
8
NUOPC_CompAttributeGet
3
.
6
.
9
NUOPC_CompAttributeGet
3
.
6
.
10
NUOPC_CompAttributeGet
3
.
6
.
11
NUOPC_CompAttributeGet
3
.
6
.
12
NUOPC_CompAttributeGet
3
.
6
.
13
NUOPC_CompAttributeGet
3
.
6
.
14
NUOPC_CompAttributeGet
3
.
6
.
15
NUOPC_CompAttributeIngest
3
.
6
.
16
NUOPC_CompAttributeIngest
3
.
6
.
17
NUOPC_CompAttributeIngest
3
.
6
.
18
NUOPC_CompAttributeIngest
3
.
6
.
19
NUOPC_CompAttributeReset
3
.
6
.
20
NUOPC_CompAttributeReset
3
.
6
.
21
NUOPC_CompAttributeSet
3
.
6
.
22
NUOPC_CompAttributeSet
3
.
6
.
23
NUOPC_CompAttributeSet
3
.
6
.
24
NUOPC_CompAttributeSet
3
.
6
.
25
NUOPC_CompAttributeSet
3
.
6
.
26
NUOPC_CompAttributeSet
3
.
6
.
27
NUOPC_CompCheckSetClock
3
.
6
.
28
NUOPC_CompDerive
3
.
6
.
29
NUOPC_CompDerive
3
.
6
.
30
NUOPC_CompFilterPhaseMap
3
.
6
.
31
NUOPC_CompFilterPhaseMap
3
.
6
.
32
NUOPC_CompGet
3
.
6
.
33
NUOPC_CompGet
3
.
6
.
34
NUOPC_CompSearchPhaseMap
3
.
6
.
35
NUOPC_CompSearchPhaseMap
3
.
6
.
36
NUOPC_CompSearchRevPhaseMap
3
.
6
.
37
NUOPC_CompSearchRevPhaseMap
3
.
6
.
38
NUOPC_CompSetClock
3
.
6
.
39
NUOPC_CompSetEntryPoint
3
.
6
.
40
NUOPC_CompSetEntryPoint
3
.
6
.
41
NUOPC_CompSetInternalEntryPoint
3
.
6
.
42
NUOPC_CompSetServices
3
.
6
.
43
NUOPC_CompSetVM
3
.
6
.
44
NUOPC_CompSpecialize
3
.
6
.
45
NUOPC_CompSpecialize
3
.
7
Field Dictionary Methods
3
.
7
.
1
NUOPC_FieldDictionaryAddEntry
3
.
7
.
2
NUOPC_FieldDictionaryEgest
3
.
7
.
3
NUOPC_FieldDictionaryGetEntry
3
.
7
.
4
NUOPC_FieldDictionaryHasEntry
3
.
7
.
5
NUOPC_FieldDictionaryMatchSyno
3
.
7
.
6
NUOPC_FieldDictionarySetSyno
3
.
7
.
7
NUOPC_FieldDictionarySetup
3
.
7
.
8
NUOPC_FieldDictionarySetup
3
.
8
Free Format Methods
3
.
8
.
1
NUOPC_FreeFormatAdd
3
.
8
.
2
NUOPC_FreeFormatCreate
3
.
8
.
3
NUOPC_FreeFormatCreate
3
.
8
.
4
NUOPC_FreeFormatDestroy
3
.
8
.
5
NUOPC_FreeFormatGet
3
.
8
.
6
NUOPC_FreeFormatGetLine
3
.
8
.
7
NUOPC_FreeFormatLog
3
.
8
.
8
NUOPC_FreeFormatPrint
3
.
9
Utility Routines
3
.
9
.
1
NUOPC_AddNamespace
3
.
9
.
2
NUOPC_AddNestedState
3
.
9
.
3
NUOPC_Advertise
3
.
9
.
4
NUOPC_Advertise
3
.
9
.
5
NUOPC_AdjustClock
3
.
9
.
6
NUOPC_CheckSetClock
3
.
9
.
7
NUOPC_GetAttribute
3
.
9
.
8
NUOPC_GetAttribute
3
.
9
.
9
NUOPC_GetAttribute
3
.
9
.
10
NUOPC_GetStateMemberLists
3
.
9
.
11
NUOPC_GetStateMemberCount
3
.
9
.
12
NUOPC_GetTimestamp
3
.
9
.
13
NUOPC_IngestPetList
3
.
9
.
14
NUOPC_IngestPetList
3
.
9
.
15
NUOPC_IsAtTime
3
.
9
.
16
NUOPC_IsAtTime
3
.
9
.
17
NUOPC_IsConnected
3
.
9
.
18
NUOPC_IsConnected
3
.
9
.
19
NUOPC_IsUpdated
3
.
9
.
20
NUOPC_IsUpdated
3
.
9
.
21
NUOPC_NoOp
3
.
9
.
22
NUOPC_Realize
3
.
9
.
23
NUOPC_Realize
3
.
9
.
24
NUOPC_Realize
3
.
9
.
25
NUOPC_Realize
3
.
9
.
26
NUOPC_Realize
3
.
9
.
27
NUOPC_SetAttribute
3
.
9
.
28
NUOPC_SetAttribute
3
.
9
.
29
NUOPC_SetTimestamp
3
.
9
.
30
NUOPC_SetTimestamp
3
.
9
.
31
NUOPC_SetTimestamp
3
.
9
.
32
NUOPC_SetTimestamp
3
.
9
.
33
NUOPC_SetTimestamp
3
.
10
Auxiliary Routines
3
.
10
.
1
NUOPC_Write
3
.
10
.
2
NUOPC_Write
3
.
10
.
3
NUOPC_Write
3
.
10
.
4
NUOPC_Write
3
.
10
.
5
NUOPC_Write
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
About this document ...
esmf_support@ucar.edu