Back to home page

MITgcm

 
 

    


Warning, /pkg/atm_ocn_coupler/NOTES is written in an unsupported language. File is not indexed.

view on githubraw file Latest commit 7f58e894 on 2006-06-15 23:29:18 UTC
7f58e89433 Jean*0001 Issues with the current coupler:
                0002 
                0003 It should have been written in C.
                0004 
                0005 It should have more "safe mode" timeout options. For example
                0006 poll for receiver ready before sending to catch deadlocks.
                0007 Poll for receive and trap too many spins waiting
                0008 for an event.
                0009 
                0010 There is only one coupler.
                0011 Coupler has no concept of being "tiled" itself. A heirarchical
                0012 structure of coupled "couplers" could be envisioned.
                0013 Only one tile set per process can be registered.
                0014 
                0015 No real support for multi-threaded codes.
                0016 
                0017 Coupler itself is pure sequential
                0018 
                0019 The coupler only supports transfer of two-dimensional fields.
                0020 
                0021 Wrong name errors are not trapped clearly.
                0022 
                0023 Consistency between components is hard to validate.
                0024 
                0025 Coupled setup consists of a coupling layer plus one or more component
                0026 models and communications API for talking between the coupling
                0027 layer and the components. 
                0028 
                0029 Coupling layer really provides two functions
                0030 
                0031 1. An limited form of associative storage into which component models can export 
                0032    data and from which component models can import data.  Data is exported
                0033    and imported using a text string to identify it. Abstraction is similar 
                0034    to that of a simple file system. There are implicit synchronisation
                0035    rules that need to be adhered to. Could be extended to allow file system
                0036    access and/or http based communication.
                0037 
                0038 2. Extrapolation and interpolation modules which are used to map
                0039    data between component models having differing grids.
                0040 
                0041  Associative Storage Function
                0042  ============================
                0043  Data is exported and imported using a text string to identify it. Abstraction 
                0044  is similar to that of a simple file system. In the current coupler 
                0045  implementation there are implicit synchronisation rules that need to be 
                0046  adhered to. A component model cannot asynchronously request data. Could be 
                0047  extended to allow file system access and/or http based communication.
                0048 
                0049  Extrapolation and interpolation
                0050  ===============================
                0051  This maps data between different representations.
                0052 
                0053 
                0054 
                0055