Skip to main content

System Coupling C library 2025 R1

syscCommonTypes

Last update: 17.07.2025
1 /*
2 * Copyright ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.
3 */
4 
5 #pragma once
6 
7 #include "SystemCouplingParticipant/LibraryType.hpp"
8 
9 #include "SystemCouplingParticipant/syscElementTypes.h"
10 
11 #include <stddef.h>
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
23 #define SYSC_STRING_LENGTH 256
24 
27  SyscNode = 0,
28  SyscElement = 1
29 };
30 
33  SyscScalar = 0,
34  SyscVector = 1
35 };
36 
40  SyscVolume = 3
41 };
42 
47 };
48 
51  SyscInterfaceSide_One = 1,
52  SyscInterfaceSide_Two = 2
53 };
54 
57  SyscD2 = 2,
58  SyscD3 = 3
59 };
60 
63  SyscImplicit = 0,
64  SyscExplicit = 1
65 };
66 
68 typedef struct {
69  double length;
70  double time;
71  double mass;
72  double temperature;
74  double current;
76  double angle;
78 
82 
92  SyscUnspecified = 0,
93  SyscForce = 1,
94  SyscIncrementalDisplacement = 2,
95  SyscTemperature = 3,
96  SyscHeatRate = 4,
97  SyscHeatTransferCoefficient = 5,
98  SyscConvectionReferenceTemperature = 6,
99  SyscModeShape = 7,
100  SyscElectricalConductivity = 8
101 };
102 
103 enum SyscDataType {
104  SyscDataType_Real = 0,
105  SyscDataType_Complex = 1
106 };
107 
110  SyscDiverging = -1,
111  SyscNotYetConverged = 0,
112  SyscConverged = 1,
113  SyscComplete = 2,
114  SyscNotEvaluated = 3
115 };
116 
120  SyscTransient = 1
121 };
122 
124 typedef struct {
126  double startTime;
127  double timeStepSize;
128 } SyscTimeStep;
129 
131 typedef struct SyscSolutionControl {
135 
137 typedef struct {
138  int retcode;
139  char message[SYSC_STRING_LENGTH];
140 } SyscError;
141 
144 SyscError syscGetSyscError(int retcode, const char* message);
145 
148  SyscFloat = 0,
150  SyscInt32 = 2,
151  SyscInt64 = 3,
153  SyscUnsignedInt64 = 5
154 };
155 
156 typedef void* SyscOpaqueDataAccess;
158 /******************************* Setup info **********************************/
159 
172 typedef struct SyscSetupInfo {
175  enum SyscDimension dimension;
178 
188 
198  enum SyscAnalysisType analysisType);
199 
209  enum SyscAnalysisType analysisType,
210  int restartsSupported);
211 
222  enum SyscAnalysisType analysisType,
223  int restartsSupported,
224  enum SyscDimension dimension);
225 
237  enum SyscAnalysisType analysisType,
238  int restartsSupported,
239  enum SyscDimension dimension,
240  enum SyscTimeIntegration timeIntegration);
241 
242 /**************************** Setup file info ********************************/
243 
256 typedef struct SyscSetupFileInfo {
260 
271  const char* setupFileName);
272 
273 /***************************** Results info **********************************/
274 
276 typedef struct SyscResultsInfo {
279 
286 SyscResultsInfo syscGetResultsInfo(const char* baseFileName);
287 
315 typedef struct SyscParticipantInfo {
316  char scHost[SYSC_STRING_LENGTH];
317  unsigned short scPort;
318  char participantName[SYSC_STRING_LENGTH];
319  char buildInformation[SYSC_STRING_LENGTH];
320  char transcriptFilename[SYSC_STRING_LENGTH];
322 
350 SyscParticipantInfo syscGetParticipantInfo(
351  const char* scHost,
352  unsigned short scPort,
353  const char* participantName);
354 
355 
356 SyscParticipantInfo syscGetParticipantInfoB(
357  const char* scHost,
358  unsigned short scPort,
359  const char* participantName,
360  const char* buildInformation);
361 
362 
363 SyscParticipantInfo syscGetParticipantInfoBT(
364  const char* scHost,
365  unsigned short scPort,
366  const char* participantName,
367  const char* buildInformation,
368  const char* transcriptFileName);
369 
370 #ifdef __cplusplus
371 }
372 #endif
SyscTensorType
Provide an enum for variable tensor type.
SyscConvergenceStatus
Provide enum for participant's solver convergence status.
void * SyscOpaqueDataAccess
SyscError syscGetSyscError(int retcode, const char *message)
Provide a function to return SyscError struct.
SyscDimensionality syscGetDimensionality()
Get dimensionality.
SyscSetupInfo syscGetSetupInfoAR(enum SyscAnalysisType analysisType, int restartsSupported)
Create a setup info struct.
SyscSetupInfo syscGetSetupInfo()
Create a setup info struct.
SyscAnalysisType
Provide an enum for coupled analysis type.
struct SyscSetupInfo SyscSetupInfo
Provide a structure for System Coupling setup information.
SyscRegionDiscretizationType
Provide an enum for region mesh type.
struct SyscSetupFileInfo SyscSetupFileInfo
Provide a structure for writing System Coupling setup files.
SyscQuantityType
Provide an enum for supported quantity types.
struct SyscSolutionControl SyscSolutionControl
Provide a structure containing solution control.
#define SYSC_STRING_LENGTH
Define maximum string length.
SyscTopology
Provide an enum for region topologies.
SyscResultsInfo syscGetResultsInfo(const char *baseFileName)
Provide a function to create SetupFileInfo struct.
SyscDimension
Provide enum for system coupling dimension.
SyscSetupFileInfo syscGetSetupFileInfo(const char *setupFileName)
Provide a function to create SetupFileInfo struct.
struct SyscResultsInfo SyscResultsInfo
Provide a structure for writing results files.
SyscInterfaceSide
Provide enum for coupling interface side.
SyscPrimitiveType
Provide an enum for supported primitive types.
SyscLocation
Provide an enum for variable mesh locations.
SyscSetupInfo syscGetSetupInfoA(enum SyscAnalysisType analysisType)
Create a setup info struct.
SyscSetupInfo syscGetSetupInfoARD(enum SyscAnalysisType analysisType, int restartsSupported, enum SyscDimension dimension)
Create a setup info struct.
SyscTimeIntegration
Provide an enum for time integration.
SyscSetupInfo syscGetSetupInfoARDT(enum SyscAnalysisType analysisType, int restartsSupported, enum SyscDimension dimension, enum SyscTimeIntegration timeIntegration)
Create a setup info struct.
@ SyscVector
@ SyscScalar
@ SyscTransient
@ SyscSteady
@ SyscPointCloudRegion
@ SyscMeshRegion
@ SyscVolume
@ SyscSurface
@ SyscInt32
@ SyscDouble
@ SyscFloat
@ SyscUnsignedInt64
@ SyscInt64
@ SyscUnsignedInt16
@ SyscElement
@ SyscNode
Provide a structure for dimensionality.
Provide a struct for detecting errors from the interface calls.
Provide a structure to provide connection info to System Coupling.
Provide a structure for writing results files.
char baseFileName[SYSC_STRING_LENGTH]
Provide a structure for writing System Coupling setup files.
char setupFileName[SYSC_STRING_LENGTH]
Provide a structure for System Coupling setup information.
enum SyscTimeIntegration timeIntegration
enum SyscDimension dimension
enum SyscAnalysisType analysisType
Provide a structure containing solution control.
Provide a struct for time step.

Connect with Ansys