Coupling Server
Communication Concept
MpCCI communication is based on a client-server concept. Thus only a small and ‘light-weighted‘ client stub has to be linked to the codes.
Each code is started individually and, if it is parallel in itself, will use its own independent and internal communication layer. The codes are then connected to the MpCCI server engine through standard network protocols.
The MpCCI server is waiting for requests from the processes of the coupled codes. If an MpCCI request is posted by the code, the MpCCI server will read the corresponding data, execute the MpCCI call and return the resulting data to its clients.
Coupling Regions
Besides the most popular coupling type – surface coupling in 3D – MpCCI also supports other types of coupling regions: volume coupling in 3D and line coupling for simulation codes computing in 2D.
The coordinate systems underlying the coupled models may differ from each other. To avoid the determination of one global coordinate system for all meshes of all codes coordinate transformations may be defined in MpCCI. MpCCI internally uses a cartesian coordinate system but input data such as node coordinates may be defined in different cartesian coordinate systems or may be given in spherical or cylindrical coordinates. In addition, MpCCI finds doubly defined nodes and transforms element types automatically if necessary.
Neighborhoods and Interpolation
To define a mapping scheme between coupled meshes three choices must be made:
1. Mapping schemes
2. Attributes of the physical quantities
3. Element types
The basic problem is to determine how the coupling regions fit together. Based on the grid information provided by the codes and their code adapters the coupling server has to determine the neighborhood relationships between the coupled meshes. Each interpolation type in MpCCI needs a special kind of relation between the geometric components of different meshes.
MpCCI distinguishes between three kinds of relations:
1. Point-element relations for standard interpolation,
2. element-elements relations for mappings based on intersection algorithms and
3. point-point relations for matching grids and nearest neighbor interpolation.
Geometric relationships are defined per coupling region. For different coupling regions different geometric relationships can be computed.
MpCCI offers various built-in interpolation schemes so that the interpolation aspects can be totally hidden from the codes if desired. The interpolation scheme depends on the settings in the MpCCI input and the element types defined in the code.
The movement of the contact surface may further complicate the coupling. The grid points of the contact surface can be coupling quantities themselves. 


|