    

 ## On this page

  

 

 # C Interfaces for Participant Library

 Last update: 17.07.2025 

Provides C interfaces to the System Coupling participant library. [More...](#details)

## <a name="nested-classes"></a>Data Structures

struct [SyscRealAttribute](structSyscRealAttribute.xhtml) Provide a struct for a real-valued attribute. [More...](structSyscRealAttribute.xhtml#details)  
 struct [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) Provide a struct for an integer-valued attribute. [More...](structSyscIntegerAttribute.xhtml#details)  
 struct [SyscDimensionality](structSyscDimensionality.xhtml) Provide a structure for dimensionality. [More...](structSyscDimensionality.xhtml#details)  
 struct [SyscTimeStep](structSyscTimeStep.xhtml) Provide a struct for time step. [More...](structSyscTimeStep.xhtml#details)  
 struct [SyscSolutionControl](structSyscSolutionControl.xhtml) Provide a structure containing solution control. [More...](structSyscSolutionControl.xhtml#details)  
 struct [SyscError](structSyscError.xhtml) Provide a struct for detecting errors from the interface calls. [More...](structSyscError.xhtml#details)  
 struct [SyscSetupInfo](structSyscSetupInfo.xhtml) Provide a structure for System Coupling setup information. [More...](structSyscSetupInfo.xhtml#details)  
 struct [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml) Provide a structure for writing System Coupling setup files. [More...](structSyscSetupFileInfo.xhtml#details)  
 struct [SyscResultsInfo](structSyscResultsInfo.xhtml) Provide a structure for writing results files. [More...](structSyscResultsInfo.xhtml#details)  
 struct [SyscCouplingInterface](structSyscCouplingInterface.xhtml) Provide a struct for a coupling interface. [More...](structSyscCouplingInterface.xhtml#details)  
 struct [SyscDataTransfer](structSyscDataTransfer.xhtml) Provide a struct for a data transfer. [More...](structSyscDataTransfer.xhtml#details)  
 struct [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) Struct for input complex scalar data. [More...](structSyscInputComplexScalarData.xhtml#details)  
 struct [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) Struct for input complex vector data. [More...](structSyscInputComplexVectorData.xhtml#details)  
 struct [SyscInputScalarData](structSyscInputScalarData.xhtml) Provide a struct for input scalar data. [More...](structSyscInputScalarData.xhtml#details)  
 struct [SyscInputVectorData](structSyscInputVectorData.xhtml) Provide a struct for input vector data. [More...](structSyscInputVectorData.xhtml#details)  
 struct [SyscNodeData](structSyscNodeData.xhtml) Node data access struct, provides read-only access to the mesh nodes. [More...](structSyscNodeData.xhtml#details)  
 struct [SyscElementTypeData](structSyscElementTypeData.xhtml) Element types access struct, provides read-only access to the mesh element types. [More...](structSyscElementTypeData.xhtml#details)  
 struct [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) Element node count access struct, provides read-only access to the mesh element node counts. [More...](structSyscElementNodeCountData.xhtml#details)  
 struct [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) Element node connectivity access struct, provides read-only access to the element-to-node connectivity. [More...](structSyscElementNodeConnectivityData.xhtml#details)  
 struct [SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml) Describes face-to-cell connectivity. [More...](structSyscFaceCellConnectivityData.xhtml#details)  
 struct [SyscCellIdData](structSyscCellIdData.xhtml) Cell ids struct. [More...](structSyscCellIdData.xhtml#details)  
 struct [SyscElementIdData](structSyscElementIdData.xhtml) Element ids struct. [More...](structSyscElementIdData.xhtml#details)  
 struct [SyscFaceData](structSyscFaceData.xhtml) Face data struct. [More...](structSyscFaceData.xhtml#details)  
 struct [SyscCellData](structSyscCellData.xhtml) Cell data struct. [More...](structSyscCellData.xhtml#details)  
 struct [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) Struct for output complex scalar data. [More...](structSyscOutputComplexScalarData.xhtml#details)  
 struct [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) Struct for output complex vector data. [More...](structSyscOutputComplexVectorData.xhtml#details)  
 struct [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) Provide a struct for output integer data. [More...](structSyscOutputIntegerData.xhtml#details)  
 struct [SyscOutputScalarData](structSyscOutputScalarData.xhtml) Provide a struct for output scalar data. [More...](structSyscOutputScalarData.xhtml#details)  
 struct [SyscOutputVectorData](structSyscOutputVectorData.xhtml) Create an output vector data access struct. [More...](structSyscOutputVectorData.xhtml#details)  
 struct [SyscParameter](structSyscParameter.xhtml) Provide a struct for a System Coupling parameter. [More...](structSyscParameter.xhtml#details)  
 struct [SyscPointCloud](structSyscPointCloud.xhtml) Provide a point cloud access struct. [More...](structSyscPointCloud.xhtml#details)  
 struct [SyscRegion](structSyscRegion.xhtml) Provide a struct for a System Coupling region. [More...](structSyscRegion.xhtml#details)  
 struct [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) Provide a surface mesh access struct. [More...](structSyscSurfaceMesh.xhtml#details)  
 struct [SyscVariable](structSyscVariable.xhtml) Provide a struct for a System Coupling variable. [More...](structSyscVariable.xhtml#details)  
 struct [SyscVolumeMesh](structSyscVolumeMesh.xhtml) Provide a volume mesh access struct. [More...](structSyscVolumeMesh.xhtml#details)  
 ## <a name="define-members"></a>Macros

<a id="gab4cd55b5b37dd76c5755020302086b15"></a>\#define [SYSC\_STRING\_LENGTH](group__SyscParticipantLibraryCAPI.xhtml#gab4cd55b5b37dd76c5755020302086b15) 256 Define maximum string length.   
 ## <a name="typedef-members"></a>Typedefs

<a id="gaaabd83bdde051f257f11c5c0cdd73990"></a>typedef struct [SyscSolutionControl](structSyscSolutionControl.xhtml) [SyscSolutionControl](group__SyscParticipantLibraryCAPI.xhtml#gaaabd83bdde051f257f11c5c0cdd73990) Provide a structure containing solution control.   
 typedef void \* [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) typedef struct [SyscSetupInfo](structSyscSetupInfo.xhtml) [SyscSetupInfo](group__SyscParticipantLibraryCAPI.xhtml#ga80be2caaea1dd7e82a2da155c7283875) Provide a structure for System Coupling setup information. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga80be2caaea1dd7e82a2da155c7283875)  
 typedef struct [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml) [SyscSetupFileInfo](group__SyscParticipantLibraryCAPI.xhtml#ga97036eb61b15d6efd5f9602bd19bb562) Provide a structure for writing System Coupling setup files. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga97036eb61b15d6efd5f9602bd19bb562)  
 <a id="gacab0987c6f6f3da0ae499505c3f67d9e"></a>typedef struct [SyscResultsInfo](structSyscResultsInfo.xhtml) [SyscResultsInfo](group__SyscParticipantLibraryCAPI.xhtml#gacab0987c6f6f3da0ae499505c3f67d9e) Provide a structure for writing results files.   
 typedef struct [SyscCouplingInterface](structSyscCouplingInterface.xhtml) [SyscCouplingInterface](group__SyscParticipantLibraryCAPI.xhtml#ga828a191dd9fffcb117c398848b9ad10b) Provide a struct for a coupling interface. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga828a191dd9fffcb117c398848b9ad10b)  
 typedef struct [SyscDataTransfer](structSyscDataTransfer.xhtml) [SyscDataTransfer](group__SyscParticipantLibraryCAPI.xhtml#ga8e23d76b7478495ca52b0e1f719607fc) Provide a struct for a data transfer. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8e23d76b7478495ca52b0e1f719607fc)  
 <a id="gaaf3788ac706a730edbf6093c7e543681"></a>typedef [SyscInputScalarData](structSyscInputScalarData.xhtml)(\* [SyscInputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gaaf3788ac706a730edbf6093c7e543681)) (const char \*regionName, const char \*variableName) Provide function prototype for access to input scalar data.   
 <a id="gad41922f1a4f5abb891d5a913ba5fcccf"></a>typedef [SyscInputScalarData](structSyscInputScalarData.xhtml)(\* [SyscInputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gad41922f1a4f5abb891d5a913ba5fcccf)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to input scalar data with opaque pointer.   
 <a id="ga844dc6322bd6e4eabc2d3d2d9e69bdb1"></a>typedef [SyscInputScalarData](structSyscInputScalarData.xhtml)(\* [SyscInputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga844dc6322bd6e4eabc2d3d2d9e69bdb1)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName, uint16\_t zoneIndex) Provide function prototype for access to multi-zone input scalar data.   
 <a id="ga8d5f53de4e65a4bacef0f25ba8b46483"></a>typedef [SyscInputVectorData](structSyscInputVectorData.xhtml)(\* [SyscInputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga8d5f53de4e65a4bacef0f25ba8b46483)) (const char \*regionName, const char \*variableName) Provide function prototype for access to input vector data.   
 <a id="gae7c6372393f3ec720b8d6d1535fcf9b3"></a>typedef [SyscInputVectorData](structSyscInputVectorData.xhtml)(\* [SyscInputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gae7c6372393f3ec720b8d6d1535fcf9b3)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to input vector data with opaque pointer.   
 <a id="gae2e92f1b7ae911c36bf3606c60a01511"></a>typedef [SyscInputVectorData](structSyscInputVectorData.xhtml)(\* [SyscInputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gae2e92f1b7ae911c36bf3606c60a01511)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName, uint16\_t zoneIndex) Provide function prototype for access to multi-zone input vector data.   
 <a id="gabd35283796cae3d3dbc851ac66b8564f"></a>typedef [SyscOutputScalarData](structSyscOutputScalarData.xhtml)(\* [SyscOutputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gabd35283796cae3d3dbc851ac66b8564f)) (const char \*regionName, const char \*variableName) Provide function prototype for access to output scalar data.   
 <a id="gab378ed75ffd9b081ad7eccf8107a5542"></a>typedef [SyscOutputScalarData](structSyscOutputScalarData.xhtml)(\* [SyscOutputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gab378ed75ffd9b081ad7eccf8107a5542)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to output scalar data with opaque pointer.   
 <a id="ga7767f728d880014dfbd853bbb8e0eb07"></a>typedef [SyscOutputScalarData](structSyscOutputScalarData.xhtml)(\* [SyscOutputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga7767f728d880014dfbd853bbb8e0eb07)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName, uint16\_t zoneIndex) Provide function prototype for access to multi-zone output scalar data.   
 <a id="gae99c8cb78199403b9e74217557be206a"></a>typedef [SyscOutputVectorData](structSyscOutputVectorData.xhtml)(\* [SyscOutputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gae99c8cb78199403b9e74217557be206a)) (const char \*regionName, const char \*variableName) Provide function prototype for access to output vector data.   
 <a id="gab30cbe5478bf769c81f5c0a07e885afd"></a>typedef [SyscOutputVectorData](structSyscOutputVectorData.xhtml)(\* [SyscOutputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gab30cbe5478bf769c81f5c0a07e885afd)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to output vector data with opaque pointer.   
 <a id="ga1d6d5d9fa806ac5820d9a6ed85811804"></a>typedef [SyscOutputVectorData](structSyscOutputVectorData.xhtml)(\* [SyscOutputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga1d6d5d9fa806ac5820d9a6ed85811804)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName, uint16\_t zoneIndex) Provide function prototype for access to multi-zone output vector data.   
 <a id="gab388f936f3a73b9b480a792c401a95a1"></a>typedef [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml)(\* [SyscInputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gab388f936f3a73b9b480a792c401a95a1)) (const char \*regionName, const char \*variableName) Provide function prototype for access to input complex scalar data.   
 <a id="ga7a0c5889de7b17b59d44595d7636747e"></a>typedef [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml)(\* [SyscInputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga7a0c5889de7b17b59d44595d7636747e)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to input complex scalar data with opaque pointer.   
 <a id="gace54794852b48d8725b930f1aed89c4d"></a>typedef [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml)(\* [SyscInputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gace54794852b48d8725b930f1aed89c4d)) (const char \*regionName, const char \*variableName) Provide function prototype for access to input complex vector data.   
 <a id="ga68dcce877e8cc69f13bee845c76f1b4d"></a>typedef [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml)(\* [SyscInputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga68dcce877e8cc69f13bee845c76f1b4d)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to input complex vector data with opaque pointer.   
 <a id="ga17d96c2c29a44374309efafdfb8fef62"></a>typedef [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml)(\* [SyscOutputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17d96c2c29a44374309efafdfb8fef62)) (const char \*regionName, const char \*variableName) Provide function prototype for access to output complex scalar data.   
 <a id="ga71ac4910edd87d8d62e871001258c698"></a>typedef [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml)(\* [SyscOutputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga71ac4910edd87d8d62e871001258c698)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to output complex scalar data with opaque pointer.   
 <a id="ga65a0f3a119f2cec715ac89798f16a97c"></a>typedef [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml)(\* [SyscOutputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga65a0f3a119f2cec715ac89798f16a97c)) (const char \*regionName, const char \*variableName) Provide function prototype for access to output complex vector data.   
 <a id="ga18e31a00d833843895c731e69ca006b0"></a>typedef [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml)(\* [SyscOutputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga18e31a00d833843895c731e69ca006b0)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, const char \*variableName) Provide function prototype for access to output complex vector data with opaque pointer.   
 <a id="ga71e4eb102d00dd0a211f6dc2f4d24222"></a>typedef [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml)(\* [SyscSurfMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#ga71e4eb102d00dd0a211f6dc2f4d24222)) (const char \*regionName) Provide function prototype for access to surface mesh.   
 <a id="gafbfb299099d65e3f232bb67a04d1a8e9"></a>typedef [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml)(\* [SyscSurfaceMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gafbfb299099d65e3f232bb67a04d1a8e9)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName) Provide function prototype for access to surface mesh with opaque pointer.   
 <a id="ga9ffe052c4c28ff40b4a14b32cd9f227c"></a>typedef [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml)(\* [SyscSurfaceMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga9ffe052c4c28ff40b4a14b32cd9f227c)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, uint16\_t zoneIndex) Provide function prototype for access to multi-zone surface mesh.   
 <a id="gad0ff77c2af045d3294b149219123a084"></a>typedef [SyscVolumeMesh](structSyscVolumeMesh.xhtml)(\* [SyscVolumeMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#gad0ff77c2af045d3294b149219123a084)) (const char \*regionName) Provide function prototype for access to volume mesh.   
 <a id="gadcb6262e27485836632696e52cf80fb9"></a>typedef [SyscVolumeMesh](structSyscVolumeMesh.xhtml)(\* [SyscVolumeMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gadcb6262e27485836632696e52cf80fb9)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName) Provide function prototype for access to volume mesh with opaque pointer.   
 <a id="gaf381b799bec1baf9f3ab727b61458b59"></a>typedef [SyscVolumeMesh](structSyscVolumeMesh.xhtml)(\* [SyscVolumeMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gaf381b799bec1baf9f3ab727b61458b59)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, uint16\_t zoneIndex) Provide function prototype for access to multi-zone volume mesh.   
 <a id="gae999907f608779e525e34f60d2803038"></a>typedef [SyscPointCloud](structSyscPointCloud.xhtml)(\* [SyscPointCloudAccess](group__SyscParticipantLibraryCAPI.xhtml#gae999907f608779e525e34f60d2803038)) (const char \*regionName) Provide function prototype for access to point cloud.   
 <a id="gafa62fd6d86905625ae071dea4749a8df"></a>typedef [SyscPointCloud](structSyscPointCloud.xhtml)(\* [SyscPointCloudAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gafa62fd6d86905625ae071dea4749a8df)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName) Provide function prototype for access to point cloud with an opaque pointer.   
 <a id="gac4a0788f14f0d473372f07638e9dceaa"></a>typedef [SyscPointCloud](structSyscPointCloud.xhtml)(\* [SyscPointCloudMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gac4a0788f14f0d473372f07638e9dceaa)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName, uint16\_t zoneIndex) Provide function prototype for access to multi-zone point cloud.   
 <a id="gaabc0678095ad5a5efb8be4d666ce2677"></a>typedef uint16\_t(\* [SyscZoneCountAccess](group__SyscParticipantLibraryCAPI.xhtml#gaabc0678095ad5a5efb8be4d666ce2677)) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, const char \*regionName) Provide function prototype for access to zone count.   
 typedef const char \*(\* [SyscRestartPointCreation](group__SyscParticipantLibraryCAPI.xhtml#ga6d3934571a8dcc03e2ecbe724a808c1b)) () Provide function prototype for creating restart points. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga6d3934571a8dcc03e2ecbe724a808c1b)  
 <a id="ga9d97e53f3f34b91249f3002d73dc939e"></a>typedef struct [SyscParameter](structSyscParameter.xhtml) [SyscParameter](group__SyscParticipantLibraryCAPI.xhtml#ga9d97e53f3f34b91249f3002d73dc939e) Provide a struct for a System Coupling parameter.   
 typedef struct [SyscRegion](structSyscRegion.xhtml) [SyscRegion](group__SyscParticipantLibraryCAPI.xhtml#gac5687e76cd2c5d1249d8b3ac43ff29b4) Provide a struct for a System Coupling region. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac5687e76cd2c5d1249d8b3ac43ff29b4)  
 typedef struct [SyscVariable](structSyscVariable.xhtml) [SyscVariable](group__SyscParticipantLibraryCAPI.xhtml#ga7a8d294476240d2f3844a608e71efe29) Provide a struct for a System Coupling variable. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga7a8d294476240d2f3844a608e71efe29)  
 ## <a name="enum-members"></a>Enumerations

enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda) { [SyscNode](group__SyscParticipantLibraryCAPI.xhtml#ggade42aba1a68acbbf5956edcd388cdcdaae4692f269a846a3f5bec23a9e61f0b8b) = 0 , [SyscElement](group__SyscParticipantLibraryCAPI.xhtml#ggade42aba1a68acbbf5956edcd388cdcdaa0a0e08aa104422e8676637671cf2a482) = 1 } Provide an enum for variable mesh locations. [More...](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda)  
 enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d) { [SyscScalar](group__SyscParticipantLibraryCAPI.xhtml#gga007e2fd66e7263a63c114a6d12b3808dacb8fa2f95d3959accf13d5f9da32bec2) = 0 , [SyscVector](group__SyscParticipantLibraryCAPI.xhtml#gga007e2fd66e7263a63c114a6d12b3808da7b45d832dc633190003739983e661ea1) = 1 } Provide an enum for variable tensor type. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d)  
 enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a) { [SyscSurface](group__SyscParticipantLibraryCAPI.xhtml#ggabf36499a0f333dc9b856c4bcbb25385aa8247153584a945a1be42cfea251acbdb) = 2 , [SyscVolume](group__SyscParticipantLibraryCAPI.xhtml#ggabf36499a0f333dc9b856c4bcbb25385aa38f18def976473946d3405a115fbd6d0) = 3 } Provide an enum for region topologies. [More...](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a)  
 enum [SyscRegionDiscretizationType](group__SyscParticipantLibraryCAPI.xhtml#ga83942e23c7ff51ec76e4632612a34d45) { [SyscMeshRegion](group__SyscParticipantLibraryCAPI.xhtml#gga83942e23c7ff51ec76e4632612a34d45a8693102131c222ff51685d060bc8d1d3) = 0 , [SyscPointCloudRegion](group__SyscParticipantLibraryCAPI.xhtml#gga83942e23c7ff51ec76e4632612a34d45a72b4ce23e1c7d4a5981f5ffe6a1928b6) = 1 } Provide an enum for region mesh type. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga83942e23c7ff51ec76e4632612a34d45)  
 <a id="gacf32f1d9c1566f28bee2b348b2dcd9f5"></a>enum [SyscInterfaceSide](group__SyscParticipantLibraryCAPI.xhtml#gacf32f1d9c1566f28bee2b348b2dcd9f5) { **SyscInterfaceSide\_One** = 1 , **SyscInterfaceSide\_Two** = 2 } Provide enum for coupling interface side.   
 <a id="gac5a5f66ee72fd8015eab632a642cf26d"></a>enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) { **SyscD2** = 2 , **SyscD3** = 3 } Provide enum for system coupling dimension.   
 <a id="gaedf008f34febb068e44cb21292dc167f"></a>enum [SyscTimeIntegration](group__SyscParticipantLibraryCAPI.xhtml#gaedf008f34febb068e44cb21292dc167f) { **SyscImplicit** = 0 , **SyscExplicit** = 1 } Provide an enum for time integration.   
 enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12) {   
 **SyscUnspecified** = 0 , **SyscForce** = 1 , **SyscIncrementalDisplacement** = 2 , **SyscTemperature** = 3 ,   
 **SyscHeatRate** = 4 , **SyscHeatTransferCoefficient** = 5 , **SyscConvectionReferenceTemperature** = 6 , **SyscModeShape** = 7 ,   
 **SyscElectricalConductivity** = 8   
 } Provide an enum for supported quantity types. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12)  
 <a id="ga1e750bcf34a1c16aed218b03a95ee7ed"></a>enum **SyscDataType** { **SyscDataType\_Real** = 0 , **SyscDataType\_Complex** = 1 } <a id="ga10ce3774353dfbc811147a9ad211b3cd"></a>enum [SyscConvergenceStatus](group__SyscParticipantLibraryCAPI.xhtml#ga10ce3774353dfbc811147a9ad211b3cd) {   
 **SyscDiverging** = -1 , **SyscNotYetConverged** = 0 , **SyscConverged** = 1 , **SyscComplete** = 2 ,   
 **SyscNotEvaluated** = 3   
 } Provide enum for participant's solver convergence status.   
 enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5) { [SyscSteady](group__SyscParticipantLibraryCAPI.xhtml#gga7d5b3786948265c902f7231abe6d79b5ad0d53c33e61857fdfe41e2501eebc8dd) = 0 , [SyscTransient](group__SyscParticipantLibraryCAPI.xhtml#gga7d5b3786948265c902f7231abe6d79b5ac22067ff2e9230dd35621612f4ab4365) = 1 } Provide an enum for coupled analysis type. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5)  
 enum [SyscPrimitiveType](group__SyscParticipantLibraryCAPI.xhtml#gade3becc3625d881bdd988111e0895a3c) {   
 [SyscFloat](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca6ecfee4aefddc0fd0e974f4949883f0f) = 0 , [SyscDouble](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca3c8390a23ce87c17dcaffccfd72fe344) = 1 , [SyscInt32](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca21752be8ce378ed3c47cddd1210657f2) = 2 , [SyscInt64](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3cad2b2abd943a30d3ec7509f53cb5b1239) = 3 ,   
 [SyscUnsignedInt16](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3cadd05bd1ee15d3dd17e7836e2a96c4f52) = 4 , [SyscUnsignedInt64](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3caba28d71a9abf40c318a16365a2eb091c) = 5   
 } Provide an enum for supported primitive types. [More...](group__SyscParticipantLibraryCAPI.xhtml#gade3becc3625d881bdd988111e0895a3c)  
 enum [SyscElementTypes](group__SyscParticipantLibraryCAPI.xhtml#gab18060c2493ddba0678016696642f005) {   
 [SyscTri3](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a77470006c9f90e0699d34cb4529977bd) = 5 , [SyscTri6](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ad973b33a8c615a7088218bb68c95cef1) = 6 , [SyscQuad4](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ac829eb996aacda6977a2633d3d4b6ae0) = 7 , [SyscQuad8](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005aefd1fe32f0987d59a023071a8d6729a9) = 8 ,   
 [SyscTet4](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005afb767ddc846b275cc9f06f4c552ef8ea) = 9 , [SyscTet10](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a706ca034c9b7e05f8f2a87301b72a6be) = 10 , [SyscHex8](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a15bbc3ed5ebf288d89e4e9af7ce9e0ae) = 11 , [SyscHex20](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a4eaa66437832a76bdcbc92a727dfedd1) = 12 ,   
 [SyscWedge6](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a05727b1e9b0ab410f1d5f9c31337b508) = 13 , [SyscWedge15](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a53a4340e11f6e1a6b75f084f2518649a) = 14 , [SyscPyramid5](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a6389c588d45313437139bcea52d94866) = 15 , [SyscPyramid13](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a366c507804e6022a52b6f38852861b1b) = 16 ,   
 [SyscPolygon](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ac46af723ae879263d8c74a0cd91dfb9e) = 18 , [SyscPolyhedron](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005aa1667251e6eb0b96ab2b003591a8983f) = 19   
 } Provide an enum for element types. [More...](group__SyscParticipantLibraryCAPI.xhtml#gab18060c2493ddba0678016696642f005)  
 ## <a name="func-members"></a>Functions

[SyscRealAttribute](structSyscRealAttribute.xhtml) [syscGetRealAttribute](group__SyscParticipantLibraryCAPI.xhtml#ga7025ebcdef40667b4c2df0d2b087f600) (const char \*name, double value, [SyscDimensionality](structSyscDimensionality.xhtml) dimensionality) Create a real-valued attribute. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga7025ebcdef40667b4c2df0d2b087f600)  
 [SyscRealAttribute](structSyscRealAttribute.xhtml) [syscGetRealAttributeVDM](group__SyscParticipantLibraryCAPI.xhtml#ga65737d6497a88298c80afab5d62f7687) (const char \*name, double value, [SyscDimensionality](structSyscDimensionality.xhtml) dimensionality, int modifiable) Create a real-valued attribute. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga65737d6497a88298c80afab5d62f7687)  
 [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) [syscGetIntegerAttribute](group__SyscParticipantLibraryCAPI.xhtml#gaf6d02a55f607a7af07039957b21ab511) (const char \*name, long long int value) Create an integer-valued attribute. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf6d02a55f607a7af07039957b21ab511)  
 [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) [syscGetIntegerAttributeVM](group__SyscParticipantLibraryCAPI.xhtml#gac3ae9103fa3cad3c60b1f794ecb27752) (const char \*name, long long int value, int modifiable) Create an integer-valued attribute. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac3ae9103fa3cad3c60b1f794ecb27752)  
 <a id="ga22ab81fcb82b1eb1b58bac1dd3fbcf0d"></a>[SyscDimensionality](structSyscDimensionality.xhtml) [syscGetDimensionality](group__SyscParticipantLibraryCAPI.xhtml#ga22ab81fcb82b1eb1b58bac1dd3fbcf0d) () Get dimensionality.   
 <a id="ga1d656df31d1a737654883968e029eb72"></a>[SyscError](structSyscError.xhtml) [syscGetSyscError](group__SyscParticipantLibraryCAPI.xhtml#ga1d656df31d1a737654883968e029eb72) (int retcode, const char \*message) Provide a function to return [SyscError](structSyscError.xhtml "Provide a struct for detecting errors from the interface calls.") struct.   
 [SyscSetupInfo](structSyscSetupInfo.xhtml) [syscGetSetupInfo](group__SyscParticipantLibraryCAPI.xhtml#ga65a1735a49d0e0ab7f32d03f27f325a3) () Create a setup info struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga65a1735a49d0e0ab7f32d03f27f325a3)  
 [SyscSetupInfo](structSyscSetupInfo.xhtml) [syscGetSetupInfoA](group__SyscParticipantLibraryCAPI.xhtml#gae399cbc645966a48cc2928bb51018d9b) (enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5) analysisType) Create a setup info struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gae399cbc645966a48cc2928bb51018d9b)  
 [SyscSetupInfo](structSyscSetupInfo.xhtml) [syscGetSetupInfoAR](group__SyscParticipantLibraryCAPI.xhtml#ga49c86c342e0c0d2881958a7a752eb99b) (enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5) analysisType, int restartsSupported) Create a setup info struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga49c86c342e0c0d2881958a7a752eb99b)  
 [SyscSetupInfo](structSyscSetupInfo.xhtml) [syscGetSetupInfoARD](group__SyscParticipantLibraryCAPI.xhtml#gae3a34c9ed638c50c65e1d87dabe66737) (enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5) analysisType, int restartsSupported, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create a setup info struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gae3a34c9ed638c50c65e1d87dabe66737)  
 [SyscSetupInfo](structSyscSetupInfo.xhtml) [syscGetSetupInfoARDT](group__SyscParticipantLibraryCAPI.xhtml#gaf3b03ee2974bbd198008e70e15dd1d1a) (enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5) analysisType, int restartsSupported, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension, enum [SyscTimeIntegration](group__SyscParticipantLibraryCAPI.xhtml#gaedf008f34febb068e44cb21292dc167f) timeIntegration) Create a setup info struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf3b03ee2974bbd198008e70e15dd1d1a)  
 [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml) [syscGetSetupFileInfo](group__SyscParticipantLibraryCAPI.xhtml#gac80fa7c7f1ebe9a8d9ef3c4f90d274eb) (const char \*setupFileName) Provide a function to create SetupFileInfo struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac80fa7c7f1ebe9a8d9ef3c4f90d274eb)  
 [SyscResultsInfo](structSyscResultsInfo.xhtml) [syscGetResultsInfo](group__SyscParticipantLibraryCAPI.xhtml#gabf49efc0bc2492b1c8198ba9bd3dab06) (const char \*baseFileName) Provide a function to create SetupFileInfo struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gabf49efc0bc2492b1c8198ba9bd3dab06)  
 [SyscCouplingInterface](structSyscCouplingInterface.xhtml) [syscGetCouplingInterface](group__SyscParticipantLibraryCAPI.xhtml#gae356c9cb4c0dd69f5e1ea9eef6a7c63b) (const char \*name) Create a coupling interface. [More...](group__SyscParticipantLibraryCAPI.xhtml#gae356c9cb4c0dd69f5e1ea9eef6a7c63b)  
 [SyscError](structSyscError.xhtml) [syscAddSideOneRegion](group__SyscParticipantLibraryCAPI.xhtml#gaa8401af709fa7638f76f168aa05784a3) (const [SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface, const [SyscRegion](structSyscRegion.xhtml) region) Add region to side one of the interface. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa8401af709fa7638f76f168aa05784a3)  
 [SyscError](structSyscError.xhtml) [syscAddSideTwoRegion](group__SyscParticipantLibraryCAPI.xhtml#ga3bbbec8ccb73b5da2997d2cdcd7abb6b) (const [SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface, const [SyscRegion](structSyscRegion.xhtml) region) Add region to side two of the interface. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3bbbec8ccb73b5da2997d2cdcd7abb6b)  
 <a id="gaec7e1373da295e5fb0c7ecfc52409888"></a>[SyscError](structSyscError.xhtml) [syscAddDataTransfer](group__SyscParticipantLibraryCAPI.xhtml#gaec7e1373da295e5fb0c7ecfc52409888) ([SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface, [SyscDataTransfer](structSyscDataTransfer.xhtml) dataTransfer) Add the data transfer to the coupling interface.   
 <a id="gade11af63d2e79ab75e7db7919998e6b5"></a>size\_t [syscCouplingInterfaceGetNumDataTransfers](group__SyscParticipantLibraryCAPI.xhtml#gade11af63d2e79ab75e7db7919998e6b5) ([SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface) Get number of data transfer for a given coupling interface.   
 <a id="ga13eed5fd3144989e2f7dc2265f6a199e"></a>size\_t [syscCouplingInterfaceGetNumSideOneRegions](group__SyscParticipantLibraryCAPI.xhtml#ga13eed5fd3144989e2f7dc2265f6a199e) ([SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface) Get number of side one regions for a given coupling interface.   
 <a id="gaf2e509aada51179b4ddab8d343f5e392"></a>size\_t [syscCouplingInterfaceGetNumSideTwoRegions](group__SyscParticipantLibraryCAPI.xhtml#gaf2e509aada51179b4ddab8d343f5e392) ([SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface) Get number of side two regions for a given coupling interface.   
 <a id="ga40ed5be0892f1d14a520221f8b439a45"></a>[SyscDataTransfer](structSyscDataTransfer.xhtml) [syscCouplingInterfaceGetDataTransfer](group__SyscParticipantLibraryCAPI.xhtml#ga40ed5be0892f1d14a520221f8b439a45) ([SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface, size\_t index) Get the data transfer at specified index for a given coupling interface.   
 <a id="ga7ab5c93d920b15c8d2e7ba6baddddb28"></a>[SyscRegion](structSyscRegion.xhtml) [syscCouplingInterfaceGetSideOneRegion](group__SyscParticipantLibraryCAPI.xhtml#ga7ab5c93d920b15c8d2e7ba6baddddb28) ([SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface, size\_t index) Get the side one region at specified index for a given coupling interface.   
 <a id="ga1747f6ce3729ff459e26175ded7059f0"></a>[SyscRegion](structSyscRegion.xhtml) [syscCouplingInterfaceGetSideTwoRegion](group__SyscParticipantLibraryCAPI.xhtml#ga1747f6ce3729ff459e26175ded7059f0) ([SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface, size\_t index) Get the side two region at specified index for a given coupling interface.   
 [SyscDataTransfer](structSyscDataTransfer.xhtml) [syscGetDataTransfer](group__SyscParticipantLibraryCAPI.xhtml#ga10c3562aba2bdcef468fbde205008112) ([SyscVariable](structSyscVariable.xhtml) sideOneVariable, [SyscVariable](structSyscVariable.xhtml) sideTwoVariable, enum [SyscInterfaceSide](group__SyscParticipantLibraryCAPI.xhtml#gacf32f1d9c1566f28bee2b348b2dcd9f5) targetSide) Create a data transfer using side{One|Two}Variable. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga10c3562aba2bdcef468fbde205008112)  
 [SyscDataTransfer](structSyscDataTransfer.xhtml) [syscGetDataTransferST](group__SyscParticipantLibraryCAPI.xhtml#gadb07659695562864d8bc0df67bec847e) ([SyscVariable](structSyscVariable.xhtml) sourceVariable, [SyscVariable](structSyscVariable.xhtml) targetVariable, enum [SyscInterfaceSide](group__SyscParticipantLibraryCAPI.xhtml#gacf32f1d9c1566f28bee2b348b2dcd9f5) targetSide) Create a data transfer using {source|target}Variable. [More...](group__SyscParticipantLibraryCAPI.xhtml#gadb07659695562864d8bc0df67bec847e)  
 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) [syscGetInputComplexScalarData](group__SyscParticipantLibraryCAPI.xhtml#ga1843bbb3648ac07766c7e6ea9f309a54) () Create an empty input copmlex scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1843bbb3648ac07766c7e6ea9f309a54)  
 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) [syscGetInputComplexScalarDataSplitDouble](group__SyscParticipantLibraryCAPI.xhtml#gaaed0337275d991d2cd2a1ec4dbf2a595) (double \*const dataReal, double \*const dataImag, size\_t dataSize) Create a complex input scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaaed0337275d991d2cd2a1ec4dbf2a595)  
 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) [syscGetInputComplexScalarDataSplitFloat](group__SyscParticipantLibraryCAPI.xhtml#ga11c65e99f509cd226f13b0932aba8eb7) (float \*const dataReal, float \*const dataImag, size\_t dataSize) Create a complex input scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga11c65e99f509cd226f13b0932aba8eb7)  
 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) [syscGetInputComplexScalarDataCompactDouble](group__SyscParticipantLibraryCAPI.xhtml#ga5cbb0ff3aa857c03d3626038e3a20ffa) (double \*const data, size\_t dataSize) Create a complex input scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga5cbb0ff3aa857c03d3626038e3a20ffa)  
 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) [syscGetInputComplexScalarDataCompactFloat](group__SyscParticipantLibraryCAPI.xhtml#ga0ff093e80497efd6dccb6ea29c9face3) (float \*const data, size\_t dataSize) Create a complex input scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0ff093e80497efd6dccb6ea29c9face3)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputComplexVectorData](group__SyscParticipantLibraryCAPI.xhtml#gaa7291e96ae240db79de4b35ad82c4cc0) () Create an empty input complex vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa7291e96ae240db79de4b35ad82c4cc0)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputCompactComplexCompactVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga311e2b750be4212f60557b49870f1eac) (double \*const data, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga311e2b750be4212f60557b49870f1eac)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputCompactComplexCompactVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga5396c1513b3448bfd783c2db743606d2) (float \*const data, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga5396c1513b3448bfd783c2db743606d2)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputSplitComplexCompactVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga8cce8fbb7655b448cd3c6c08772e1766) (double \*const dataReal, double \*const dataImag, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8cce8fbb7655b448cd3c6c08772e1766)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputSplitComplexCompactVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga0c9104179a6e98a7a043e4412f1dafd5) (float \*const dataReal, float \*const dataImag, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0c9104179a6e98a7a043e4412f1dafd5)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputCompactComplexSplitVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga7eefc4444dbdf8924e4074046de5eba2) (double \*const data1, double \*const data2, double \*const data3, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga7eefc4444dbdf8924e4074046de5eba2)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputCompactComplexSplitVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga513ecaae813a2904f6926c5839cc11a1) (float \*const data1, float \*const data2, float \*const data3, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga513ecaae813a2904f6926c5839cc11a1)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputSplitComplexSplitVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga1fd576a79df5e1b27247f4b71e2afbf0) (double \*const data1Real, double \*const data1Imag, double \*const data2Real, double \*const data2Imag, double \*const data3Real, double \*const data3Imag, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1fd576a79df5e1b27247f4b71e2afbf0)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputSplitComplexSplitVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga6b650f50fa53c996a07147474343f55f) (float \*const data1Real, float \*const data1Imag, float \*const data2Real, float \*const data2Imag, float \*const data3Real, float \*const data3Imag, size\_t dataSize) Create a 3D complex input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga6b650f50fa53c996a07147474343f55f)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputCompactComplexCompactVectorDataDoubleDim](group__SyscParticipantLibraryCAPI.xhtml#ga93d5fd27a2899ea57f88958aa29506cd) (double \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create a complex input vector data access struct based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga93d5fd27a2899ea57f88958aa29506cd)  
 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) [syscGetInputCompactComplexCompactVectorDataFloatDim](group__SyscParticipantLibraryCAPI.xhtml#ga6fa6c5f2890928560f68ebb6d45cabc9) (float \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create a complex input vector data access struct based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga6fa6c5f2890928560f68ebb6d45cabc9)  
 [SyscInputScalarData](structSyscInputScalarData.xhtml) [syscGetInputScalarData](group__SyscParticipantLibraryCAPI.xhtml#ga4f26c699d6b93f7d62ad88e69822e1e2) () Create an input scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga4f26c699d6b93f7d62ad88e69822e1e2)  
 [SyscInputScalarData](structSyscInputScalarData.xhtml) [syscGetInputScalarDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga3b76afcedb8ced51695a0a56dabfb3af) (double \*const data, size\_t dataSize) Create an input scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3b76afcedb8ced51695a0a56dabfb3af)  
 [SyscInputScalarData](structSyscInputScalarData.xhtml) [syscGetInputScalarDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga09e03b4996d73e37c1748eb00a8c76c8) (float \*const data, size\_t dataSize) Create an input scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga09e03b4996d73e37c1748eb00a8c76c8)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInputVectorData](group__SyscParticipantLibraryCAPI.xhtml#ga8609363d94eccb5ac5113332b5bd0d77) () Create an input vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8609363d94eccb5ac5113332b5bd0d77)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInputVectorDataCompactDouble](group__SyscParticipantLibraryCAPI.xhtml#ga21f7b8327230f78d41e61bdac3f073c0) (double \*const data, size\_t dataSize) Create an 3D input vector data access struct with compact storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga21f7b8327230f78d41e61bdac3f073c0)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInputVectorDataCompactFloat](group__SyscParticipantLibraryCAPI.xhtml#ga1dab4c326c88b20cb402ca06c84d39c2) (float \*const data, size\_t dataSize) Create an 3D input vector data access struct with compact storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1dab4c326c88b20cb402ca06c84d39c2)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInputVectorDataSplitDouble](group__SyscParticipantLibraryCAPI.xhtml#ga5432989ff9b68845634e551c6246e42e) (double \*const data0, double \*const data1, double \*const data2, size\_t dataSize) Create an 3D input vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga5432989ff9b68845634e551c6246e42e)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInputVectorDataSplitFloat](group__SyscParticipantLibraryCAPI.xhtml#ga774cdf0f3bb11efe50a587e6a11e7539) (float \*const data0, float \*const data1, float \*const data2, size\_t dataSize) Create an 3D input vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga774cdf0f3bb11efe50a587e6a11e7539)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInputVectorDataCompactDoubleDim](group__SyscParticipantLibraryCAPI.xhtml#gadc1d6ed1a05cf21b0b38af4ea8247eb3) (double \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create an input vector data access struct with compact storage based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#gadc1d6ed1a05cf21b0b38af4ea8247eb3)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInputVectorDataCompactFloatDim](group__SyscParticipantLibraryCAPI.xhtml#ga0e5591d56881dec17e9ebaa087a7a198) (float \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create an input vector data access struct with compact storage based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0e5591d56881dec17e9ebaa087a7a198)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInput2DVectorDataSplitDouble](group__SyscParticipantLibraryCAPI.xhtml#gab707ea57d70a474cfdab07c35dc7dcf7) (double \*const data0, double \*const data1, size\_t dataSize) Create an 2D input vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#gab707ea57d70a474cfdab07c35dc7dcf7)  
 [SyscInputVectorData](structSyscInputVectorData.xhtml) [syscGetInput2DVectorDataSplitFloat](group__SyscParticipantLibraryCAPI.xhtml#gad39531d8943485fe6a586ce4dbdc5107) (float \*const data0, float \*const data1, size\_t dataSize) Create an 2D input vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#gad39531d8943485fe6a586ce4dbdc5107)  
 [SyscNodeData](structSyscNodeData.xhtml) [syscGetNodeData](group__SyscParticipantLibraryCAPI.xhtml#gaf412d269c5805e7e6b8600f2690cb874) () Create a mesh node data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf412d269c5805e7e6b8600f2690cb874)  
 <a id="ga8b43e51f7a5fa3f6a2d280c177ca3f8e"></a>[SyscNodeData](structSyscNodeData.xhtml) [syscGetNodeDataIC](group__SyscParticipantLibraryCAPI.xhtml#ga8b43e51f7a5fa3f6a2d280c177ca3f8e) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) nodeIds, [SyscOutputVectorData](structSyscOutputVectorData.xhtml) nodeCoords) Create a mesh node data access struct, given node ids and node coords in same order.   
 <a id="gaf5a3d9825d0c59c4517ccaccb332e6b5"></a>[SyscNodeData](structSyscNodeData.xhtml) [syscGetNodeDataC](group__SyscParticipantLibraryCAPI.xhtml#gaf5a3d9825d0c59c4517ccaccb332e6b5) ([SyscOutputVectorData](structSyscOutputVectorData.xhtml) nodeCoords) Creates a mesh node data access struct, given node coordinates in ascending node ids order.   
 [SyscElementTypeData](structSyscElementTypeData.xhtml) [syscGetElementTypeDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#gac9a38bc69d5b0a77d09be64f73693f46) () Create an empty mesh element type data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac9a38bc69d5b0a77d09be64f73693f46)  
 <a id="ga0edaf6355561dfffffeeea47d5ff796d"></a>[SyscElementTypeData](structSyscElementTypeData.xhtml) [syscGetElementTypeData](group__SyscParticipantLibraryCAPI.xhtml#ga0edaf6355561dfffffeeea47d5ff796d) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) elemTypes) Create an mesh element type data access struct, given element types.   
 [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) [syscGetElementNodeCountDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga621f044b4d075369865572cc0d68aa97) () Create an empty mesh element node count data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga621f044b4d075369865572cc0d68aa97)  
 <a id="ga69b8dd901387b03935a8f2aa4c576903"></a>[SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) [syscGetElementNodeCountData](group__SyscParticipantLibraryCAPI.xhtml#ga69b8dd901387b03935a8f2aa4c576903) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) elemNodeCount) Create an mesh element node count data access struct, given element node counts.   
 [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) [syscGetElementNodeConnectivityDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga827af0f4c18717284c76b8804056a24d) () Create an empty element-to-node connectivity data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga827af0f4c18717284c76b8804056a24d)  
 <a id="gae4888763deed0388634cd4174e06a027"></a>[SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) [syscGetElementNodeConnectivityData](group__SyscParticipantLibraryCAPI.xhtml#gae4888763deed0388634cd4174e06a027) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) elemNodeIds) Create an element-to-node connectivity data access struct, given element node ids.   
 <a id="ga5efb9f82d5def3b2399291a763d72d65"></a>[SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml) [syscGetFaceCellConnectivityDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga5efb9f82d5def3b2399291a763d72d65) () Create empty face-to-cell connectivity.   
 <a id="ga604b682ca22d2b4898d6aedae4d9fb1c"></a>[SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml) [syscGetFaceCellConnectivityData](group__SyscParticipantLibraryCAPI.xhtml#ga604b682ca22d2b4898d6aedae4d9fb1c) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) cell0Ids, [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) cell1Ids) Create face-to-cell connectivity given cell0 and cell1 arrays.   
 <a id="ga9c98c0bc4f190c90ec8bb034ab6e6781"></a>[SyscCellIdData](structSyscCellIdData.xhtml) [syscGetCellIdDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga9c98c0bc4f190c90ec8bb034ab6e6781) () Create empty cell id data.   
 <a id="gaf52ba7465086cb0c3faf0a6b9473853e"></a>[SyscCellIdData](structSyscCellIdData.xhtml) [syscGetCellIdData](group__SyscParticipantLibraryCAPI.xhtml#gaf52ba7465086cb0c3faf0a6b9473853e) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) cellIds) Create cell id data given cell ids array.   
 <a id="ga7c6f7645530e97adaa7fca97bebbf050"></a>[SyscElementIdData](structSyscElementIdData.xhtml) [syscGetElementIdDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga7c6f7645530e97adaa7fca97bebbf050) () Create empty element id data.   
 <a id="ga1d1688e7751b27c15a57a78a244b0261"></a>[SyscElementIdData](structSyscElementIdData.xhtml) [syscGetElementIdData](group__SyscParticipantLibraryCAPI.xhtml#ga1d1688e7751b27c15a57a78a244b0261) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) elementIds) Create cell id data given cell ids array.   
 <a id="ga5fe1aa7a9f98270030fc7138c4860217"></a>[SyscFaceData](structSyscFaceData.xhtml) [syscGetFaceDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga5fe1aa7a9f98270030fc7138c4860217) () Create empty face data.   
 <a id="gadc25b2855aac9a4c02706bb94cb1d47e"></a>[SyscFaceData](structSyscFaceData.xhtml) [syscGetFaceDataITCNF](group__SyscParticipantLibraryCAPI.xhtml#gadc25b2855aac9a4c02706bb94cb1d47e) ([SyscElementIdData](structSyscElementIdData.xhtml) faceIds, [SyscElementTypeData](structSyscElementTypeData.xhtml) faceTypes, [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) faceNodeCounts, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) faceNodeConnectivity, [SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml) faceCellConnectivity) Create face data given face ids, types, node counts, node-to-face connectivity, face-to-cell connectivity.   
 <a id="gab1f554f37a4e5dc06cdfc15d7ca4b6c7"></a>[SyscFaceData](structSyscFaceData.xhtml) [syscGetFaceDataICNF](group__SyscParticipantLibraryCAPI.xhtml#gab1f554f37a4e5dc06cdfc15d7ca4b6c7) ([SyscElementIdData](structSyscElementIdData.xhtml) faceIds, [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) faceNodeCounts, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) faceNodeConnectivity, [SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml) faceCellConnectivity) Create face data given face ids, types, node-to-face connectivity, face-to-cell connectivity.   
 <a id="ga7fecaea46eac9057909b0d0901cfbea8"></a>[SyscFaceData](structSyscFaceData.xhtml) [syscGetFaceDataITN](group__SyscParticipantLibraryCAPI.xhtml#ga7fecaea46eac9057909b0d0901cfbea8) ([SyscElementIdData](structSyscElementIdData.xhtml) faceIds, [SyscElementTypeData](structSyscElementTypeData.xhtml) faceTypes, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) faceNodeConnectivity) Create face data given face ids, types, node-to-face connectivity, face-to-cell connectivity.   
 <a id="gae75c9db974a962c76ce593cc24ddd85c"></a>[SyscFaceData](structSyscFaceData.xhtml) [syscGetFaceDataCN](group__SyscParticipantLibraryCAPI.xhtml#gae75c9db974a962c76ce593cc24ddd85c) ([SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) faceNodeCounts, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) faceNodeConnectivity) Create face data given face node counts, node-to-face connectivity.   
 <a id="gaea5a7a8c0e8b5424fbaa50edb7bc32ce"></a>[SyscCellData](structSyscCellData.xhtml) [syscGetCellDataEmpty](group__SyscParticipantLibraryCAPI.xhtml#gaea5a7a8c0e8b5424fbaa50edb7bc32ce) () Create empty cell data.   
 <a id="gabc9c52c2b18a3bbb00d87891b4039315"></a>[SyscCellData](structSyscCellData.xhtml) [syscGetCellDataITN](group__SyscParticipantLibraryCAPI.xhtml#gabc9c52c2b18a3bbb00d87891b4039315) ([SyscElementIdData](structSyscElementIdData.xhtml) cellIds, [SyscElementTypeData](structSyscElementTypeData.xhtml) cellTypes, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) cellNodeConnectivity) Create cell data given cell ids, types, cell-to-node connectivity.   
 <a id="gadb4f24988bf2684dd5bb9d6032a37fca"></a>[SyscCellData](structSyscCellData.xhtml) [syscGetCellDataI](group__SyscParticipantLibraryCAPI.xhtml#gadb4f24988bf2684dd5bb9d6032a37fca) ([SyscElementIdData](structSyscElementIdData.xhtml) cellIds) Create cell data given cell ids.   
 <a id="ga900dee185f65895511a89b29af40c6f8"></a>[SyscCellData](structSyscCellData.xhtml) [syscGetCellDataTN](group__SyscParticipantLibraryCAPI.xhtml#ga900dee185f65895511a89b29af40c6f8) ([SyscElementTypeData](structSyscElementTypeData.xhtml) cellTypes, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) cellNodeConnectivity) Create cell data given cell types, cell-to-node connectivity.   
 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) [syscGetOutputComplexScalarData](group__SyscParticipantLibraryCAPI.xhtml#ga1ed999efcf217211831e6e440c9b6789) () Create an empty output complex scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1ed999efcf217211831e6e440c9b6789)  
 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) [syscGetOutputComplexScalarDataSplitDouble](group__SyscParticipantLibraryCAPI.xhtml#ga55ed1d17c6d2f849b9588531d7c516d9) (const double \*const dataReal, const double \*const dataImag, size\_t dataSize) Create a complex output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga55ed1d17c6d2f849b9588531d7c516d9)  
 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) [syscGetOutputComplexScalarDataSplitFloat](group__SyscParticipantLibraryCAPI.xhtml#ga0e86f0bfb33258007eb2b2ecd6b44dec) (const float \*const dataReal, const float \*const dataImag, size\_t dataSize) Create a complex output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0e86f0bfb33258007eb2b2ecd6b44dec)  
 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) [syscGetOutputComplexScalarDataCompactDouble](group__SyscParticipantLibraryCAPI.xhtml#ga08d88f4495f347260e4678ab6bedbf75) (const double \*const data, size\_t dataSize) Create a complex output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga08d88f4495f347260e4678ab6bedbf75)  
 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) [syscGetOutputComplexScalarDataCompactFloat](group__SyscParticipantLibraryCAPI.xhtml#ga3d806d095d2d333f2a78abb38f7cddf6) (const float \*const data, size\_t dataSize) Create a complex output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3d806d095d2d333f2a78abb38f7cddf6)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputComplexVectorData](group__SyscParticipantLibraryCAPI.xhtml#gafd1174430666266b1337c8e1d3569aa6) () Create an empty output complex vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gafd1174430666266b1337c8e1d3569aa6)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputCompactComplexCompactVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#gab9832696d96ffd32917b2211497c31e1) (const double \*const data, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gab9832696d96ffd32917b2211497c31e1)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputCompactComplexCompactVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga1bddd7590dc1c4e4b488981694a723fc) (const float \*const data, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1bddd7590dc1c4e4b488981694a723fc)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputSplitComplexCompactVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga619a769c0b474a093ca8df07fa23c745) (const double \*const dataReal, const double \*const dataImag, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga619a769c0b474a093ca8df07fa23c745)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputSplitComplexCompactVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga9c6fb47e5c54e7f1ee9bfdd2a6b78f96) (const float \*const dataReal, const float \*const dataImag, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga9c6fb47e5c54e7f1ee9bfdd2a6b78f96)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputCompactComplexSplitVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga36581954b1bed9e21ddd6d6951478a45) (const double \*const data1, const double \*const data2, const double \*const data3, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga36581954b1bed9e21ddd6d6951478a45)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputCompactComplexSplitVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga6fab1156fcb4f29d454bd3574b7472a7) (const float \*const data1, const float \*const data2, const float \*const data3, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga6fab1156fcb4f29d454bd3574b7472a7)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputSplitComplexSplitVectorDataDouble](group__SyscParticipantLibraryCAPI.xhtml#gaceabb4ea93346ecbbdda387e7f067465) (const double \*const data1Real, const double \*const data1Imag, const double \*const data2Real, const double \*const data2Imag, const double \*const data3Real, const double \*const data3Imag, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaceabb4ea93346ecbbdda387e7f067465)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputSplitComplexSplitVectorDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga3d957a5fa32db290017e2f23d15311f2) (const float \*const data1Real, const float \*const data1Imag, const float \*const data2Real, const float \*const data2Imag, const float \*const data3Real, const float \*const data3Imag, size\_t dataSize) Create a 3D complex output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3d957a5fa32db290017e2f23d15311f2)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputCompactComplexCompactVectorDataDoubleDim](group__SyscParticipantLibraryCAPI.xhtml#gac98c66232a8c5c204c4bad9f0dd5585c) (const double \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create a complex output vector data access struct based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac98c66232a8c5c204c4bad9f0dd5585c)  
 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) [syscGetOutputCompactComplexCompactVectorDataFloatDim](group__SyscParticipantLibraryCAPI.xhtml#gab1ea60c9d226cf14e580d6d3c945f3ab) (const float \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create a complex output vector data access struct based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#gab1ea60c9d226cf14e580d6d3c945f3ab)  
 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) [syscGetOutputIntegerData](group__SyscParticipantLibraryCAPI.xhtml#gac46cbb29463ecf81dfbba42a81e5b5c9) () Create an output integer data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac46cbb29463ecf81dfbba42a81e5b5c9)  
 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) [syscGetOutputIntegerDataInt32](group__SyscParticipantLibraryCAPI.xhtml#gaea5bb5bd0b4ddd4217745dad38b405b2) (const int32\_t \*const data, size\_t dataSize) Create an output integer data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaea5bb5bd0b4ddd4217745dad38b405b2)  
 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) [syscGetOutputIntegerDataInt64](group__SyscParticipantLibraryCAPI.xhtml#ga43be8cb6b2e2b156d7c40fa3cbf28f03) (const int64\_t \*const data, size\_t dataSize) Create an output integer data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga43be8cb6b2e2b156d7c40fa3cbf28f03)  
 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) [syscGetOutputIntegerDataUInt16](group__SyscParticipantLibraryCAPI.xhtml#ga46a87bfd729531e482d320f695537c0b) (const uint16\_t \*const data, size\_t dataSize) Create an output integer data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga46a87bfd729531e482d320f695537c0b)  
 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) [syscGetOutputIntegerDataUInt64](group__SyscParticipantLibraryCAPI.xhtml#gaed7a48d94e2545e78562b8ff911dfd2a) (const uint64\_t \*const data, size\_t dataSize) Create an output integer data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaed7a48d94e2545e78562b8ff911dfd2a)  
 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) [syscGetOutputScalarData](group__SyscParticipantLibraryCAPI.xhtml#ga0097e203d597949f887e2f804c01fd21) () Create an output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0097e203d597949f887e2f804c01fd21)  
 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) [syscGetOutputScalarDataDouble](group__SyscParticipantLibraryCAPI.xhtml#ga8a2803af36638c2ce3387bf89b83cda0) (const double \*const data, size\_t dataSize) Create an output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8a2803af36638c2ce3387bf89b83cda0)  
 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) [syscGetOutputScalarDataFloat](group__SyscParticipantLibraryCAPI.xhtml#ga0b0ae9e5ede552958b8bce1efd9b4978) (const float \*const data, size\_t dataSize) Create an output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0b0ae9e5ede552958b8bce1efd9b4978)  
 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) [syscGetOutputScalarDataInt32](group__SyscParticipantLibraryCAPI.xhtml#ga2334c8e25481b098d4263a2f60a7dac2) (const int32\_t \*const data, size\_t dataSize) Create an output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga2334c8e25481b098d4263a2f60a7dac2)  
 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) [syscGetOutputScalarDataInt64](group__SyscParticipantLibraryCAPI.xhtml#ga7a305d185afe565e1d3e8de66d7beca3) (const int64\_t \*const data, size\_t dataSize) Create an output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga7a305d185afe565e1d3e8de66d7beca3)  
 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) [syscGetOutputScalarDataUInt16](group__SyscParticipantLibraryCAPI.xhtml#gabfcf7be83419cc31611e2ad100fdecb6) (const uint16\_t \*const data, size\_t dataSize) Create an output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gabfcf7be83419cc31611e2ad100fdecb6)  
 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) [syscGetOutputScalarDataUInt64](group__SyscParticipantLibraryCAPI.xhtml#ga6645e1e9d1b163cea069ce42077f419f) (const uint64\_t \*const data, size\_t dataSize) Create an output scalar data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga6645e1e9d1b163cea069ce42077f419f)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutputVectorData](group__SyscParticipantLibraryCAPI.xhtml#ga950a6f2a746b4667aa10216ad3adfba6) () Create an output vector data access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga950a6f2a746b4667aa10216ad3adfba6)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutputVectorDataCompactDouble](group__SyscParticipantLibraryCAPI.xhtml#gacb630e9f5b846eb243f4cb6e67907885) (const double \*const data, size\_t dataSize) Create an 3D output vector data access struct with compact storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#gacb630e9f5b846eb243f4cb6e67907885)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutputVectorDataCompactFloat](group__SyscParticipantLibraryCAPI.xhtml#ga1bec0ed33e0603a25d69f98efd68177a) (const float \*const data, size\_t dataSize) Create an 3D output vector data access struct with compact storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1bec0ed33e0603a25d69f98efd68177a)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutputVectorDataSplitDouble](group__SyscParticipantLibraryCAPI.xhtml#gaaa51c47ef1d83c217ac1d10080de120c) (const double \*const data0, const double \*const data1, const double \*const data2, size\_t dataSize) Create an 3D output vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaaa51c47ef1d83c217ac1d10080de120c)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutputVectorDataSplitFloat](group__SyscParticipantLibraryCAPI.xhtml#gac91454fccf5ff91fdb82fa976bf5bc3c) (const float \*const data0, const float \*const data1, const float \*const data2, size\_t dataSize) Create an 3D output vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac91454fccf5ff91fdb82fa976bf5bc3c)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutputVectorDataCompactDoubleDim](group__SyscParticipantLibraryCAPI.xhtml#ga3ff75e8ebe2bf6e850544f378cb240c6) (const double \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create an output vector data access struct with compact storage based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3ff75e8ebe2bf6e850544f378cb240c6)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutputVectorDataCompactFloatDim](group__SyscParticipantLibraryCAPI.xhtml#gaa09a2e4358b2a5459db179c5da641be8) (const float \*const data, size\_t dataSize, enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d) dimension) Create an output vector data access struct with compact storage based on dimension. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa09a2e4358b2a5459db179c5da641be8)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutput2DVectorDataSplitDouble](group__SyscParticipantLibraryCAPI.xhtml#gac737552145182f1de70e347531477a88) (const double \*const data0, const double \*const data1, size\_t dataSize) Create a 2D output vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac737552145182f1de70e347531477a88)  
 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) [syscGetOutput2DVectorDataSplitFloat](group__SyscParticipantLibraryCAPI.xhtml#ga22d069eb2d95a8060a0dfdaf9a5d43aa) (const float \*const data0, const float \*const data1, size\_t dataSize) Create an output vector data access struct with split storage. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga22d069eb2d95a8060a0dfdaf9a5d43aa)  
 [SyscParameter](structSyscParameter.xhtml) [syscGetParameter](group__SyscParticipantLibraryCAPI.xhtml#gaf44d7cf2e3d05e5cf0990b6fe946c50d) (const char \*name) Create parameter to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf44d7cf2e3d05e5cf0990b6fe946c50d)  
 [SyscParameter](structSyscParameter.xhtml) [syscGetParameterD](group__SyscParticipantLibraryCAPI.xhtml#gafa0e858b9dc47ded43bd3fbf97c25206) (const char \*name, const char \*displayName) Create parameter to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#gafa0e858b9dc47ded43bd3fbf97c25206)  
 [SyscPointCloud](structSyscPointCloud.xhtml) [syscGetPointCloudEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga256e2f74a04a52d19232bd163921131c) () Create a point cloud access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga256e2f74a04a52d19232bd163921131c)  
 [SyscPointCloud](structSyscPointCloud.xhtml) [syscGetPointCloud](group__SyscParticipantLibraryCAPI.xhtml#ga0a8b0fe8c0c57374a3ef69d1f678fdab) ([SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) nodeIds, [SyscOutputVectorData](structSyscOutputVectorData.xhtml) nodeCoords) Create a point cloud access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0a8b0fe8c0c57374a3ef69d1f678fdab)  
 [SyscRegion](structSyscRegion.xhtml) [syscGetRegion](group__SyscParticipantLibraryCAPI.xhtml#gaf8dee311cddc012ce6b54998fde8e29f) (const char \*name) Create region to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf8dee311cddc012ce6b54998fde8e29f)  
 [SyscRegion](structSyscRegion.xhtml) [syscGetRegionT](group__SyscParticipantLibraryCAPI.xhtml#ga26c8d2435b5cd3c525d5221298ad3aaa) (const char \*name, enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a) topology) Create region to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga26c8d2435b5cd3c525d5221298ad3aaa)  
 [SyscRegion](structSyscRegion.xhtml) [syscGetRegionDT](group__SyscParticipantLibraryCAPI.xhtml#ga88d428a1852eeec9b7b7156e33b57822) (const char \*name, const char \*displayName, enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a) topology) Create region to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga88d428a1852eeec9b7b7156e33b57822)  
 [SyscRegion](structSyscRegion.xhtml) [syscGetRegionTM](group__SyscParticipantLibraryCAPI.xhtml#ga9e0af352921275419da93341f7186f46) (const char \*name, enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a) topology, enum [SyscRegionDiscretizationType](group__SyscParticipantLibraryCAPI.xhtml#ga83942e23c7ff51ec76e4632612a34d45) regionDiscretizationType) Create region to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga9e0af352921275419da93341f7186f46)  
 [SyscRegion](structSyscRegion.xhtml) [syscGetRegionDTM](group__SyscParticipantLibraryCAPI.xhtml#gaaae89f288494cc67e8f05cab0f5d1b8b) (const char \*name, const char \*displayName, enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a) topology, enum [SyscRegionDiscretizationType](group__SyscParticipantLibraryCAPI.xhtml#ga83942e23c7ff51ec76e4632612a34d45) regionDiscretizationType) Create region to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaaae89f288494cc67e8f05cab0f5d1b8b)  
 [SyscError](structSyscError.xhtml) [syscAddInputVariable](group__SyscParticipantLibraryCAPI.xhtml#ga9ae6fafcce6987fa18ba762a1ee7a7be) (const [SyscRegion](structSyscRegion.xhtml) region, const [SyscVariable](structSyscVariable.xhtml) variable) Provide a function to add an input variable to the region. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga9ae6fafcce6987fa18ba762a1ee7a7be)  
 [SyscError](structSyscError.xhtml) [syscAddOutputVariable](group__SyscParticipantLibraryCAPI.xhtml#ga9615f371d829935af745eb63a1ea99bc) (const [SyscRegion](structSyscRegion.xhtml) region, const [SyscVariable](structSyscVariable.xhtml) variable) Provide a function to add an output variable to the region. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga9615f371d829935af745eb63a1ea99bc)  
 size\_t [syscGetNumInputVariables](group__SyscParticipantLibraryCAPI.xhtml#gabec39110fe9da4d54a32653e6bf43196) (const [SyscRegion](structSyscRegion.xhtml) region) Provide a function to return the number of input variables. [More...](group__SyscParticipantLibraryCAPI.xhtml#gabec39110fe9da4d54a32653e6bf43196)  
 [SyscVariable](structSyscVariable.xhtml) [syscGetInputVariable](group__SyscParticipantLibraryCAPI.xhtml#gaef15224138a4f29e892a63e5e8db2feb) (const [SyscRegion](structSyscRegion.xhtml) region, size\_t index) Return an input variable. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaef15224138a4f29e892a63e5e8db2feb)  
 size\_t [syscGetNumOutputVariables](group__SyscParticipantLibraryCAPI.xhtml#ga99fda03ac99e590196d180ea23214217) (const [SyscRegion](structSyscRegion.xhtml) region) Provide a function to return the number of output variables. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga99fda03ac99e590196d180ea23214217)  
 [SyscVariable](structSyscVariable.xhtml) [syscGetOutputVariable](group__SyscParticipantLibraryCAPI.xhtml#ga55a99079e5dc9d025f3816d5e7bdd163) (const [SyscRegion](structSyscRegion.xhtml) region, size\_t index) Return an output variable. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga55a99079e5dc9d025f3816d5e7bdd163)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMesh](group__SyscParticipantLibraryCAPI.xhtml#ga9f7aaa68f00cc2d98f98c458b5388f3a) () Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga9f7aaa68f00cc2d98f98c458b5388f3a)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMeshNF](group__SyscParticipantLibraryCAPI.xhtml#gafad33a17c7266f386e1bf42c66a9340f) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscFaceData](structSyscFaceData.xhtml) faces) Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gafad33a17c7266f386e1bf42c66a9340f)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMeshNTCI](group__SyscParticipantLibraryCAPI.xhtml#gaf61b2f4b29e77812cee161e63ff28e34) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscElementTypeData](structSyscElementTypeData.xhtml) elemTypes, [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) elemNodeCounts, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) elemNodeConnectivity) Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf61b2f4b29e77812cee161e63ff28e34)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMeshNCI](group__SyscParticipantLibraryCAPI.xhtml#ga239ac08da048715f5832302851960053) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) elemNodeCounts, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) elemNodeConnectivity) Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga239ac08da048715f5832302851960053)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMeshNCIF](group__SyscParticipantLibraryCAPI.xhtml#ga734facb70a9948732d08eaccf4bb5102) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) elemNodeCounts, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) elemNodeConnectivity, [SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml) faceCellConnectivty) Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga734facb70a9948732d08eaccf4bb5102)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMeshNTI](group__SyscParticipantLibraryCAPI.xhtml#ga481a20e443f5b245640441f47e455c67) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscElementTypeData](structSyscElementTypeData.xhtml) elemTypes, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) elemNodeConnectivity) Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga481a20e443f5b245640441f47e455c67)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMeshA](group__SyscParticipantLibraryCAPI.xhtml#ga0241a6779e5c1e1dc0a339893805a9dd) ([SyscOutputScalarData](structSyscOutputScalarData.xhtml) nodeIds, [SyscOutputVectorData](structSyscOutputVectorData.xhtml) nodeCoords, [SyscOutputScalarData](structSyscOutputScalarData.xhtml) elemNodeCounts, [SyscOutputScalarData](structSyscOutputScalarData.xhtml) elemNodeIds) Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0241a6779e5c1e1dc0a339893805a9dd)  
 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) [syscGetSurfaceMeshB](group__SyscParticipantLibraryCAPI.xhtml#ga0745adffa475d10edb703906ed5d2772) ([SyscOutputVectorData](structSyscOutputVectorData.xhtml) nodeCoords, [SyscOutputScalarData](structSyscOutputScalarData.xhtml) elemNodeCounts, [SyscOutputScalarData](structSyscOutputScalarData.xhtml) elemNodeIds) Create a surface mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0745adffa475d10edb703906ed5d2772)  
 [SyscError](structSyscError.xhtml) [syscStartStandaloneParallel](group__SyscParticipantLibraryCAPI.xhtml#ga862e7375111dcee847bc05463c72b329) (const size\_t mpiCommunicator) Provide a function to start standalone mode in parallel. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga862e7375111dcee847bc05463c72b329)  
 [SyscError](structSyscError.xhtml) [syscConnect](group__SyscParticipantLibraryCAPI.xhtml#ga1404ad75fb1f5b1515dae967b71b1725) (const char \*scHost, const unsigned short scPort, const char \*participantName, const char \*buildInformation) Provide a function to establish connection to System Coupling. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1404ad75fb1f5b1515dae967b71b1725)  
 [SyscError](structSyscError.xhtml) [syscConnectParallel](group__SyscParticipantLibraryCAPI.xhtml#ga68a9b5b64715ad6ffde1c7b145bb4d0f) (const char \*scHost, const unsigned short scPort, const char \*participantName, const size\_t communicator, const char \*buildInformation) Provide a function to establish connection to System Coupling in parallel. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga68a9b5b64715ad6ffde1c7b145bb4d0f)  
 [SyscError](structSyscError.xhtml) [syscConnectUseStruct](group__SyscParticipantLibraryCAPI.xhtml#ga8d84278ef4d48a739948f0a952cb2a00) ([SyscParticipantInfo](structSyscParticipantInfo.xhtml) participantInfo) Provide a function to establish connection to System Coupling in serial using a C structure. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8d84278ef4d48a739948f0a952cb2a00)  
 [SyscError](structSyscError.xhtml) [syscConnectParallelUseStruct](group__SyscParticipantLibraryCAPI.xhtml#gac695e9f06d272958b8fc81bff07708fb) ([SyscParticipantInfo](structSyscParticipantInfo.xhtml) participantInfo, const size\_t communicator) Provide a function to establish connection to System Coupling in parallel using a C structure. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac695e9f06d272958b8fc81bff07708fb)  
 [SyscError](structSyscError.xhtml) [syscAddRegion](group__SyscParticipantLibraryCAPI.xhtml#ga3c895512d255076ce0b7dcc0b527991b) (const [SyscRegion](structSyscRegion.xhtml) region) Provide a function to add a region that could be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3c895512d255076ce0b7dcc0b527991b)  
 [SyscError](structSyscError.xhtml) [syscAddInputParameter](group__SyscParticipantLibraryCAPI.xhtml#ga360d447bbaffa2035ddd9675457027cc) (const [SyscParameter](structSyscParameter.xhtml) parameter) Provide a method to add an input parameter that could be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga360d447bbaffa2035ddd9675457027cc)  
 [SyscError](structSyscError.xhtml) [syscAddOutputParameter](group__SyscParticipantLibraryCAPI.xhtml#gaf25cfa8761182ab33ee1a58171ba8aff) (const [SyscParameter](structSyscParameter.xhtml) parameter) Provide a method to add an output parameter that could be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf25cfa8761182ab33ee1a58171ba8aff)  
 size\_t [syscGetNumInputParameters](group__SyscParticipantLibraryCAPI.xhtml#ga0c8432c9735a99af8f502a0d399fcb53) () Provide a method to get the number of input parameters. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0c8432c9735a99af8f502a0d399fcb53)  
 size\_t [syscGetNumOutputParameters](group__SyscParticipantLibraryCAPI.xhtml#gaa589afb854fc7ccbc1aadd35148748c4) () Provide a method to get the number of output parameters. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa589afb854fc7ccbc1aadd35148748c4)  
 [SyscParameter](structSyscParameter.xhtml) [syscGetAddedInputParameter](group__SyscParticipantLibraryCAPI.xhtml#ga0a1c350da5591ae0ece58abaa8dfd9d2) (size\_t index) Provide a function to return input parameter information. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga0a1c350da5591ae0ece58abaa8dfd9d2)  
 [SyscParameter](structSyscParameter.xhtml) [syscGetAddedOutputParameter](group__SyscParticipantLibraryCAPI.xhtml#gaa7fff9647ad264d5f2d6231472667e0d) (size\_t index) Provide a function to return input parameter information. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa7fff9647ad264d5f2d6231472667e0d)  
 size\_t [syscGetNumRealAttributes](group__SyscParticipantLibraryCAPI.xhtml#gac60dbcde01c9373bfd367aaaa956cba5) () Provide a function to get the number of real attributes. [More...](group__SyscParticipantLibraryCAPI.xhtml#gac60dbcde01c9373bfd367aaaa956cba5)  
 size\_t [syscGetNumIntegerAttributes](group__SyscParticipantLibraryCAPI.xhtml#gaf49b872e961009e614ed67759e1a60d4) () Provide a function to get the number of integer attributes. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf49b872e961009e614ed67759e1a60d4)  
 [SyscRealAttribute](structSyscRealAttribute.xhtml) [syscGetAddedRealAttribute](group__SyscParticipantLibraryCAPI.xhtml#gaefc1d756871febf4805c2df08334e7b8) (size\_t index) Provide a function to return real attribute information. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaefc1d756871febf4805c2df08334e7b8)  
 [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) [syscGetAddedIntegerAttribute](group__SyscParticipantLibraryCAPI.xhtml#ga700bc8178a51d4eeaa596eb6d4737fcb) (size\_t index) Provide a function to return integer attribute information. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga700bc8178a51d4eeaa596eb6d4737fcb)  
 [SyscError](structSyscError.xhtml) [syscAddRealAttribute](group__SyscParticipantLibraryCAPI.xhtml#gad0272110e6eaf4c7f16bf96d3556106e) (const [SyscRealAttribute](structSyscRealAttribute.xhtml) attribute) Provide a method to add a real attribute that could be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#gad0272110e6eaf4c7f16bf96d3556106e)  
 [SyscError](structSyscError.xhtml) [syscAddIntegerAttribute](group__SyscParticipantLibraryCAPI.xhtml#ga7ef7712e40081015520c18ae54509930) (const [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) attribute) Provide a method to add an integer attribute that could be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga7ef7712e40081015520c18ae54509930)  
 double [syscGetParameterValue](group__SyscParticipantLibraryCAPI.xhtml#ga534e802afae31ae7134e23a00d2872f9) (const char \*parameterName, [SyscError](structSyscError.xhtml) \*errorCode) Provide a function to get a Parameter value. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga534e802afae31ae7134e23a00d2872f9)  
 [SyscError](structSyscError.xhtml) [syscSetParameterValue](group__SyscParticipantLibraryCAPI.xhtml#ga67c13bf8cd7fedeb86ac32b6d919eeb0) (const char \*parameterName, double value) Provide a function to set a Parameter value. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga67c13bf8cd7fedeb86ac32b6d919eeb0)  
 double [syscGetRealAttributeValue](group__SyscParticipantLibraryCAPI.xhtml#gaf5625adaeb366d18725d1e9560d5910d) (const char \*attributeName, [SyscError](structSyscError.xhtml) \*errorCode) Provide a function to get a RealAttribute value. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf5625adaeb366d18725d1e9560d5910d)  
 int64\_t [syscGetIntegerAttributeValue](group__SyscParticipantLibraryCAPI.xhtml#ga126dcce7d793eb854bdccd42e6a62e10) (const char \*attributeName, [SyscError](structSyscError.xhtml) \*errorCode) Provide a function to get an IntegerAttribute value. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga126dcce7d793eb854bdccd42e6a62e10)  
 [SyscError](structSyscError.xhtml) [syscAddCouplingInterface](group__SyscParticipantLibraryCAPI.xhtml#ga5330416d093678fc96231257a88ea337) (const [SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface) Provide a function to add a coupling interface. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga5330416d093678fc96231257a88ea337)  
 [SyscError](structSyscError.xhtml) [syscAddCouplingInterfaceA](group__SyscParticipantLibraryCAPI.xhtml#gadec9e44f001d4ec2b8139e096ab93ac7) (const [SyscCouplingInterface](structSyscCouplingInterface.xhtml) couplingInterface, int autoGenerateDataTransfers) Provide a function to add a coupling interface. [More...](group__SyscParticipantLibraryCAPI.xhtml#gadec9e44f001d4ec2b8139e096ab93ac7)  
 [SyscError](structSyscError.xhtml) [syscCompleteSetup](group__SyscParticipantLibraryCAPI.xhtml#ga831884747873b947fcdc57ef31adce27) (const [SyscSetupInfo](structSyscSetupInfo.xhtml) setupInfo) Provide a function to notify System Coupling that setup can be completed. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga831884747873b947fcdc57ef31adce27)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga06c366cb935ade55b7b90de9691d3f38) ([SyscInputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gaaf3788ac706a730edbf6093c7e543681) dataAccess) Provide a function to register input scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga06c366cb935ade55b7b90de9691d3f38)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga04bbb44826997f602707b9e01d07d78e) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscInputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gad41922f1a4f5abb891d5a913ba5fcccf) dataAccess) Provide a function to register input scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga04bbb44826997f602707b9e01d07d78e)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga6b2aee555f07109357958edc9898b8b5) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscInputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga844dc6322bd6e4eabc2d3d2d9e69bdb1) dataAccess) Provide a function to register input scalar data multi-zone access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga6b2aee555f07109357958edc9898b8b5)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga36e9fe53c70f9c15cbcfc3957f80852b) ([SyscInputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga8d5f53de4e65a4bacef0f25ba8b46483) dataAccess) Provide a function to register input vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga36e9fe53c70f9c15cbcfc3957f80852b)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga46b386f0c3ed52071dd851b55763b1c8) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscInputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gae7c6372393f3ec720b8d6d1535fcf9b3) dataAccess) Provide a function to register input vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga46b386f0c3ed52071dd851b55763b1c8)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gad7774418be78b8b39c9b45b7fcade1d3) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscInputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gae2e92f1b7ae911c36bf3606c60a01511) dataAccess) Provide a function to register input vector data multi-zone access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gad7774418be78b8b39c9b45b7fcade1d3)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga6e187589ca426402ee045ccecfec21d3) ([SyscOutputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gabd35283796cae3d3dbc851ac66b8564f) dataAccess) Provide a function to register output scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga6e187589ca426402ee045ccecfec21d3)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga2c90e2ea571de3b7ce5e1ca65a996d8a) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscOutputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gab378ed75ffd9b081ad7eccf8107a5542) dataAccess) Provide a function to register output scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga2c90e2ea571de3b7ce5e1ca65a996d8a)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga7880daf983c8bac7db920281fdc937c1) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscOutputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga7767f728d880014dfbd853bbb8e0eb07) dataAccess) Provide a function to register output scalar data multi-zone access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga7880daf983c8bac7db920281fdc937c1)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gaa3956909f65a425bec64c86ec5d5515b) ([SyscOutputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gae99c8cb78199403b9e74217557be206a) dataAccess) Provide a function to register output vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa3956909f65a425bec64c86ec5d5515b)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga9793fb31fe905768b175842ceab722e5) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscOutputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gab30cbe5478bf769c81f5c0a07e885afd) dataAccess) Provide a function to register output vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga9793fb31fe905768b175842ceab722e5)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gad5c33007c0067ab6edf8a72ab422ff7d) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscOutputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga1d6d5d9fa806ac5820d9a6ed85811804) dataAccess) Provide a function to register output vector data multi-zone access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gad5c33007c0067ab6edf8a72ab422ff7d)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga1f4ab3d781755660f64b5a2cb691abe9) ([SyscInputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gab388f936f3a73b9b480a792c401a95a1) dataAccess) Provide a function to register input complex scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1f4ab3d781755660f64b5a2cb691abe9)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga55a307bf13f2d002f05660d781fef50e) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscInputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga7a0c5889de7b17b59d44595d7636747e) dataAccess) Provide a function to register input complex scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga55a307bf13f2d002f05660d781fef50e)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gaf281613584c91fb460de5e4557f16767) ([SyscInputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gace54794852b48d8725b930f1aed89c4d) dataAccess) Provide a function to register input complex vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf281613584c91fb460de5e4557f16767)  
 [SyscError](structSyscError.xhtml) [syscRegisterInputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gadfee511d3a3021907ee187716fff0944) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscInputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga68dcce877e8cc69f13bee845c76f1b4d) dataAccess) Provide a function to register input complex vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gadfee511d3a3021907ee187716fff0944)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga1c0e074f2239faf10594e3139d32efe1) ([SyscOutputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17d96c2c29a44374309efafdfb8fef62) dataAccess) Provide a function to register output complex scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1c0e074f2239faf10594e3139d32efe1)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga5a7faf0c3fe80ffc7925da217ecce202) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscOutputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga71ac4910edd87d8d62e871001258c698) dataAccess) Provide a function to register output complex scalar data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga5a7faf0c3fe80ffc7925da217ecce202)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga1cb92c5ccc643abce68fba25f61e3d41) ([SyscOutputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga65a0f3a119f2cec715ac89798f16a97c) dataAccess) Provide a function to register output complex vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga1cb92c5ccc643abce68fba25f61e3d41)  
 [SyscError](structSyscError.xhtml) [syscRegisterOutputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga859961191e2943afd73b8e31cbd010c9) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscOutputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga18e31a00d833843895c731e69ca006b0) dataAccess) Provide a function to register output complex vector data access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga859961191e2943afd73b8e31cbd010c9)  
 [SyscError](structSyscError.xhtml) [syscRegisterSurfMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#ga044974d4f159fd35669b77e5111fe7e0) ([SyscSurfMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#ga71e4eb102d00dd0a211f6dc2f4d24222) meshAccess) Provide a function to register surface mesh access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga044974d4f159fd35669b77e5111fe7e0)  
 [SyscError](structSyscError.xhtml) [syscRegisterSurfaceMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gadddd0903fcab2450b14f54157e283302) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscSurfaceMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gafbfb299099d65e3f232bb67a04d1a8e9) meshAccess) Provide a function to register surface mesh access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gadddd0903fcab2450b14f54157e283302)  
 [SyscError](structSyscError.xhtml) [syscRegisterSurfaceMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga3261b0b3eb6278c380a5b59894a7b533) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscSurfaceMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga9ffe052c4c28ff40b4a14b32cd9f227c) meshAccess) Provide a function to register surface mesh multi-zone access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3261b0b3eb6278c380a5b59894a7b533)  
 [SyscError](structSyscError.xhtml) [syscRegisterVolumeMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#ga27ba2e330c4d2c20b692a7ab66852721) ([SyscVolumeMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#gad0ff77c2af045d3294b149219123a084) meshAccess) Provide a function to register volume mesh access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga27ba2e330c4d2c20b692a7ab66852721)  
 [SyscError](structSyscError.xhtml) [syscRegisterVolumeMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga3b90426f24a434668b5270930192fec6) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscVolumeMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gadcb6262e27485836632696e52cf80fb9) meshAccess) Provide a function to register volume mesh access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3b90426f24a434668b5270930192fec6)  
 [SyscError](structSyscError.xhtml) [syscRegisterVolumeMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gab71a3bc5775e830b2dac81dd6828cb13) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscVolumeMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gaf381b799bec1baf9f3ab727b61458b59) meshAccess) Provide a function to register volume mesh multi-zone access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gab71a3bc5775e830b2dac81dd6828cb13)  
 [SyscError](structSyscError.xhtml) [syscRegisterPointCloudAccess](group__SyscParticipantLibraryCAPI.xhtml#gade30d8ccbbad0236ace57edfe55181d5) ([SyscPointCloudAccess](group__SyscParticipantLibraryCAPI.xhtml#gae999907f608779e525e34f60d2803038) pointCloudAccess) Provide a function to register point cloud access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gade30d8ccbbad0236ace57edfe55181d5)  
 [SyscError](structSyscError.xhtml) [syscRegisterPointCloudAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gaedae298744b65c453c7dac3e8dc1d68a) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscPointCloudAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gafa62fd6d86905625ae071dea4749a8df) pointCloudAccess) Provide a function to register point cloud access. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaedae298744b65c453c7dac3e8dc1d68a)  
 [SyscError](structSyscError.xhtml) [syscRegisterPointCloudMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga77d6e90a118be65eeb86ce08a3a3dea5) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscPointCloudMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gac4a0788f14f0d473372f07638e9dceaa) pointCloudAccess) Provide a function to register point cloud multi-zone access. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga77d6e90a118be65eeb86ce08a3a3dea5)  
 <a id="gad49e03082ae93fdd7f96a3b7601ca9a8"></a>[SyscError](structSyscError.xhtml) [syscRegisterZoneCountAccess](group__SyscParticipantLibraryCAPI.xhtml#gad49e03082ae93fdd7f96a3b7601ca9a8) ([SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b) opaqueDataAccess, [SyscZoneCountAccess](group__SyscParticipantLibraryCAPI.xhtml#gaabc0678095ad5a5efb8be4d666ce2677) zoneCountAccess) Provide a function to register zone count access.   
 [SyscError](structSyscError.xhtml) [syscRegisterRestartPointCreation](group__SyscParticipantLibraryCAPI.xhtml#ga30880d98428a08962ab027267c66c2ae) ([SyscRestartPointCreation](group__SyscParticipantLibraryCAPI.xhtml#ga6d3934571a8dcc03e2ecbe724a808c1b) restartPointCreation) Provide a function to register restart point creation callback. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga30880d98428a08962ab027267c66c2ae)  
 [SyscError](structSyscError.xhtml) [syscInitializeAnalysis](group__SyscParticipantLibraryCAPI.xhtml#gaa26049072c61f17c4e1296490c00abc5) () Provide a function to notify System Coupling that analysis initialization can be completed. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa26049072c61f17c4e1296490c00abc5)  
 int [syscDoIteration](group__SyscParticipantLibraryCAPI.xhtml#gaea2bf4afeff9dd606125e00bb6c475a0) () Provide a function to check whether to do a coupling iteration. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaea2bf4afeff9dd606125e00bb6c475a0)  
 int [syscDoTimeStep](group__SyscParticipantLibraryCAPI.xhtml#gaf701624f0add6b5d7a5fd2d9dcf8e298) () Provide a function to check whether to do a coupling time step. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaf701624f0add6b5d7a5fd2d9dcf8e298)  
 [SyscTimeStep](structSyscTimeStep.xhtml) [syscGetCurrentTimeStep](group__SyscParticipantLibraryCAPI.xhtml#gace1009120d02713ffe0b625d1cadd33d) () Provide a function to get current time step. [More...](group__SyscParticipantLibraryCAPI.xhtml#gace1009120d02713ffe0b625d1cadd33d)  
 [SyscError](structSyscError.xhtml) [syscUpdateInputs](group__SyscParticipantLibraryCAPI.xhtml#ga8445069f0234978743203e1d5c0cb62c) () Provide a function to update the participants input variables. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8445069f0234978743203e1d5c0cb62c)  
 [SyscError](structSyscError.xhtml) [syscUpdateOutputs](group__SyscParticipantLibraryCAPI.xhtml#ga3b5e8e0315bbbe48526324439c422733) (const enum [SyscConvergenceStatus](group__SyscParticipantLibraryCAPI.xhtml#ga10ce3774353dfbc811147a9ad211b3cd) convStatus) Provide a function to update the participants output variables. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3b5e8e0315bbbe48526324439c422733)  
 <a id="ga09a7259037537f2d3d0403788d80e2e1"></a>[SyscError](structSyscError.xhtml) [syscDisconnect](group__SyscParticipantLibraryCAPI.xhtml#ga09a7259037537f2d3d0403788d80e2e1) () Provide a function to end the analysis and disconnect from System Coupling.   
 <a id="ga009687c58ccf588d2c94d879a2769541"></a>void [syscFatalError](group__SyscParticipantLibraryCAPI.xhtml#ga009687c58ccf588d2c94d879a2769541) (const char \*errorMessage) Provide a function to notify System Coupling about a fatal error.   
 <a id="gafc80abbd0874c5da3d80ec2d8258eb02"></a>void [syscNonFatalError](group__SyscParticipantLibraryCAPI.xhtml#gafc80abbd0874c5da3d80ec2d8258eb02) (const char \*errorMessage) Provide a function to notify System Coupling about a non fatal error.   
 [SyscError](structSyscError.xhtml) [syscCheckSurfaceMeshValidity](group__SyscParticipantLibraryCAPI.xhtml#ga456487cb20f8a9b6c392eec4d0eaceb7) ([SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) mesh) Provide a function to perform simple mesh validity checks. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga456487cb20f8a9b6c392eec4d0eaceb7)  
 int [syscWriteSetupFile](group__SyscParticipantLibraryCAPI.xhtml#gad55adabb4ed5bdb44833c06671541921) (const [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml) setupFileInfo) Provide a function to write the setup file. [More...](group__SyscParticipantLibraryCAPI.xhtml#gad55adabb4ed5bdb44833c06671541921)  
 <a id="gafb6abc910fc014d46cb46dc86cf48c60"></a>[SyscError](structSyscError.xhtml) [syscWriteResults](group__SyscParticipantLibraryCAPI.xhtml#gafb6abc910fc014d46cb46dc86cf48c60) (const [SyscResultsInfo](structSyscResultsInfo.xhtml) resultsInfo) Write results to a file.   
 size\_t [syscGetNumRegions](group__SyscParticipantLibraryCAPI.xhtml#ga5783653d3a5994b0bccb7471843e72eb) () Provide a function to return the number of added regions. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga5783653d3a5994b0bccb7471843e72eb)  
 [SyscRegion](structSyscRegion.xhtml) [syscGetAddedRegion](group__SyscParticipantLibraryCAPI.xhtml#ga73a2e2125fd1a583b152012a8d7f9ce9) (size\_t index) Provide a function to return added region given the region index. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga73a2e2125fd1a583b152012a8d7f9ce9)  
 <a id="ga47273dac1bc54d406c085bee823c5131"></a>[SyscSolutionControl](structSyscSolutionControl.xhtml) [syscGetSolutionControl](group__SyscParticipantLibraryCAPI.xhtml#ga47273dac1bc54d406c085bee823c5131) () Get solution control.   
 size\_t [syscGetNumCouplingInterfaces](group__SyscParticipantLibraryCAPI.xhtml#ga8987dbe52eb06c7d089663d4c29c17ed) () Provide a function to return the number of added coupling interfaces. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8987dbe52eb06c7d089663d4c29c17ed)  
 <a id="ga13a0798c28a54535f42c8cf240ed7d40"></a>[SyscCouplingInterface](structSyscCouplingInterface.xhtml) **syscGetAddedCouplingInterface** (size\_t index) [SyscVariable](structSyscVariable.xhtml) [syscGetVariable](group__SyscParticipantLibraryCAPI.xhtml#ga11cda8cc3f7f76d71b87baabbfe53304) (const char \*name) Create variable to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga11cda8cc3f7f76d71b87baabbfe53304)  
 [SyscVariable](structSyscVariable.xhtml) [syscGetVariableDTELQD](group__SyscParticipantLibraryCAPI.xhtml#ga41420b43584d7b7ab11d94c2c4e4ccdb) (const char \*name, const char \*displayName, enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d) tensorType, int isExtensive, enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda) location, enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12) quantityType, enum SyscDataType dataType) Create variable to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga41420b43584d7b7ab11d94c2c4e4ccdb)  
 [SyscVariable](structSyscVariable.xhtml) [syscGetVariableTE](group__SyscParticipantLibraryCAPI.xhtml#ga3aceb66e0d37a5de11b76fd4c1d7293d) (const char \*name, enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d) tensorType, int isExtensive, enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda) location) Create variable to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga3aceb66e0d37a5de11b76fd4c1d7293d)  
 [SyscVariable](structSyscVariable.xhtml) [syscGetVariableTEQ](group__SyscParticipantLibraryCAPI.xhtml#ga8c3a0f01eb353ffcb981281a76dde4b3) (const char \*name, const char \*displayName, enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d) tensorType, int isExtensive, enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda) location, enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12) quantityType) Create variable to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga8c3a0f01eb353ffcb981281a76dde4b3)  
 [SyscVariable](structSyscVariable.xhtml) [syscGetVariableQ](group__SyscParticipantLibraryCAPI.xhtml#gabcbdf21641e68a17e941a6c8da2afdc9) (const char \*name, const char \*displayName, enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda) location, enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12) quantityType) Create variable to be used in a coupled analysis. [More...](group__SyscParticipantLibraryCAPI.xhtml#gabcbdf21641e68a17e941a6c8da2afdc9)  
 <a id="ga36e1b9748fe759040360468c2b863753"></a>[SyscError](structSyscError.xhtml) [syscVariableAddRealAttribute](group__SyscParticipantLibraryCAPI.xhtml#ga36e1b9748fe759040360468c2b863753) ([SyscVariable](structSyscVariable.xhtml) variable, [SyscRealAttribute](structSyscRealAttribute.xhtml) attribute) Add real-valued attribute to the variable.   
 <a id="ga2c8d8b670d660f646fbe0d81dbc7914b"></a>[SyscError](structSyscError.xhtml) [syscVariableAddIntegerAttribute](group__SyscParticipantLibraryCAPI.xhtml#ga2c8d8b670d660f646fbe0d81dbc7914b) ([SyscVariable](structSyscVariable.xhtml) variable, [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) attribute) Add integer-valued attribute to the variable.   
 <a id="ga3cb95d52ef66ec8339bff5dc9c2c28bb"></a>size\_t [syscVariableGetNumRealAttributes](group__SyscParticipantLibraryCAPI.xhtml#ga3cb95d52ef66ec8339bff5dc9c2c28bb) ([SyscVariable](structSyscVariable.xhtml) variable) Get number of real-valued attributes.   
 <a id="gae744a1029ca1d356c8ef9a81b6a41df6"></a>size\_t [syscVariableGetNumIntegerAttributes](group__SyscParticipantLibraryCAPI.xhtml#gae744a1029ca1d356c8ef9a81b6a41df6) ([SyscVariable](structSyscVariable.xhtml) variable) Get number of integer-valued attributes.   
 <a id="ga7d8fce6af6169d53f48e92cb90224bff"></a>[SyscRealAttribute](structSyscRealAttribute.xhtml) [syscVariableGetRealAttribute](group__SyscParticipantLibraryCAPI.xhtml#ga7d8fce6af6169d53f48e92cb90224bff) ([SyscVariable](structSyscVariable.xhtml) variable, size\_t index) Return the real-valued attribute at the given index.   
 <a id="gacd6d89e8e016b12cf558b312619201a4"></a>[SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) [syscVariableGetIntegerAttribute](group__SyscParticipantLibraryCAPI.xhtml#gacd6d89e8e016b12cf558b312619201a4) ([SyscVariable](structSyscVariable.xhtml) variable, size\_t index) Return the integer-valued attribute at the given index.   
 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) [syscGetVolumeMeshEmpty](group__SyscParticipantLibraryCAPI.xhtml#ga44f0210eb99864864b6ea802b5c8c857) () Create an empty volume mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#ga44f0210eb99864864b6ea802b5c8c857)  
 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) [syscGetVolumeMeshNFC](group__SyscParticipantLibraryCAPI.xhtml#gaa082ad5a3f9a308f6dfb794e8bdcd8cd) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscFaceData](structSyscFaceData.xhtml) faces, [SyscCellData](structSyscCellData.xhtml) cells) Create a volume mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gaa082ad5a3f9a308f6dfb794e8bdcd8cd)  
 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) [syscGetVolumeMeshElementBased](group__SyscParticipantLibraryCAPI.xhtml#gacdd4cb0f44e5d2e94a0ed34e0dc96bbe) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscElementTypeData](structSyscElementTypeData.xhtml) cellTypes, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) cellNodeConnectivity) Create an element-based volume mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gacdd4cb0f44e5d2e94a0ed34e0dc96bbe)  
 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) [syscGetVolumeMeshFaceBased](group__SyscParticipantLibraryCAPI.xhtml#gae426344ef494aa92411c8c3856cdcb7f) ([SyscNodeData](structSyscNodeData.xhtml) nodes, [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) faceNodeCounts, [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) faceNodeConnectivity, [SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml) faceCellConnectivity, [SyscCellIdData](structSyscCellIdData.xhtml) cellIds) Create a face-based volume mesh access struct. [More...](group__SyscParticipantLibraryCAPI.xhtml#gae426344ef494aa92411c8c3856cdcb7f)  
 <a id="details" name="details"></a>## Detailed Description

Provides C interfaces to the System Coupling participant library.

The C interface closely follows the C++ interface, and is implemented as a wrapper around the latter.

## Typedef Documentation

<a id="ga828a191dd9fffcb117c398848b9ad10b"></a>## [◆ ](#ga828a191dd9fffcb117c398848b9ad10b)SyscCouplingInterface

 typedef struct [SyscCouplingInterface](structSyscCouplingInterface.xhtml) [SyscCouplingInterface](structSyscCouplingInterface.xhtml)

Provide a struct for a coupling interface.

Coupling interface can be used to set up the transfers of data between different regions within the same participant solver. Interface contains two sides and each side can contain one or more regions. Data transfers are automatically defined: if a variable is defined as an output on all regions on one side of the interface and as an input on all regions on the opposide side of the interface, then it will be mapped from the former side to the latter side.

All regions on one side of the interface must have the same topology.

To create and/or initialize the [SyscCouplingInterface](structSyscCouplingInterface.xhtml "Provide a struct for a coupling interface.") struct, it is highly recommended to use the `syscGetCouplingInterface` function. This function will initialize all members to the correct values and will help to avoid back-compatibility issues in the future. For example:

[SyscCouplingInterface](structSyscCouplingInterface.xhtml) reg = [syscGetCouplingInterface](group__SyscParticipantLibraryCAPI.xhtml#gae356c9cb4c0dd69f5e1ea9eef6a7c63b)("FSI"); 

[syscGetCouplingInterface](group__SyscParticipantLibraryCAPI.xhtml#gae356c9cb4c0dd69f5e1ea9eef6a7c63b)

SyscCouplingInterface syscGetCouplingInterface(const char *name)

Create a coupling interface.



[SyscCouplingInterface](structSyscCouplingInterface.xhtml)

Provide a struct for a coupling interface.

**Definition:** [syscCouplingInterface.h:45](syscCouplingInterface_8h_source.xhtml#l00045)





 



<a id="ga8e23d76b7478495ca52b0e1f719607fc"></a>## [◆ ](#ga8e23d76b7478495ca52b0e1f719607fc)SyscDataTransfer

 typedef struct [SyscDataTransfer](structSyscDataTransfer.xhtml) [SyscDataTransfer](structSyscDataTransfer.xhtml)

Provide a struct for a data transfer.

Data transfer specifies the source and target variables for mapping.





<a id="ga17ef60969b3c919163ba2471eb95a28b"></a>## [◆ ](#ga17ef60969b3c919163ba2471eb95a28b)SyscOpaqueDataAccess

 typedef void\* [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)

Declare an opaque pointer type.

Definition at line [156](syscCommonTypes_8h_source.xhtml#l00156) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).





<a id="gac5687e76cd2c5d1249d8b3ac43ff29b4"></a>## [◆ ](#gac5687e76cd2c5d1249d8b3ac43ff29b4)SyscRegion

 typedef struct [SyscRegion](structSyscRegion.xhtml) [SyscRegion](structSyscRegion.xhtml)

Provide a struct for a System Coupling region.

Participant can declare which regions can be used in the coupled analysis. Each region can declare its input variables and output variables. Input variables represent physical quantities whose values the participant expects System Coupling to provide. Output variables represent physical quantities whose values System Coupling expects the participant to provide.

To create and/or initialize the [SyscRegion](structSyscRegion.xhtml "Provide a struct for a System Coupling region.") struct, it is highly recommended to use one of the functions with names starting with `syscGetRegion`. These functions will initialize all members to the correct values and will help to avoid back-compatibility issues in the future. For example:

[SyscRegion](structSyscRegion.xhtml) reg = [syscGetRegionT](group__SyscParticipantLibraryCAPI.xhtml#ga26c8d2435b5cd3c525d5221298ad3aaa)("Wall", [SyscSurface](group__SyscParticipantLibraryCAPI.xhtml#ggabf36499a0f333dc9b856c4bcbb25385aa8247153584a945a1be42cfea251acbdb));

[syscGetRegionT](group__SyscParticipantLibraryCAPI.xhtml#ga26c8d2435b5cd3c525d5221298ad3aaa)

SyscRegion syscGetRegionT(const char *name, enum SyscTopology topology)

Create region to be used in a coupled analysis.



[SyscSurface](group__SyscParticipantLibraryCAPI.xhtml#ggabf36499a0f333dc9b856c4bcbb25385aa8247153584a945a1be42cfea251acbdb)

@ SyscSurface

**Definition:** [syscCommonTypes.h:39](syscCommonTypes_8h_source.xhtml#l00039)



[SyscRegion](structSyscRegion.xhtml)

Provide a struct for a System Coupling region.

**Definition:** [syscRegion.h:42](syscRegion_8h_source.xhtml#l00042)





 



<a id="ga6d3934571a8dcc03e2ecbe724a808c1b"></a>## [◆ ](#ga6d3934571a8dcc03e2ecbe724a808c1b)SyscRestartPointCreation

 typedef const char\*(\* SyscRestartPointCreation) ()

Provide function prototype for creating restart points.

This function may be called only during outputs update, and is expected to return a unique string identifier for a given restart point.

Definition at line [263](syscFunctionTypes_8h_source.xhtml#l00263) of file [syscFunctionTypes.h](syscFunctionTypes_8h_source.xhtml).





<a id="ga97036eb61b15d6efd5f9602bd19bb562"></a>## [◆ ](#ga97036eb61b15d6efd5f9602bd19bb562)SyscSetupFileInfo

 typedef struct [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml) [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml)

Provide a structure for writing System Coupling setup files.

To create and/or initialize the [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml "Provide a structure for writing System Coupling setup files.") struct, it is highly recommended to use `syscGetSetupFileInfo` function. This function will initialize all members to the correct values and will help to avoid back-compatibility issues in the future. For example:

[SyscSetupFileInfo](structSyscSetupFileInfo.xhtml) setupFileInfo = [syscGetSetupFileInfo](group__SyscParticipantLibraryCAPI.xhtml#gac80fa7c7f1ebe9a8d9ef3c4f90d274eb)("setup.scp");

[syscGetSetupFileInfo](group__SyscParticipantLibraryCAPI.xhtml#gac80fa7c7f1ebe9a8d9ef3c4f90d274eb)

SyscSetupFileInfo syscGetSetupFileInfo(const char *setupFileName)

Provide a function to create SetupFileInfo struct.



[SyscSetupFileInfo](structSyscSetupFileInfo.xhtml)

Provide a structure for writing System Coupling setup files.

**Definition:** [syscCommonTypes.h:256](syscCommonTypes_8h_source.xhtml#l00256)





 



<a id="ga80be2caaea1dd7e82a2da155c7283875"></a>## [◆ ](#ga80be2caaea1dd7e82a2da155c7283875)SyscSetupInfo

 typedef struct [SyscSetupInfo](structSyscSetupInfo.xhtml) [SyscSetupInfo](structSyscSetupInfo.xhtml)

Provide a structure for System Coupling setup information.

To create and/or initialize the [SyscSetupInfo](structSyscSetupInfo.xhtml "Provide a structure for System Coupling setup information.") struct, it is highly recommended to use one of the functions with names starting with `syscGetSetupInfo`. These functions will initialize all members to the correct values and will help to avoid back-compatibility issues in the future. For example:

[SyscSetupInfo](structSyscSetupInfo.xhtml) setupInfo = [syscGetSetupInfoA](group__SyscParticipantLibraryCAPI.xhtml#gae399cbc645966a48cc2928bb51018d9b)([SyscSteady](group__SyscParticipantLibraryCAPI.xhtml#gga7d5b3786948265c902f7231abe6d79b5ad0d53c33e61857fdfe41e2501eebc8dd)); 

[syscGetSetupInfoA](group__SyscParticipantLibraryCAPI.xhtml#gae399cbc645966a48cc2928bb51018d9b)

SyscSetupInfo syscGetSetupInfoA(enum SyscAnalysisType analysisType)

Create a setup info struct.



[SyscSteady](group__SyscParticipantLibraryCAPI.xhtml#gga7d5b3786948265c902f7231abe6d79b5ad0d53c33e61857fdfe41e2501eebc8dd)

@ SyscSteady

**Definition:** [syscCommonTypes.h:119](syscCommonTypes_8h_source.xhtml#l00119)



[SyscSetupInfo](structSyscSetupInfo.xhtml)

Provide a structure for System Coupling setup information.

**Definition:** [syscCommonTypes.h:172](syscCommonTypes_8h_source.xhtml#l00172)





 



<a id="ga7a8d294476240d2f3844a608e71efe29"></a>## [◆ ](#ga7a8d294476240d2f3844a608e71efe29)SyscVariable

 typedef struct [SyscVariable](structSyscVariable.xhtml) [SyscVariable](structSyscVariable.xhtml)

Provide a struct for a System Coupling variable.

To create and/or initialize the [SyscVariable](structSyscVariable.xhtml "Provide a struct for a System Coupling variable.") struct, it is highly recommended to use one of the functions with names starting with `syscGetVariable`. These functions will initialize all members to the correct values and will help to avoid back-compatibility issues in the future. For example:

[SyscVariable](structSyscVariable.xhtml) var = [syscGetVariableTE](group__SyscParticipantLibraryCAPI.xhtml#ga3aceb66e0d37a5de11b76fd4c1d7293d)(

 "Temperature", [SyscScalar](group__SyscParticipantLibraryCAPI.xhtml#gga007e2fd66e7263a63c114a6d12b3808dacb8fa2f95d3959accf13d5f9da32bec2), 0, [SyscNode](group__SyscParticipantLibraryCAPI.xhtml#ggade42aba1a68acbbf5956edcd388cdcdaae4692f269a846a3f5bec23a9e61f0b8b));

[syscGetVariableTE](group__SyscParticipantLibraryCAPI.xhtml#ga3aceb66e0d37a5de11b76fd4c1d7293d)

SyscVariable syscGetVariableTE(const char *name, enum SyscTensorType tensorType, int isExtensive, enum SyscLocation location)

Create variable to be used in a coupled analysis.



[SyscScalar](group__SyscParticipantLibraryCAPI.xhtml#gga007e2fd66e7263a63c114a6d12b3808dacb8fa2f95d3959accf13d5f9da32bec2)

@ SyscScalar

**Definition:** [syscCommonTypes.h:33](syscCommonTypes_8h_source.xhtml#l00033)



[SyscNode](group__SyscParticipantLibraryCAPI.xhtml#ggade42aba1a68acbbf5956edcd388cdcdaae4692f269a846a3f5bec23a9e61f0b8b)

@ SyscNode

**Definition:** [syscCommonTypes.h:27](syscCommonTypes_8h_source.xhtml#l00027)



[SyscVariable](structSyscVariable.xhtml)

Provide a struct for a System Coupling variable.

**Definition:** [syscVariable.h:37](syscVariable_8h_source.xhtml#l00037)





 



## Enumeration Type Documentation

<a id="ga7d5b3786948265c902f7231abe6d79b5"></a>## [◆ ](#ga7d5b3786948265c902f7231abe6d79b5)SyscAnalysisType

 enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5)

Provide an enum for coupled analysis type.

Enumerator<a id="gga7d5b3786948265c902f7231abe6d79b5ad0d53c33e61857fdfe41e2501eebc8dd"></a>SyscSteady Steady analysis type.

<a id="gga7d5b3786948265c902f7231abe6d79b5ac22067ff2e9230dd35621612f4ab4365"></a>SyscTransient Transient (unsteady) analysis type.

Definition at line [118](syscCommonTypes_8h_source.xhtml#l00118) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).

<a name="l00118"></a> 118 {

<a name="l00119"></a> 119 [SyscSteady](group__SyscParticipantLibraryCAPI.xhtml#gga7d5b3786948265c902f7231abe6d79b5ad0d53c33e61857fdfe41e2501eebc8dd) = 0, 

<a name="l00120"></a> 120 [SyscTransient](group__SyscParticipantLibraryCAPI.xhtml#gga7d5b3786948265c902f7231abe6d79b5ac22067ff2e9230dd35621612f4ab4365) = 1 

<a name="l00121"></a> 121 };

[SyscTransient](group__SyscParticipantLibraryCAPI.xhtml#gga7d5b3786948265c902f7231abe6d79b5ac22067ff2e9230dd35621612f4ab4365)

@ SyscTransient

**Definition:** [syscCommonTypes.h:120](syscCommonTypes_8h_source.xhtml#l00121)









<a id="gab18060c2493ddba0678016696642f005"></a>## [◆ ](#gab18060c2493ddba0678016696642f005)SyscElementTypes

 enum [SyscElementTypes](group__SyscParticipantLibraryCAPI.xhtml#gab18060c2493ddba0678016696642f005)

Provide an enum for element types.

Tri3: Trilateral element with corner nodes only.

```
         *2 
        / \    
       /   \   
      /     \
     /       \ 
    /         \      
  0*-----------*1
```

Tri6: Trilateral element with corner and mid-side nodes.

```
         *2 
        / \    
       /   \   
     5*     *4
     /       \ 
    /         \      
  0*-----*-----*1        
         3
```

Quad4: Quadrilateral element with corner nodes only.

```
  3*-----------*2
   |           | 
   |           | 
   |           | 
   |           |
   |           |
   |           |
   |           |
  0*-----------*1
```

Quad8: Quadrilateral element with corner and mid-side nodes.

```
         6
  3*-----*-----*2
   |           | 
   |           | 
   |           | 
  7*           *5
   |           |
   |           |
   |           |
  0*-----*-----*1
         4 
```

 Tet4: Tetrahedral element with corner nodes only.

```
        3
        *            
       /|\           
      / | \          
     /  |  \
    /   |   \        
   /    |    \       
 0*- - -|- - -*2     
   \    |    /       
    \   |   /        
     \  |  /        
      \ | /          
       \|/           
        *1           
```

Tet10: Tetrahedral element with corner and mid-side nodes.

```
        3
        *              
       /|\             
      / | \            
    7*  |  *9          
    /   |   \          
   /    *8   \         
 0*- - *|- - -*2       
   \   6|    /         
    \   |   /          
    4*  |  *5          
      \ | /            
       \|/             
        *1             
```

 Hex8: Hexahedral element with corner nodes only.

```
    7*-----------*6 
    /|          /|  
   /           / |  
  /  |        /  |  
 /   |       /   |
/    |      /    |  
```

 4\*--------—\*5 |   
 | | | |   
 | 3\*- - -|- - -\*2 | / | /   
 | | /   
 | / | /   
 | | /   
 |/ |/   
 0\*--------—\*1

Hex20: Hexahedral element with corner and mid-side nodes.

```
          14             
    7*-----*-----*6   
    /|          /|   
   /           / |     
15*  |      13*  |    
 /   *19     /   *18     
/  12|      /    |     
```

 4\*--—\*--—\*5 |   
 | | | |   
 | 3\*- - \*|- - -\*2 | / 10| / 16\* *17 / | \*11 | \*9 | | / |/ |/ 0*--—\*--—\*1 8

Wedge6: Wedge element with corner nodes only.

```
  3*-----------*5
   |\         /|
   | \       / |
   |  \     /  |
   |   \   /   |
   |    \ /    |
   |     *4    |
   |     |     |
  0*- - -|- - -*2
    \    |    /
     \   |   /
      \  |  /
       \ | /
        \|/
         *
         1
```

Wedge15: Wedge element with corner and mid-side nodes.

```
        11
  3*-----*-----*5
   |\         /|
   | \       / |
   |  *9  10*  |
 12*   \   /   *14
   |    \ /    |
   |     *4    |
   |     |     |
  0*- - -|*8- -*2
    \    |    /
     \ 13*   /
     6*  |  *7
       \ | /
        \|/
         *
         1
```

 Pyramid5: Pyramid element with corner nodes only.

```
             *4                           4
            /|\                           *
           / | \                         /|\
          /  |  \                       // \\
         /   |   \                     / | | \
        /    |    \                   / /   \ \
      3*- - -|- - -*2                /  |   |  \
      /      |    /                 /  /     \  \
     /       |   /                3*- -|- - -|- -*2
    /        |  /                  |  /       \  |
   /         | /                   |  |       |  |
  /          |/                    | /         \ |
0*-----------*1                    | |         | |
                                   |/           \|
                                   *-------------*
                                   0             1
```

Pyramid13: Pyramid element with corner and mid-side nodes.

```
             *4                           4
            /|\                           *
           / | \                         /|\
        12*  |  *11                     // \\
         /   |   \                     / | | \
        /    |7   \                 12* /   \ *11
      3*- - -|* - -*2                /  |   |  \
      /      *10  /                 /  /  7  \  \
     /       |   /                3*- -|- * -|- -*2
  8 *        |  * 6                |  *9    10*  |
   /         | /                   |  |       |  |
  /          |/                   8* /         \ *6
0*-----*-----*1                    | |         | |
     5                             |/           \|
                                   *------*------*
                                   0      5      1
```

 Polygon: Arbitrary polygon.

Polyhedron: Arbitrary polyhedron.

Enumerator<a id="ggab18060c2493ddba0678016696642f005a77470006c9f90e0699d34cb4529977bd"></a>SyscTri3 Trilateral element with corner nodes only.

<a id="ggab18060c2493ddba0678016696642f005ad973b33a8c615a7088218bb68c95cef1"></a>SyscTri6 Trilateral element with corner and mid-side nodes.

<a id="ggab18060c2493ddba0678016696642f005ac829eb996aacda6977a2633d3d4b6ae0"></a>SyscQuad4 Quadrilateral element with corner nodes only.

<a id="ggab18060c2493ddba0678016696642f005aefd1fe32f0987d59a023071a8d6729a9"></a>SyscQuad8 Quadrilateral element with corner and mid-side nodes.

<a id="ggab18060c2493ddba0678016696642f005afb767ddc846b275cc9f06f4c552ef8ea"></a>SyscTet4 Tetrahedral element with corner nodes only.

<a id="ggab18060c2493ddba0678016696642f005a706ca034c9b7e05f8f2a87301b72a6be"></a>SyscTet10 Tetrahedral element with corner and mid-side nodes.

<a id="ggab18060c2493ddba0678016696642f005a15bbc3ed5ebf288d89e4e9af7ce9e0ae"></a>SyscHex8 Hexahedral element with corner nodes only.

<a id="ggab18060c2493ddba0678016696642f005a4eaa66437832a76bdcbc92a727dfedd1"></a>SyscHex20 Hexahedral element with corner and mid-side nodes.

<a id="ggab18060c2493ddba0678016696642f005a05727b1e9b0ab410f1d5f9c31337b508"></a>SyscWedge6 Wedge element with corner nodes only.

<a id="ggab18060c2493ddba0678016696642f005a53a4340e11f6e1a6b75f084f2518649a"></a>SyscWedge15 Wedge element with corner and mid-side nodes.

<a id="ggab18060c2493ddba0678016696642f005a6389c588d45313437139bcea52d94866"></a>SyscPyramid5 Pyramid element with corner nodes only.

<a id="ggab18060c2493ddba0678016696642f005a366c507804e6022a52b6f38852861b1b"></a>SyscPyramid13 Pyramid element with corner and mid-side nodes.

<a id="ggab18060c2493ddba0678016696642f005ac46af723ae879263d8c74a0cd91dfb9e"></a>SyscPolygon Arbitrary polygon.

<a id="ggab18060c2493ddba0678016696642f005aa1667251e6eb0b96ab2b003591a8983f"></a>SyscPolyhedron Arbitrary polyhedron.

Definition at line [236](syscElementTypes_8h_source.xhtml#l00236) of file [syscElementTypes.h](syscElementTypes_8h_source.xhtml).

<a name="l00236"></a> 236 {

<a name="l00237"></a> 237 [SyscTri3](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a77470006c9f90e0699d34cb4529977bd) = 5, 

<a name="l00238"></a> 238 [SyscTri6](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ad973b33a8c615a7088218bb68c95cef1) = 6, 

<a name="l00239"></a> 239 [SyscQuad4](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ac829eb996aacda6977a2633d3d4b6ae0) = 7, 

<a name="l00240"></a> 240 [SyscQuad8](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005aefd1fe32f0987d59a023071a8d6729a9) = 8, 

<a name="l00241"></a> 241 [SyscTet4](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005afb767ddc846b275cc9f06f4c552ef8ea) = 9, 

<a name="l00242"></a> 242 [SyscTet10](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a706ca034c9b7e05f8f2a87301b72a6be) = 10, 

<a name="l00243"></a> 243 [SyscHex8](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a15bbc3ed5ebf288d89e4e9af7ce9e0ae) = 11, 

<a name="l00244"></a> 244 [SyscHex20](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a4eaa66437832a76bdcbc92a727dfedd1) = 12, 

<a name="l00245"></a> 245 [SyscWedge6](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a05727b1e9b0ab410f1d5f9c31337b508) = 13, 

<a name="l00246"></a> 246 [SyscWedge15](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a53a4340e11f6e1a6b75f084f2518649a) = 14, 

<a name="l00247"></a> 247 [SyscPyramid5](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a6389c588d45313437139bcea52d94866) = 15, 

<a name="l00248"></a> 248 [SyscPyramid13](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a366c507804e6022a52b6f38852861b1b) = 16, 

<a name="l00249"></a> 249 [SyscPolygon](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ac46af723ae879263d8c74a0cd91dfb9e) = 18, 

<a name="l00250"></a> 250 [SyscPolyhedron](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005aa1667251e6eb0b96ab2b003591a8983f) = 19 

<a name="l00251"></a> 251 };

[SyscWedge6](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a05727b1e9b0ab410f1d5f9c31337b508)

@ SyscWedge6

**Definition:** [syscElementTypes.h:245](syscElementTypes_8h_source.xhtml#l00245)



[SyscHex8](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a15bbc3ed5ebf288d89e4e9af7ce9e0ae)

@ SyscHex8

**Definition:** [syscElementTypes.h:243](syscElementTypes_8h_source.xhtml#l00243)



[SyscPyramid13](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a366c507804e6022a52b6f38852861b1b)

@ SyscPyramid13

**Definition:** [syscElementTypes.h:248](syscElementTypes_8h_source.xhtml#l00248)



[SyscHex20](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a4eaa66437832a76bdcbc92a727dfedd1)

@ SyscHex20

**Definition:** [syscElementTypes.h:244](syscElementTypes_8h_source.xhtml#l00244)



[SyscWedge15](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a53a4340e11f6e1a6b75f084f2518649a)

@ SyscWedge15

**Definition:** [syscElementTypes.h:246](syscElementTypes_8h_source.xhtml#l00246)



[SyscPyramid5](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a6389c588d45313437139bcea52d94866)

@ SyscPyramid5

**Definition:** [syscElementTypes.h:247](syscElementTypes_8h_source.xhtml#l00247)



[SyscTet10](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a706ca034c9b7e05f8f2a87301b72a6be)

@ SyscTet10

**Definition:** [syscElementTypes.h:242](syscElementTypes_8h_source.xhtml#l00242)



[SyscTri3](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005a77470006c9f90e0699d34cb4529977bd)

@ SyscTri3

**Definition:** [syscElementTypes.h:237](syscElementTypes_8h_source.xhtml#l00237)



[SyscPolyhedron](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005aa1667251e6eb0b96ab2b003591a8983f)

@ SyscPolyhedron

**Definition:** [syscElementTypes.h:250](syscElementTypes_8h_source.xhtml#l00251)



[SyscPolygon](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ac46af723ae879263d8c74a0cd91dfb9e)

@ SyscPolygon

**Definition:** [syscElementTypes.h:249](syscElementTypes_8h_source.xhtml#l00249)



[SyscQuad4](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ac829eb996aacda6977a2633d3d4b6ae0)

@ SyscQuad4

**Definition:** [syscElementTypes.h:239](syscElementTypes_8h_source.xhtml#l00239)



[SyscTri6](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005ad973b33a8c615a7088218bb68c95cef1)

@ SyscTri6

**Definition:** [syscElementTypes.h:238](syscElementTypes_8h_source.xhtml#l00238)



[SyscQuad8](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005aefd1fe32f0987d59a023071a8d6729a9)

@ SyscQuad8

**Definition:** [syscElementTypes.h:240](syscElementTypes_8h_source.xhtml#l00240)



[SyscTet4](group__SyscParticipantLibraryCAPI.xhtml#ggab18060c2493ddba0678016696642f005afb767ddc846b275cc9f06f4c552ef8ea)

@ SyscTet4

**Definition:** [syscElementTypes.h:241](syscElementTypes_8h_source.xhtml#l00241)









<a id="gade42aba1a68acbbf5956edcd388cdcda"></a>## [◆ ](#gade42aba1a68acbbf5956edcd388cdcda)SyscLocation

 enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda)

Provide an enum for variable mesh locations.

Enumerator<a id="ggade42aba1a68acbbf5956edcd388cdcdaae4692f269a846a3f5bec23a9e61f0b8b"></a>SyscNode Nodal data.

<a id="ggade42aba1a68acbbf5956edcd388cdcdaa0a0e08aa104422e8676637671cf2a482"></a>SyscElement Data on elements.

Definition at line [26](syscCommonTypes_8h_source.xhtml#l00026) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).

<a name="l00026"></a> 26 {

<a name="l00027"></a> 27 [SyscNode](group__SyscParticipantLibraryCAPI.xhtml#ggade42aba1a68acbbf5956edcd388cdcdaae4692f269a846a3f5bec23a9e61f0b8b) = 0, 

<a name="l00028"></a> 28 [SyscElement](group__SyscParticipantLibraryCAPI.xhtml#ggade42aba1a68acbbf5956edcd388cdcdaa0a0e08aa104422e8676637671cf2a482) = 1 

<a name="l00029"></a> 29 };

[SyscElement](group__SyscParticipantLibraryCAPI.xhtml#ggade42aba1a68acbbf5956edcd388cdcdaa0a0e08aa104422e8676637671cf2a482)

@ SyscElement

**Definition:** [syscCommonTypes.h:28](syscCommonTypes_8h_source.xhtml#l00029)









<a id="gade3becc3625d881bdd988111e0895a3c"></a>## [◆ ](#gade3becc3625d881bdd988111e0895a3c)SyscPrimitiveType

 enum [SyscPrimitiveType](group__SyscParticipantLibraryCAPI.xhtml#gade3becc3625d881bdd988111e0895a3c)

Provide an enum for supported primitive types.

Enumerator<a id="ggade3becc3625d881bdd988111e0895a3ca6ecfee4aefddc0fd0e974f4949883f0f"></a>SyscFloat Single-precision floating point type.

<a id="ggade3becc3625d881bdd988111e0895a3ca3c8390a23ce87c17dcaffccfd72fe344"></a>SyscDouble Double-precision floating point type.

<a id="ggade3becc3625d881bdd988111e0895a3ca21752be8ce378ed3c47cddd1210657f2"></a>SyscInt32 Signed 32-bit integer.

<a id="ggade3becc3625d881bdd988111e0895a3cad2b2abd943a30d3ec7509f53cb5b1239"></a>SyscInt64 Signed 64-bit integer.

<a id="ggade3becc3625d881bdd988111e0895a3cadd05bd1ee15d3dd17e7836e2a96c4f52"></a>SyscUnsignedInt16 Unsigned 16-bit integer.

<a id="ggade3becc3625d881bdd988111e0895a3caba28d71a9abf40c318a16365a2eb091c"></a>SyscUnsignedInt64 Unsigned 64-bit integer.

Definition at line [147](syscCommonTypes_8h_source.xhtml#l00147) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).

<a name="l00147"></a> 147 {

<a name="l00148"></a> 148 [SyscFloat](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca6ecfee4aefddc0fd0e974f4949883f0f) = 0, 

<a name="l00149"></a> 149 [SyscDouble](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca3c8390a23ce87c17dcaffccfd72fe344) = 1, 

<a name="l00150"></a> 150 [SyscInt32](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca21752be8ce378ed3c47cddd1210657f2) = 2, 

<a name="l00151"></a> 151 [SyscInt64](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3cad2b2abd943a30d3ec7509f53cb5b1239) = 3, 

<a name="l00152"></a> 152 [SyscUnsignedInt16](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3cadd05bd1ee15d3dd17e7836e2a96c4f52) = 4, 

<a name="l00153"></a> 153 [SyscUnsignedInt64](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3caba28d71a9abf40c318a16365a2eb091c) = 5 

<a name="l00154"></a> 154 };

[SyscInt32](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca21752be8ce378ed3c47cddd1210657f2)

@ SyscInt32

**Definition:** [syscCommonTypes.h:150](syscCommonTypes_8h_source.xhtml#l00150)



[SyscDouble](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca3c8390a23ce87c17dcaffccfd72fe344)

@ SyscDouble

**Definition:** [syscCommonTypes.h:149](syscCommonTypes_8h_source.xhtml#l00149)



[SyscFloat](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3ca6ecfee4aefddc0fd0e974f4949883f0f)

@ SyscFloat

**Definition:** [syscCommonTypes.h:148](syscCommonTypes_8h_source.xhtml#l00148)



[SyscUnsignedInt64](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3caba28d71a9abf40c318a16365a2eb091c)

@ SyscUnsignedInt64

**Definition:** [syscCommonTypes.h:153](syscCommonTypes_8h_source.xhtml#l00154)



[SyscInt64](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3cad2b2abd943a30d3ec7509f53cb5b1239)

@ SyscInt64

**Definition:** [syscCommonTypes.h:151](syscCommonTypes_8h_source.xhtml#l00151)



[SyscUnsignedInt16](group__SyscParticipantLibraryCAPI.xhtml#ggade3becc3625d881bdd988111e0895a3cadd05bd1ee15d3dd17e7836e2a96c4f52)

@ SyscUnsignedInt16

**Definition:** [syscCommonTypes.h:152](syscCommonTypes_8h_source.xhtml#l00152)









<a id="gaa28a3de6c7c91003a8a15721a5301f12"></a>## [◆ ](#gaa28a3de6c7c91003a8a15721a5301f12)SyscQuantityType

 enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12)

Provide an enum for supported quantity types.

Quantity type provides information about the physical meaning of the variable. This can be useful for detecting validation errors during the coupled analysis setup. If the variable does not match any of the provided quantity types, quantity type can be set to unspecified.

Definition at line [91](syscCommonTypes_8h_source.xhtml#l00091) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).

<a name="l00091"></a> 91 {

<a name="l00092"></a> 92 SyscUnspecified = 0,

<a name="l00093"></a> 93 SyscForce = 1,

<a name="l00094"></a> 94 SyscIncrementalDisplacement = 2,

<a name="l00095"></a> 95 SyscTemperature = 3,

<a name="l00096"></a> 96 SyscHeatRate = 4,

<a name="l00097"></a> 97 SyscHeatTransferCoefficient = 5,

<a name="l00098"></a> 98 SyscConvectionReferenceTemperature = 6,

<a name="l00099"></a> 99 SyscModeShape = 7,

<a name="l00100"></a> 100 SyscElectricalConductivity = 8

<a name="l00101"></a> 101 };







<a id="ga83942e23c7ff51ec76e4632612a34d45"></a>## [◆ ](#ga83942e23c7ff51ec76e4632612a34d45)SyscRegionDiscretizationType

 enum [SyscRegionDiscretizationType](group__SyscParticipantLibraryCAPI.xhtml#ga83942e23c7ff51ec76e4632612a34d45)

Provide an enum for region mesh type.

Enumerator<a id="gga83942e23c7ff51ec76e4632612a34d45a8693102131c222ff51685d060bc8d1d3"></a>SyscMeshRegion Mesh region discretization.

<a id="gga83942e23c7ff51ec76e4632612a34d45a72b4ce23e1c7d4a5981f5ffe6a1928b6"></a>SyscPointCloudRegion Point cloud region discretization.

Definition at line [44](syscCommonTypes_8h_source.xhtml#l00044) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).

<a name="l00044"></a> 44 {

<a name="l00045"></a> 45 [SyscMeshRegion](group__SyscParticipantLibraryCAPI.xhtml#gga83942e23c7ff51ec76e4632612a34d45a8693102131c222ff51685d060bc8d1d3) = 0, 

<a name="l00046"></a> 46 [SyscPointCloudRegion](group__SyscParticipantLibraryCAPI.xhtml#gga83942e23c7ff51ec76e4632612a34d45a72b4ce23e1c7d4a5981f5ffe6a1928b6) = 1 

<a name="l00047"></a> 47 };

[SyscPointCloudRegion](group__SyscParticipantLibraryCAPI.xhtml#gga83942e23c7ff51ec76e4632612a34d45a72b4ce23e1c7d4a5981f5ffe6a1928b6)

@ SyscPointCloudRegion

**Definition:** [syscCommonTypes.h:46](syscCommonTypes_8h_source.xhtml#l00047)



[SyscMeshRegion](group__SyscParticipantLibraryCAPI.xhtml#gga83942e23c7ff51ec76e4632612a34d45a8693102131c222ff51685d060bc8d1d3)

@ SyscMeshRegion

**Definition:** [syscCommonTypes.h:45](syscCommonTypes_8h_source.xhtml#l00045)









<a id="ga007e2fd66e7263a63c114a6d12b3808d"></a>## [◆ ](#ga007e2fd66e7263a63c114a6d12b3808d)SyscTensorType

 enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d)

Provide an enum for variable tensor type.

Enumerator<a id="gga007e2fd66e7263a63c114a6d12b3808dacb8fa2f95d3959accf13d5f9da32bec2"></a>SyscScalar Scalar

<a id="gga007e2fd66e7263a63c114a6d12b3808da7b45d832dc633190003739983e661ea1"></a>SyscVector Vector

Definition at line [32](syscCommonTypes_8h_source.xhtml#l00032) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).

<a name="l00032"></a> 32 {

<a name="l00033"></a> 33 [SyscScalar](group__SyscParticipantLibraryCAPI.xhtml#gga007e2fd66e7263a63c114a6d12b3808dacb8fa2f95d3959accf13d5f9da32bec2) = 0, 

<a name="l00034"></a> 34 [SyscVector](group__SyscParticipantLibraryCAPI.xhtml#gga007e2fd66e7263a63c114a6d12b3808da7b45d832dc633190003739983e661ea1) = 1 

<a name="l00035"></a> 35 };

[SyscVector](group__SyscParticipantLibraryCAPI.xhtml#gga007e2fd66e7263a63c114a6d12b3808da7b45d832dc633190003739983e661ea1)

@ SyscVector

**Definition:** [syscCommonTypes.h:34](syscCommonTypes_8h_source.xhtml#l00035)









<a id="gabf36499a0f333dc9b856c4bcbb25385a"></a>## [◆ ](#gabf36499a0f333dc9b856c4bcbb25385a)SyscTopology

 enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a)

Provide an enum for region topologies.

Enumerator<a id="ggabf36499a0f333dc9b856c4bcbb25385aa8247153584a945a1be42cfea251acbdb"></a>SyscSurface Surface topology.

<a id="ggabf36499a0f333dc9b856c4bcbb25385aa38f18def976473946d3405a115fbd6d0"></a>SyscVolume Volume topology.

Definition at line [38](syscCommonTypes_8h_source.xhtml#l00038) of file [syscCommonTypes.h](syscCommonTypes_8h_source.xhtml).

<a name="l00038"></a> 38 {

<a name="l00039"></a> 39 [SyscSurface](group__SyscParticipantLibraryCAPI.xhtml#ggabf36499a0f333dc9b856c4bcbb25385aa8247153584a945a1be42cfea251acbdb) = 2, 

<a name="l00040"></a> 40 [SyscVolume](group__SyscParticipantLibraryCAPI.xhtml#ggabf36499a0f333dc9b856c4bcbb25385aa38f18def976473946d3405a115fbd6d0) = 3 

<a name="l00041"></a> 41 };

[SyscVolume](group__SyscParticipantLibraryCAPI.xhtml#ggabf36499a0f333dc9b856c4bcbb25385aa38f18def976473946d3405a115fbd6d0)

@ SyscVolume

**Definition:** [syscCommonTypes.h:40](syscCommonTypes_8h_source.xhtml#l00041)









## Function Documentation

<a id="ga5330416d093678fc96231257a88ea337"></a>## [◆ ](#ga5330416d093678fc96231257a88ea337)syscAddCouplingInterface()

 [SyscError](structSyscError.xhtml) syscAddCouplingInterface  ( const [SyscCouplingInterface](structSyscCouplingInterface.xhtml)  *couplingInterface*) 

Provide a function to add a coupling interface.

If this coupling interface has already been added, then this call will have no effect.

If a different coupling interface with the same has already been added, then an error status will be returned.

If the coupling interface name contains invalid characters, then an error status will be returned.

See [SyscCouplingInterface](structSyscCouplingInterface.xhtml "Provide a struct for a coupling interface.") for more details.





<a id="gadec9e44f001d4ec2b8139e096ab93ac7"></a>## [◆ ](#gadec9e44f001d4ec2b8139e096ab93ac7)syscAddCouplingInterfaceA()

 [SyscError](structSyscError.xhtml) syscAddCouplingInterfaceA  ( const [SyscCouplingInterface](structSyscCouplingInterface.xhtml)  *couplingInterface*,    int  *autoGenerateDataTransfers*   ) 

Provide a function to add a coupling interface.

If this coupling interface has already been added, then this call will have no effect.

If a different coupling interface with the same has already been added, then an error status will be returned.

If the coupling interface name contains invalid characters, then an error status will be returned.

See [SyscCouplingInterface](structSyscCouplingInterface.xhtml "Provide a struct for a coupling interface.") for more details.





<a id="ga360d447bbaffa2035ddd9675457027cc"></a>## [◆ ](#ga360d447bbaffa2035ddd9675457027cc)syscAddInputParameter()

 [SyscError](structSyscError.xhtml) syscAddInputParameter  ( const [SyscParameter](structSyscParameter.xhtml)  *parameter*) 

Provide a method to add an input parameter that could be used in a coupled analysis.

If this parameter has already been added as an input solver parameter, then this call will have no effect.

If a different parameter with the same name has already been added as an input parameter, then a runtime error will be thrown.

If a parameter with the same name has already been added as an output parameter, then a runtime error will be thrown.

If the parameter name contains invalid characters, a runtime error will be thrown.

Parameters parameterParameter whose values are provided by System Coupling and consumed by the participant. 



<a id="ga9ae6fafcce6987fa18ba762a1ee7a7be"></a>## [◆ ](#ga9ae6fafcce6987fa18ba762a1ee7a7be)syscAddInputVariable()

 [SyscError](structSyscError.xhtml) syscAddInputVariable  ( const [SyscRegion](structSyscRegion.xhtml)  *region*,    const [SyscVariable](structSyscVariable.xhtml)  *variable*   ) 

Provide a function to add an input variable to the region.

If this variable has already been added to the region as an input variable, then this call will have no effect.

If a different variable with the same name has already been added to the region as an input variable, then an error will be returned.

If a variable with the same name has already been added to the region as an output variable, then an error will be returned.

If the variable name contains invalid characters, then an error will be returned.

If the region discretization type is point cloud, then the location of the variable added to this region is insignificant.

Parameters \[in\]regionRegion to which the input variable is to be added.\[in\]variableVariable whose values are provided by System Coupling and consumed by the participant. 



<a id="ga7ef7712e40081015520c18ae54509930"></a>## [◆ ](#ga7ef7712e40081015520c18ae54509930)syscAddIntegerAttribute()

 [SyscError](structSyscError.xhtml) syscAddIntegerAttribute  ( const [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml)  *attribute*) 

Provide a method to add an integer attribute that could be used in a coupled analysis.

If this attribute has already been added as an integer attribute, then this call will have no effect.

If a different integer attribute with the same name has already been added, then a runtime error will be thrown.

If a an attribute with the same name has already been added as a real attribute, then a runtime error will be thrown.

If the attribute name contains invalid characters, a runtime error will be thrown.

Parameters attributeInteger attribute. 



<a id="gaf25cfa8761182ab33ee1a58171ba8aff"></a>## [◆ ](#gaf25cfa8761182ab33ee1a58171ba8aff)syscAddOutputParameter()

 [SyscError](structSyscError.xhtml) syscAddOutputParameter  ( const [SyscParameter](structSyscParameter.xhtml)  *parameter*) 

Provide a method to add an output parameter that could be used in a coupled analysis.

If this parameter has already been added as an output solver parameter, then this call will have no effect.

If a different parameter with the same name has already been added as an output parameter, then a runtime error will be thrown.

If a parameter with the same name has already been added as an input parameter, then a runtime error will be thrown.

If the parameter name contains invalid characters, a runtime error will be thrown.

Parameters parameterParameter whose values are provided by System Coupling and consumed by the participant. 



<a id="ga9615f371d829935af745eb63a1ea99bc"></a>## [◆ ](#ga9615f371d829935af745eb63a1ea99bc)syscAddOutputVariable()

 [SyscError](structSyscError.xhtml) syscAddOutputVariable  ( const [SyscRegion](structSyscRegion.xhtml)  *region*,    const [SyscVariable](structSyscVariable.xhtml)  *variable*   ) 

Provide a function to add an output variable to the region.

If this variable has already been added to the region as an output variable, then this call will have no effect.

If a different variable with the same name has already been added to the region as an output variable, then an error will be returned.

If a variable with the same name has already been added to the region as an input variable, then an error will be returned.

If the variable name contains invalid characters, then an error will be returned.

If the region discretization type is point cloud, then the location of the variable added to this region is insignificant.

Parameters \[in\]regionRegion to which the output variable is to be added.\[in\]variableVariable whose values are consumed by System Coupling and provided by the participant. 



<a id="gad0272110e6eaf4c7f16bf96d3556106e"></a>## [◆ ](#gad0272110e6eaf4c7f16bf96d3556106e)syscAddRealAttribute()

 [SyscError](structSyscError.xhtml) syscAddRealAttribute  ( const [SyscRealAttribute](structSyscRealAttribute.xhtml)  *attribute*) 

Provide a method to add a real attribute that could be used in a coupled analysis.

If this attribute has already been added as a real attribute, then this call will have no effect.

If a different real attribute with the same name has already been added, then a runtime error will be thrown.

If a an attribute with the same name has already been added as an integer attribute, then a runtime error will be thrown.

If the attribute name contains invalid characters, a runtime error will be thrown.

Parameters attributeReal attribute. 



<a id="ga3c895512d255076ce0b7dcc0b527991b"></a>## [◆ ](#ga3c895512d255076ce0b7dcc0b527991b)syscAddRegion()

 [SyscError](structSyscError.xhtml) syscAddRegion  ( const [SyscRegion](structSyscRegion.xhtml)  *region*) 

Provide a function to add a region that could be used in a coupled analysis.

If this region has already been added, then this call will have no effect.

If a different region with the same has already been added, then an error will be returned.

If the region name contains invalid characters, then a runtime error will be thrown.





<a id="gaa8401af709fa7638f76f168aa05784a3"></a>## [◆ ](#gaa8401af709fa7638f76f168aa05784a3)syscAddSideOneRegion()

 [SyscError](structSyscError.xhtml) syscAddSideOneRegion  ( const [SyscCouplingInterface](structSyscCouplingInterface.xhtml)  *couplingInterface*,    const [SyscRegion](structSyscRegion.xhtml)  *region*   ) 

Add region to side one of the interface.

If this region has already been added to the interface on side one, then this call will have no effect.

If a different region with the same name has already been added to the interface on side one, then a runtime error will be thrown.

If a region with the same name has already been added to the interface on side two, then a runtime error will be thrown.

If the region name contains invalid characters, a runtime error will be thrown.

Parameters \[in\]couplingInterfaceCoupling interface to which the output variable is to be added.\[in\]regionRegion to be added to side one of the interface. 



<a id="ga3bbbec8ccb73b5da2997d2cdcd7abb6b"></a>## [◆ ](#ga3bbbec8ccb73b5da2997d2cdcd7abb6b)syscAddSideTwoRegion()

 [SyscError](structSyscError.xhtml) syscAddSideTwoRegion  ( const [SyscCouplingInterface](structSyscCouplingInterface.xhtml)  *couplingInterface*,    const [SyscRegion](structSyscRegion.xhtml)  *region*   ) 

Add region to side two of the interface.

If this region has already been added to the interface on side two, then this call will have no effect.

If a different region with the same name has already been added to the interface on side two, then a runtime error will be thrown.

If a region with the same name has already been added to the interface on side one, then a runtime error will be thrown.

If the region name contains invalid characters, a runtime error will be thrown.

Parameters \[in\]couplingInterfaceCoupling interface to which the output variable is to be added.\[in\]regionRegion to be added to side two of the interface. 



<a id="ga456487cb20f8a9b6c392eec4d0eaceb7"></a>## [◆ ](#ga456487cb20f8a9b6c392eec4d0eaceb7)syscCheckSurfaceMeshValidity()

 [SyscError](structSyscError.xhtml) syscCheckSurfaceMeshValidity  ( [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml)  *mesh*) 

Provide a function to perform simple mesh validity checks.

This function is provided as a testing and debugging tool and is not meant to be used in production workflows. System Coupling itself will not call this function for performance reasons.

The function will check the surface mesh for detectable problems. For example, it will check if array sizes are consistent, that elemNodeIds array only contains ids that are found in nodeIds array, etc. It is not an exhaustive validity check - the mesh can still have problems even if all checks passed.

ReturnsReturn value is [SyscError](structSyscError.xhtml "Provide a struct for detecting errors from the interface calls.") struct. If mesh checks passed, then retcode will be 0. If mesh checks failed, then retcode will be not 0 and message that contains information about about the particular issue. 



<a id="ga831884747873b947fcdc57ef31adce27"></a>## [◆ ](#ga831884747873b947fcdc57ef31adce27)syscCompleteSetup()

 [SyscError](structSyscError.xhtml) syscCompleteSetup  ( const [SyscSetupInfo](structSyscSetupInfo.xhtml)  *setupInfo*) 

Provide a function to notify System Coupling that setup can be completed.

After this function is called, coupled analysis setup can no longer be updated, i.e. regions and variables cannot be changed.

Once the setup is complete, any subsequent call to complete the setup will have no effect.

Parameters setupInfo- setup information. 



<a id="ga1404ad75fb1f5b1515dae967b71b1725"></a>## [◆ ](#ga1404ad75fb1f5b1515dae967b71b1725)syscConnect()

 [SyscError](structSyscError.xhtml) syscConnect  ( const char \*  *scHost*,    const unsigned short  *scPort*,    const char \*  *participantName*,    const char \*  *buildInformation*   ) 

Provide a function to establish connection to System Coupling.

A participant must have obtained the host and port information from System Coupling prior to calling this function (e.g. via an input argument when participant application was started).

Parameters \[in\]scHostName of the host on which System Coupling is running.\[in\]scPortPort number on which System Coupling is listening for participant connections.\[in\]participantNameName of this participant (e.g. "MAPDL-1").\[in\]buildInformationInformation about the build of this participant solver.Returns[SyscError](structSyscError.xhtml "Provide a struct for detecting errors from the interface calls.") Can be checked for any errors. 



<a id="ga68a9b5b64715ad6ffde1c7b145bb4d0f"></a>## [◆ ](#ga68a9b5b64715ad6ffde1c7b145bb4d0f)syscConnectParallel()

 [SyscError](structSyscError.xhtml) syscConnectParallel  ( const char \*  *scHost*,    const unsigned short  *scPort*,    const char \*  *participantName*,    const size\_t  *communicator*,    const char \*  *buildInformation*   ) 

Provide a function to establish connection to System Coupling in parallel.

This function is an alternative to syscConnect function. It works the same way as syscConnect, but it takes in one additional argument, which is the MPI communicator, cast as size\_t.

Note that if the MPI communicator is MPI\_COMM\_WORLD, then it is not necessary to call this function and [syscConnect()](group__SyscParticipantLibraryCAPI.xhtml#ga1404ad75fb1f5b1515dae967b71b1725 "Provide a function to establish connection to System Coupling.") can be used instead.





<a id="gac695e9f06d272958b8fc81bff07708fb"></a>## [◆ ](#gac695e9f06d272958b8fc81bff07708fb)syscConnectParallelUseStruct()

 [SyscError](structSyscError.xhtml) syscConnectParallelUseStruct  ( [SyscParticipantInfo](structSyscParticipantInfo.xhtml)  *participantInfo*,    const size\_t  *communicator*   ) 

Provide a function to establish connection to System Coupling in parallel using a C structure.

Parameters participantInfoA C structure containing the participant attributescommunicatorA size\_t flag signifying what mode to run in parallel with.Returns[SyscError](structSyscError.xhtml "Provide a struct for detecting errors from the interface calls.") 



<a id="ga8d84278ef4d48a739948f0a952cb2a00"></a>## [◆ ](#ga8d84278ef4d48a739948f0a952cb2a00)syscConnectUseStruct()

 [SyscError](structSyscError.xhtml) syscConnectUseStruct  ( [SyscParticipantInfo](structSyscParticipantInfo.xhtml)  *participantInfo*) 

Provide a function to establish connection to System Coupling in serial using a C structure.

Parameters participantInfoA C structure containing the participant attributesReturns[SyscError](structSyscError.xhtml "Provide a struct for detecting errors from the interface calls.") 



<a id="gaea2bf4afeff9dd606125e00bb6c475a0"></a>## [◆ ](#gaea2bf4afeff9dd606125e00bb6c475a0)syscDoIteration()

 int syscDoIteration  ( ) 

Provide a function to check whether to do a coupling iteration.

This function returns 1 (true) if another coupling iteration is required, otherwise it returns 0 (false).





<a id="gaf701624f0add6b5d7a5fd2d9dcf8e298"></a>## [◆ ](#gaf701624f0add6b5d7a5fd2d9dcf8e298)syscDoTimeStep()

 int syscDoTimeStep  ( ) 

Provide a function to check whether to do a coupling time step.

This function returns 1 (true) if another coupling time step is required, otherwise it returns 0 (false).

This function should be called to check if another coupling time step should be done. If the previous coupling time step is finished and another time step should be performed, then calling this function will tell System Coupling that the coupling participant is going to advance to the next time step (i.e. calling [syscDoTimeStep()](group__SyscParticipantLibraryCAPI.xhtml#gaf701624f0add6b5d7a5fd2d9dcf8e298 "Provide a function to check whether to do a coupling time step.") will cause [syscDoIteration()](group__SyscParticipantLibraryCAPI.xhtml#gaea2bf4afeff9dd606125e00bb6c475a0 "Provide a function to check whether to do a coupling iteration.") to change from returning false to returning true, under the conditions described above).

This function only makes sense for transient analysis. It will always return false for steady analysis.





<a id="ga0a1c350da5591ae0ece58abaa8dfd9d2"></a>## [◆ ](#ga0a1c350da5591ae0ece58abaa8dfd9d2)syscGetAddedInputParameter()

 [SyscParameter](structSyscParameter.xhtml) syscGetAddedInputParameter  ( size\_t  *index*) 

Provide a function to return input parameter information.

Parameters \[in\]index- input parameter indexReturnsInput parameter information at specified index. 



<a id="ga700bc8178a51d4eeaa596eb6d4737fcb"></a>## [◆ ](#ga700bc8178a51d4eeaa596eb6d4737fcb)syscGetAddedIntegerAttribute()

 [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) syscGetAddedIntegerAttribute  ( size\_t  *index*) 

Provide a function to return integer attribute information.

Parameters \[in\]index- integer attribute index.ReturnsInteger attribute information at specified index. 



<a id="gaa7fff9647ad264d5f2d6231472667e0d"></a>## [◆ ](#gaa7fff9647ad264d5f2d6231472667e0d)syscGetAddedOutputParameter()

 [SyscParameter](structSyscParameter.xhtml) syscGetAddedOutputParameter  ( size\_t  *index*) 

Provide a function to return input parameter information.

Parameters \[in\]index- input parameter indexReturnsOutput parameter information at specified index. 



<a id="gaefc1d756871febf4805c2df08334e7b8"></a>## [◆ ](#gaefc1d756871febf4805c2df08334e7b8)syscGetAddedRealAttribute()

 [SyscRealAttribute](structSyscRealAttribute.xhtml) syscGetAddedRealAttribute  ( size\_t  *index*) 

Provide a function to return real attribute information.

Parameters \[in\]index- real attribute index.ReturnsReal attribute information at specified index. 



<a id="ga73a2e2125fd1a583b152012a8d7f9ce9"></a>## [◆ ](#ga73a2e2125fd1a583b152012a8d7f9ce9)syscGetAddedRegion()

 [SyscRegion](structSyscRegion.xhtml) syscGetAddedRegion  ( size\_t  *index*) 

Provide a function to return added region given the region index.

Parameters \[in\]index- region index. Use [syscGetNumRegions()](group__SyscParticipantLibraryCAPI.xhtml#ga5783653d3a5994b0bccb7471843e72eb "Provide a function to return the number of added regions.") to get the number of regions.ReturnsRegion at specified index. 



<a id="gae356c9cb4c0dd69f5e1ea9eef6a7c63b"></a>## [◆ ](#gae356c9cb4c0dd69f5e1ea9eef6a7c63b)syscGetCouplingInterface()

 [SyscCouplingInterface](structSyscCouplingInterface.xhtml) syscGetCouplingInterface  ( const char \*  *name*) 

Create a coupling interface.

Parameters \[in\]name- Unique name for this interface. String length should not exceed SYSC\_STRING\_LENGTH. 



<a id="gace1009120d02713ffe0b625d1cadd33d"></a>## [◆ ](#gace1009120d02713ffe0b625d1cadd33d)syscGetCurrentTimeStep()

 [SyscTimeStep](structSyscTimeStep.xhtml) syscGetCurrentTimeStep  ( ) 

Provide a function to get current time step.

This function returns a time step struct, which contains time step number, start time, and time step size for the current coupling time step.

A default value (time step number 0, start time 0.0, time step size 0.0) is returned if this function is called outside the coupled analysis loop or if the analysis is steady.





<a id="ga10c3562aba2bdcef468fbde205008112"></a>## [◆ ](#ga10c3562aba2bdcef468fbde205008112)syscGetDataTransfer()

 [SyscDataTransfer](structSyscDataTransfer.xhtml) syscGetDataTransfer  ( [SyscVariable](structSyscVariable.xhtml)  *sideOneVariable*,    [SyscVariable](structSyscVariable.xhtml)  *sideTwoVariable*,    enum [SyscInterfaceSide](group__SyscParticipantLibraryCAPI.xhtml#gacf32f1d9c1566f28bee2b348b2dcd9f5)  *targetSide*   ) 

Create a data transfer using side{One|Two}Variable.

Parameters \[in\]sideOneVariable- side one variable.\[in\]sideTwoVariable- side two variable.\[in\]targetSide- target side. 



<a id="gadb07659695562864d8bc0df67bec847e"></a>## [◆ ](#gadb07659695562864d8bc0df67bec847e)syscGetDataTransferST()

 [SyscDataTransfer](structSyscDataTransfer.xhtml) syscGetDataTransferST  ( [SyscVariable](structSyscVariable.xhtml)  *sourceVariable*,    [SyscVariable](structSyscVariable.xhtml)  *targetVariable*,    enum [SyscInterfaceSide](group__SyscParticipantLibraryCAPI.xhtml#gacf32f1d9c1566f28bee2b348b2dcd9f5)  *targetSide*   ) 

Create a data transfer using {source|target}Variable.

Parameters \[in\]sourceVariable- source variable.\[in\]targetVariable- target variable.\[in\]targetSide- target side. 



<a id="ga827af0f4c18717284c76b8804056a24d"></a>## [◆ ](#ga827af0f4c18717284c76b8804056a24d)syscGetElementNodeConnectivityDataEmpty()

 [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml) syscGetElementNodeConnectivityDataEmpty  ( ) 

Create an empty element-to-node connectivity data access struct.

Returns an empty element-to-node connectivity data access struct. All member will be assigned default values.





<a id="ga621f044b4d075369865572cc0d68aa97"></a>## [◆ ](#ga621f044b4d075369865572cc0d68aa97)syscGetElementNodeCountDataEmpty()

 [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml) syscGetElementNodeCountDataEmpty  ( ) 

Create an empty mesh element node count data access struct.

Returns an empty mesh element node count data access struct. All member will be assigned default values.





<a id="gac9a38bc69d5b0a77d09be64f73693f46"></a>## [◆ ](#gac9a38bc69d5b0a77d09be64f73693f46)syscGetElementTypeDataEmpty()

 [SyscElementTypeData](structSyscElementTypeData.xhtml) syscGetElementTypeDataEmpty  ( ) 

Create an empty mesh element type data access struct.

Returns an empty mesh element type data access struct. All member will be assigned default values.





<a id="gab707ea57d70a474cfdab07c35dc7dcf7"></a>## [◆ ](#gab707ea57d70a474cfdab07c35dc7dcf7)syscGetInput2DVectorDataSplitDouble()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInput2DVectorDataSplitDouble  ( double \*const  *data0*,    double \*const  *data1*,    size\_t  *dataSize*   ) 

Create an 2D input vector data access struct with split storage.

Parameters data0- pointer to the first array of double-precision data data1- pointer to the second array of double-precision data dataSize- number of vectors. 



<a id="gad39531d8943485fe6a586ce4dbdc5107"></a>## [◆ ](#gad39531d8943485fe6a586ce4dbdc5107)syscGetInput2DVectorDataSplitFloat()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInput2DVectorDataSplitFloat  ( float \*const  *data0*,    float \*const  *data1*,    size\_t  *dataSize*   ) 

Create an 2D input vector data access struct with split storage.

Parameters data0- pointer to the first array of single-precision data data1- pointer to the second array of single-precision data dataSize- number of vectors. 



<a id="ga311e2b750be4212f60557b49870f1eac"></a>## [◆ ](#ga311e2b750be4212f60557b49870f1eac)syscGetInputCompactComplexCompactVectorDataDouble()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputCompactComplexCompactVectorDataDouble  ( double \*const  *data*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters data- pointer to the double-precision complex data.dataSize- data size. 



<a id="ga93d5fd27a2899ea57f88958aa29506cd"></a>## [◆ ](#ga93d5fd27a2899ea57f88958aa29506cd)syscGetInputCompactComplexCompactVectorDataDoubleDim()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputCompactComplexCompactVectorDataDoubleDim  ( double \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create a complex input vector data access struct based on dimension.

Parameters data- pointer to the double-precision complex data.dataSize- data size.dimension- dimension of complex vector data. 



<a id="ga5396c1513b3448bfd783c2db743606d2"></a>## [◆ ](#ga5396c1513b3448bfd783c2db743606d2)syscGetInputCompactComplexCompactVectorDataFloat()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputCompactComplexCompactVectorDataFloat  ( float \*const  *data*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters data- pointer to the single-precision complex data.dataSize- data size. 



<a id="ga6fa6c5f2890928560f68ebb6d45cabc9"></a>## [◆ ](#ga6fa6c5f2890928560f68ebb6d45cabc9)syscGetInputCompactComplexCompactVectorDataFloatDim()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputCompactComplexCompactVectorDataFloatDim  ( float \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create a complex input vector data access struct based on dimension.

Parameters data- pointer to the single-precision complex data.dataSize- data size.dimension- dimension of complex vector data. 



<a id="ga7eefc4444dbdf8924e4074046de5eba2"></a>## [◆ ](#ga7eefc4444dbdf8924e4074046de5eba2)syscGetInputCompactComplexSplitVectorDataDouble()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputCompactComplexSplitVectorDataDouble  ( double \*const  *data1*,    double \*const  *data2*,    double \*const  *data3*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters data1- pointer to the double-precision complex data (first component).data2- pointer to the double-precision complex data (second component).data3- pointer to the double-precision complex data (third component).dataSize- data size. 



<a id="ga513ecaae813a2904f6926c5839cc11a1"></a>## [◆ ](#ga513ecaae813a2904f6926c5839cc11a1)syscGetInputCompactComplexSplitVectorDataFloat()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputCompactComplexSplitVectorDataFloat  ( float \*const  *data1*,    float \*const  *data2*,    float \*const  *data3*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters data1- pointer to the single-precision complex data (first component).data2- pointer to the single-precision complex data (second component).data3- pointer to the single-precision complex data (third component).dataSize- data size. 



<a id="ga1843bbb3648ac07766c7e6ea9f309a54"></a>## [◆ ](#ga1843bbb3648ac07766c7e6ea9f309a54)syscGetInputComplexScalarData()

 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) syscGetInputComplexScalarData  ( ) 

Create an empty input copmlex scalar data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointers will be set to null.





<a id="ga5cbb0ff3aa857c03d3626038e3a20ffa"></a>## [◆ ](#ga5cbb0ff3aa857c03d3626038e3a20ffa)syscGetInputComplexScalarDataCompactDouble()

 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) syscGetInputComplexScalarDataCompactDouble  ( double \*const  *data*,    size\_t  *dataSize*   ) 

Create a complex input scalar data access struct.

Parameters data- pointer to the double-precision data.dataSize- data size. 



<a id="ga0ff093e80497efd6dccb6ea29c9face3"></a>## [◆ ](#ga0ff093e80497efd6dccb6ea29c9face3)syscGetInputComplexScalarDataCompactFloat()

 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) syscGetInputComplexScalarDataCompactFloat  ( float \*const  *data*,    size\_t  *dataSize*   ) 

Create a complex input scalar data access struct.

Parameters data- pointer to the single-precision data.dataSize- data size. 



<a id="gaaed0337275d991d2cd2a1ec4dbf2a595"></a>## [◆ ](#gaaed0337275d991d2cd2a1ec4dbf2a595)syscGetInputComplexScalarDataSplitDouble()

 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) syscGetInputComplexScalarDataSplitDouble  ( double \*const  *dataReal*,    double \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a complex input scalar data access struct.

Parameters dataReal- pointer to the double-precision real data component.dataImag- pointer to the double-precision imaginary data component.dataSize- data size. 



<a id="ga11c65e99f509cd226f13b0932aba8eb7"></a>## [◆ ](#ga11c65e99f509cd226f13b0932aba8eb7)syscGetInputComplexScalarDataSplitFloat()

 [SyscInputComplexScalarData](structSyscInputComplexScalarData.xhtml) syscGetInputComplexScalarDataSplitFloat  ( float \*const  *dataReal*,    float \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a complex input scalar data access struct.

Parameters dataReal- pointer to the single-precision real data component.dataImag- pointer to the single-precision imaginary data component.dataSize- data size. 



<a id="gaa7291e96ae240db79de4b35ad82c4cc0"></a>## [◆ ](#gaa7291e96ae240db79de4b35ad82c4cc0)syscGetInputComplexVectorData()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputComplexVectorData  ( ) 

Create an empty input complex vector data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointers will be set to null.





<a id="ga4f26c699d6b93f7d62ad88e69822e1e2"></a>## [◆ ](#ga4f26c699d6b93f7d62ad88e69822e1e2)syscGetInputScalarData()

 [SyscInputScalarData](structSyscInputScalarData.xhtml) syscGetInputScalarData  ( ) 

Create an input scalar data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointer will be set to null.





<a id="ga3b76afcedb8ced51695a0a56dabfb3af"></a>## [◆ ](#ga3b76afcedb8ced51695a0a56dabfb3af)syscGetInputScalarDataDouble()

 [SyscInputScalarData](structSyscInputScalarData.xhtml) syscGetInputScalarDataDouble  ( double \*const  *data*,    size\_t  *dataSize*   ) 

Create an input scalar data access struct.

Parameters data- pointer to the double-precision (64-bit) array of data. dataSize- number of elements in the array. 



<a id="ga09e03b4996d73e37c1748eb00a8c76c8"></a>## [◆ ](#ga09e03b4996d73e37c1748eb00a8c76c8)syscGetInputScalarDataFloat()

 [SyscInputScalarData](structSyscInputScalarData.xhtml) syscGetInputScalarDataFloat  ( float \*const  *data*,    size\_t  *dataSize*   ) 

Create an input scalar data access struct.

Parameters data- pointer to the single-precision (32-bit) array of data. dataSize- number of elements in the array. 



<a id="ga8cce8fbb7655b448cd3c6c08772e1766"></a>## [◆ ](#ga8cce8fbb7655b448cd3c6c08772e1766)syscGetInputSplitComplexCompactVectorDataDouble()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputSplitComplexCompactVectorDataDouble  ( double \*const  *dataReal*,    double \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters dataReal- pointer to the double-precision complex data (real components).dataImag- pointer to the double-precision complex data (imaginary components).dataSize- data size. 



<a id="ga0c9104179a6e98a7a043e4412f1dafd5"></a>## [◆ ](#ga0c9104179a6e98a7a043e4412f1dafd5)syscGetInputSplitComplexCompactVectorDataFloat()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputSplitComplexCompactVectorDataFloat  ( float \*const  *dataReal*,    float \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters dataReal- pointer to the single-precision complex data (real components).dataImag- pointer to the single-precision complex data (imaginary components).dataSize- data size. 



<a id="ga1fd576a79df5e1b27247f4b71e2afbf0"></a>## [◆ ](#ga1fd576a79df5e1b27247f4b71e2afbf0)syscGetInputSplitComplexSplitVectorDataDouble()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputSplitComplexSplitVectorDataDouble  ( double \*const  *data1Real*,    double \*const  *data1Imag*,    double \*const  *data2Real*,    double \*const  *data2Imag*,    double \*const  *data3Real*,    double \*const  *data3Imag*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters data1Real- pointer to the double-precision complex data (first real component).data1Imag- pointer to the double-precision complex data (first imagindary component).data2Real- pointer to the double-precision complex data (second real component).data2Imag- pointer to the double-precision complex data (second imagindary component).data3Real- pointer to the double-precision complex data (third real component).data3Imag- pointer to the double-precision complex data (third imagindary component).dataSize- data size. 



<a id="ga6b650f50fa53c996a07147474343f55f"></a>## [◆ ](#ga6b650f50fa53c996a07147474343f55f)syscGetInputSplitComplexSplitVectorDataFloat()

 [SyscInputComplexVectorData](structSyscInputComplexVectorData.xhtml) syscGetInputSplitComplexSplitVectorDataFloat  ( float \*const  *data1Real*,    float \*const  *data1Imag*,    float \*const  *data2Real*,    float \*const  *data2Imag*,    float \*const  *data3Real*,    float \*const  *data3Imag*,    size\_t  *dataSize*   ) 

Create a 3D complex input vector data access struct.

Parameters data1Real- pointer to the single-precision complex data (first real component).data1Imag- pointer to the single-precision complex data (first imagindary component).data2Real- pointer to the single-precision complex data (second real component).data2Imag- pointer to the single-precision complex data (second imagindary component).data3Real- pointer to the single-precision complex data (third real component).data3Imag- pointer to the single-precision complex data (third imagindary component).dataSize- data size. 



<a id="gaef15224138a4f29e892a63e5e8db2feb"></a>## [◆ ](#gaef15224138a4f29e892a63e5e8db2feb)syscGetInputVariable()

 [SyscVariable](structSyscVariable.xhtml) syscGetInputVariable  ( const [SyscRegion](structSyscRegion.xhtml)  *region*,    size\_t  *index*   ) 

Return an input variable.

Parameters \[in\]region- region\[in\]index- region indexReturnsVariable at specified index. 



<a id="ga8609363d94eccb5ac5113332b5bd0d77"></a>## [◆ ](#ga8609363d94eccb5ac5113332b5bd0d77)syscGetInputVectorData()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInputVectorData  ( ) 

Create an input vector data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointers will be set to null.





<a id="ga21f7b8327230f78d41e61bdac3f073c0"></a>## [◆ ](#ga21f7b8327230f78d41e61bdac3f073c0)syscGetInputVectorDataCompactDouble()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInputVectorDataCompactDouble  ( double \*const  *data*,    size\_t  *dataSize*   ) 

Create an 3D input vector data access struct with compact storage.

Parameters data- pointer to the array of double-precision data dataSize- number of vectors. 



<a id="gadc1d6ed1a05cf21b0b38af4ea8247eb3"></a>## [◆ ](#gadc1d6ed1a05cf21b0b38af4ea8247eb3)syscGetInputVectorDataCompactDoubleDim()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInputVectorDataCompactDoubleDim  ( double \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create an input vector data access struct with compact storage based on dimension.

Parameters data- pointer to the array of double-precision data dataSize- number of vectors. dimension- dimension of complex vector data. 



<a id="ga1dab4c326c88b20cb402ca06c84d39c2"></a>## [◆ ](#ga1dab4c326c88b20cb402ca06c84d39c2)syscGetInputVectorDataCompactFloat()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInputVectorDataCompactFloat  ( float \*const  *data*,    size\_t  *dataSize*   ) 

Create an 3D input vector data access struct with compact storage.

Parameters data- pointer to the array of single-precision data dataSize- number of vectors. 



<a id="ga0e5591d56881dec17e9ebaa087a7a198"></a>## [◆ ](#ga0e5591d56881dec17e9ebaa087a7a198)syscGetInputVectorDataCompactFloatDim()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInputVectorDataCompactFloatDim  ( float \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create an input vector data access struct with compact storage based on dimension.

Parameters data- pointer to the array of single-precision data dataSize- number of vectors. dimension- dimension of complex vector data. 



<a id="ga5432989ff9b68845634e551c6246e42e"></a>## [◆ ](#ga5432989ff9b68845634e551c6246e42e)syscGetInputVectorDataSplitDouble()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInputVectorDataSplitDouble  ( double \*const  *data0*,    double \*const  *data1*,    double \*const  *data2*,    size\_t  *dataSize*   ) 

Create an 3D input vector data access struct with split storage.

Parameters data0- pointer to the first array of double-precision data data1- pointer to the second array of double-precision data data2- pointer to the third array of double-precision data dataSize- number of vectors. 



<a id="ga774cdf0f3bb11efe50a587e6a11e7539"></a>## [◆ ](#ga774cdf0f3bb11efe50a587e6a11e7539)syscGetInputVectorDataSplitFloat()

 [SyscInputVectorData](structSyscInputVectorData.xhtml) syscGetInputVectorDataSplitFloat  ( float \*const  *data0*,    float \*const  *data1*,    float \*const  *data2*,    size\_t  *dataSize*   ) 

Create an 3D input vector data access struct with split storage.

Parameters data0- pointer to the first array of single-precision data data1- pointer to the second array of single-precision data data2- pointer to the third array of single-precision data dataSize- number of vectors. 



<a id="gaf6d02a55f607a7af07039957b21ab511"></a>## [◆ ](#gaf6d02a55f607a7af07039957b21ab511)syscGetIntegerAttribute()

 [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) syscGetIntegerAttribute  ( const char \*  *name*,    long long int  *value*   ) 

Create an integer-valued attribute.

Parameters \[in\]name- attribute name.\[in\]value- attribute value. 



<a id="ga126dcce7d793eb854bdccd42e6a62e10"></a>## [◆ ](#ga126dcce7d793eb854bdccd42e6a62e10)syscGetIntegerAttributeValue()

 int64\_t syscGetIntegerAttributeValue  ( const char \*  *attributeName*,    [SyscError](structSyscError.xhtml) \*  *errorCode*   ) 

Provide a function to get an IntegerAttribute value.

Parameters \[in\]attributeName- name of the attribute. \[out\]errorCode- error status for the function. 



<a id="gac3ae9103fa3cad3c60b1f794ecb27752"></a>## [◆ ](#gac3ae9103fa3cad3c60b1f794ecb27752)syscGetIntegerAttributeVM()

 [SyscIntegerAttribute](structSyscIntegerAttribute.xhtml) syscGetIntegerAttributeVM  ( const char \*  *name*,    long long int  *value*,    int  *modifiable*   ) 

Create an integer-valued attribute.

Parameters \[in\]name- attribute name.\[in\]value- attribute value.\[in\]modifiable- attribute is modifiable. 



<a id="gaf412d269c5805e7e6b8600f2690cb874"></a>## [◆ ](#gaf412d269c5805e7e6b8600f2690cb874)syscGetNodeData()

 [SyscNodeData](structSyscNodeData.xhtml) syscGetNodeData  ( ) 

Create a mesh node data access struct.

Returns an empty mesh node data access struct. All member will be assigned default values.





<a id="ga8987dbe52eb06c7d089663d4c29c17ed"></a>## [◆ ](#ga8987dbe52eb06c7d089663d4c29c17ed)syscGetNumCouplingInterfaces()

 size\_t syscGetNumCouplingInterfaces  ( ) 

Provide a function to return the number of added coupling interfaces.

ReturnsNumber of coupling interfaces. 



<a id="ga0c8432c9735a99af8f502a0d399fcb53"></a>## [◆ ](#ga0c8432c9735a99af8f502a0d399fcb53)syscGetNumInputParameters()

 size\_t syscGetNumInputParameters  ( ) 

Provide a method to get the number of input parameters.

ReturnsNumber of input parameters. 



<a id="gabec39110fe9da4d54a32653e6bf43196"></a>## [◆ ](#gabec39110fe9da4d54a32653e6bf43196)syscGetNumInputVariables()

 size\_t syscGetNumInputVariables  ( const [SyscRegion](structSyscRegion.xhtml)  *region*) 

Provide a function to return the number of input variables.

Parameters \[in\]region- regionReturnsNumber of input variables for the region. 



<a id="gaf49b872e961009e614ed67759e1a60d4"></a>## [◆ ](#gaf49b872e961009e614ed67759e1a60d4)syscGetNumIntegerAttributes()

 size\_t syscGetNumIntegerAttributes  ( ) 

Provide a function to get the number of integer attributes.

ReturnsNumber of integer attributes. 



<a id="gaa589afb854fc7ccbc1aadd35148748c4"></a>## [◆ ](#gaa589afb854fc7ccbc1aadd35148748c4)syscGetNumOutputParameters()

 size\_t syscGetNumOutputParameters  ( ) 

Provide a method to get the number of output parameters.

ReturnsNumber of output parameters. 



<a id="ga99fda03ac99e590196d180ea23214217"></a>## [◆ ](#ga99fda03ac99e590196d180ea23214217)syscGetNumOutputVariables()

 size\_t syscGetNumOutputVariables  ( const [SyscRegion](structSyscRegion.xhtml)  *region*) 

Provide a function to return the number of output variables.

Parameters \[in\]region- regionReturnsNumber of output variables for the region. 



<a id="gac60dbcde01c9373bfd367aaaa956cba5"></a>## [◆ ](#gac60dbcde01c9373bfd367aaaa956cba5)syscGetNumRealAttributes()

 size\_t syscGetNumRealAttributes  ( ) 

Provide a function to get the number of real attributes.

ReturnsNumber of real attributes. 



<a id="ga5783653d3a5994b0bccb7471843e72eb"></a>## [◆ ](#ga5783653d3a5994b0bccb7471843e72eb)syscGetNumRegions()

 size\_t syscGetNumRegions  ( ) 

Provide a function to return the number of added regions.

ReturnsNumber of regions. 



<a id="gac737552145182f1de70e347531477a88"></a>## [◆ ](#gac737552145182f1de70e347531477a88)syscGetOutput2DVectorDataSplitDouble()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutput2DVectorDataSplitDouble  ( const double \*const  *data0*,    const double \*const  *data1*,    size\_t  *dataSize*   ) 

Create a 2D output vector data access struct with split storage.

Parameters data0- pointer to the first array of double-precision data data1- pointer to the second array of double-precision data dataSize- number of vectors. 



<a id="ga22d069eb2d95a8060a0dfdaf9a5d43aa"></a>## [◆ ](#ga22d069eb2d95a8060a0dfdaf9a5d43aa)syscGetOutput2DVectorDataSplitFloat()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutput2DVectorDataSplitFloat  ( const float \*const  *data0*,    const float \*const  *data1*,    size\_t  *dataSize*   ) 

Create an output vector data access struct with split storage.

Parameters data0- pointer to the first array of single-precision data data1- pointer to the second array of single-precision data dataSize- number of vectors. 



<a id="gab9832696d96ffd32917b2211497c31e1"></a>## [◆ ](#gab9832696d96ffd32917b2211497c31e1)syscGetOutputCompactComplexCompactVectorDataDouble()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputCompactComplexCompactVectorDataDouble  ( const double \*const  *data*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters data- pointer to the double-precision complex data.dataSize- data size. 



<a id="gac98c66232a8c5c204c4bad9f0dd5585c"></a>## [◆ ](#gac98c66232a8c5c204c4bad9f0dd5585c)syscGetOutputCompactComplexCompactVectorDataDoubleDim()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputCompactComplexCompactVectorDataDoubleDim  ( const double \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create a complex output vector data access struct based on dimension.

Parameters data- pointer to the double-precision complex data.dataSize- data size.dimension- dimension of complex vector data. 



<a id="ga1bddd7590dc1c4e4b488981694a723fc"></a>## [◆ ](#ga1bddd7590dc1c4e4b488981694a723fc)syscGetOutputCompactComplexCompactVectorDataFloat()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputCompactComplexCompactVectorDataFloat  ( const float \*const  *data*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters data- pointer to the single-precision complex data.dataSize- data size. 



<a id="gab1ea60c9d226cf14e580d6d3c945f3ab"></a>## [◆ ](#gab1ea60c9d226cf14e580d6d3c945f3ab)syscGetOutputCompactComplexCompactVectorDataFloatDim()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputCompactComplexCompactVectorDataFloatDim  ( const float \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create a complex output vector data access struct based on dimension.

Parameters data- pointer to the single-precision complex data.dataSize- data size.dimension- dimension of complex vector data. 



<a id="ga36581954b1bed9e21ddd6d6951478a45"></a>## [◆ ](#ga36581954b1bed9e21ddd6d6951478a45)syscGetOutputCompactComplexSplitVectorDataDouble()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputCompactComplexSplitVectorDataDouble  ( const double \*const  *data1*,    const double \*const  *data2*,    const double \*const  *data3*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters data1- pointer to the double-precision complex data (first component).data2- pointer to the double-precision complex data (second component).data3- pointer to the double-precision complex data (third component).dataSize- data size. 



<a id="ga6fab1156fcb4f29d454bd3574b7472a7"></a>## [◆ ](#ga6fab1156fcb4f29d454bd3574b7472a7)syscGetOutputCompactComplexSplitVectorDataFloat()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputCompactComplexSplitVectorDataFloat  ( const float \*const  *data1*,    const float \*const  *data2*,    const float \*const  *data3*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters data1- pointer to the single-precision complex data (first component).data2- pointer to the single-precision complex data (second component).data3- pointer to the single-precision complex data (third component).dataSize- data size. 



<a id="ga1ed999efcf217211831e6e440c9b6789"></a>## [◆ ](#ga1ed999efcf217211831e6e440c9b6789)syscGetOutputComplexScalarData()

 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) syscGetOutputComplexScalarData  ( ) 

Create an empty output complex scalar data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointers will be set to null.





<a id="ga08d88f4495f347260e4678ab6bedbf75"></a>## [◆ ](#ga08d88f4495f347260e4678ab6bedbf75)syscGetOutputComplexScalarDataCompactDouble()

 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) syscGetOutputComplexScalarDataCompactDouble  ( const double \*const  *data*,    size\_t  *dataSize*   ) 

Create a complex output scalar data access struct.

Parameters data- pointer to the double-precision data.dataSize- data size. 



<a id="ga3d806d095d2d333f2a78abb38f7cddf6"></a>## [◆ ](#ga3d806d095d2d333f2a78abb38f7cddf6)syscGetOutputComplexScalarDataCompactFloat()

 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) syscGetOutputComplexScalarDataCompactFloat  ( const float \*const  *data*,    size\_t  *dataSize*   ) 

Create a complex output scalar data access struct.

Parameters data- pointer to the single-precision data.dataSize- data size. 



<a id="ga55ed1d17c6d2f849b9588531d7c516d9"></a>## [◆ ](#ga55ed1d17c6d2f849b9588531d7c516d9)syscGetOutputComplexScalarDataSplitDouble()

 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) syscGetOutputComplexScalarDataSplitDouble  ( const double \*const  *dataReal*,    const double \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a complex output scalar data access struct.

Parameters dataReal- pointer to the double-precision real data component.dataImag- pointer to the double-precision imaginary data component.dataSize- data size. 



<a id="ga0e86f0bfb33258007eb2b2ecd6b44dec"></a>## [◆ ](#ga0e86f0bfb33258007eb2b2ecd6b44dec)syscGetOutputComplexScalarDataSplitFloat()

 [SyscOutputComplexScalarData](structSyscOutputComplexScalarData.xhtml) syscGetOutputComplexScalarDataSplitFloat  ( const float \*const  *dataReal*,    const float \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a complex output scalar data access struct.

Parameters dataReal- pointer to the single-precision real data component.dataImag- pointer to the single-precision imaginary data component.dataSize- data size. 



<a id="gafd1174430666266b1337c8e1d3569aa6"></a>## [◆ ](#gafd1174430666266b1337c8e1d3569aa6)syscGetOutputComplexVectorData()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputComplexVectorData  ( ) 

Create an empty output complex vector data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointers will be set to null.





<a id="gac46cbb29463ecf81dfbba42a81e5b5c9"></a>## [◆ ](#gac46cbb29463ecf81dfbba42a81e5b5c9)syscGetOutputIntegerData()

 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) syscGetOutputIntegerData  ( ) 

Create an output integer data access struct.

Primitive type will default to 64-bit signed integer. Data size will be set to zero. Data pointer will be set to null.





<a id="gaea5bb5bd0b4ddd4217745dad38b405b2"></a>## [◆ ](#gaea5bb5bd0b4ddd4217745dad38b405b2)syscGetOutputIntegerDataInt32()

 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) syscGetOutputIntegerDataInt32  ( const int32\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output integer data access struct.

Parameters data- pointer to the signed (32-bit) array of data. dataSize- number of elements in the array. 



<a id="ga43be8cb6b2e2b156d7c40fa3cbf28f03"></a>## [◆ ](#ga43be8cb6b2e2b156d7c40fa3cbf28f03)syscGetOutputIntegerDataInt64()

 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) syscGetOutputIntegerDataInt64  ( const int64\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output integer data access struct.

Parameters data- pointer to the 64-bit array of integer data. dataSize- number of elements in the array. 



<a id="ga46a87bfd729531e482d320f695537c0b"></a>## [◆ ](#ga46a87bfd729531e482d320f695537c0b)syscGetOutputIntegerDataUInt16()

 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) syscGetOutputIntegerDataUInt16  ( const uint16\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output integer data access struct.

Parameters data- pointer to the 16-bit array of unsigned integer data. dataSize- number of elements in the array. 



<a id="gaed7a48d94e2545e78562b8ff911dfd2a"></a>## [◆ ](#gaed7a48d94e2545e78562b8ff911dfd2a)syscGetOutputIntegerDataUInt64()

 [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml) syscGetOutputIntegerDataUInt64  ( const uint64\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output integer data access struct.

Parameters data- pointer to the 64-bit array of unsigned integer data. dataSize- number of elements in the array. 



<a id="ga0097e203d597949f887e2f804c01fd21"></a>## [◆ ](#ga0097e203d597949f887e2f804c01fd21)syscGetOutputScalarData()

 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) syscGetOutputScalarData  ( ) 

Create an output scalar data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointer will be set to null.





<a id="ga8a2803af36638c2ce3387bf89b83cda0"></a>## [◆ ](#ga8a2803af36638c2ce3387bf89b83cda0)syscGetOutputScalarDataDouble()

 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) syscGetOutputScalarDataDouble  ( const double \*const  *data*,    size\_t  *dataSize*   ) 

Create an output scalar data access struct.

Parameters data- pointer to the double-precision (64-bit) array of data. dataSize- number of elements in the array. 



<a id="ga0b0ae9e5ede552958b8bce1efd9b4978"></a>## [◆ ](#ga0b0ae9e5ede552958b8bce1efd9b4978)syscGetOutputScalarDataFloat()

 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) syscGetOutputScalarDataFloat  ( const float \*const  *data*,    size\_t  *dataSize*   ) 

Create an output scalar data access struct.

Parameters data- pointer to the single-precision (32-bit) array of data. dataSize- number of elements in the array. 



<a id="ga2334c8e25481b098d4263a2f60a7dac2"></a>## [◆ ](#ga2334c8e25481b098d4263a2f60a7dac2)syscGetOutputScalarDataInt32()

 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) syscGetOutputScalarDataInt32  ( const int32\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output scalar data access struct.

Parameters data- pointer to the 32-bit array of integer data. dataSize- number of elements in the array. 



<a id="ga7a305d185afe565e1d3e8de66d7beca3"></a>## [◆ ](#ga7a305d185afe565e1d3e8de66d7beca3)syscGetOutputScalarDataInt64()

 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) syscGetOutputScalarDataInt64  ( const int64\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output scalar data access struct.

Parameters data- pointer to the 64-bit array of integer data. dataSize- number of elements in the array. 



<a id="gabfcf7be83419cc31611e2ad100fdecb6"></a>## [◆ ](#gabfcf7be83419cc31611e2ad100fdecb6)syscGetOutputScalarDataUInt16()

 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) syscGetOutputScalarDataUInt16  ( const uint16\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output scalar data access struct.

Parameters data- pointer to the 16-bit array of unsigned integer data. dataSize- number of elements in the array. 



<a id="ga6645e1e9d1b163cea069ce42077f419f"></a>## [◆ ](#ga6645e1e9d1b163cea069ce42077f419f)syscGetOutputScalarDataUInt64()

 [SyscOutputScalarData](structSyscOutputScalarData.xhtml) syscGetOutputScalarDataUInt64  ( const uint64\_t \*const  *data*,    size\_t  *dataSize*   ) 

Create an output scalar data access struct.

Parameters data- pointer to the 64-bit array of unsigned integer data. dataSize- number of elements in the array. 



<a id="ga619a769c0b474a093ca8df07fa23c745"></a>## [◆ ](#ga619a769c0b474a093ca8df07fa23c745)syscGetOutputSplitComplexCompactVectorDataDouble()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputSplitComplexCompactVectorDataDouble  ( const double \*const  *dataReal*,    const double \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters dataReal- pointer to the double-precision complex data (real components).dataImag- pointer to the double-precision complex data (imaginary components).dataSize- data size. 



<a id="ga9c6fb47e5c54e7f1ee9bfdd2a6b78f96"></a>## [◆ ](#ga9c6fb47e5c54e7f1ee9bfdd2a6b78f96)syscGetOutputSplitComplexCompactVectorDataFloat()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputSplitComplexCompactVectorDataFloat  ( const float \*const  *dataReal*,    const float \*const  *dataImag*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters dataReal- pointer to the single-precision complex data (real components).dataImag- pointer to the single-precision complex data (imaginary components).dataSize- data size. 



<a id="gaceabb4ea93346ecbbdda387e7f067465"></a>## [◆ ](#gaceabb4ea93346ecbbdda387e7f067465)syscGetOutputSplitComplexSplitVectorDataDouble()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputSplitComplexSplitVectorDataDouble  ( const double \*const  *data1Real*,    const double \*const  *data1Imag*,    const double \*const  *data2Real*,    const double \*const  *data2Imag*,    const double \*const  *data3Real*,    const double \*const  *data3Imag*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters data1Real- pointer to the double-precision complex data (first real component).data1Imag- pointer to the double-precision complex data (first imagindary component).data2Real- pointer to the double-precision complex data (second real component).data2Imag- pointer to the double-precision complex data (second imagindary component).data3Real- pointer to the double-precision complex data (third real component).data3Imag- pointer to the double-precision complex data (third imagindary component).dataSize- data size. 



<a id="ga3d957a5fa32db290017e2f23d15311f2"></a>## [◆ ](#ga3d957a5fa32db290017e2f23d15311f2)syscGetOutputSplitComplexSplitVectorDataFloat()

 [SyscOutputComplexVectorData](structSyscOutputComplexVectorData.xhtml) syscGetOutputSplitComplexSplitVectorDataFloat  ( const float \*const  *data1Real*,    const float \*const  *data1Imag*,    const float \*const  *data2Real*,    const float \*const  *data2Imag*,    const float \*const  *data3Real*,    const float \*const  *data3Imag*,    size\_t  *dataSize*   ) 

Create a 3D complex output vector data access struct.

Parameters data1Real- pointer to the single-precision complex data (first real component).data1Imag- pointer to the single-precision complex data (first imagindary component).data2Real- pointer to the single-precision complex data (second real component).data2Imag- pointer to the single-precision complex data (second imagindary component).data3Real- pointer to the single-precision complex data (third real component).data3Imag- pointer to the single-precision complex data (third imagindary component).dataSize- data size. 



<a id="ga55a99079e5dc9d025f3816d5e7bdd163"></a>## [◆ ](#ga55a99079e5dc9d025f3816d5e7bdd163)syscGetOutputVariable()

 [SyscVariable](structSyscVariable.xhtml) syscGetOutputVariable  ( const [SyscRegion](structSyscRegion.xhtml)  *region*,    size\_t  *index*   ) 

Return an output variable.

Parameters \[in\]region- region\[in\]index- region indexReturnsVariable at specified index. 



<a id="ga950a6f2a746b4667aa10216ad3adfba6"></a>## [◆ ](#ga950a6f2a746b4667aa10216ad3adfba6)syscGetOutputVectorData()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutputVectorData  ( ) 

Create an output vector data access struct.

Primitive type will default to double-precision. Data size will be set to zero. Data pointers will be set to null.





<a id="gacb630e9f5b846eb243f4cb6e67907885"></a>## [◆ ](#gacb630e9f5b846eb243f4cb6e67907885)syscGetOutputVectorDataCompactDouble()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutputVectorDataCompactDouble  ( const double \*const  *data*,    size\_t  *dataSize*   ) 

Create an 3D output vector data access struct with compact storage.

Parameters data- pointer to the array of double-precision data dataSize- number of vectors. 



<a id="ga3ff75e8ebe2bf6e850544f378cb240c6"></a>## [◆ ](#ga3ff75e8ebe2bf6e850544f378cb240c6)syscGetOutputVectorDataCompactDoubleDim()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutputVectorDataCompactDoubleDim  ( const double \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create an output vector data access struct with compact storage based on dimension.

Parameters data- pointer to the array of double-precision data dataSize- number of vectors. dimension- dimension of complex vector data. 



<a id="ga1bec0ed33e0603a25d69f98efd68177a"></a>## [◆ ](#ga1bec0ed33e0603a25d69f98efd68177a)syscGetOutputVectorDataCompactFloat()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutputVectorDataCompactFloat  ( const float \*const  *data*,    size\_t  *dataSize*   ) 

Create an 3D output vector data access struct with compact storage.

Parameters data- pointer to the array of single-precision data dataSize- number of vectors. 



<a id="gaa09a2e4358b2a5459db179c5da641be8"></a>## [◆ ](#gaa09a2e4358b2a5459db179c5da641be8)syscGetOutputVectorDataCompactFloatDim()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutputVectorDataCompactFloatDim  ( const float \*const  *data*,    size\_t  *dataSize*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create an output vector data access struct with compact storage based on dimension.

Parameters data- pointer to the array of single-precision data dataSize- number of vectors. dimension- dimension of complex vector data. 



<a id="gaaa51c47ef1d83c217ac1d10080de120c"></a>## [◆ ](#gaaa51c47ef1d83c217ac1d10080de120c)syscGetOutputVectorDataSplitDouble()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutputVectorDataSplitDouble  ( const double \*const  *data0*,    const double \*const  *data1*,    const double \*const  *data2*,    size\_t  *dataSize*   ) 

Create an 3D output vector data access struct with split storage.

Parameters data0- pointer to the first array of double-precision data data1- pointer to the second array of double-precision data data2- pointer to the third array of double-precision data dataSize- number of vectors. 



<a id="gac91454fccf5ff91fdb82fa976bf5bc3c"></a>## [◆ ](#gac91454fccf5ff91fdb82fa976bf5bc3c)syscGetOutputVectorDataSplitFloat()

 [SyscOutputVectorData](structSyscOutputVectorData.xhtml) syscGetOutputVectorDataSplitFloat  ( const float \*const  *data0*,    const float \*const  *data1*,    const float \*const  *data2*,    size\_t  *dataSize*   ) 

Create an 3D output vector data access struct with split storage.

Parameters data0- pointer to the first array of single-precision data data1- pointer to the second array of single-precision data data2- pointer to the third array of single-precision data dataSize- number of vectors. 



<a id="gaf44d7cf2e3d05e5cf0990b6fe946c50d"></a>## [◆ ](#gaf44d7cf2e3d05e5cf0990b6fe946c50d)syscGetParameter()

 [SyscParameter](structSyscParameter.xhtml) syscGetParameter  ( const char \*  *name*) 

Create parameter to be used in a coupled analysis.

Parameters name- Unique name for this parameter. String length should not exceed SYSC\_STRING\_LENGTH.Display name will default to the same as name.





<a id="gafa0e858b9dc47ded43bd3fbf97c25206"></a>## [◆ ](#gafa0e858b9dc47ded43bd3fbf97c25206)syscGetParameterD()

 [SyscParameter](structSyscParameter.xhtml) syscGetParameterD  ( const char \*  *name*,    const char \*  *displayName*   ) 

Create parameter to be used in a coupled analysis.

Parameters name- Unique name for this parameter. String length should not exceed SYSC\_STRING\_LENGTH.displayName- parameter display name. String length should not exceed SYSC\_STRING\_LENGTH. 



<a id="ga534e802afae31ae7134e23a00d2872f9"></a>## [◆ ](#ga534e802afae31ae7134e23a00d2872f9)syscGetParameterValue()

 double syscGetParameterValue  ( const char \*  *parameterName*,    [SyscError](structSyscError.xhtml) \*  *errorCode*   ) 

Provide a function to get a Parameter value.

Parameters \[in\]parameterName- name of the parameter. \[out\]errorCode- error status for the fuction. 



<a id="ga0a8b0fe8c0c57374a3ef69d1f678fdab"></a>## [◆ ](#ga0a8b0fe8c0c57374a3ef69d1f678fdab)syscGetPointCloud()

 [SyscPointCloud](structSyscPointCloud.xhtml) syscGetPointCloud  ( [SyscOutputIntegerData](structSyscOutputIntegerData.xhtml)  *nodeIds*,    [SyscOutputVectorData](structSyscOutputVectorData.xhtml)  *nodeCoords*   ) 

Create a point cloud access struct.

Parameters nodeIds- output integer data access for node idsnodeCoords- output vector data access for node coordinates, provided in the same order as node ids 



<a id="ga256e2f74a04a52d19232bd163921131c"></a>## [◆ ](#ga256e2f74a04a52d19232bd163921131c)syscGetPointCloudEmpty()

 [SyscPointCloud](structSyscPointCloud.xhtml) syscGetPointCloudEmpty  ( ) 

Create a point cloud access struct.

Returns a struct representing empty point cloud. All member will be assigned default values.





<a id="ga7025ebcdef40667b4c2df0d2b087f600"></a>## [◆ ](#ga7025ebcdef40667b4c2df0d2b087f600)syscGetRealAttribute()

 [SyscRealAttribute](structSyscRealAttribute.xhtml) syscGetRealAttribute  ( const char \*  *name*,    double  *value*,    [SyscDimensionality](structSyscDimensionality.xhtml)  *dimensionality*   ) 

Create a real-valued attribute.

Parameters \[in\]name- attribute name.\[in\]value- attribute value.\[in\]dimensionality- attribute dimensionality. 



<a id="gaf5625adaeb366d18725d1e9560d5910d"></a>## [◆ ](#gaf5625adaeb366d18725d1e9560d5910d)syscGetRealAttributeValue()

 double syscGetRealAttributeValue  ( const char \*  *attributeName*,    [SyscError](structSyscError.xhtml) \*  *errorCode*   ) 

Provide a function to get a RealAttribute value.

Parameters \[in\]attributeName- name of the attribute. \[out\]errorCode- error status for the function. 



<a id="ga65737d6497a88298c80afab5d62f7687"></a>## [◆ ](#ga65737d6497a88298c80afab5d62f7687)syscGetRealAttributeVDM()

 [SyscRealAttribute](structSyscRealAttribute.xhtml) syscGetRealAttributeVDM  ( const char \*  *name*,    double  *value*,    [SyscDimensionality](structSyscDimensionality.xhtml)  *dimensionality*,    int  *modifiable*   ) 

Create a real-valued attribute.

Parameters \[in\]name- attribute name.\[in\]value- attribute value.\[in\]dimensionality- attribute dimensionality.\[in\]modifiable- attribute is modifiable. 



<a id="gaf8dee311cddc012ce6b54998fde8e29f"></a>## [◆ ](#gaf8dee311cddc012ce6b54998fde8e29f)syscGetRegion()

 [SyscRegion](structSyscRegion.xhtml) syscGetRegion  ( const char \*  *name*) 

Create region to be used in a coupled analysis.

Parameters name- Unique name for this region. String length should not exceed SYSC\_STRING\_LENGTH.Display name will default to the same as name.

Topology will default to surface.

Region mesh type will default to mesh.





<a id="ga88d428a1852eeec9b7b7156e33b57822"></a>## [◆ ](#ga88d428a1852eeec9b7b7156e33b57822)syscGetRegionDT()

 [SyscRegion](structSyscRegion.xhtml) syscGetRegionDT  ( const char \*  *name*,    const char \*  *displayName*,    enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a)  *topology*   ) 

Create region to be used in a coupled analysis.

Parameters name- Unique name for this region. String length should not exceed SYSC\_STRING\_LENGTH. displayName- region display name. String length should not exceed SYSC\_STRING\_LENGTH. topology- region topology.Region mesh type will default to mesh.





<a id="gaaae89f288494cc67e8f05cab0f5d1b8b"></a>## [◆ ](#gaaae89f288494cc67e8f05cab0f5d1b8b)syscGetRegionDTM()

 [SyscRegion](structSyscRegion.xhtml) syscGetRegionDTM  ( const char \*  *name*,    const char \*  *displayName*,    enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a)  *topology*,    enum [SyscRegionDiscretizationType](group__SyscParticipantLibraryCAPI.xhtml#ga83942e23c7ff51ec76e4632612a34d45)  *regionDiscretizationType*   ) 

Create region to be used in a coupled analysis.

Parameters \[in\]name- Unique name for this region. String length should not exceed SYSC\_STRING\_LENGTH. \[in\]displayName- region display name. String length should not exceed SYSC\_STRING\_LENGTH. \[in\]topology- region topology. \[in\]regionDiscretizationType- region mesh type. 



<a id="ga26c8d2435b5cd3c525d5221298ad3aaa"></a>## [◆ ](#ga26c8d2435b5cd3c525d5221298ad3aaa)syscGetRegionT()

 [SyscRegion](structSyscRegion.xhtml) syscGetRegionT  ( const char \*  *name*,    enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a)  *topology*   ) 

Create region to be used in a coupled analysis.

Parameters name- Unique name for this region. String length should not exceed SYSC\_STRING\_LENGTH. topology- region topology.Display name will default to the same as name.

Region mesh type will default to mesh.





<a id="ga9e0af352921275419da93341f7186f46"></a>## [◆ ](#ga9e0af352921275419da93341f7186f46)syscGetRegionTM()

 [SyscRegion](structSyscRegion.xhtml) syscGetRegionTM  ( const char \*  *name*,    enum [SyscTopology](group__SyscParticipantLibraryCAPI.xhtml#gabf36499a0f333dc9b856c4bcbb25385a)  *topology*,    enum [SyscRegionDiscretizationType](group__SyscParticipantLibraryCAPI.xhtml#ga83942e23c7ff51ec76e4632612a34d45)  *regionDiscretizationType*   ) 

Create region to be used in a coupled analysis.

Parameters \[in\]name- Unique name for this region. String length should not exceed SYSC\_STRING\_LENGTH. \[in\]topology- region topology. \[in\]regionDiscretizationType- region mesh type.Display names will be same as name.





<a id="gabf49efc0bc2492b1c8198ba9bd3dab06"></a>## [◆ ](#gabf49efc0bc2492b1c8198ba9bd3dab06)syscGetResultsInfo()

 [SyscResultsInfo](structSyscResultsInfo.xhtml) syscGetResultsInfo  ( const char \*  *baseFileName*) 

Provide a function to create SetupFileInfo struct.

Parameters \[in\]baseFileName- base results file name. 



<a id="gac80fa7c7f1ebe9a8d9ef3c4f90d274eb"></a>## [◆ ](#gac80fa7c7f1ebe9a8d9ef3c4f90d274eb)syscGetSetupFileInfo()

 [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml) syscGetSetupFileInfo  ( const char \*  *setupFileName*) 

Provide a function to create SetupFileInfo struct.

Parameters setupFileNameSetup file name.Restarts supported flag will be set to false.





<a id="ga65a1735a49d0e0ab7f32d03f27f325a3"></a>## [◆ ](#ga65a1735a49d0e0ab7f32d03f27f325a3)syscGetSetupInfo()

 [SyscSetupInfo](structSyscSetupInfo.xhtml) syscGetSetupInfo  ( ) 

Create a setup info struct.

Analysis type will be set to steady. Restarts supported flag will be set to false.





<a id="gae399cbc645966a48cc2928bb51018d9b"></a>## [◆ ](#gae399cbc645966a48cc2928bb51018d9b)syscGetSetupInfoA()

 [SyscSetupInfo](structSyscSetupInfo.xhtml) syscGetSetupInfoA  ( enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5)  *analysisType*) 

Create a setup info struct.

Parameters \[in\]analysisType- analysis type.Restarts supported flag will be set to false.





<a id="ga49c86c342e0c0d2881958a7a752eb99b"></a>## [◆ ](#ga49c86c342e0c0d2881958a7a752eb99b)syscGetSetupInfoAR()

 [SyscSetupInfo](structSyscSetupInfo.xhtml) syscGetSetupInfoAR  ( enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5)  *analysisType*,    int  *restartsSupported*   ) 

Create a setup info struct.

Parameters analysisType- analysis type. restartsSupported- flag indicating whether restarts are supported. 



<a id="gae3a34c9ed638c50c65e1d87dabe66737"></a>## [◆ ](#gae3a34c9ed638c50c65e1d87dabe66737)syscGetSetupInfoARD()

 [SyscSetupInfo](structSyscSetupInfo.xhtml) syscGetSetupInfoARD  ( enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5)  *analysisType*,    int  *restartsSupported*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*   ) 

Create a setup info struct.

Parameters analysisType- analysis type. restartsSupported- flag indicating whether restarts are supported. dimension- dimension of the participant. 



<a id="gaf3b03ee2974bbd198008e70e15dd1d1a"></a>## [◆ ](#gaf3b03ee2974bbd198008e70e15dd1d1a)syscGetSetupInfoARDT()

 [SyscSetupInfo](structSyscSetupInfo.xhtml) syscGetSetupInfoARDT  ( enum [SyscAnalysisType](group__SyscParticipantLibraryCAPI.xhtml#ga7d5b3786948265c902f7231abe6d79b5)  *analysisType*,    int  *restartsSupported*,    enum [SyscDimension](group__SyscParticipantLibraryCAPI.xhtml#gac5a5f66ee72fd8015eab632a642cf26d)  *dimension*,    enum [SyscTimeIntegration](group__SyscParticipantLibraryCAPI.xhtml#gaedf008f34febb068e44cb21292dc167f)  *timeIntegration*   ) 

Create a setup info struct.

Parameters analysisType- analysis type. restartsSupported- flag indicating whether restarts are supported. dimension- dimension of the participant. timeIntegration- Time integration method 



<a id="ga9f7aaa68f00cc2d98f98c458b5388f3a"></a>## [◆ ](#ga9f7aaa68f00cc2d98f98c458b5388f3a)syscGetSurfaceMesh()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMesh  ( ) 

Create a surface mesh access struct.

Returns a struct representing empty surface mesh. All member will be assigned default values.





<a id="ga0241a6779e5c1e1dc0a339893805a9dd"></a>## [◆ ](#ga0241a6779e5c1e1dc0a339893805a9dd)syscGetSurfaceMeshA()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMeshA  ( [SyscOutputScalarData](structSyscOutputScalarData.xhtml)  *nodeIds*,    [SyscOutputVectorData](structSyscOutputVectorData.xhtml)  *nodeCoords*,    [SyscOutputScalarData](structSyscOutputScalarData.xhtml)  *elemNodeCounts*,    [SyscOutputScalarData](structSyscOutputScalarData.xhtml)  *elemNodeIds*   ) 

Create a surface mesh access struct.

Note: this function is deprecated. Use syscGetSurfaceMeshNCI instead.

Parameters \[in\]nodeIds- output scalar data access for node ids\[in\]nodeCoords- output vector data access for node coordinates, provided in the same order as node ids\[in\]elemNodeCounts- output scalar data access for element node counts\[in\]elemNodeIds- output scalar data access for element node ids 



<a id="ga0745adffa475d10edb703906ed5d2772"></a>## [◆ ](#ga0745adffa475d10edb703906ed5d2772)syscGetSurfaceMeshB()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMeshB  ( [SyscOutputVectorData](structSyscOutputVectorData.xhtml)  *nodeCoords*,    [SyscOutputScalarData](structSyscOutputScalarData.xhtml)  *elemNodeCounts*,    [SyscOutputScalarData](structSyscOutputScalarData.xhtml)  *elemNodeIds*   ) 

Create a surface mesh access struct.

Note: this function is deprecated. Use syscGetSurfaceMeshNCI instead.

Parameters \[in\]nodeCoords- output vector data access for node coordinates, provided in ascending node ids order\[in\]elemNodeCounts- output scalar data access for element node counts\[in\]elemNodeIds- output scalar data access for element node ids 



<a id="ga239ac08da048715f5832302851960053"></a>## [◆ ](#ga239ac08da048715f5832302851960053)syscGetSurfaceMeshNCI()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMeshNCI  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml)  *elemNodeCounts*,    [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml)  *elemNodeConnectivity*   ) 

Create a surface mesh access struct.

Element node counts are provided, element types are deduced from element node counts.

Parameters \[in\]nodes- mesh nodes\[in\]elemNodeCounts- element node counts\[in\]elemNodeConnectivity- element-to-node connectivity 



<a id="ga734facb70a9948732d08eaccf4bb5102"></a>## [◆ ](#ga734facb70a9948732d08eaccf4bb5102)syscGetSurfaceMeshNCIF()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMeshNCIF  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml)  *elemNodeCounts*,    [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml)  *elemNodeConnectivity*,    [SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml)  *faceCellConnectivty*   ) 

Create a surface mesh access struct.

Element node counts are provided, element types are deduced from element node counts. Face-to-cell connectivity is provided as well.

Parameters \[in\]nodes- mesh nodes\[in\]elemNodeCounts- element node counts\[in\]elemNodeConnectivity- element-to-node connectivity\[in\]faceCellConnectivity- face-to-cell connectivity 



<a id="gafad33a17c7266f386e1bf42c66a9340f"></a>## [◆ ](#gafad33a17c7266f386e1bf42c66a9340f)syscGetSurfaceMeshNF()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMeshNF  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscFaceData](structSyscFaceData.xhtml)  *faces*   ) 

Create a surface mesh access struct.

Parameters \[in\]nodes- node data\[in\]faces- face data 



<a id="gaf61b2f4b29e77812cee161e63ff28e34"></a>## [◆ ](#gaf61b2f4b29e77812cee161e63ff28e34)syscGetSurfaceMeshNTCI()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMeshNTCI  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscElementTypeData](structSyscElementTypeData.xhtml)  *elemTypes*,    [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml)  *elemNodeCounts*,    [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml)  *elemNodeConnectivity*   ) 

Create a surface mesh access struct.

Both element types and element node counts are provided.

Parameters \[in\]nodes- mesh nodes\[in\]elemTypes- element types\[in\]elemNodeCounts- element node counts\[in\]elemNodeConnectivity- element-to-node connectivity 



<a id="ga481a20e443f5b245640441f47e455c67"></a>## [◆ ](#ga481a20e443f5b245640441f47e455c67)syscGetSurfaceMeshNTI()

 [SyscSurfaceMesh](structSyscSurfaceMesh.xhtml) syscGetSurfaceMeshNTI  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscElementTypeData](structSyscElementTypeData.xhtml)  *elemTypes*,    [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml)  *elemNodeConnectivity*   ) 

Create a surface mesh access struct.

Element types are provided, element node counts are deduced from element types.

Parameters \[in\]nodes- mesh nodes\[in\]elemTypes- element types\[in\]elemNodeConnectivity- element-to-node connectivity 



<a id="ga11cda8cc3f7f76d71b87baabbfe53304"></a>## [◆ ](#ga11cda8cc3f7f76d71b87baabbfe53304)syscGetVariable()

 [SyscVariable](structSyscVariable.xhtml) syscGetVariable  ( const char \*  *name*) 

Create variable to be used in a coupled analysis.

Parameters name- Unique name for this variable. String length should not exceed SYSC\_STRING\_LENGTH.Display name will default to the same as name.

Tensor type will default to scalar.

Is extensive flag will default to false (to non-extensive).

Location will default to nodes.

Quantity type will default to unspecified.





<a id="ga41420b43584d7b7ab11d94c2c4e4ccdb"></a>## [◆ ](#ga41420b43584d7b7ab11d94c2c4e4ccdb)syscGetVariableDTELQD()

 [SyscVariable](structSyscVariable.xhtml) syscGetVariableDTELQD  ( const char \*  *name*,    const char \*  *displayName*,    enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d)  *tensorType*,    int  *isExtensive*,    enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda)  *location*,    enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12)  *quantityType*,    enum SyscDataType  *dataType*   ) 

Create variable to be used in a coupled analysis.

Parameters name- Unique name for this variable. String length should not exceed SYSC\_STRING\_LENGTH.displayName- variable display name. String length should not exceed SYSC\_STRING\_LENGTH.tensorType- variable tensor type.isExtensive- flag indicating if it's an extensive property.location- variable location (e.g element or node).quantityType- variable quantity type.dataType- variable data type. 



<a id="gabcbdf21641e68a17e941a6c8da2afdc9"></a>## [◆ ](#gabcbdf21641e68a17e941a6c8da2afdc9)syscGetVariableQ()

 [SyscVariable](structSyscVariable.xhtml) syscGetVariableQ  ( const char \*  *name*,    const char \*  *displayName*,    enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda)  *location*,    enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12)  *quantityType*   ) 

Create variable to be used in a coupled analysis.

Parameters name- Unique name for this variable. String length should not exceed SYSC\_STRING\_LENGTH. displayName- variable display name. String length should not exceed SYSC\_STRING\_LENGTH. location- variable location (e.g element or node). quantityType- variable quantity type.The variable tensor type and is extensive properties will be inferred from the quantity type, according to the following rules:

Quantity Type Tensor Type Is Extensive

----------------------------------------------------------------

Force Vector True

Incremental Displacement Vector False

Temperature Scalar False

Heat Rate Scalar True

Heat Transfer Coefficient Scalar False

Convection Reference Temperature Scalar False



If any other quantity type is specified, tensor type will be set to scalar and is extensive will be set to false.





<a id="ga3aceb66e0d37a5de11b76fd4c1d7293d"></a>## [◆ ](#ga3aceb66e0d37a5de11b76fd4c1d7293d)syscGetVariableTE()

 [SyscVariable](structSyscVariable.xhtml) syscGetVariableTE  ( const char \*  *name*,    enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d)  *tensorType*,    int  *isExtensive*,    enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda)  *location*   ) 

Create variable to be used in a coupled analysis.

Parameters name- Unique name for this variable. String length should not exceed SYSC\_STRING\_LENGTH. tensorType- variable tensor type. isExtensive- flag indicating if it's an extensive property. location- variable location (e.g element or node).Display name will default to the same as name.

Quantity type will default to unspecified.





<a id="ga8c3a0f01eb353ffcb981281a76dde4b3"></a>## [◆ ](#ga8c3a0f01eb353ffcb981281a76dde4b3)syscGetVariableTEQ()

 [SyscVariable](structSyscVariable.xhtml) syscGetVariableTEQ  ( const char \*  *name*,    const char \*  *displayName*,    enum [SyscTensorType](group__SyscParticipantLibraryCAPI.xhtml#ga007e2fd66e7263a63c114a6d12b3808d)  *tensorType*,    int  *isExtensive*,    enum [SyscLocation](group__SyscParticipantLibraryCAPI.xhtml#gade42aba1a68acbbf5956edcd388cdcda)  *location*,    enum [SyscQuantityType](group__SyscParticipantLibraryCAPI.xhtml#gaa28a3de6c7c91003a8a15721a5301f12)  *quantityType*   ) 

Create variable to be used in a coupled analysis.

Parameters name- Unique name for this variable. String length should not exceed SYSC\_STRING\_LENGTH. displayName- variable display name. String length should not exceed SYSC\_STRING\_LENGTH. tensorType- variable tensor type. isExtensive- flag indicating if it's an extensive property. location- variable location (e.g element or node). quantityType- variable quantity type. 



<a id="gacdd4cb0f44e5d2e94a0ed34e0dc96bbe"></a>## [◆ ](#gacdd4cb0f44e5d2e94a0ed34e0dc96bbe)syscGetVolumeMeshElementBased()

 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) syscGetVolumeMeshElementBased  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscElementTypeData](structSyscElementTypeData.xhtml)  *cellTypes*,    [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml)  *cellNodeConnectivity*   ) 

Create an element-based volume mesh access struct.

Parameters \[in\]nodes- node data\[in\]cellTypes- cell types\[in\]cellNodeConnectivity- cell-to-node connectivity 



<a id="ga44f0210eb99864864b6ea802b5c8c857"></a>## [◆ ](#ga44f0210eb99864864b6ea802b5c8c857)syscGetVolumeMeshEmpty()

 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) syscGetVolumeMeshEmpty  ( ) 

Create an empty volume mesh access struct.

Returns a struct representing empty volume mesh. All member will be assigned default values.





<a id="gae426344ef494aa92411c8c3856cdcb7f"></a>## [◆ ](#gae426344ef494aa92411c8c3856cdcb7f)syscGetVolumeMeshFaceBased()

 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) syscGetVolumeMeshFaceBased  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscElementNodeCountData](structSyscElementNodeCountData.xhtml)  *faceNodeCounts*,    [SyscElementNodeConnectivityData](structSyscElementNodeConnectivityData.xhtml)  *faceNodeConnectivity*,    [SyscFaceCellConnectivityData](structSyscFaceCellConnectivityData.xhtml)  *faceCellConnectivity*,    [SyscCellIdData](structSyscCellIdData.xhtml)  *cellIds*   ) 

Create a face-based volume mesh access struct.

Parameters \[in\]nodes- node data\[in\]faceNodeCounts- face node counts\[in\]faceNodeConnectivity- face-to-node connectivity\[in\]faceCellConnectivity- face-to-cell connectivity\[in\]cellIds- cell ids 



<a id="gaa082ad5a3f9a308f6dfb794e8bdcd8cd"></a>## [◆ ](#gaa082ad5a3f9a308f6dfb794e8bdcd8cd)syscGetVolumeMeshNFC()

 [SyscVolumeMesh](structSyscVolumeMesh.xhtml) syscGetVolumeMeshNFC  ( [SyscNodeData](structSyscNodeData.xhtml)  *nodes*,    [SyscFaceData](structSyscFaceData.xhtml)  *faces*,    [SyscCellData](structSyscCellData.xhtml)  *cells*   ) 

Create a volume mesh access struct.

Parameters \[in\]nodes- node data\[in\]faces- face data\[in\]cells- cell data 



<a id="gaa26049072c61f17c4e1296490c00abc5"></a>## [◆ ](#gaa26049072c61f17c4e1296490c00abc5)syscInitializeAnalysis()

 [SyscError](structSyscError.xhtml) syscInitializeAnalysis  ( ) 

Provide a function to notify System Coupling that analysis initialization can be completed.

This function must be called after registering mesh and variable data access and prior to entering the coupled analysis loop.

If this function is called before the coupled analysis is complete, it will automatically complete the coupled analysis and assume steady analysis type.





<a id="ga1f4ab3d781755660f64b5a2cb691abe9"></a>## [◆ ](#ga1f4ab3d781755660f64b5a2cb691abe9)syscRegisterInputComplexScalarDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterInputComplexScalarDataAccess  ( [SyscInputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gab388f936f3a73b9b480a792c401a95a1)  *dataAccess*) 

Provide a function to register input complex scalar data access.

Parameters dataAccess- a pointer to the function that conforms to SyscInputComplexScalarDataAccess prototype. 



<a id="ga55a307bf13f2d002f05660d781fef50e"></a>## [◆ ](#ga55a307bf13f2d002f05660d781fef50e)syscRegisterInputComplexScalarDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterInputComplexScalarDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscInputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga7a0c5889de7b17b59d44595d7636747e)  *dataAccess*   ) 

Provide a function to register input complex scalar data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscInputComplexScalarDataAccessWithPointer prototype. 



<a id="gaf281613584c91fb460de5e4557f16767"></a>## [◆ ](#gaf281613584c91fb460de5e4557f16767)syscRegisterInputComplexVectorDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterInputComplexVectorDataAccess  ( [SyscInputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gace54794852b48d8725b930f1aed89c4d)  *dataAccess*) 

Provide a function to register input complex vector data access.

Parameters dataAccess- a pointer to the function that conforms to SyscInputComplexVectorDataAccess prototype. 



<a id="gadfee511d3a3021907ee187716fff0944"></a>## [◆ ](#gadfee511d3a3021907ee187716fff0944)syscRegisterInputComplexVectorDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterInputComplexVectorDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscInputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga68dcce877e8cc69f13bee845c76f1b4d)  *dataAccess*   ) 

Provide a function to register input complex vector data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscInputComplexVectorDataAccessWithPointer prototype. 



<a id="ga06c366cb935ade55b7b90de9691d3f38"></a>## [◆ ](#ga06c366cb935ade55b7b90de9691d3f38)syscRegisterInputScalarDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterInputScalarDataAccess  ( [SyscInputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gaaf3788ac706a730edbf6093c7e543681)  *dataAccess*) 

Provide a function to register input scalar data access.

Parameters dataAccess- a pointer to the function that conforms to SyscInputScalarDataAccess prototype. 



<a id="ga04bbb44826997f602707b9e01d07d78e"></a>## [◆ ](#ga04bbb44826997f602707b9e01d07d78e)syscRegisterInputScalarDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterInputScalarDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscInputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gad41922f1a4f5abb891d5a913ba5fcccf)  *dataAccess*   ) 

Provide a function to register input scalar data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscInputScalarDataAccessWithPointer prototype. 



<a id="ga6b2aee555f07109357958edc9898b8b5"></a>## [◆ ](#ga6b2aee555f07109357958edc9898b8b5)syscRegisterInputScalarDataMultiZoneAccess()

 [SyscError](structSyscError.xhtml) syscRegisterInputScalarDataMultiZoneAccess  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscInputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga844dc6322bd6e4eabc2d3d2d9e69bdb1)  *dataAccess*   ) 

Provide a function to register input scalar data multi-zone access.

Parameters dataAccess- a pointer to the function that conforms to SyscInputScalarDataMultiZoneAccess prototype. 



<a id="ga36e9fe53c70f9c15cbcfc3957f80852b"></a>## [◆ ](#ga36e9fe53c70f9c15cbcfc3957f80852b)syscRegisterInputVectorDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterInputVectorDataAccess  ( [SyscInputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga8d5f53de4e65a4bacef0f25ba8b46483)  *dataAccess*) 

Provide a function to register input vector data access.

Parameters dataAccess- a pointer to the function that conforms to SyscInputVectorDataAccess prototype. 



<a id="ga46b386f0c3ed52071dd851b55763b1c8"></a>## [◆ ](#ga46b386f0c3ed52071dd851b55763b1c8)syscRegisterInputVectorDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterInputVectorDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscInputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gae7c6372393f3ec720b8d6d1535fcf9b3)  *dataAccess*   ) 

Provide a function to register input vector data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscInputVectorDataAccessWithPointer prototype. 



<a id="gad7774418be78b8b39c9b45b7fcade1d3"></a>## [◆ ](#gad7774418be78b8b39c9b45b7fcade1d3)syscRegisterInputVectorDataMultiZoneAccess()

 [SyscError](structSyscError.xhtml) syscRegisterInputVectorDataMultiZoneAccess  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscInputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gae2e92f1b7ae911c36bf3606c60a01511)  *dataAccess*   ) 

Provide a function to register input vector data multi-zone access.

Parameters dataAccess- a pointer to the function that conforms to SyscInputVectorDataMultiZoneAccess prototype. 



<a id="ga1c0e074f2239faf10594e3139d32efe1"></a>## [◆ ](#ga1c0e074f2239faf10594e3139d32efe1)syscRegisterOutputComplexScalarDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterOutputComplexScalarDataAccess  ( [SyscOutputComplexScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17d96c2c29a44374309efafdfb8fef62)  *dataAccess*) 

Provide a function to register output complex scalar data access.

Parameters dataAccess- a pointer to the function that conforms to SyscOutputComplexScalarDataAccess prototype. 



<a id="ga5a7faf0c3fe80ffc7925da217ecce202"></a>## [◆ ](#ga5a7faf0c3fe80ffc7925da217ecce202)syscRegisterOutputComplexScalarDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterOutputComplexScalarDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscOutputComplexScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga71ac4910edd87d8d62e871001258c698)  *dataAccess*   ) 

Provide a function to register output complex scalar data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscOutputComplexScalarDataAccessWithPointer prototype. 



<a id="ga1cb92c5ccc643abce68fba25f61e3d41"></a>## [◆ ](#ga1cb92c5ccc643abce68fba25f61e3d41)syscRegisterOutputComplexVectorDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterOutputComplexVectorDataAccess  ( [SyscOutputComplexVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga65a0f3a119f2cec715ac89798f16a97c)  *dataAccess*) 

Provide a function to register output complex vector data access.

Parameters dataAccess- a pointer to the function that conforms to SyscOutputComplexVectorDataAccess prototype. 



<a id="ga859961191e2943afd73b8e31cbd010c9"></a>## [◆ ](#ga859961191e2943afd73b8e31cbd010c9)syscRegisterOutputComplexVectorDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterOutputComplexVectorDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscOutputComplexVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#ga18e31a00d833843895c731e69ca006b0)  *dataAccess*   ) 

Provide a function to register output complex vector data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscOutputComplexVectorDataAccessWithPointer prototype. 



<a id="ga6e187589ca426402ee045ccecfec21d3"></a>## [◆ ](#ga6e187589ca426402ee045ccecfec21d3)syscRegisterOutputScalarDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterOutputScalarDataAccess  ( [SyscOutputScalarDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gabd35283796cae3d3dbc851ac66b8564f)  *dataAccess*) 

Provide a function to register output scalar data access.

Parameters dataAccess- a pointer to the function that conforms to SyscOutputScalarDataAccess prototype. 



<a id="ga2c90e2ea571de3b7ce5e1ca65a996d8a"></a>## [◆ ](#ga2c90e2ea571de3b7ce5e1ca65a996d8a)syscRegisterOutputScalarDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterOutputScalarDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscOutputScalarDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gab378ed75ffd9b081ad7eccf8107a5542)  *dataAccess*   ) 

Provide a function to register output scalar data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscOutputScalarDataAccessWithPointer prototype. 



<a id="ga7880daf983c8bac7db920281fdc937c1"></a>## [◆ ](#ga7880daf983c8bac7db920281fdc937c1)syscRegisterOutputScalarDataMultiZoneAccess()

 [SyscError](structSyscError.xhtml) syscRegisterOutputScalarDataMultiZoneAccess  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscOutputScalarDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga7767f728d880014dfbd853bbb8e0eb07)  *dataAccess*   ) 

Provide a function to register output scalar data multi-zone access.

Parameters dataAccess- a pointer to the function that conforms to SyscOutputScalarDataMultiZoneAccess prototype. 



<a id="gaa3956909f65a425bec64c86ec5d5515b"></a>## [◆ ](#gaa3956909f65a425bec64c86ec5d5515b)syscRegisterOutputVectorDataAccess()

 [SyscError](structSyscError.xhtml) syscRegisterOutputVectorDataAccess  ( [SyscOutputVectorDataAccess](group__SyscParticipantLibraryCAPI.xhtml#gae99c8cb78199403b9e74217557be206a)  *dataAccess*) 

Provide a function to register output vector data access.

Parameters dataAccess- a pointer to the function that conforms to SyscOutputVectorDataAccess prototype. 



<a id="ga9793fb31fe905768b175842ceab722e5"></a>## [◆ ](#ga9793fb31fe905768b175842ceab722e5)syscRegisterOutputVectorDataAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterOutputVectorDataAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscOutputVectorDataAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gab30cbe5478bf769c81f5c0a07e885afd)  *dataAccess*   ) 

Provide a function to register output vector data access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.dataAccess- a pointer to the function that conforms to SyscOutputVectorDataAccessWithPointer prototype. 



<a id="gad5c33007c0067ab6edf8a72ab422ff7d"></a>## [◆ ](#gad5c33007c0067ab6edf8a72ab422ff7d)syscRegisterOutputVectorDataMultiZoneAccess()

 [SyscError](structSyscError.xhtml) syscRegisterOutputVectorDataMultiZoneAccess  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscOutputVectorDataMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga1d6d5d9fa806ac5820d9a6ed85811804)  *dataAccess*   ) 

Provide a function to register output vector data multi-zone access.

Parameters dataAccess- a pointer to the function that conforms to SyscOutputVectorDataMultiZoneAccess prototype. 



<a id="gade30d8ccbbad0236ace57edfe55181d5"></a>## [◆ ](#gade30d8ccbbad0236ace57edfe55181d5)syscRegisterPointCloudAccess()

 [SyscError](structSyscError.xhtml) syscRegisterPointCloudAccess  ( [SyscPointCloudAccess](group__SyscParticipantLibraryCAPI.xhtml#gae999907f608779e525e34f60d2803038)  *pointCloudAccess*) 

Provide a function to register point cloud access.

Parameters pointCloudAccess- a pointer to the function that conforms to SyscPointCloudAccess prototype. 



<a id="gaedae298744b65c453c7dac3e8dc1d68a"></a>## [◆ ](#gaedae298744b65c453c7dac3e8dc1d68a)syscRegisterPointCloudAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterPointCloudAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscPointCloudAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gafa62fd6d86905625ae071dea4749a8df)  *pointCloudAccess*   ) 

Provide a function to register point cloud access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.pointCloudAccess- a pointer to the function that conforms to SyscPointCloudAccessWithPointer prototype. 



<a id="ga77d6e90a118be65eeb86ce08a3a3dea5"></a>## [◆ ](#ga77d6e90a118be65eeb86ce08a3a3dea5)syscRegisterPointCloudMultiZoneAccess()

 [SyscError](structSyscError.xhtml) syscRegisterPointCloudMultiZoneAccess  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscPointCloudMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gac4a0788f14f0d473372f07638e9dceaa)  *pointCloudAccess*   ) 

Provide a function to register point cloud multi-zone access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.meshAccess- a pointer to the function that conforms to SyscPointCloudMultiZoneAccess prototype. 



<a id="ga30880d98428a08962ab027267c66c2ae"></a>## [◆ ](#ga30880d98428a08962ab027267c66c2ae)syscRegisterRestartPointCreation()

 [SyscError](structSyscError.xhtml) syscRegisterRestartPointCreation  ( [SyscRestartPointCreation](group__SyscParticipantLibraryCAPI.xhtml#ga6d3934571a8dcc03e2ecbe724a808c1b)  *restartPointCreation*) 

Provide a function to register restart point creation callback.

Parameters restartPointCreation- a pointer to the function that conforms to SyscRestartPointCreation function prototype. See SyscRestartPointCreation for details. 



<a id="gadddd0903fcab2450b14f54157e283302"></a>## [◆ ](#gadddd0903fcab2450b14f54157e283302)syscRegisterSurfaceMeshAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterSurfaceMeshAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscSurfaceMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gafbfb299099d65e3f232bb67a04d1a8e9)  *meshAccess*   ) 

Provide a function to register surface mesh access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.meshAccess- a pointer to the function that conforms to SyscSurfaceMeshAccessWithPointer prototype. 



<a id="ga3261b0b3eb6278c380a5b59894a7b533"></a>## [◆ ](#ga3261b0b3eb6278c380a5b59894a7b533)syscRegisterSurfaceMeshMultiZoneAccess()

 [SyscError](structSyscError.xhtml) syscRegisterSurfaceMeshMultiZoneAccess  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscSurfaceMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#ga9ffe052c4c28ff40b4a14b32cd9f227c)  *meshAccess*   ) 

Provide a function to register surface mesh multi-zone access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.meshAccess- a pointer to the function that conforms to SyscSurfaceMeshMultiZoneAccess prototype. 



<a id="ga044974d4f159fd35669b77e5111fe7e0"></a>## [◆ ](#ga044974d4f159fd35669b77e5111fe7e0)syscRegisterSurfMeshAccess()

 [SyscError](structSyscError.xhtml) syscRegisterSurfMeshAccess  ( [SyscSurfMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#ga71e4eb102d00dd0a211f6dc2f4d24222)  *meshAccess*) 

Provide a function to register surface mesh access.

Parameters meshAccess- a pointer to the function that conforms to SyscSurfMeshAccess prototype. 



<a id="ga27ba2e330c4d2c20b692a7ab66852721"></a>## [◆ ](#ga27ba2e330c4d2c20b692a7ab66852721)syscRegisterVolumeMeshAccess()

 [SyscError](structSyscError.xhtml) syscRegisterVolumeMeshAccess  ( [SyscVolumeMeshAccess](group__SyscParticipantLibraryCAPI.xhtml#gad0ff77c2af045d3294b149219123a084)  *meshAccess*) 

Provide a function to register volume mesh access.

Parameters meshAccess- a pointer to the function that conforms to SyscVolumeMeshAccess prototype. 



<a id="ga3b90426f24a434668b5270930192fec6"></a>## [◆ ](#ga3b90426f24a434668b5270930192fec6)syscRegisterVolumeMeshAccessWithPointer()

 [SyscError](structSyscError.xhtml) syscRegisterVolumeMeshAccessWithPointer  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscVolumeMeshAccessWithPointer](group__SyscParticipantLibraryCAPI.xhtml#gadcb6262e27485836632696e52cf80fb9)  *meshAccess*   ) 

Provide a function to register volume mesh access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.meshAccess- a pointer to the function that conforms to SyscVolumeMeshAccessWithPointer prototype. 



<a id="gab71a3bc5775e830b2dac81dd6828cb13"></a>## [◆ ](#gab71a3bc5775e830b2dac81dd6828cb13)syscRegisterVolumeMeshMultiZoneAccess()

 [SyscError](structSyscError.xhtml) syscRegisterVolumeMeshMultiZoneAccess  ( [SyscOpaqueDataAccess](group__SyscParticipantLibraryCAPI.xhtml#ga17ef60969b3c919163ba2471eb95a28b)  *opaqueDataAccess*,    [SyscVolumeMeshMultiZoneAccess](group__SyscParticipantLibraryCAPI.xhtml#gaf381b799bec1baf9f3ab727b61458b59)  *meshAccess*   ) 

Provide a function to register volume mesh multi-zone access.

Parameters opaqueDataAccess- a pointer to an address in memory. This pointer will be passed into the callback function.meshAccess- a pointer to the function that conforms to SyscVolumeMeshMultiZoneAccess prototype. 



<a id="ga67c13bf8cd7fedeb86ac32b6d919eeb0"></a>## [◆ ](#ga67c13bf8cd7fedeb86ac32b6d919eeb0)syscSetParameterValue()

 [SyscError](structSyscError.xhtml) syscSetParameterValue  ( const char \*  *parameterName*,    double  *value*   ) 

Provide a function to set a Parameter value.

Parameters \[in\]parameterName- name of the parameter. \[in\]value- value of the parameter. 



<a id="ga862e7375111dcee847bc05463c72b329"></a>## [◆ ](#ga862e7375111dcee847bc05463c72b329)syscStartStandaloneParallel()

 [SyscError](structSyscError.xhtml) syscStartStandaloneParallel  ( const size\_t  *mpiCommunicator*) 

Provide a function to start standalone mode in parallel.

Parameters \[in\]mpiCommunicatorMPI communicator cast to size\_t.This will initialize the participant library in standalone mode and will use the provided MPI communicator for all parallel communication.

Note that if the MPI communicator is MPI\_COMM\_WORLD, then it is not necessary to call this function.





<a id="ga8445069f0234978743203e1d5c0cb62c"></a>## [◆ ](#ga8445069f0234978743203e1d5c0cb62c)syscUpdateInputs()

 [SyscError](structSyscError.xhtml) syscUpdateInputs  ( ) 

Provide a function to update the participants input variables.

Solution data for all input variables will be updated. Depending on the defined interfaces, data will be transferred from another coupling participant solver, or from the opposite side of the same-participant coupling interface.

When doing cosimulation, this function must be called from inside the coupled analysis loop. It tells System Coupling that the participant is about to begin its solver iterations. All input variable data will be up-to-date after returning from this function. If any local coupling interfaces are defined, all corresponding input variable data will also be updated.

When doing same-participant mapping only (without cosimulation), this function should be called whenever input data needs to be brought up-to-date.





<a id="ga3b5e8e0315bbbe48526324439c422733"></a>## [◆ ](#ga3b5e8e0315bbbe48526324439c422733)syscUpdateOutputs()

 [SyscError](structSyscError.xhtml) syscUpdateOutputs  ( const enum [SyscConvergenceStatus](group__SyscParticipantLibraryCAPI.xhtml#ga10ce3774353dfbc811147a9ad211b3cd)  *convStatus*) 

Provide a function to update the participants output variables.

This function must be called from inside the coupled analysis loop. It tells System Coupling that the participant has finished performing its solver iterations.





<a id="gad55adabb4ed5bdb44833c06671541921"></a>## [◆ ](#gad55adabb4ed5bdb44833c06671541921)syscWriteSetupFile()

 int syscWriteSetupFile  ( const [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml)  *setupFileInfo*) 

Provide a function to write the setup file.

This function can be used to generate a System Coupling setup file, which contains participant's setup information. It should be called after calling syscCompleteCouplingSetup.

It takes [SyscSetupFileInfo](structSyscSetupFileInfo.xhtml "Provide a structure for writing System Coupling setup files.") struct as input parameter.

It will return true (1) if the setup file was successfully written, and false (0) otherwise.