Next:
1 ESMF Overview
Up:
ESMC_crefdoc
Previous:
ESMC_crefdoc
Contents
1 ESMF Overview
1 What is the Earth System Modeling Framework?
2 The ESMF Reference Manual for C
3 How to Contact User Support and Find Additional Information
4 How to Submit Comments, Bug Reports, and Feature Requests
5 The ESMF Application Programming Interface
5.1 Standard Methods and Interface Rules
5.2 Deep and Shallow Classes
5.3 Special Methods
5.4 The ESMF Data Hierarchy
5.5 ESMF Spatial Classes
5.6 ESMF Maps
5.7 ESMF Specification Classes
5.8 ESMF Utility Classes
6 Integrating ESMF into Applications
6.1 Using the ESMF Superstructure
6.2 Constants
7 Overall Rules and Behavior
7.1 Local and Global Views and Associated Conventions
7.2 Allocation Rules
7.3 Assignment, Equality, Copying and Comparing Objects
2 Applications
3 Superstructure
8 Overview of Superstructure
8.1 Superstructure Classes
8.2 Hierarchical Creation of Components
8.3 Sequential and Concurrent Execution of Components
8.4 Intra-Component Communication
8.5 Data Distribution and Scoping in Components
8.6 Performance
8.7 Object Model
9 Application Driver and Required ESMF Methods
9.1 Description
9.2 Required ESMF Methods
9.2.1 ESMC_Initialize - Initialize ESMF
9.2.2 ESMC_Finalize - Finalize the ESMF Framework
10 GridComp Class
10.1 Description
10.2 Class API
10.2.1 ESMC_GridCompCreate - Create a Gridded Component
10.2.2 ESMC_GridCompDestroy - Destroy a Gridded Component
10.2.3 ESMC_GridCompFinalize - Finalize a Gridded Component
10.2.4 ESMC_GridCompGetInternalState - Get the Internal State of a Gridded Component
10.2.5 ESMC_GridCompInitialize - Initialize a Gridded Component
10.2.6 ESMC_GridCompPrint - Print the contents of a GridComp
10.2.7 ESMC_GridCompRun - Run a Gridded Component
10.2.8 ESMC_GridCompSetEntryPoint - Set user routine as entry point for standard Component method
10.2.9 ESMC_GridCompSetInternalState - Set the Internal State of a Gridded Component
10.2.10 ESMC_GridCompSetServices - Call user routine to register GridComp methods
11 CplComp Class
11.1 Description
11.2 Class API
11.2.1 ESMC_CplCompCreate - Create a Coupler Component
11.2.2 ESMC_CplCompDestroy - Destroy a Coupler Component
11.2.3 ESMC_CplCompFinalize - Finalize a Coupler Component
11.2.4 ESMC_CplCompGetInternalState - Get the internal State of a Coupler Component
11.2.5 ESMC_CplCompInitialize - Initialize a Coupler Component
11.2.6 ESMC_CplCompPrint - Print a Coupler Component
11.2.7 ESMC_CplCompRun - Run a Coupler Component
11.2.8 ESMC_CplCompSetEntryPoint - Set the Entry point of a Coupler Component
11.2.9 ESMC_CplCompSetInternalState - Set the internal State of a Coupler Component
11.2.10 ESMC_CplCompSetServices - Destroy a Coupler Component
12 SciComp Class
12.1 Description
12.2 Class API
12.2.1 ESMC_SciCompCreate - Create a Science Component
12.2.2 ESMC_SciCompDestroy - Destroy a Science Component
12.2.3 ESMC_SciCompPrint - Print the contents of a SciComp
13 State Class
13.1 Description
13.2 Restrictions and Future Work
13.3 Class API
13.3.1 ESMC_StateAddArray - Add an Array object to a State
13.3.2 ESMC_StateAddField - Add a Field object to a State
13.3.3 ESMC_StateCreate - Create an Array
13.3.4 ESMC_StateDestroy - Destroy a State
13.3.5 ESMC_StateGetArray - Obtains an Array object from a State
13.3.6 ESMC_StateGetField - Obtains a Field object from a State
13.3.7 ESMC_StatePrint - Print the contents of a State
4 Infrastructure: Fields and Grids
14 Overview of Infrastructure Data Handling
14.1 Infrastructure Data Classes
14.2 Design and Implementation Notes
15 Field Class
15.1 Description
15.2 Constants
15.2.1 ESMC_REGRIDMETHOD
15.3 Use and Examples
15.3.1 Field create and destroy
15.4 Class API
15.4.1 ESMC_FieldCreateGridArraySpec - Create a Field from Grid and ArraySpec
15.4.2 ESMC_FieldCreateGridTypeKind - Create a Field from Grid and typekind
15.4.3 ESMC_FieldCreateMeshArraySpec - Create a Field from Mesh and ArraySpec
15.4.4 ESMC_FieldCreateMeshTypeKind - Create a Field from Mesh and typekind
15.4.5 ESMC_FieldDestroy - Destroy a Field
15.4.6 ESMC_FieldGetArray - Get the internal Array stored in the Field
15.4.7 ESMC_FieldGetMesh - Get the internal Mesh stored in the Field
15.4.8 ESMC_FieldGetPtr - Get the internal Fortran data pointer stored in the Field
15.4.9 ESMC_FieldPrint - Print the internal information of a Field
15.4.10 ESMC_FieldRegridGetArea - Get the area of the cells used for
15.4.11 ESMC_FieldRegridStore - Precompute a Field regridding operation and return a RouteHandle
15.4.12 ESMC_FieldRegrid - Compute a regridding operation
15.4.13 ESMC_FieldRegridRelease - Free resources used by a regridding operation
16 Array Class
16.1 Description
16.2 Class API
16.2.1 ESMC_ArrayCreate - Create an Array
16.2.2 ESMC_ArrayDestroy - Destroy an Array
16.2.3 ESMC_ArrayGetName - Get the name of an Array
16.2.4 ESMC_ArrayGetPtr - Get pointer to Array data.
16.2.5 ESMC_ArrayPrint - Print an Array
17 ArraySpec Class
17.1 Description
17.2 Class API
17.2.1 ESMC_ArraySpecGet - Get values from an ArraySpec
17.2.2 ESMC_ArraySpecSet - Set values for an ArraySpec
18 Grid Class
18.1 Description
18.1.1 Grid Representation in ESMF
18.1.2 Supported Grids
18.1.3 Grid Topologies and Periodicity
18.1.4 Grid Distribution
18.1.5 Grid Coordinates
18.1.6 Coordinate Specification and Generation
18.1.7 Staggering
18.1.8 Masking
18.2 Constants
18.2.1 ESMC_COORDSYS
18.2.2 ESMC_GRIDITEM
18.2.3 ESMC_GRIDSTATUS
18.2.4 ESMC_POLEKIND
18.2.5 ESMC_STAGGERLOC
18.3 Restrictions and Future Work
18.4 Design and Implementation Notes
18.4.1 Grid Topology
18.5 Class API: General Grid Methods
18.5.1 ESMC_GridCreateNoPeriDim - Create a Grid with no periodic dimensions
18.5.2 ESMC_GridCreate1PeriDim - Create a Grid with 1 periodic dimension
18.5.3 ESMC_GridDestroy - Destroy a Grid
18.5.4 ESMC_GridAddItem - Add items to a Grid
18.5.5 ESMC_GridGetItem - Get item from a Grid
18.5.6 ESMC_GridAddCoord - Add coordinates to a Grid
18.5.7 ESMC_GridGetCoord - Get coordinates from a Grid
18.5.8 ESMC_GridWrite - Write a Grid to a VTK file
19 Mesh Class
19.1 Description
19.1.1 Mesh Representation in ESMF
19.1.2 Supported Meshes
19.2 Constants
19.2.1 ESMC_MESHELEMTYPE
19.3 Class API
19.3.1 ESMC_MeshAddElements - Add elements to a Mesh
19.3.2 ESMC_MeshAddNodes - Add nodes to a Mesh
19.3.3 ESMC_MeshCreate - Create a Mesh as a 3 step process
19.3.4 ESMC_MeshCreateFromFile - Create a Mesh from a NetCDF grid file
19.3.5 ESMC_MeshDestroy - Destroy a Mesh
19.3.6 ESMC_MeshFreeMemory - Remove a Mesh and its memory
19.3.7 ESMC_MeshGetLocalElementCount - Get the number of elements in a Mesh on the current PET
19.3.8 ESMC_MeshGetLocalNodeCount - Get the number of nodes in a Mesh on the current PET
19.3.9 ESMC_MeshGetOwnedElementCount - Get the number of elements in a Mesh owned by the current PET
19.3.10 ESMC_MeshGetOwnedNodeCount - Get the number of nodes in a Mesh owned by the current PET
20 DistGrid Class
20.1 Description
20.2 Class API
20.2.1 ESMC_DistGridCreate - Create a DistGrid
20.2.2 ESMC_DistGridDestroy - Destroy a DistGrid
20.2.3 ESMC_DistGridPrint - Print a DistGrid
21 RouteHandle Class
21.1 Description
21.2 Use and Examples
21.3 Restrictions and Future Work
21.4 Design and Implementation Notes
21.5 Class API
21.5.1 ESMC_RouteHandlePrint - Print a RouteHandle
5 Infrastructure: Utilities
22 Overview of Infrastructure Utility Classes
23 Time Manager Utility
23.1 Time Manager Classes
23.2 Calendar
23.3 Time Instants and TimeIntervals
23.4 Clocks
24 Calendar Class
24.1 Description
24.2 Constants
24.2.1 ESMC_CALKIND
24.3 Class API
24.3.1 ESMC_CalendarCreate - Create a Calendar
24.3.2 ESMC_CalendarDestroy - Destroy a Calendar
24.3.3 ESMC_CalendarPrint - Print a Calendar
25 Time Class
25.1 Description
25.2 Class API
25.2.1 ESMC_TimeGet - Get a Time value
25.2.2 ESMC_TimePrint - Print a Time
25.2.3 ESMC_TimeSet - Initialize or set a Time
26 TimeInterval Class
26.1 Description
26.2 Class API
26.2.1 ESMC_TimeIntervalGet - Get a TimeInterval value
26.2.2 ESMC_TimeIntervalPrint - Print a TimeInterval
26.2.3 ESMC_TimeIntervalSet - Initialize or set a TimeInterval
27 Clock Class
27.1 Description
27.2 Class API
27.2.1 ESMC_ClockAdvance - Advance a Clock's current time by one time step
27.2.2 ESMC_ClockCreate - Create a Clock
27.2.3 ESMC_ClockDestroy - Destroy a Clock
27.2.4 ESMC_ClockGet - Get a Clock's properties
27.2.5 ESMC_ClockPrint - Print the contents of a Clock
28 Config Class
28.1 Description
28.1.1 Package history
28.2 Class API
28.2.1 ESMC_ConfigCreate - Create a Config object
28.2.2 ESMC_ConfigDestroy - Destroy a Config object
28.2.3 ESMC_ConfigFindLabel - Find a label
28.2.4 ESMC_ConfigGetDim - Get table sizes
28.2.5 ESMC_ConfigGetLen - Get the length of the line in words
28.2.6 ESMC_ConfigLoadFile - Load resource file into memory
28.2.7 ESMC_ConfigNextLine - Find next line
28.2.8 ESMC_ConfigValidate - Validate a Config object
29 Log Class
29.1 Description
29.2 Constants
29.2.1 ESMC_LOGKIND
29.2.2 ESMC_LOGMSG
29.3 Class API
29.3.1 ESMC_LogWrite - Write an entry into the Log file
29.3.2 ESMC_LogSet - Set Log properties
30 VM Class
30.1 Description
30.2 Class API
30.2.1 ESMC_VMGet - Get VM internals
30.2.2 ESMC_VMGetCurrent - Get current VM
30.2.3 ESMC_VMGetGlobal - Get global VM
30.2.4 ESMC_VMPrint - Print a VM
6 References
Bibliography
7 Appendices
31 Appendix A: Master List of Constants
31.1 ESMC_CALKIND
31.2 ESMC_COORDSYS
31.3 ESMC_GRIDITEM
31.4 ESMC_GRIDSTATUS
31.5 ESMC_LOGKIND
31.6 ESMC_LOGMSG
31.7 ESMC_MESHELEMTYPE
31.8 ESMC_POLEKIND
31.9 ESMC_REGION
31.10 ESMC_REGRIDMETHOD
31.11 ESMC_STAGGERLOC
31.12 ESMC_TYPEKIND
31.13 ESMC_UNMAPPEDACTION
32 Appendix B: A Brief Introduction to UML
33 Appendix C: ESMF Error Return Codes
esmf_support@list.woc.noaa.gov