C Interfaces for Participant Library
Last update: 17.07.2025Provides C interfaces to the System Coupling participant library. More...
Data Structures | |
| struct | SyscRealAttribute |
| Provide a struct for a real-valued attribute. More... | |
| struct | SyscIntegerAttribute |
| Provide a struct for an integer-valued attribute. More... | |
| struct | SyscDimensionality |
| Provide a structure for dimensionality. More... | |
| struct | SyscTimeStep |
| Provide a struct for time step. More... | |
| struct | SyscSolutionControl |
| Provide a structure containing solution control. More... | |
| struct | SyscError |
| Provide a struct for detecting errors from the interface calls. More... | |
| struct | SyscSetupInfo |
| Provide a structure for System Coupling setup information. More... | |
| struct | SyscSetupFileInfo |
| Provide a structure for writing System Coupling setup files. More... | |
| struct | SyscResultsInfo |
| Provide a structure for writing results files. More... | |
| struct | SyscCouplingInterface |
| Provide a struct for a coupling interface. More... | |
| struct | SyscDataTransfer |
| Provide a struct for a data transfer. More... | |
| struct | SyscInputComplexScalarData |
| Struct for input complex scalar data. More... | |
| struct | SyscInputComplexVectorData |
| Struct for input complex vector data. More... | |
| struct | SyscInputScalarData |
| Provide a struct for input scalar data. More... | |
| struct | SyscInputVectorData |
| Provide a struct for input vector data. More... | |
| struct | SyscNodeData |
| Node data access struct, provides read-only access to the mesh nodes. More... | |
| struct | SyscElementTypeData |
| Element types access struct, provides read-only access to the mesh element types. More... | |
| struct | SyscElementNodeCountData |
| Element node count access struct, provides read-only access to the mesh element node counts. More... | |
| struct | SyscElementNodeConnectivityData |
| Element node connectivity access struct, provides read-only access to the element-to-node connectivity. More... | |
| struct | SyscFaceCellConnectivityData |
| Describes face-to-cell connectivity. More... | |
| struct | SyscCellIdData |
| Cell ids struct. More... | |
| struct | SyscElementIdData |
| Element ids struct. More... | |
| struct | SyscFaceData |
| Face data struct. More... | |
| struct | SyscCellData |
| Cell data struct. More... | |
| struct | SyscOutputComplexScalarData |
| Struct for output complex scalar data. More... | |
| struct | SyscOutputComplexVectorData |
| Struct for output complex vector data. More... | |
| struct | SyscOutputIntegerData |
| Provide a struct for output integer data. More... | |
| struct | SyscOutputScalarData |
| Provide a struct for output scalar data. More... | |
| struct | SyscOutputVectorData |
| Create an output vector data access struct. More... | |
| struct | SyscPointCloud |
| Provide a point cloud access struct. More... | |
| struct | SyscRegion |
| Provide a struct for a System Coupling region. More... | |
| struct | SyscSurfaceMesh |
| Provide a surface mesh access struct. More... | |
| struct | SyscVariable |
| Provide a struct for a System Coupling variable. More... | |
| struct | SyscVolumeMesh |
| Provide a volume mesh access struct. More... | |
Macros | |
| #define | SYSC_STRING_LENGTH 256 |
| Define maximum string length. | |
Typedefs | |
| typedef struct SyscSolutionControl | SyscSolutionControl |
| Provide a structure containing solution control. | |
| typedef void * | SyscOpaqueDataAccess |
| typedef struct SyscSetupInfo | SyscSetupInfo |
| Provide a structure for System Coupling setup information. | |
| typedef struct SyscSetupFileInfo | SyscSetupFileInfo |
| Provide a structure for writing System Coupling setup files. | |
| typedef struct SyscResultsInfo | SyscResultsInfo |
| Provide a structure for writing results files. | |
| typedef struct SyscCouplingInterface | SyscCouplingInterface |
| Provide a struct for a coupling interface. | |
| typedef struct SyscDataTransfer | SyscDataTransfer |
| Provide a struct for a data transfer. | |
| typedef SyscInputScalarData(* | SyscInputScalarDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to input scalar data. | |
| typedef SyscInputScalarData(* | SyscInputScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to input scalar data with opaque pointer. | |
| typedef SyscInputScalarData(* | SyscInputScalarDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
| Provide function prototype for access to multi-zone input scalar data. | |
| typedef SyscInputVectorData(* | SyscInputVectorDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to input vector data. | |
| typedef SyscInputVectorData(* | SyscInputVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to input vector data with opaque pointer. | |
| typedef SyscInputVectorData(* | SyscInputVectorDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
| Provide function prototype for access to multi-zone input vector data. | |
| typedef SyscOutputScalarData(* | SyscOutputScalarDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to output scalar data. | |
| typedef SyscOutputScalarData(* | SyscOutputScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to output scalar data with opaque pointer. | |
| typedef SyscOutputScalarData(* | SyscOutputScalarDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
| Provide function prototype for access to multi-zone output scalar data. | |
| typedef SyscOutputVectorData(* | SyscOutputVectorDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to output vector data. | |
| typedef SyscOutputVectorData(* | SyscOutputVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to output vector data with opaque pointer. | |
| typedef SyscOutputVectorData(* | SyscOutputVectorDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
| Provide function prototype for access to multi-zone output vector data. | |
| typedef SyscInputComplexScalarData(* | SyscInputComplexScalarDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to input complex scalar data. | |
| typedef SyscInputComplexScalarData(* | SyscInputComplexScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to input complex scalar data with opaque pointer. | |
| typedef SyscInputComplexVectorData(* | SyscInputComplexVectorDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to input complex vector data. | |
| typedef SyscInputComplexVectorData(* | SyscInputComplexVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to input complex vector data with opaque pointer. | |
| typedef SyscOutputComplexScalarData(* | SyscOutputComplexScalarDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to output complex scalar data. | |
| typedef SyscOutputComplexScalarData(* | SyscOutputComplexScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to output complex scalar data with opaque pointer. | |
| typedef SyscOutputComplexVectorData(* | SyscOutputComplexVectorDataAccess) (const char *regionName, const char *variableName) |
| Provide function prototype for access to output complex vector data. | |
| typedef SyscOutputComplexVectorData(* | SyscOutputComplexVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
| Provide function prototype for access to output complex vector data with opaque pointer. | |
| typedef SyscSurfaceMesh(* | SyscSurfMeshAccess) (const char *regionName) |
| Provide function prototype for access to surface mesh. | |
| typedef SyscSurfaceMesh(* | SyscSurfaceMeshAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
| Provide function prototype for access to surface mesh with opaque pointer. | |
| typedef SyscSurfaceMesh(* | SyscSurfaceMeshMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, uint16_t zoneIndex) |
| Provide function prototype for access to multi-zone surface mesh. | |
| typedef SyscVolumeMesh(* | SyscVolumeMeshAccess) (const char *regionName) |
| Provide function prototype for access to volume mesh. | |
| typedef SyscVolumeMesh(* | SyscVolumeMeshAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
| Provide function prototype for access to volume mesh with opaque pointer. | |
| typedef SyscVolumeMesh(* | SyscVolumeMeshMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, uint16_t zoneIndex) |
| Provide function prototype for access to multi-zone volume mesh. | |
| typedef SyscPointCloud(* | SyscPointCloudAccess) (const char *regionName) |
| Provide function prototype for access to point cloud. | |
| typedef SyscPointCloud(* | SyscPointCloudAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
| Provide function prototype for access to point cloud with an opaque pointer. | |
| typedef SyscPointCloud(* | SyscPointCloudMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, uint16_t zoneIndex) |
| Provide function prototype for access to multi-zone point cloud. | |
| typedef uint16_t(* | SyscZoneCountAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
| Provide function prototype for access to zone count. | |
| typedef const char *(* | SyscRestartPointCreation) () |
| Provide function prototype for creating restart points. | |
| typedef struct SyscRegion | SyscRegion |
| Provide a struct for a System Coupling region. | |
| typedef struct SyscVariable | SyscVariable |
| Provide a struct for a System Coupling variable. | |
Enumerations | |
| enum | SyscLocation { SyscNode = 0 , SyscElement = 1 } |
| Provide an enum for variable mesh locations. More... | |
| enum | SyscTensorType { SyscScalar = 0 , SyscVector = 1 } |
| Provide an enum for variable tensor type. More... | |
| enum | SyscTopology { SyscSurface = 2 , SyscVolume = 3 } |
| Provide an enum for region topologies. More... | |
| enum | SyscRegionDiscretizationType { SyscMeshRegion = 0 , SyscPointCloudRegion = 1 } |
| Provoide an enum for region mesh type. More... | |
| enum | SyscInterfaceSide { SyscInterfaceSide_One = 1 , SyscInterfaceSide_Two = 2 } |
| Provide enum for coupling interface side. More... | |
| enum | SyscDimension { SyscD2 = 2 , SyscD3 = 3 } |
| Provide enum for system coupling dimension. More... | |
| enum | SyscQuantityType { 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... | |
| enum | SyscDataType { SyscDataType_Real = 0 , SyscDataType_Complex = 1 } |
| enum | SyscConvergenceStatus { SyscDiverging = -1 , SyscNotYetConverged = 0 , SyscConverged = 1 , SyscComplete = 2 , SyscNotEvaluated = 3 } |
| Provide enum for participant's solver convergence status. More... | |
| enum | SyscAnalysisType { SyscSteady = 0 , SyscTransient = 1 } |
| Provide an enum for coupled analysis type. More... | |
| enum | SyscPrimitiveType { SyscFloat = 0 , SyscDouble = 1 , SyscInt32 = 2 , SyscInt64 = 3 , SyscUnsignedInt16 = 4 , SyscUnsignedInt64 = 5 } |
| Provide an enum for supported primitive types. More... | |
| enum | SyscElementTypes { SyscTri3 = 5 , SyscTri6 = 6 , SyscQuad4 = 7 , SyscQuad8 = 8 , SyscTet4 = 9 , SyscTet10 = 10 , SyscHex8 = 11 , SyscHex20 = 12 , SyscWedge6 = 13 , SyscWedge15 = 14 , SyscPyramid5 = 15 , SyscPyramid13 = 16 , SyscPolygon = 18 , SyscPolyhedron = 19 } |
| Provide an enum for element types. More... | |
Functions | |
| SyscRealAttribute | syscGetRealAttribute (const char *name, double value, SyscDimensionality dimensionality) |
| Create a real-valued attribute. | |
| SyscIntegerAttribute | syscGetIntegerAttribute (const char *name, long long int value) |
| Create an integer-valued attribute. | |
| SyscDimensionality | syscGetDimensionality () |
| Get dimensionality. | |
| SyscError | syscGetSyscError (int retcode, const char *message) |
| Provide a function to return SyscError struct. | |
| SyscSetupInfo | syscGetSetupInfo () |
| Create a setup info struct. | |
| SyscSetupInfo | syscGetSetupInfoA (enum SyscAnalysisType analysisType) |
| Create a setup info struct. | |
| SyscSetupInfo | syscGetSetupInfoAR (enum SyscAnalysisType analysisType, int restartsSupported) |
| Create a setup info struct. | |
| SyscSetupInfo | syscGetSetupInfoARD (enum SyscAnalysisType analysisType, int restartsSupported, enum SyscDimension dimension) |
| Create a setup info struct. | |
| SyscSetupFileInfo | syscGetSetupFileInfo (const char *setupFileName) |
| Provide a function to create SetupFileInfo struct. | |
| SyscResultsInfo | syscGetResultsInfo (const char *baseFileName) |
| Provide a function to create SetupFileInfo struct. | |
| SyscCouplingInterface | syscGetCouplingInterface (const char *name) |
| Create a coupling interface. | |
| SyscError | syscAddSideOneRegion (const SyscCouplingInterface couplingInterface, const SyscRegion region) |
| Add region to side one of the interface. | |
| SyscError | syscAddSideTwoRegion (const SyscCouplingInterface couplingInterface, const SyscRegion region) |
| Add region to side two of the interface. | |
| SyscError | syscAddDataTransfer (SyscCouplingInterface couplingInterface, SyscDataTransfer dataTransfer) |
| Add the data transfer to the coupling interface. | |
| size_t | syscCouplingInterfaceGetNumDataTransfers (SyscCouplingInterface couplingInterface) |
| Get number of data transfer for a given coupling interface. | |
| size_t | syscCouplingInterfaceGetNumSideOneRegions (SyscCouplingInterface couplingInterface) |
| Get number of side one regions for a given coupling interface. | |
| size_t | syscCouplingInterfaceGetNumSideTwoRegions (SyscCouplingInterface couplingInterface) |
| Get number of side two regions for a given coupling interface. | |
| SyscDataTransfer | syscCouplingInterfaceGetDataTransfer (SyscCouplingInterface couplingInterface, size_t index) |
| Get the data transfer at specified index for a given coupling interface. | |
| SyscRegion | syscCouplingInterfaceGetSideOneRegion (SyscCouplingInterface couplingInterface, size_t index) |
| Get the side one region at specified index for a given coupling interface. | |
| SyscRegion | syscCouplingInterfaceGetSideTwoRegion (SyscCouplingInterface couplingInterface, size_t index) |
| Get the side two region at specified index for a given coupling interface. | |
| SyscDataTransfer | syscGetDataTransfer (SyscVariable sideOneVariable, SyscVariable sideTwoVariable, enum SyscInterfaceSide targetSide) |
| Create a data transfer using side{One|Two}Variable. | |
| SyscDataTransfer | syscGetDataTransferST (SyscVariable sourceVariable, SyscVariable targetVariable, enum SyscInterfaceSide targetSide) |
| Create a data transfer using {source|target}Variable. | |
| SyscInputComplexScalarData | syscGetInputComplexScalarData () |
| Create an empty input copmlex scalar data access struct. | |
| SyscInputComplexScalarData | syscGetInputComplexScalarDataSplitDouble (double *const dataReal, double *const dataImag, size_t dataSize) |
| Create a complex input scalar data access struct. | |
| SyscInputComplexScalarData | syscGetInputComplexScalarDataSplitFloat (float *const dataReal, float *const dataImag, size_t dataSize) |
| Create a complex input scalar data access struct. | |
| SyscInputComplexScalarData | syscGetInputComplexScalarDataCompactDouble (double *const data, size_t dataSize) |
| Create a complex input scalar data access struct. | |
| SyscInputComplexScalarData | syscGetInputComplexScalarDataCompactFloat (float *const data, size_t dataSize) |
| Create a complex input scalar data access struct. | |
| SyscInputComplexVectorData | syscGetInputComplexVectorData () |
| Create an empty input complex vector data access struct. | |
| SyscInputComplexVectorData | syscGetInputCompactComplexCompactVectorDataDouble (double *const data, size_t dataSize) |
| Create a 3D complex input vector data access struct. | |
| SyscInputComplexVectorData | syscGetInputCompactComplexCompactVectorDataFloat (float *const data, size_t dataSize) |
| Create a 3D complex input vector data access struct. | |
| SyscInputComplexVectorData | syscGetInputSplitComplexCompactVectorDataDouble (double *const dataReal, double *const dataImag, size_t dataSize) |
| Create a 3D complex input vector data access struct. | |
| SyscInputComplexVectorData | syscGetInputSplitComplexCompactVectorDataFloat (float *const dataReal, float *const dataImag, size_t dataSize) |
| Create a 3D complex input vector data access struct. | |
| SyscInputComplexVectorData | syscGetInputCompactComplexSplitVectorDataDouble (double *const data1, double *const data2, double *const data3, size_t dataSize) |
| Create a 3D complex input vector data access struct. | |
| SyscInputComplexVectorData | syscGetInputCompactComplexSplitVectorDataFloat (float *const data1, float *const data2, float *const data3, size_t dataSize) |
| Create a 3D complex input vector data access struct. | |
| SyscInputComplexVectorData | 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. | |
| SyscInputComplexVectorData | 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. | |
| SyscInputComplexVectorData | syscGetInputCompactComplexCompactVectorDataDoubleDim (double *const data, size_t dataSize, enum SyscDimension dimension) |
| Create a complex input vector data access struct based on dimension. | |
| SyscInputComplexVectorData | syscGetInputCompactComplexCompactVectorDataFloatDim (float *const data, size_t dataSize, enum SyscDimension dimension) |
| Create a complex input vector data access struct based on dimension. | |
| SyscInputScalarData | syscGetInputScalarData () |
| Create an input scalar data access struct. | |
| SyscInputScalarData | syscGetInputScalarDataDouble (double *const data, size_t dataSize) |
| Create an input scalar data access struct. | |
| SyscInputScalarData | syscGetInputScalarDataFloat (float *const data, size_t dataSize) |
| Create an input scalar data access struct. | |
| SyscInputVectorData | syscGetInputVectorData () |
| Create an input vector data access struct. | |
| SyscInputVectorData | syscGetInputVectorDataCompactDouble (double *const data, size_t dataSize) |
| Create an 3D input vector data access struct with compact storage. | |
| SyscInputVectorData | syscGetInputVectorDataCompactFloat (float *const data, size_t dataSize) |
| Create an 3D input vector data access struct with compact storage. | |
| SyscInputVectorData | syscGetInputVectorDataSplitDouble (double *const data0, double *const data1, double *const data2, size_t dataSize) |
| Create an 3D input vector data access struct with split storage. | |
| SyscInputVectorData | syscGetInputVectorDataSplitFloat (float *const data0, float *const data1, float *const data2, size_t dataSize) |
| Create an 3D input vector data access struct with split storage. | |
| SyscInputVectorData | syscGetInputVectorDataCompactDoubleDim (double *const data, size_t dataSize, enum SyscDimension dimension) |
| Create an input vector data access struct with compact storage based on dimension. | |
| SyscInputVectorData | syscGetInputVectorDataCompactFloatDim (float *const data, size_t dataSize, enum SyscDimension dimension) |
| Create an input vector data access struct with compact storage based on dimension. | |
| SyscInputVectorData | syscGetInput2DVectorDataSplitDouble (double *const data0, double *const data1, size_t dataSize) |
| Create an 2D input vector data access struct with split storage. | |
| SyscInputVectorData | syscGetInput2DVectorDataSplitFloat (float *const data0, float *const data1, size_t dataSize) |
| Create an 2D input vector data access struct with split storage. | |
| SyscNodeData | syscGetNodeData () |
| Create a mesh node data access struct. | |
| SyscNodeData | syscGetNodeDataIC (SyscOutputIntegerData nodeIds, SyscOutputVectorData nodeCoords) |
| Create a mesh node data access struct, given node ids and node coords in same order. | |
| SyscNodeData | syscGetNodeDataC (SyscOutputVectorData nodeCoords) |
| Creates a mesh node data access struct, given node coordinates in ascending node ids order. | |
| SyscElementTypeData | syscGetElementTypeDataEmpty () |
| Create an empty mesh element type data access struct. | |
| SyscElementTypeData | syscGetElementTypeData (SyscOutputIntegerData elemTypes) |
| Create an mesh element type data access struct, given element types. | |
| SyscElementNodeCountData | syscGetElementNodeCountDataEmpty () |
| Create an empty mesh element node count data access struct. | |
| SyscElementNodeCountData | syscGetElementNodeCountData (SyscOutputIntegerData elemNodeCount) |
| Create an mesh element node count data access struct, given element node counts. | |
| SyscElementNodeConnectivityData | syscGetElementNodeConnectivityDataEmpty () |
| Create an empty element-to-node connectivity data access struct. | |
| SyscElementNodeConnectivityData | syscGetElementNodeConnectivityData (SyscOutputIntegerData elemNodeIds) |
| Create an element-to-node connectivity data access struct, given element node ids. | |
| SyscFaceCellConnectivityData | syscGetFaceCellConnectivityDataEmpty () |
| Create empty face-to-cell connectivity. | |
| SyscFaceCellConnectivityData | syscGetFaceCellConnectivityData (SyscOutputIntegerData cell0Ids, SyscOutputIntegerData cell1Ids) |
| Create face-to-cell connectivity given cell0 and cell1 arrays. | |
| SyscCellIdData | syscGetCellIdDataEmpty () |
| Create empty cell id data. | |
| SyscCellIdData | syscGetCellIdData (SyscOutputIntegerData cellIds) |
| Create cell id data given cell ids array. | |
| SyscElementIdData | syscGetElementIdDataEmpty () |
| Create empty element id data. | |
| SyscElementIdData | syscGetElementIdData (SyscOutputIntegerData elementIds) |
| Create cell id data given cell ids array. | |
| SyscFaceData | syscGetFaceDataEmpty () |
| Create empty face data. | |
| SyscFaceData | syscGetFaceDataITCNF (SyscElementIdData faceIds, SyscElementTypeData faceTypes, SyscElementNodeCountData faceNodeCounts, SyscElementNodeConnectivityData faceNodeConnectivity, SyscFaceCellConnectivityData faceCellConnectivity) |
| Create face data given face ids, types, node counts, node-to-face connectivity, face-to-cell connectivity. | |
| SyscFaceData | syscGetFaceDataICNF (SyscElementIdData faceIds, SyscElementNodeCountData faceNodeCounts, SyscElementNodeConnectivityData faceNodeConnectivity, SyscFaceCellConnectivityData faceCellConnectivity) |
| Create face data given face ids, types, node-to-face connectivity, face-to-cell connectivity. | |
| SyscFaceData | syscGetFaceDataITN (SyscElementIdData faceIds, SyscElementTypeData faceTypes, SyscElementNodeConnectivityData faceNodeConnectivity) |
| Create face data given face ids, types, node-to-face connectivity, face-to-cell connectivity. | |
| SyscFaceData | syscGetFaceDataCN (SyscElementNodeCountData faceNodeCounts, SyscElementNodeConnectivityData faceNodeConnectivity) |
| Create face data given face node counts, node-to-face connectivity. | |
| SyscCellData | syscGetCellDataEmpty () |
| Create empty cell data. | |
| SyscCellData | syscGetCellDataITN (SyscElementIdData cellIds, SyscElementTypeData cellTypes, SyscElementNodeConnectivityData cellNodeConnectivity) |
| Create cell data given cell ids, types, cell-to-node connectivity. | |
| SyscCellData | syscGetCellDataI (SyscElementIdData cellIds) |
| Create cell data given cell ids. | |
| SyscCellData | syscGetCellDataTN (SyscElementTypeData cellTypes, SyscElementNodeConnectivityData cellNodeConnectivity) |
| Create cell data given cell types, cell-to-node connectivity. | |
| SyscOutputComplexScalarData | syscGetOutputComplexScalarData () |
| Create an empty output complex scalar data access struct. | |
| SyscOutputComplexScalarData | syscGetOutputComplexScalarDataSplitDouble (const double *const dataReal, const double *const dataImag, size_t dataSize) |
| Create a complex output scalar data access struct. | |
| SyscOutputComplexScalarData | syscGetOutputComplexScalarDataSplitFloat (const float *const dataReal, const float *const dataImag, size_t dataSize) |
| Create a complex output scalar data access struct. | |
| SyscOutputComplexScalarData | syscGetOutputComplexScalarDataCompactDouble (const double *const data, size_t dataSize) |
| Create a complex output scalar data access struct. | |
| SyscOutputComplexScalarData | syscGetOutputComplexScalarDataCompactFloat (const float *const data, size_t dataSize) |
| Create a complex output scalar data access struct. | |
| SyscOutputComplexVectorData | syscGetOutputComplexVectorData () |
| Create an empty output complex vector data access struct. | |
| SyscOutputComplexVectorData | syscGetOutputCompactComplexCompactVectorDataDouble (const double *const data, size_t dataSize) |
| Create a 3D complex output vector data access struct. | |
| SyscOutputComplexVectorData | syscGetOutputCompactComplexCompactVectorDataFloat (const float *const data, size_t dataSize) |
| Create a 3D complex output vector data access struct. | |
| SyscOutputComplexVectorData | syscGetOutputSplitComplexCompactVectorDataDouble (const double *const dataReal, const double *const dataImag, size_t dataSize) |
| Create a 3D complex output vector data access struct. | |
| SyscOutputComplexVectorData | syscGetOutputSplitComplexCompactVectorDataFloat (const float *const dataReal, const float *const dataImag, size_t dataSize) |
| Create a 3D complex output vector data access struct. | |
| SyscOutputComplexVectorData | 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. | |
| SyscOutputComplexVectorData | 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. | |
| SyscOutputComplexVectorData | 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. | |
| SyscOutputComplexVectorData | 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. | |
| SyscOutputComplexVectorData | syscGetOutputCompactComplexCompactVectorDataDoubleDim (const double *const data, size_t dataSize, enum SyscDimension dimension) |
| Create a complex output vector data access struct based on dimension. | |
| SyscOutputComplexVectorData | syscGetOutputCompactComplexCompactVectorDataFloatDim (const float *const data, size_t dataSize, enum SyscDimension dimension) |
| Create a complex output vector data access struct based on dimension. | |
| SyscOutputIntegerData | syscGetOutputIntegerData () |
| Create an output integer data access struct. | |
| SyscOutputIntegerData | syscGetOutputIntegerDataInt32 (const int32_t *const data, size_t dataSize) |
| Create an output integer data access struct. | |
| SyscOutputIntegerData | syscGetOutputIntegerDataInt64 (const int64_t *const data, size_t dataSize) |
| Create an output integer data access struct. | |
| SyscOutputIntegerData | syscGetOutputIntegerDataUInt16 (const uint16_t *const data, size_t dataSize) |
| Create an output integer data access struct. | |
| SyscOutputIntegerData | syscGetOutputIntegerDataUInt64 (const uint64_t *const data, size_t dataSize) |
| Create an output integer data access struct. | |
| SyscOutputScalarData | syscGetOutputScalarData () |
| Create an output scalar data access struct. | |
| SyscOutputScalarData | syscGetOutputScalarDataDouble (const double *const data, size_t dataSize) |
| Create an output scalar data access struct. | |
| SyscOutputScalarData | syscGetOutputScalarDataFloat (const float *const data, size_t dataSize) |
| Create an output scalar data access struct. | |
| SyscOutputScalarData | syscGetOutputScalarDataInt32 (const int32_t *const data, size_t dataSize) |
| Create an output scalar data access struct. | |
| SyscOutputScalarData | syscGetOutputScalarDataInt64 (const int64_t *const data, size_t dataSize) |
| Create an output scalar data access struct. | |
| SyscOutputScalarData | syscGetOutputScalarDataUInt16 (const uint16_t *const data, size_t dataSize) |
| Create an output scalar data access struct. | |
| SyscOutputScalarData | syscGetOutputScalarDataUInt64 (const uint64_t *const data, size_t dataSize) |
| Create an output scalar data access struct. | |
| SyscOutputVectorData | syscGetOutputVectorData () |
| Create an output vector data access struct. | |
| SyscOutputVectorData | syscGetOutputVectorDataCompactDouble (const double *const data, size_t dataSize) |
| Create an 3D output vector data access struct with compact storage. | |
| SyscOutputVectorData | syscGetOutputVectorDataCompactFloat (const float *const data, size_t dataSize) |
| Create an 3D output vector data access struct with compact storage. | |
| SyscOutputVectorData | 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. | |
| SyscOutputVectorData | 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. | |
| SyscOutputVectorData | syscGetOutputVectorDataCompactDoubleDim (const double *const data, size_t dataSize, enum SyscDimension dimension) |
| Create an output vector data access struct with compact storage based on dimension. | |
| SyscOutputVectorData | syscGetOutputVectorDataCompactFloatDim (const float *const data, size_t dataSize, enum SyscDimension dimension) |
| Create an output vector data access struct with compact storage based on dimension. | |
| SyscOutputVectorData | syscGetOutput2DVectorDataSplitDouble (const double *const data0, const double *const data1, size_t dataSize) |
| Create a 2D output vector data access struct with split storage. | |
| SyscOutputVectorData | syscGetOutput2DVectorDataSplitFloat (const float *const data0, const float *const data1, size_t dataSize) |
| Create an output vector data access struct with split storage. | |
| SyscPointCloud | syscGetPointCloudEmpty () |
| Create a point cloud access struct. | |
| SyscPointCloud | syscGetPointCloud (SyscOutputIntegerData nodeIds, SyscOutputVectorData nodeCoords) |
| Create a point cloud access struct. | |
| SyscRegion | syscGetRegion (const char *name) |
| Create region to be used in a coupled analysis. | |
| SyscRegion | syscGetRegionT (const char *name, enum SyscTopology topology) |
| Create region to be used in a coupled analysis. | |
| SyscRegion | syscGetRegionDT (const char *name, const char *displayName, enum SyscTopology topology) |
| Create region to be used in a coupled analysis. | |
| SyscRegion | syscGetRegionTM (const char *name, enum SyscTopology topology, enum SyscRegionDiscretizationType regionDiscretizationType) |
| Create region to be used in a coupled analysis. | |
| SyscRegion | syscGetRegionDTM (const char *name, const char *displayName, enum SyscTopology topology, enum SyscRegionDiscretizationType regionDiscretizationType) |
| Create region to be used in a coupled analysis. | |
| SyscError | syscAddInputVariable (const SyscRegion region, const SyscVariable variable) |
| Provide a function to add an input variable to the region. | |
| SyscError | syscAddOutputVariable (const SyscRegion region, const SyscVariable variable) |
| Provide a function to add an output variable to the region. | |
| size_t | syscGetNumInputVariables (const SyscRegion region) |
| Provide a function to return the number of input variables. | |
| SyscVariable | syscGetInputVariable (const SyscRegion region, size_t index) |
| Return an input variable. | |
| size_t | syscGetNumOutputVariables (const SyscRegion region) |
| Provide a function to return the number of output variables. | |
| SyscVariable | syscGetOutputVariable (const SyscRegion region, size_t index) |
| Return an output variable. | |
| SyscSurfaceMesh | syscGetSurfaceMesh () |
| Create a surface mesh access struct. | |
| SyscSurfaceMesh | syscGetSurfaceMeshNF (SyscNodeData nodes, SyscFaceData faces) |
| Create a surface mesh access struct. | |
| SyscSurfaceMesh | syscGetSurfaceMeshNTCI (SyscNodeData nodes, SyscElementTypeData elemTypes, SyscElementNodeCountData elemNodeCounts, SyscElementNodeConnectivityData elemNodeConnectivity) |
| Create a surface mesh access struct. | |
| SyscSurfaceMesh | syscGetSurfaceMeshNCI (SyscNodeData nodes, SyscElementNodeCountData elemNodeCounts, SyscElementNodeConnectivityData elemNodeConnectivity) |
| Create a surface mesh access struct. | |
| SyscSurfaceMesh | syscGetSurfaceMeshNCIF (SyscNodeData nodes, SyscElementNodeCountData elemNodeCounts, SyscElementNodeConnectivityData elemNodeConnectivity, SyscFaceCellConnectivityData faceCellConnectivty) |
| Create a surface mesh access struct. | |
| SyscSurfaceMesh | syscGetSurfaceMeshNTI (SyscNodeData nodes, SyscElementTypeData elemTypes, SyscElementNodeConnectivityData elemNodeConnectivity) |
| Create a surface mesh access struct. | |
| SyscSurfaceMesh | syscGetSurfaceMeshA (SyscOutputScalarData nodeIds, SyscOutputVectorData nodeCoords, SyscOutputScalarData elemNodeCounts, SyscOutputScalarData elemNodeIds) |
| Create a surface mesh access struct. | |
| SyscSurfaceMesh | syscGetSurfaceMeshB (SyscOutputVectorData nodeCoords, SyscOutputScalarData elemNodeCounts, SyscOutputScalarData elemNodeIds) |
| Create a surface mesh access struct. | |
| SyscError | syscStartStandaloneParallel (const size_t mpiCommunicator) |
| Provide a function to start standalone mode in parallel. | |
| SyscError | syscConnect (const char *scHost, const unsigned short scPort, const char *participantName, const char *buildInformation) |
| Provide a function to establish connection to System Coupling. | |
| SyscError | 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. | |
| SyscError | syscConnectUseStruct (SyscParticipantInfo participantInfo) |
| Provide a function to establish connection to System Coupling in serial using a C structure. | |
| SyscError | syscConnectParallelUseStruct (SyscParticipantInfo participantInfo, const size_t communicator) |
| Provide a function to establish connection to System Coupling in parellel using a C structure. | |
| SyscError | syscAddRegion (const SyscRegion region) |
| Provide a function to add a region that could be used in a coupled analysis. | |
| SyscError | syscAddCouplingInterface (const SyscCouplingInterface couplingInterface) |
| Provide a function to add a coupling interface. | |
| SyscError | syscAddCouplingInterfaceA (const SyscCouplingInterface couplingInterface, int autoGenerateDataTransfers) |
| Provide a function to add a coupling interface. | |
| SyscError | syscCompleteSetup (const SyscSetupInfo setupInfo) |
| Provide a function to notify System Coupling that setup can be completed. | |
| SyscError | syscRegisterInputScalarDataAccess (SyscInputScalarDataAccess dataAccess) |
| Provide a function to register input scalar data access. | |
| SyscError | syscRegisterInputScalarDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscInputScalarDataAccessWithPointer dataAccess) |
| Provide a function to register input scalar data access. | |
| SyscError | syscRegisterInputScalarDataMultiZoneAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscInputScalarDataMultiZoneAccess dataAccess) |
| Provide a function to register input scalar data multi-zone access. | |
| SyscError | syscRegisterInputVectorDataAccess (SyscInputVectorDataAccess dataAccess) |
| Provide a function to register input vector data access. | |
| SyscError | syscRegisterInputVectorDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscInputVectorDataAccessWithPointer dataAccess) |
| Provide a function to register input vector data access. | |
| SyscError | syscRegisterInputVectorDataMultiZoneAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscInputVectorDataMultiZoneAccess dataAccess) |
| Provide a function to register input vector data multi-zone access. | |
| SyscError | syscRegisterOutputScalarDataAccess (SyscOutputScalarDataAccess dataAccess) |
| Provide a function to register output scalar data access. | |
| SyscError | syscRegisterOutputScalarDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscOutputScalarDataAccessWithPointer dataAccess) |
| Provide a function to register output scalar data access. | |
| SyscError | syscRegisterOutputScalarDataMultiZoneAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscOutputScalarDataMultiZoneAccess dataAccess) |
| Provide a function to register output scalar data multi-zone access. | |
| SyscError | syscRegisterOutputVectorDataAccess (SyscOutputVectorDataAccess dataAccess) |
| Provide a function to register output vector data access. | |
| SyscError | syscRegisterOutputVectorDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscOutputVectorDataAccessWithPointer dataAccess) |
| Provide a function to register output vector data access. | |
| SyscError | syscRegisterOutputVectorDataMultiZoneAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscOutputVectorDataMultiZoneAccess dataAccess) |
| Provide a function to register output vector data multi-zone access. | |
| SyscError | syscRegisterInputComplexScalarDataAccess (SyscInputComplexScalarDataAccess dataAccess) |
| Provide a function to register input complex scalar data access. | |
| SyscError | syscRegisterInputComplexScalarDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscInputComplexScalarDataAccessWithPointer dataAccess) |
| Provide a function to register input complex scalar data access. | |
| SyscError | syscRegisterInputComplexVectorDataAccess (SyscInputComplexVectorDataAccess dataAccess) |
| Provide a function to register input complex vector data access. | |
| SyscError | syscRegisterInputComplexVectorDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscInputComplexVectorDataAccessWithPointer dataAccess) |
| Provide a function to register input complex vector data access. | |
| SyscError | syscRegisterOutputComplexScalarDataAccess (SyscOutputComplexScalarDataAccess dataAccess) |
| Provide a function to register output complex scalar data access. | |
| SyscError | syscRegisterOutputComplexScalarDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscOutputComplexScalarDataAccessWithPointer dataAccess) |
| Provide a function to register output complex scalar data access. | |
| SyscError | syscRegisterOutputComplexVectorDataAccess (SyscOutputComplexVectorDataAccess dataAccess) |
| Provide a function to register output complex vector data access. | |
| SyscError | syscRegisterOutputComplexVectorDataAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscOutputComplexVectorDataAccessWithPointer dataAccess) |
| Provide a function to register output complex vector data access. | |
| SyscError | syscRegisterSurfMeshAccess (SyscSurfMeshAccess meshAccess) |
| Provide a function to register surface mesh access. | |
| SyscError | syscRegisterSurfaceMeshAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscSurfaceMeshAccessWithPointer meshAccess) |
| Provide a function to register surface mesh access. | |
| SyscError | syscRegisterSurfaceMeshMultiZoneAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscSurfaceMeshMultiZoneAccess meshAccess) |
| Provide a function to register surface mesh multi-zone access. | |
| SyscError | syscRegisterVolumeMeshAccess (SyscVolumeMeshAccess meshAccess) |
| Provide a function to register volume mesh access. | |
| SyscError | syscRegisterVolumeMeshAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscVolumeMeshAccessWithPointer meshAccess) |
| Provide a function to register volume mesh access. | |
| SyscError | syscRegisterVolumeMeshMultiZoneAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscVolumeMeshMultiZoneAccess meshAccess) |
| Provide a function to register volume mesh multi-zone access. | |
| SyscError | syscRegisterPointCloudAccess (SyscPointCloudAccess pointCloudAccess) |
| Provide a function to register point cloud access. | |
| SyscError | syscRegisterPointCloudAccessWithPointer (SyscOpaqueDataAccess opaqueDataAccess, SyscPointCloudAccessWithPointer pointCloudAccess) |
| Provide a function to register point cloud access. | |
| SyscError | syscRegisterPointCloudMultiZoneAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscPointCloudMultiZoneAccess pointCloudAccess) |
| Provide a function to register point cloud multi-zone access. | |
| SyscError | syscRegisterZoneCountAccess (SyscOpaqueDataAccess opaqueDataAccess, SyscZoneCountAccess zoneCountAccess) |
| Provide a function to register zone count access. | |
| SyscError | syscRegisterRestartPointCreation (SyscRestartPointCreation restartPointCreation) |
| Provide a function to register restart point creation callback. | |
| SyscError | syscInitializeAnalysis () |
| Provide a function to notify System Coupling that analysis initialization can be completed. | |
| int | syscDoIteration () |
| Provide a function to check whether to do a coupling iteration. | |
| int | syscDoTimeStep () |
| Provide a function to check whether to do a coupling time step. | |
| SyscTimeStep | syscGetCurrentTimeStep () |
| Provide a function to get current time step. | |
| SyscError | syscUpdateInputs () |
| Provide a function to update the participants input variables. | |
| SyscError | syscUpdateOutputs (const enum SyscConvergenceStatus convStatus) |
| Provide a function to update the participants output variables. | |
| SyscError | syscDisconnect () |
| Provide a function to end the analysis and disconnect from System Coupling. | |
| void | syscFatalError (const char *errorMessage) |
| Provide a function to notify System Coupling about a fatal error. | |
| SyscError | syscCheckSurfaceMeshValidity (SyscSurfaceMesh mesh) |
| Provide a function to perform simple mesh validity checks. | |
| int | syscWriteSetupFile (const SyscSetupFileInfo setupFileInfo) |
| Provide a function to write the setup file. | |
| SyscError | syscWriteResults (const SyscResultsInfo resultsInfo) |
| Write results to a file. | |
| size_t | syscGetNumRegions () |
| Provide a function to return the number of added regions. | |
| SyscRegion | syscGetAddedRegion (size_t index) |
| Provide a function to return added region given the region index. | |
| SyscSolutionControl | syscGetSolutionControl () |
| Get solution control. | |
| size_t | syscGetNumCouplingInterfaces () |
| Provide a function to return the number of added coupling interfaces. | |
| SyscCouplingInterface | syscGetAddedCouplingInterface (size_t index) |
| SyscVariable | syscGetVariable (const char *name) |
| Create variable to be used in a coupled analysis. | |
| SyscVariable | syscGetVariableDTELQD (const char *name, const char *displayName, enum SyscTensorType tensorType, int isExtensive, enum SyscLocation location, enum SyscQuantityType quantityType, enum SyscDataType dataType) |
| Create variable to be used in a coupled analysis. | |
| SyscVariable | syscGetVariableTE (const char *name, enum SyscTensorType tensorType, int isExtensive, enum SyscLocation location) |
| Create variable to be used in a coupled analysis. | |
| SyscVariable | syscGetVariableTEQ (const char *name, const char *displayName, enum SyscTensorType tensorType, int isExtensive, enum SyscLocation location, enum SyscQuantityType quantityType) |
| Create variable to be used in a coupled analysis. | |
| SyscVariable | syscGetVariableQ (const char *name, const char *displayName, enum SyscLocation location, enum SyscQuantityType quantityType) |
| Create variable to be used in a coupled analysis. | |
| SyscError | syscVariableAddRealAttribute (SyscVariable variable, SyscRealAttribute attribute) |
| Add real-valued attribute to the variable. | |
| SyscError | syscVariableAddIntegerAttribute (SyscVariable variable, SyscIntegerAttribute attribute) |
| Add integer-valued attribute to the variable. | |
| size_t | syscVariableGetNumRealAttributes (SyscVariable variable) |
| Get number of real-valued attributes. | |
| size_t | syscVariableGetNumIntegerAttributes (SyscVariable variable) |
| Get number of integer-valued attributes. | |
| SyscRealAttribute | syscVariableGetRealAttribute (SyscVariable variable, size_t index) |
| Return the real-valued attribute at the given index. | |
| SyscIntegerAttribute | syscVariableGetIntegerAttribute (SyscVariable variable, size_t index) |
| Return the integer-valued attribute at the given index. | |
| SyscVolumeMesh | syscGetVolumeMeshEmpty () |
| Create an empty volume mesh access struct. | |
| SyscVolumeMesh | syscGetVolumeMeshNFC (SyscNodeData nodes, SyscFaceData faces, SyscCellData cells) |
| Create a volume mesh access struct. | |
| SyscVolumeMesh | syscGetVolumeMeshElementBased (SyscNodeData nodes, SyscElementTypeData cellTypes, SyscElementNodeConnectivityData cellNodeConnectivity) |
| Create an element-based volume mesh access struct. | |
| SyscVolumeMesh | syscGetVolumeMeshFaceBased (SyscNodeData nodes, SyscElementNodeCountData faceNodeCounts, SyscElementNodeConnectivityData faceNodeConnectivity, SyscFaceCellConnectivityData faceCellConnectivity, SyscCellIdData cellIds) |
| Create a face-based volume mesh access struct. | |
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.
Macro Definition Documentation
◆ SYSC_STRING_LENGTH
| #define SYSC_STRING_LENGTH 256 |
Define maximum string length.
Definition at line 23 of file syscCommonTypes.h.
Typedef Documentation
◆ SyscCouplingInterface
| typedef struct SyscCouplingInterface SyscCouplingInterface |
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 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:
◆ SyscDataTransfer
| typedef struct SyscDataTransfer SyscDataTransfer |
Provide a struct for a data transfer.
Data transfer specifies the source and target variables for mapping.
◆ SyscInputComplexScalarDataAccess
| typedef SyscInputComplexScalarData(* SyscInputComplexScalarDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to input complex scalar data.
Definition at line 135 of file syscFunctionTypes.h.
◆ SyscInputComplexScalarDataAccessWithPointer
| typedef SyscInputComplexScalarData(* SyscInputComplexScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to input complex scalar data with opaque pointer.
Definition at line 142 of file syscFunctionTypes.h.
◆ SyscInputComplexVectorDataAccess
| typedef SyscInputComplexVectorData(* SyscInputComplexVectorDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to input complex vector data.
Definition at line 150 of file syscFunctionTypes.h.
◆ SyscInputComplexVectorDataAccessWithPointer
| typedef SyscInputComplexVectorData(* SyscInputComplexVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to input complex vector data with opaque pointer.
Definition at line 157 of file syscFunctionTypes.h.
◆ SyscInputScalarDataAccess
| typedef SyscInputScalarData(* SyscInputScalarDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to input scalar data.
Definition at line 39 of file syscFunctionTypes.h.
◆ SyscInputScalarDataAccessWithPointer
| typedef SyscInputScalarData(* SyscInputScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to input scalar data with opaque pointer.
Definition at line 46 of file syscFunctionTypes.h.
◆ SyscInputScalarDataMultiZoneAccess
| typedef SyscInputScalarData(* SyscInputScalarDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
Provide function prototype for access to multi-zone input scalar data.
Definition at line 54 of file syscFunctionTypes.h.
◆ SyscInputVectorDataAccess
| typedef SyscInputVectorData(* SyscInputVectorDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to input vector data.
Definition at line 63 of file syscFunctionTypes.h.
◆ SyscInputVectorDataAccessWithPointer
| typedef SyscInputVectorData(* SyscInputVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to input vector data with opaque pointer.
Definition at line 70 of file syscFunctionTypes.h.
◆ SyscInputVectorDataMultiZoneAccess
| typedef SyscInputVectorData(* SyscInputVectorDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
Provide function prototype for access to multi-zone input vector data.
Definition at line 78 of file syscFunctionTypes.h.
◆ SyscOpaqueDataAccess
| typedef void* SyscOpaqueDataAccess |
Declare an opaque pointer type.
Definition at line 150 of file syscCommonTypes.h.
◆ SyscOutputComplexScalarDataAccess
| typedef SyscOutputComplexScalarData(* SyscOutputComplexScalarDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to output complex scalar data.
Definition at line 165 of file syscFunctionTypes.h.
◆ SyscOutputComplexScalarDataAccessWithPointer
| typedef SyscOutputComplexScalarData(* SyscOutputComplexScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to output complex scalar data with opaque pointer.
Definition at line 172 of file syscFunctionTypes.h.
◆ SyscOutputComplexVectorDataAccess
| typedef SyscOutputComplexVectorData(* SyscOutputComplexVectorDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to output complex vector data.
Definition at line 180 of file syscFunctionTypes.h.
◆ SyscOutputComplexVectorDataAccessWithPointer
| typedef SyscOutputComplexVectorData(* SyscOutputComplexVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to output complex vector data with opaque pointer.
Definition at line 187 of file syscFunctionTypes.h.
◆ SyscOutputScalarDataAccess
| typedef SyscOutputScalarData(* SyscOutputScalarDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to output scalar data.
Definition at line 87 of file syscFunctionTypes.h.
◆ SyscOutputScalarDataAccessWithPointer
| typedef SyscOutputScalarData(* SyscOutputScalarDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to output scalar data with opaque pointer.
Definition at line 94 of file syscFunctionTypes.h.
◆ SyscOutputScalarDataMultiZoneAccess
| typedef SyscOutputScalarData(* SyscOutputScalarDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
Provide function prototype for access to multi-zone output scalar data.
Definition at line 102 of file syscFunctionTypes.h.
◆ SyscOutputVectorDataAccess
| typedef SyscOutputVectorData(* SyscOutputVectorDataAccess) (const char *regionName, const char *variableName) |
Provide function prototype for access to output vector data.
Definition at line 111 of file syscFunctionTypes.h.
◆ SyscOutputVectorDataAccessWithPointer
| typedef SyscOutputVectorData(* SyscOutputVectorDataAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName) |
Provide function prototype for access to output vector data with opaque pointer.
Definition at line 118 of file syscFunctionTypes.h.
◆ SyscOutputVectorDataMultiZoneAccess
| typedef SyscOutputVectorData(* SyscOutputVectorDataMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, const char *variableName, uint16_t zoneIndex) |
Provide function prototype for access to multi-zone output vector data.
Definition at line 126 of file syscFunctionTypes.h.
◆ SyscPointCloudAccess
| typedef SyscPointCloud(* SyscPointCloudAccess) (const char *regionName) |
Provide function prototype for access to point cloud.
Definition at line 233 of file syscFunctionTypes.h.
◆ SyscPointCloudAccessWithPointer
| typedef SyscPointCloud(* SyscPointCloudAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
Provide function prototype for access to point cloud with an opaque pointer.
Definition at line 239 of file syscFunctionTypes.h.
◆ SyscPointCloudMultiZoneAccess
| typedef SyscPointCloud(* SyscPointCloudMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, uint16_t zoneIndex) |
Provide function prototype for access to multi-zone point cloud.
Definition at line 244 of file syscFunctionTypes.h.
◆ SyscRegion
| typedef struct SyscRegion SyscRegion |
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 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:
◆ 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 of file syscFunctionTypes.h.
◆ SyscSetupFileInfo
| typedef struct SyscSetupFileInfo SyscSetupFileInfo |
Provide a structure for writing System Coupling setup files.
To create and/or initialize the SyscSetupFileInfo 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:
◆ SyscSetupInfo
| typedef struct SyscSetupInfo SyscSetupInfo |
Provide a structure for System Coupling setup information.
To create and/or initialize the SyscSetupInfo 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:
◆ SyscSurfaceMeshAccessWithPointer
| typedef SyscSurfaceMesh(* SyscSurfaceMeshAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
Provide function prototype for access to surface mesh with opaque pointer.
Definition at line 201 of file syscFunctionTypes.h.
◆ SyscSurfaceMeshMultiZoneAccess
| typedef SyscSurfaceMesh(* SyscSurfaceMeshMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, uint16_t zoneIndex) |
Provide function prototype for access to multi-zone surface mesh.
Definition at line 206 of file syscFunctionTypes.h.
◆ SyscSurfMeshAccess
| typedef SyscSurfaceMesh(* SyscSurfMeshAccess) (const char *regionName) |
Provide function prototype for access to surface mesh.
Definition at line 195 of file syscFunctionTypes.h.
◆ SyscVariable
| typedef struct SyscVariable SyscVariable |
Provide a struct for a System Coupling variable.
To create and/or initialize the SyscVariable 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:
◆ SyscVolumeMeshAccess
| typedef SyscVolumeMesh(* SyscVolumeMeshAccess) (const char *regionName) |
Provide function prototype for access to volume mesh.
Definition at line 214 of file syscFunctionTypes.h.
◆ SyscVolumeMeshAccessWithPointer
| typedef SyscVolumeMesh(* SyscVolumeMeshAccessWithPointer) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
Provide function prototype for access to volume mesh with opaque pointer.
Definition at line 220 of file syscFunctionTypes.h.
◆ SyscVolumeMeshMultiZoneAccess
| typedef SyscVolumeMesh(* SyscVolumeMeshMultiZoneAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName, uint16_t zoneIndex) |
Provide function prototype for access to multi-zone volume mesh.
Definition at line 225 of file syscFunctionTypes.h.
◆ SyscZoneCountAccess
| typedef uint16_t(* SyscZoneCountAccess) (SyscOpaqueDataAccess opaqueDataAccess, const char *regionName) |
Provide function prototype for access to zone count.
Definition at line 252 of file syscFunctionTypes.h.
Enumeration Type Documentation
◆ SyscAnalysisType
| enum SyscAnalysisType |
Provide an enum for coupled analysis type.
| Enumerator | |
|---|---|
| SyscSteady | Steady analysis type. |
| SyscTransient | Transient (unsteady) analysis type. |
Definition at line 112 of file syscCommonTypes.h.
◆ SyscConvergenceStatus
Provide enum for participant's solver convergence status.
Definition at line 103 of file syscCommonTypes.h.
◆ SyscDataType
| enum SyscDataType |
Definition at line 97 of file syscCommonTypes.h.
◆ SyscDimension
| enum SyscDimension |
Provide enum for system coupling dimension.
Definition at line 56 of file syscCommonTypes.h.
◆ SyscElementTypes
| enum SyscElementTypes |
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.
Definition at line 236 of file syscElementTypes.h.
◆ SyscInterfaceSide
| enum SyscInterfaceSide |
Provide enum for coupling interface side.
Definition at line 50 of file syscCommonTypes.h.
◆ SyscLocation
| enum SyscLocation |
Provide an enum for variable mesh locations.
| Enumerator | |
|---|---|
| SyscNode | Nodal data. |
| SyscElement | Data on elements. |
Definition at line 26 of file syscCommonTypes.h.
◆ SyscPrimitiveType
| enum SyscPrimitiveType |
Provide an enum for supported primitive types.
Definition at line 141 of file syscCommonTypes.h.
◆ SyscQuantityType
| enum SyscQuantityType |
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 85 of file syscCommonTypes.h.
◆ SyscRegionDiscretizationType
Provoide an enum for region mesh type.
| Enumerator | |
|---|---|
| SyscMeshRegion | Mesh region discretization. |
| SyscPointCloudRegion | Point cloud region discretization. |
Definition at line 44 of file syscCommonTypes.h.
◆ SyscTensorType
| enum SyscTensorType |
Provide an enum for variable tensor type.
| Enumerator | |
|---|---|
| SyscScalar | Scalar |
| SyscVector | Vector |
Definition at line 32 of file syscCommonTypes.h.
◆ SyscTopology
| enum SyscTopology |
Provide an enum for region topologies.
| Enumerator | |
|---|---|
| SyscSurface | Surface topology. |
| SyscVolume | Volume topology. |
Definition at line 38 of file syscCommonTypes.h.
Function Documentation
◆ syscAddCouplingInterface()
| SyscError syscAddCouplingInterface | ( | const SyscCouplingInterface | 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 for more details.
◆ syscAddCouplingInterfaceA()
| SyscError syscAddCouplingInterfaceA | ( | const SyscCouplingInterface | 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 for more details.
◆ syscAddInputVariable()
| SyscError syscAddInputVariable | ( | const SyscRegion | region, |
| const SyscVariable | 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] region Region to which the input variable is to be added. [in] variable Variable whose values are provided by System Coupling and consumed by the participant.
◆ syscAddOutputVariable()
| SyscError syscAddOutputVariable | ( | const SyscRegion | region, |
| const SyscVariable | 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] region Region to which the output variable is to be added. [in] variable Variable whose values are consumed by System Coupling and provided by the participant.
◆ syscAddRegion()
| SyscError syscAddRegion | ( | const SyscRegion | 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 eror will be thrown.
◆ syscAddSideOneRegion()
| SyscError syscAddSideOneRegion | ( | const SyscCouplingInterface | couplingInterface, |
| const SyscRegion | 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] couplingInterface Coupling interface to which the output variable is to be added. [in] region Region to be added to side one of the interface.
◆ syscAddSideTwoRegion()
| SyscError syscAddSideTwoRegion | ( | const SyscCouplingInterface | couplingInterface, |
| const SyscRegion | 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] couplingInterface Coupling interface to which the output variable is to be added. [in] region Region to be added to side two of the interface.
◆ syscCheckSurfaceMeshValidity()
| SyscError syscCheckSurfaceMeshValidity | ( | SyscSurfaceMesh | 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.
- Returns
- Return value is SyscError 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.
◆ syscCompleteSetup()
| SyscError syscCompleteSetup | ( | const SyscSetupInfo | 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.
◆ syscConnect()
| SyscError 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] scHost Name of the host on which System Coupling is running. [in] scPort Port number on which System Coupling is listening for participant connections. [in] participantName Name of this participant (e.g. "MAPDL-1"). [in] buildInformation Information about the build of this participant solver.
- Returns
- SyscError Can be checked for any errors.
◆ syscConnectParallel()
| SyscError 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() can be used instead.
◆ syscConnectParallelUseStruct()
| SyscError syscConnectParallelUseStruct | ( | SyscParticipantInfo | participantInfo, |
| const size_t | communicator | ||
| ) |
Provide a function to establish connection to System Coupling in parellel using a C structure.
- Parameters
-
participantInfo A C structure containing the participant attributes communicator A size_t flag signifying what mode to run in parallel with.
- Returns
- SyscError
◆ syscConnectUseStruct()
| SyscError syscConnectUseStruct | ( | SyscParticipantInfo | participantInfo | ) |
Provide a function to establish connection to System Coupling in serial using a C structure.
- Parameters
-
participantInfo A C structure containing the participant attributes
- Returns
- SyscError
◆ 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).
◆ 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() will cause syscDoIteration() 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.
◆ syscGetAddedRegion()
| SyscRegion syscGetAddedRegion | ( | size_t | index | ) |
Provide a function to return added region given the region index.
- Parameters
-
[in] index - region index. Use syscGetNumRegions() to get the number of regions.
- Returns
- Region at specified index.
◆ syscGetCouplingInterface()
| SyscCouplingInterface syscGetCouplingInterface | ( | const char * | name | ) |
Create a coupling interface.
- Parameters
-
[in] name - Unique name for this interface. String length should not exceed SYSC_STRING_LENGTH.
◆ syscGetCurrentTimeStep()
| SyscTimeStep 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.
◆ syscGetDataTransfer()
| SyscDataTransfer syscGetDataTransfer | ( | SyscVariable | sideOneVariable, |
| SyscVariable | sideTwoVariable, | ||
| enum SyscInterfaceSide | 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.
◆ syscGetDataTransferST()
| SyscDataTransfer syscGetDataTransferST | ( | SyscVariable | sourceVariable, |
| SyscVariable | targetVariable, | ||
| enum SyscInterfaceSide | targetSide | ||
| ) |
Create a data transfer using {source|target}Variable.
- Parameters
-
[in] sourceVariable - source variable. [in] targetVariable - target variable. [in] targetSide - target side.
◆ syscGetElementNodeConnectivityDataEmpty()
| SyscElementNodeConnectivityData 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.
◆ syscGetElementNodeCountDataEmpty()
| SyscElementNodeCountData 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.
◆ syscGetElementTypeDataEmpty()
| SyscElementTypeData 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.
◆ syscGetInput2DVectorDataSplitDouble()
| SyscInputVectorData 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.
◆ syscGetInput2DVectorDataSplitFloat()
| SyscInputVectorData 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.
◆ syscGetInputCompactComplexCompactVectorDataDouble()
| SyscInputComplexVectorData 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.
◆ syscGetInputCompactComplexCompactVectorDataDoubleDim()
| SyscInputComplexVectorData syscGetInputCompactComplexCompactVectorDataDoubleDim | ( | double *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetInputCompactComplexCompactVectorDataFloat()
| SyscInputComplexVectorData 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.
◆ syscGetInputCompactComplexCompactVectorDataFloatDim()
| SyscInputComplexVectorData syscGetInputCompactComplexCompactVectorDataFloatDim | ( | float *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetInputCompactComplexSplitVectorDataDouble()
| SyscInputComplexVectorData 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.
◆ syscGetInputCompactComplexSplitVectorDataFloat()
| SyscInputComplexVectorData 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.
◆ syscGetInputComplexScalarData()
| SyscInputComplexScalarData 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.
◆ syscGetInputComplexScalarDataCompactDouble()
| SyscInputComplexScalarData 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.
◆ syscGetInputComplexScalarDataCompactFloat()
| SyscInputComplexScalarData 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.
◆ syscGetInputComplexScalarDataSplitDouble()
| SyscInputComplexScalarData 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.
◆ syscGetInputComplexScalarDataSplitFloat()
| SyscInputComplexScalarData 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.
◆ syscGetInputComplexVectorData()
| SyscInputComplexVectorData 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.
◆ syscGetInputScalarData()
| SyscInputScalarData 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.
◆ syscGetInputScalarDataDouble()
| SyscInputScalarData 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.
◆ syscGetInputScalarDataFloat()
| SyscInputScalarData 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.
◆ syscGetInputSplitComplexCompactVectorDataDouble()
| SyscInputComplexVectorData 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.
◆ syscGetInputSplitComplexCompactVectorDataFloat()
| SyscInputComplexVectorData 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.
◆ syscGetInputSplitComplexSplitVectorDataDouble()
| SyscInputComplexVectorData 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.
◆ syscGetInputSplitComplexSplitVectorDataFloat()
| SyscInputComplexVectorData 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.
◆ syscGetInputVariable()
| SyscVariable syscGetInputVariable | ( | const SyscRegion | region, |
| size_t | index | ||
| ) |
Return an input variable.
- Parameters
-
[in] region - region [in] index - region index
- Returns
- Variable at specified index.
◆ syscGetInputVectorData()
| SyscInputVectorData 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.
◆ syscGetInputVectorDataCompactDouble()
| SyscInputVectorData 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.
◆ syscGetInputVectorDataCompactDoubleDim()
| SyscInputVectorData syscGetInputVectorDataCompactDoubleDim | ( | double *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetInputVectorDataCompactFloat()
| SyscInputVectorData 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.
◆ syscGetInputVectorDataCompactFloatDim()
| SyscInputVectorData syscGetInputVectorDataCompactFloatDim | ( | float *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetInputVectorDataSplitDouble()
| SyscInputVectorData 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.
◆ syscGetInputVectorDataSplitFloat()
| SyscInputVectorData 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.
◆ syscGetIntegerAttribute()
| SyscIntegerAttribute syscGetIntegerAttribute | ( | const char * | name, |
| long long int | value | ||
| ) |
Create an integer-valued attribute.
- Parameters
-
[in] name - attribute name. [in] value - attribute value.
◆ syscGetNodeData()
| SyscNodeData syscGetNodeData | ( | ) |
Create a mesh node data access struct.
Returns an empty mesh node data access struct. All member will be assigned default values.
◆ syscGetNumCouplingInterfaces()
| size_t syscGetNumCouplingInterfaces | ( | ) |
Provide a function to return the number of added coupling interfaces.
- Returns
- Number of coupling interfaces.
◆ syscGetNumInputVariables()
| size_t syscGetNumInputVariables | ( | const SyscRegion | region | ) |
Provide a function to return the number of input variables.
- Parameters
-
[in] region - region
- Returns
- Number of input variables for the region.
◆ syscGetNumOutputVariables()
| size_t syscGetNumOutputVariables | ( | const SyscRegion | region | ) |
Provide a function to return the number of output variables.
- Parameters
-
[in] region - region
- Returns
- Number of output variables for the region.
◆ syscGetNumRegions()
| size_t syscGetNumRegions | ( | ) |
Provide a function to return the number of added regions.
- Returns
- Number of regions.
◆ syscGetOutput2DVectorDataSplitDouble()
| SyscOutputVectorData 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.
◆ syscGetOutput2DVectorDataSplitFloat()
| SyscOutputVectorData 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.
◆ syscGetOutputCompactComplexCompactVectorDataDouble()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputCompactComplexCompactVectorDataDoubleDim()
| SyscOutputComplexVectorData syscGetOutputCompactComplexCompactVectorDataDoubleDim | ( | const double *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetOutputCompactComplexCompactVectorDataFloat()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputCompactComplexCompactVectorDataFloatDim()
| SyscOutputComplexVectorData syscGetOutputCompactComplexCompactVectorDataFloatDim | ( | const float *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetOutputCompactComplexSplitVectorDataDouble()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputCompactComplexSplitVectorDataFloat()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputComplexScalarData()
| SyscOutputComplexScalarData 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.
◆ syscGetOutputComplexScalarDataCompactDouble()
| SyscOutputComplexScalarData 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.
◆ syscGetOutputComplexScalarDataCompactFloat()
| SyscOutputComplexScalarData 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.
◆ syscGetOutputComplexScalarDataSplitDouble()
| SyscOutputComplexScalarData 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.
◆ syscGetOutputComplexScalarDataSplitFloat()
| SyscOutputComplexScalarData 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.
◆ syscGetOutputComplexVectorData()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputIntegerData()
| SyscOutputIntegerData 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.
◆ syscGetOutputIntegerDataInt32()
| SyscOutputIntegerData 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.
◆ syscGetOutputIntegerDataInt64()
| SyscOutputIntegerData 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.
◆ syscGetOutputIntegerDataUInt16()
| SyscOutputIntegerData 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.
◆ syscGetOutputIntegerDataUInt64()
| SyscOutputIntegerData 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.
◆ syscGetOutputScalarData()
| SyscOutputScalarData 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.
◆ syscGetOutputScalarDataDouble()
| SyscOutputScalarData 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.
◆ syscGetOutputScalarDataFloat()
| SyscOutputScalarData 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.
◆ syscGetOutputScalarDataInt32()
| SyscOutputScalarData 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.
◆ syscGetOutputScalarDataInt64()
| SyscOutputScalarData 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.
◆ syscGetOutputScalarDataUInt16()
| SyscOutputScalarData 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.
◆ syscGetOutputScalarDataUInt64()
| SyscOutputScalarData 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.
◆ syscGetOutputSplitComplexCompactVectorDataDouble()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputSplitComplexCompactVectorDataFloat()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputSplitComplexSplitVectorDataDouble()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputSplitComplexSplitVectorDataFloat()
| SyscOutputComplexVectorData 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.
◆ syscGetOutputVariable()
| SyscVariable syscGetOutputVariable | ( | const SyscRegion | region, |
| size_t | index | ||
| ) |
Return an output variable.
- Parameters
-
[in] region - region [in] index - region index
- Returns
- Variable at specified index.
◆ syscGetOutputVectorData()
| SyscOutputVectorData 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.
◆ syscGetOutputVectorDataCompactDouble()
| SyscOutputVectorData 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.
◆ syscGetOutputVectorDataCompactDoubleDim()
| SyscOutputVectorData syscGetOutputVectorDataCompactDoubleDim | ( | const double *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetOutputVectorDataCompactFloat()
| SyscOutputVectorData 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.
◆ syscGetOutputVectorDataCompactFloatDim()
| SyscOutputVectorData syscGetOutputVectorDataCompactFloatDim | ( | const float *const | data, |
| size_t | dataSize, | ||
| enum SyscDimension | 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.
◆ syscGetOutputVectorDataSplitDouble()
| SyscOutputVectorData 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.
◆ syscGetOutputVectorDataSplitFloat()
| SyscOutputVectorData 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.
◆ syscGetPointCloud()
| SyscPointCloud syscGetPointCloud | ( | SyscOutputIntegerData | nodeIds, |
| SyscOutputVectorData | nodeCoords | ||
| ) |
Create a point cloud access struct.
- Parameters
-
nodeIds - output integer data access for node ids nodeCoords - output vector data access for node coordinates, provided in the same order as node ids
◆ syscGetPointCloudEmpty()
| SyscPointCloud syscGetPointCloudEmpty | ( | ) |
Create a point cloud access struct.
Returns a struct representing empty point cloud. All member will be assigned default values.
◆ syscGetRealAttribute()
| SyscRealAttribute syscGetRealAttribute | ( | const char * | name, |
| double | value, | ||
| SyscDimensionality | dimensionality | ||
| ) |
Create a real-valued attribute.
- Parameters
-
[in] name - attribute name. [in] value - attribute value. [in] dimensionality - attribute dimensionality.
◆ syscGetRegion()
| SyscRegion 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.
◆ syscGetRegionDT()
| SyscRegion syscGetRegionDT | ( | const char * | name, |
| const char * | displayName, | ||
| enum SyscTopology | 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.
◆ syscGetRegionDTM()
| SyscRegion syscGetRegionDTM | ( | const char * | name, |
| const char * | displayName, | ||
| enum SyscTopology | topology, | ||
| enum SyscRegionDiscretizationType | 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.
◆ syscGetRegionT()
| SyscRegion syscGetRegionT | ( | const char * | name, |
| enum SyscTopology | 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.
◆ syscGetRegionTM()
| SyscRegion syscGetRegionTM | ( | const char * | name, |
| enum SyscTopology | topology, | ||
| enum SyscRegionDiscretizationType | 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.
◆ syscGetResultsInfo()
| SyscResultsInfo syscGetResultsInfo | ( | const char * | baseFileName | ) |
Provide a function to create SetupFileInfo struct.
- Parameters
-
[in] baseFileName - base results file name.
◆ syscGetSetupFileInfo()
| SyscSetupFileInfo syscGetSetupFileInfo | ( | const char * | setupFileName | ) |
Provide a function to create SetupFileInfo struct.
- Parameters
-
setupFileName Setup file name.
Restarts supported flag will be set to false.
◆ syscGetSetupInfo()
| SyscSetupInfo syscGetSetupInfo | ( | ) |
Create a setup info struct.
Analysis type will be set to steady. Restarts supported flag will be set to false.
◆ syscGetSetupInfoA()
| SyscSetupInfo syscGetSetupInfoA | ( | enum SyscAnalysisType | analysisType | ) |
Create a setup info struct.
- Parameters
-
[in] analysisType - analysis type.
Restarts supported flag will be set to false.
◆ syscGetSetupInfoAR()
| SyscSetupInfo syscGetSetupInfoAR | ( | enum SyscAnalysisType | analysisType, |
| int | restartsSupported | ||
| ) |
Create a setup info struct.
- Parameters
-
analysisType - analysis type. restartsSupported - flag indicating whether restarts are supported.
◆ syscGetSetupInfoARD()
| SyscSetupInfo syscGetSetupInfoARD | ( | enum SyscAnalysisType | analysisType, |
| int | restartsSupported, | ||
| enum SyscDimension | dimension | ||
| ) |
Create a setup info struct.
- Parameters
-
analysisType - analysis type. restartsSupported - flag indicating whether restarts are supported. dimension - dimension of the participant.
◆ syscGetSurfaceMesh()
| SyscSurfaceMesh syscGetSurfaceMesh | ( | ) |
Create a surface mesh access struct.
Returns a struct representing empty surface mesh. All member will be assigned default values.
◆ syscGetSurfaceMeshA()
| SyscSurfaceMesh syscGetSurfaceMeshA | ( | SyscOutputScalarData | nodeIds, |
| SyscOutputVectorData | nodeCoords, | ||
| SyscOutputScalarData | elemNodeCounts, | ||
| SyscOutputScalarData | 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
◆ syscGetSurfaceMeshB()
| SyscSurfaceMesh syscGetSurfaceMeshB | ( | SyscOutputVectorData | nodeCoords, |
| SyscOutputScalarData | elemNodeCounts, | ||
| SyscOutputScalarData | 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
◆ syscGetSurfaceMeshNCI()
| SyscSurfaceMesh syscGetSurfaceMeshNCI | ( | SyscNodeData | nodes, |
| SyscElementNodeCountData | elemNodeCounts, | ||
| SyscElementNodeConnectivityData | 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
◆ syscGetSurfaceMeshNCIF()
| SyscSurfaceMesh syscGetSurfaceMeshNCIF | ( | SyscNodeData | nodes, |
| SyscElementNodeCountData | elemNodeCounts, | ||
| SyscElementNodeConnectivityData | elemNodeConnectivity, | ||
| SyscFaceCellConnectivityData | 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
◆ syscGetSurfaceMeshNF()
| SyscSurfaceMesh syscGetSurfaceMeshNF | ( | SyscNodeData | nodes, |
| SyscFaceData | faces | ||
| ) |
Create a surface mesh access struct.
- Parameters
-
[in] nodes - node data [in] faces - face data
◆ syscGetSurfaceMeshNTCI()
| SyscSurfaceMesh syscGetSurfaceMeshNTCI | ( | SyscNodeData | nodes, |
| SyscElementTypeData | elemTypes, | ||
| SyscElementNodeCountData | elemNodeCounts, | ||
| SyscElementNodeConnectivityData | 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
◆ syscGetSurfaceMeshNTI()
| SyscSurfaceMesh syscGetSurfaceMeshNTI | ( | SyscNodeData | nodes, |
| SyscElementTypeData | elemTypes, | ||
| SyscElementNodeConnectivityData | 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
◆ syscGetVariable()
| SyscVariable 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.
◆ syscGetVariableDTELQD()
| SyscVariable syscGetVariableDTELQD | ( | const char * | name, |
| const char * | displayName, | ||
| enum SyscTensorType | tensorType, | ||
| int | isExtensive, | ||
| enum SyscLocation | location, | ||
| enum SyscQuantityType | 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.
◆ syscGetVariableQ()
| SyscVariable syscGetVariableQ | ( | const char * | name, |
| const char * | displayName, | ||
| enum SyscLocation | location, | ||
| enum SyscQuantityType | 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:
If any other quantity type is specified, tensor type will be set to scalar and is extensive will be set to false.
◆ syscGetVariableTE()
| SyscVariable syscGetVariableTE | ( | const char * | name, |
| enum SyscTensorType | tensorType, | ||
| int | isExtensive, | ||
| enum SyscLocation | 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.
◆ syscGetVariableTEQ()
| SyscVariable syscGetVariableTEQ | ( | const char * | name, |
| const char * | displayName, | ||
| enum SyscTensorType | tensorType, | ||
| int | isExtensive, | ||
| enum SyscLocation | location, | ||
| enum SyscQuantityType | 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.
◆ syscGetVolumeMeshElementBased()
| SyscVolumeMesh syscGetVolumeMeshElementBased | ( | SyscNodeData | nodes, |
| SyscElementTypeData | cellTypes, | ||
| SyscElementNodeConnectivityData | cellNodeConnectivity | ||
| ) |
Create an element-based volume mesh access struct.
- Parameters
-
[in] nodes - node data [in] cellTypes - cell types [in] cellNodeConnectivity - cell-to-node connectivity
◆ syscGetVolumeMeshEmpty()
| SyscVolumeMesh syscGetVolumeMeshEmpty | ( | ) |
Create an empty volume mesh access struct.
Returns a struct representing empty volume mesh. All member will be assigned default values.
◆ syscGetVolumeMeshFaceBased()
| SyscVolumeMesh syscGetVolumeMeshFaceBased | ( | SyscNodeData | nodes, |
| SyscElementNodeCountData | faceNodeCounts, | ||
| SyscElementNodeConnectivityData | faceNodeConnectivity, | ||
| SyscFaceCellConnectivityData | faceCellConnectivity, | ||
| SyscCellIdData | 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
◆ syscGetVolumeMeshNFC()
| SyscVolumeMesh syscGetVolumeMeshNFC | ( | SyscNodeData | nodes, |
| SyscFaceData | faces, | ||
| SyscCellData | cells | ||
| ) |
Create a volume mesh access struct.
- Parameters
-
[in] nodes - node data [in] faces - face data [in] cells - cell data
◆ syscInitializeAnalysis()
| SyscError 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.
◆ syscRegisterInputComplexScalarDataAccess()
| SyscError syscRegisterInputComplexScalarDataAccess | ( | SyscInputComplexScalarDataAccess | dataAccess | ) |
Provide a function to register input complex scalar data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscInputComplexScalarDataAccess prototype.
◆ syscRegisterInputComplexScalarDataAccessWithPointer()
| SyscError syscRegisterInputComplexScalarDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscInputComplexScalarDataAccessWithPointer | 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.
◆ syscRegisterInputComplexVectorDataAccess()
| SyscError syscRegisterInputComplexVectorDataAccess | ( | SyscInputComplexVectorDataAccess | dataAccess | ) |
Provide a function to register input complex vector data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscInputComplexVectorDataAccess prototype.
◆ syscRegisterInputComplexVectorDataAccessWithPointer()
| SyscError syscRegisterInputComplexVectorDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscInputComplexVectorDataAccessWithPointer | 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.
◆ syscRegisterInputScalarDataAccess()
| SyscError syscRegisterInputScalarDataAccess | ( | SyscInputScalarDataAccess | dataAccess | ) |
Provide a function to register input scalar data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscInputScalarDataAccess prototype.
◆ syscRegisterInputScalarDataAccessWithPointer()
| SyscError syscRegisterInputScalarDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscInputScalarDataAccessWithPointer | 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.
◆ syscRegisterInputScalarDataMultiZoneAccess()
| SyscError syscRegisterInputScalarDataMultiZoneAccess | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscInputScalarDataMultiZoneAccess | dataAccess | ||
| ) |
Provide a function to register input scalar data multi-zone access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscInputScalarDataMultiZoneAccess prototype.
◆ syscRegisterInputVectorDataAccess()
| SyscError syscRegisterInputVectorDataAccess | ( | SyscInputVectorDataAccess | dataAccess | ) |
Provide a function to register input vector data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscInputVectorDataAccess prototype.
◆ syscRegisterInputVectorDataAccessWithPointer()
| SyscError syscRegisterInputVectorDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscInputVectorDataAccessWithPointer | 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.
◆ syscRegisterInputVectorDataMultiZoneAccess()
| SyscError syscRegisterInputVectorDataMultiZoneAccess | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscInputVectorDataMultiZoneAccess | dataAccess | ||
| ) |
Provide a function to register input vector data multi-zone access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscInputVectorDataMultiZoneAccess prototype.
◆ syscRegisterOutputComplexScalarDataAccess()
| SyscError syscRegisterOutputComplexScalarDataAccess | ( | SyscOutputComplexScalarDataAccess | dataAccess | ) |
Provide a function to register output complex scalar data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscOutputComplexScalarDataAccess prototype.
◆ syscRegisterOutputComplexScalarDataAccessWithPointer()
| SyscError syscRegisterOutputComplexScalarDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscOutputComplexScalarDataAccessWithPointer | 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.
◆ syscRegisterOutputComplexVectorDataAccess()
| SyscError syscRegisterOutputComplexVectorDataAccess | ( | SyscOutputComplexVectorDataAccess | dataAccess | ) |
Provide a function to register output complex vector data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscOutputComplexVectorDataAccess prototype.
◆ syscRegisterOutputComplexVectorDataAccessWithPointer()
| SyscError syscRegisterOutputComplexVectorDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscOutputComplexVectorDataAccessWithPointer | 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.
◆ syscRegisterOutputScalarDataAccess()
| SyscError syscRegisterOutputScalarDataAccess | ( | SyscOutputScalarDataAccess | dataAccess | ) |
Provide a function to register output scalar data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscOutputScalarDataAccess prototype.
◆ syscRegisterOutputScalarDataAccessWithPointer()
| SyscError syscRegisterOutputScalarDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscOutputScalarDataAccessWithPointer | 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.
◆ syscRegisterOutputScalarDataMultiZoneAccess()
| SyscError syscRegisterOutputScalarDataMultiZoneAccess | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscOutputScalarDataMultiZoneAccess | dataAccess | ||
| ) |
Provide a function to register output scalar data multi-zone access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscOutputScalarDataMultiZoneAccess prototype.
◆ syscRegisterOutputVectorDataAccess()
| SyscError syscRegisterOutputVectorDataAccess | ( | SyscOutputVectorDataAccess | dataAccess | ) |
Provide a function to register output vector data access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscOutputVectorDataAccess prototype.
◆ syscRegisterOutputVectorDataAccessWithPointer()
| SyscError syscRegisterOutputVectorDataAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscOutputVectorDataAccessWithPointer | 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.
◆ syscRegisterOutputVectorDataMultiZoneAccess()
| SyscError syscRegisterOutputVectorDataMultiZoneAccess | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscOutputVectorDataMultiZoneAccess | dataAccess | ||
| ) |
Provide a function to register output vector data multi-zone access.
- Parameters
-
dataAccess - a pointer to the function that conforms to SyscOutputVectorDataMultiZoneAccess prototype.
◆ syscRegisterPointCloudAccess()
| SyscError syscRegisterPointCloudAccess | ( | SyscPointCloudAccess | pointCloudAccess | ) |
Provide a function to register point cloud access.
- Parameters
-
pointCloudAccess - a pointer to the function that conforms to SyscPointCloudAccess prototype.
◆ syscRegisterPointCloudAccessWithPointer()
| SyscError syscRegisterPointCloudAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscPointCloudAccessWithPointer | 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.
◆ syscRegisterPointCloudMultiZoneAccess()
| SyscError syscRegisterPointCloudMultiZoneAccess | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscPointCloudMultiZoneAccess | 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.
◆ syscRegisterRestartPointCreation()
| SyscError syscRegisterRestartPointCreation | ( | SyscRestartPointCreation | 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.
◆ syscRegisterSurfaceMeshAccessWithPointer()
| SyscError syscRegisterSurfaceMeshAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscSurfaceMeshAccessWithPointer | 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.
◆ syscRegisterSurfaceMeshMultiZoneAccess()
| SyscError syscRegisterSurfaceMeshMultiZoneAccess | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscSurfaceMeshMultiZoneAccess | 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.
◆ syscRegisterSurfMeshAccess()
| SyscError syscRegisterSurfMeshAccess | ( | SyscSurfMeshAccess | meshAccess | ) |
Provide a function to register surface mesh access.
- Parameters
-
meshAccess - a pointer to the function that conforms to SyscSurfMeshAccess prototype.
◆ syscRegisterVolumeMeshAccess()
| SyscError syscRegisterVolumeMeshAccess | ( | SyscVolumeMeshAccess | meshAccess | ) |
Provide a function to register volume mesh access.
- Parameters
-
meshAccess - a pointer to the function that conforms to SyscVolumeMeshAccess prototype.
◆ syscRegisterVolumeMeshAccessWithPointer()
| SyscError syscRegisterVolumeMeshAccessWithPointer | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscVolumeMeshAccessWithPointer | 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.
◆ syscRegisterVolumeMeshMultiZoneAccess()
| SyscError syscRegisterVolumeMeshMultiZoneAccess | ( | SyscOpaqueDataAccess | opaqueDataAccess, |
| SyscVolumeMeshMultiZoneAccess | 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.
◆ syscStartStandaloneParallel()
| SyscError syscStartStandaloneParallel | ( | const size_t | mpiCommunicator | ) |
Provide a function to start standalone mode in parallel.
- Parameters
-
[in] mpiCommunicator MPI 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.
◆ syscUpdateInputs()
| SyscError 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.
◆ syscUpdateOutputs()
| SyscError syscUpdateOutputs | ( | const enum SyscConvergenceStatus | 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.
◆ syscWriteSetupFile()
| int syscWriteSetupFile | ( | const SyscSetupFileInfo | 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 struct as input parameter.
It will return true (1) if the setup file was successfully written, and false (0) otherwise.