Skip to main content

File syscCommonTypes.h

Location: syscCommonTypes.h

Classes​

Includes​

  • SystemCouplingParticipant/LibraryType.hpp
  • SystemCouplingParticipant/syscElementTypes.h
  • <stddef.h>
graph LR
4["stddef.h"]

3["SystemCouplingParticipant/syscElementTypes.h"]

2["SystemCouplingParticipant/LibraryType.hpp"]

1["syscCommonTypes.h"]
click 1 "syscCommonTypes_8h.md#syscCommonTypes_8h"
1 --> 2
1 --> 3
1 --> 4

Macros​

Macro SYSC_STRING_LENGTH​

#define SYSC_STRING_LENGTH 256

Define maximum string length.

Enumeration types​

Enumeration type SyscLocation​

Definition: syscCommonTypes.h (line 26)

enum SyscLocation {
SyscNode = 0,
SyscElement = 1
}

Provide an enum for variable mesh locations.

Enumerator SyscNode​

Nodal data.

Enumerator SyscElement​

Data on elements.

Enumeration type SyscTensorType​

Definition: syscCommonTypes.h (line 32)

enum SyscTensorType {
SyscScalar = 0,
SyscVector = 1
}

Provide an enum for variable tensor type.

Enumerator SyscScalar​

Scalar

Enumerator SyscVector​

Vector

Enumeration type SyscTopology​

Definition: syscCommonTypes.h (line 38)

enum SyscTopology {
SyscSurface = 2,
SyscVolume = 3
}

Provide an enum for region topologies.

Enumerator SyscSurface​

Surface topology.

Enumerator SyscVolume​

Volume topology.

Enumeration type SyscRegionDiscretizationType​

Definition: syscCommonTypes.h (line 44)

enum SyscRegionDiscretizationType {
SyscMeshRegion = 0,
SyscPointCloudRegion = 1
}

Provide an enum for region mesh type.

Enumerator SyscMeshRegion​

Mesh region discretization.

Enumerator SyscPointCloudRegion​

Point cloud region discretization.

Enumeration type SyscInterfaceSide​

Definition: syscCommonTypes.h (line 50)

enum SyscInterfaceSide {
SyscInterfaceSide_One = 1,
SyscInterfaceSide_Two = 2
}

Provide enum for coupling interface side.

Enumerator SyscInterfaceSide_One​

Enumerator SyscInterfaceSide_Two​

Enumeration type SyscDimension​

Definition: syscCommonTypes.h (line 56)

enum SyscDimension {
SyscD2 = 2,
SyscD3 = 3
}

Provide enum for system coupling dimension.

Enumerator SyscD2​

Enumerator SyscD3​

Enumeration type SyscTimeIntegration​

Definition: syscCommonTypes.h (line 62)

enum SyscTimeIntegration {
SyscImplicit = 0,
SyscExplicit = 1
}

Provide an enum for time integration.

Enumerator SyscImplicit​

Enumerator SyscExplicit​

Enumeration type SyscQuantityType​

Definition: syscCommonTypes.h (line 91)

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.

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.

Enumerator SyscUnspecified​

Enumerator SyscForce​

Enumerator SyscIncrementalDisplacement​

Enumerator SyscTemperature​

Enumerator SyscHeatRate​

Enumerator SyscHeatTransferCoefficient​

Enumerator SyscConvectionReferenceTemperature​

Enumerator SyscModeShape​

Enumerator SyscElectricalConductivity​

Enumeration type SyscDataType​

Definition: syscCommonTypes.h (line 103)

enum SyscDataType {
SyscDataType_Real = 0,
SyscDataType_Complex = 1
}

Enumerator SyscDataType_Real​

Enumerator SyscDataType_Complex​

Enumeration type SyscConvergenceStatus​

Definition: syscCommonTypes.h (line 109)

enum SyscConvergenceStatus {
SyscDiverging = -1,
SyscNotYetConverged = 0,
SyscConverged = 1,
SyscComplete = 2,
SyscNotEvaluated = 3
}

Provide enum for participant's solver convergence status.

Enumerator SyscDiverging​

Enumerator SyscNotYetConverged​

Enumerator SyscConverged​

Enumerator SyscComplete​

Enumerator SyscNotEvaluated​

Enumeration type SyscAnalysisType​

Definition: syscCommonTypes.h (line 118)

enum SyscAnalysisType {
SyscSteady = 0,
SyscTransient = 1
}

Provide an enum for coupled analysis type.

Enumerator SyscSteady​

Steady analysis type.

Enumerator SyscTransient​

Transient (unsteady) analysis type.

Enumeration type SyscPrimitiveType​

Definition: syscCommonTypes.h (line 147)

enum SyscPrimitiveType {
SyscFloat = 0,
SyscDouble = 1,
SyscInt32 = 2,
SyscInt64 = 3,
SyscUnsignedInt16 = 4,
SyscUnsignedInt64 = 5
}

Provide an enum for supported primitive types.

Enumerator SyscFloat​

Single-precision floating point type.

Enumerator SyscDouble​

Double-precision floating point type.

Enumerator SyscInt32​

Signed 32-bit integer.

Enumerator SyscInt64​

Signed 64-bit integer.

Enumerator SyscUnsignedInt16​

Unsigned 16-bit integer.

Enumerator SyscUnsignedInt64​

Unsigned 64-bit integer.

Enumeration type SyscParticipantType​

Definition: syscCommonTypes.h (line 156)

enum SyscParticipantType {
SyscDEFAULT = 0,
SyscCFX = 1,
SyscFLUENT = 2,
SyscMAPDL = 3,
SyscAEDT = 4,
SyscFMU = 5,
SyscFMU_PROXY = 6,
SyscEXTERNALDATA = 7,
SyscFORTE = 8,
SyscDEFAULT_SRV = 9,
SyscMECH_SRV = 10,
SyscCFD_SRV = 11,
SyscSCDT_SRV = 12,
SyscTHERMAL_DESKTOP = 13,
SyscLS_DYNA = 14,
SyscROCKY = 15
}

Enumerator SyscDEFAULT​

Enumerator SyscCFX​

Enumerator SyscFLUENT​

Enumerator SyscMAPDL​

Enumerator SyscAEDT​

Enumerator SyscFMU​

Enumerator SyscFMU_PROXY​

Enumerator SyscEXTERNALDATA​

Enumerator SyscFORTE​

Enumerator SyscDEFAULT_SRV​

Enumerator SyscMECH_SRV​

Enumerator SyscCFD_SRV​

Enumerator SyscSCDT_SRV​

Enumerator SyscTHERMAL_DESKTOP​

Enumerator SyscLS_DYNA​

Enumerator SyscROCKY​

Typedefs​

Typedef SyscSolutionControl​

Definition: syscCommonTypes.h (line 134)

typedef struct SyscSolutionControl SyscSolutionControl

Provide a structure containing solution control.

Return type: struct SyscSolutionControl

Typedef SyscOpaqueDataAccess​

Definition: syscCommonTypes.h (line 175)

typedef void* SyscOpaqueDataAccess

Declare an opaque pointer type.

Return type: void *

Typedef SyscSetupInfo​

Definition: syscCommonTypes.h (line 197)

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:

SyscSetupInfo setupInfo = syscGetSetupInfoA(SyscSteady); 

Return type: struct SyscSetupInfo

Typedef SyscSetupFileInfo​

Definition: syscCommonTypes.h (line 297)

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:

SyscSetupFileInfo setupFileInfo = syscGetSetupFileInfo("setup.scp");

Return type: struct SyscSetupFileInfo

Typedef SyscResultsInfo​

Definition: syscCommonTypes.h (line 316)

typedef struct SyscResultsInfo SyscResultsInfo

Provide a structure for writing results files.

Return type: struct SyscResultsInfo

Typedef SyscParticipantInfo​

Definition: syscCommonTypes.h (line 359)

typedef struct SyscParticipantInfo SyscParticipantInfo

Return type: struct SyscParticipantInfo

Functions​

Function syscGetDimensionality​

SyscDimensionality syscGetDimensionality()

Get dimensionality.

Return type: SyscDimensionality

Function syscGetSyscError​

SyscError syscGetSyscError(int retcode, const char *message)

Provide a function to return SyscError struct.

Parameters:

  • int retcode
  • const char * message

Return type: SyscError

Function syscGetSetupInfo​

SyscSetupInfo syscGetSetupInfo()

Create a setup info struct.

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

Return type: SyscSetupInfo

Function syscGetSetupInfoA​

SyscSetupInfo syscGetSetupInfoA(enum SyscAnalysisType analysisType)

Create a setup info struct.

Parameters:

  • analysisType: - analysis type.

Restarts supported flag will be set to false.

Parameters:

Return type: SyscSetupInfo

Function syscGetSetupInfoAR​

SyscSetupInfo syscGetSetupInfoAR(enum SyscAnalysisType analysisType, int restartsSupported)

Create a setup info struct.

Parameters:

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

Parameters:

Return type: SyscSetupInfo

Function 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.

Parameters:

Return type: SyscSetupInfo

Function syscGetSetupInfoARDT​

SyscSetupInfo syscGetSetupInfoARDT(enum SyscAnalysisType analysisType, int restartsSupported, enum SyscDimension dimension, enum SyscTimeIntegration timeIntegration)

Create a setup info struct.

Parameters:

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

Parameters:

Return type: SyscSetupInfo

Function syscGetSetupInfoARDTP​

SyscSetupInfo syscGetSetupInfoARDTP(enum SyscAnalysisType analysisType, int restartsSupported, enum SyscDimension dimension, enum SyscTimeIntegration timeIntegration, enum SyscParticipantType participantType)

Create a setup info struct.

Parameters:

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

Parameters:

Return type: SyscSetupInfo

Function 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.

Parameters:

  • const char * setupFileName

Return type: SyscSetupFileInfo

Function syscGetResultsInfo​

SyscResultsInfo syscGetResultsInfo(const char *baseFileName)

Provide a function to create SetupFileInfo struct.

Parameters:

  • baseFileName: - base results file name.

Parameters:

  • const char * baseFileName

Return type: SyscResultsInfo

Function syscGetParticipantInfo​

SyscParticipantInfo syscGetParticipantInfo(const char *scHost, unsigned short scPort, const char *participantName)

Provide a function to get & construct a SyscParticipantInfo struct if it doesn't exist.

Parameters:

  • scHost: Name of the host on which System Coupling is running.
  • scPort: Port number on which System Coupling is listening for participant connections.
  • participantName: Name of this participant (e.g. "MAPDL-1").
  • buildInformation: Information about the build of this participant solver.
  • isCosimulation: Flag signifying if the simulation is a cosimulation.
  • transcriptFilename: The filename to be given to the output participant transcript.

Returns:

SyscParticipantInfo A SyscParticipantInfo containing minimal attributes to connect to System Coupling

Parameters:

  • const char * scHost
  • unsigned short scPort
  • const char * participantName

Return type: SyscParticipantInfo

Function syscGetParticipantInfoB​

SyscParticipantInfo syscGetParticipantInfoB(const char *scHost, unsigned short scPort, const char *participantName, const char *buildInformation)

Parameters:

  • const char * scHost
  • unsigned short scPort
  • const char * participantName
  • const char * buildInformation

Return type: SyscParticipantInfo

Function syscGetParticipantInfoBT​

SyscParticipantInfo syscGetParticipantInfoBT(const char *scHost, unsigned short scPort, const char *participantName, const char *buildInformation, const char *transcriptFileName)

Parameters:

  • const char * scHost
  • unsigned short scPort
  • const char * participantName
  • const char * buildInformation
  • const char * transcriptFileName

Return type: SyscParticipantInfo

Source​

/*
* Copyright ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.
*/

#pragma once

#include "SystemCouplingParticipant/LibraryType.hpp"

#include "SystemCouplingParticipant/syscElementTypes.h"

#include `<stddef.h>`

#ifdef __cplusplus
extern "C" {
#endif

#define SYSC_STRING_LENGTH 256

enum SyscLocation {
SyscNode = 0,
SyscElement = 1
};

enum SyscTensorType {
SyscScalar = 0,
SyscVector = 1
};

enum SyscTopology {
SyscSurface = 2,
SyscVolume = 3
};

enum SyscRegionDiscretizationType {
SyscMeshRegion = 0,
SyscPointCloudRegion = 1
};

enum SyscInterfaceSide {
SyscInterfaceSide_One = 1,
SyscInterfaceSide_Two = 2
};

enum SyscDimension {
SyscD2 = 2,
SyscD3 = 3
};

enum SyscTimeIntegration {
SyscImplicit = 0,
SyscExplicit = 1
};

typedef struct {
double length;
double time;
double mass;
double temperature;
double amountOfSubstance;
double current;
double luminousIntensity;
double angle;
} SyscDimensionality;

SyscDimensionality syscGetDimensionality();

enum SyscQuantityType {
SyscUnspecified = 0,
SyscForce = 1,
SyscIncrementalDisplacement = 2,
SyscTemperature = 3,
SyscHeatRate = 4,
SyscHeatTransferCoefficient = 5,
SyscConvectionReferenceTemperature = 6,
SyscModeShape = 7,
SyscElectricalConductivity = 8
};

enum SyscDataType {
SyscDataType_Real = 0,
SyscDataType_Complex = 1
};

enum SyscConvergenceStatus {
SyscDiverging = -1,
SyscNotYetConverged = 0,
SyscConverged = 1,
SyscComplete = 2,
SyscNotEvaluated = 3
};

enum SyscAnalysisType {
SyscSteady = 0,
SyscTransient = 1
};

typedef struct {
int timeStepNumber;
double startTime;
double timeStepSize;
} SyscTimeStep;

typedef struct SyscSolutionControl {
int minimumIterations;
int maximumIterations;
} SyscSolutionControl;

typedef struct {
int retcode;
char message[SYSC_STRING_LENGTH];
} SyscError;

SyscError syscGetSyscError(int retcode, const char* message);

enum SyscPrimitiveType {
SyscFloat = 0,
SyscDouble = 1,
SyscInt32 = 2,
SyscInt64 = 3,
SyscUnsignedInt16 = 4,
SyscUnsignedInt64 = 5
};

enum SyscParticipantType {
SyscDEFAULT = 0,
SyscCFX = 1,
SyscFLUENT = 2,
SyscMAPDL = 3,
SyscAEDT = 4,
SyscFMU = 5,
SyscFMU_PROXY = 6,
SyscEXTERNALDATA = 7,
SyscFORTE = 8,
SyscDEFAULT_SRV = 9,
SyscMECH_SRV = 10,
SyscCFD_SRV = 11,
SyscSCDT_SRV = 12,
SyscTHERMAL_DESKTOP = 13,
SyscLS_DYNA = 14,
SyscROCKY = 15
};

typedef void* SyscOpaqueDataAccess;
/******************************* Setup info **********************************/

typedef struct SyscSetupInfo {
enum SyscAnalysisType analysisType;
int restartsSupported;
enum SyscDimension dimension;
enum SyscTimeIntegration timeIntegration;
enum SyscParticipantType participantType;
} SyscSetupInfo;

SyscSetupInfo syscGetSetupInfo();

SyscSetupInfo syscGetSetupInfoA(
enum SyscAnalysisType analysisType);

SyscSetupInfo syscGetSetupInfoAR(
enum SyscAnalysisType analysisType,
int restartsSupported);

SyscSetupInfo syscGetSetupInfoARD(
enum SyscAnalysisType analysisType,
int restartsSupported,
enum SyscDimension dimension);

SyscSetupInfo syscGetSetupInfoARDT(
enum SyscAnalysisType analysisType,
int restartsSupported,
enum SyscDimension dimension,
enum SyscTimeIntegration timeIntegration);

SyscSetupInfo syscGetSetupInfoARDTP(
enum SyscAnalysisType analysisType,
int restartsSupported,
enum SyscDimension dimension,
enum SyscTimeIntegration timeIntegration,
enum SyscParticipantType participantType);

/**************************** Setup file info ********************************/

typedef struct SyscSetupFileInfo {
char setupFileName[SYSC_STRING_LENGTH];
int restartsSupported;
} SyscSetupFileInfo;

SyscSetupFileInfo syscGetSetupFileInfo(
const char* setupFileName);

/***************************** Results info **********************************/

typedef struct SyscResultsInfo {
char baseFileName[SYSC_STRING_LENGTH];
} SyscResultsInfo;

SyscResultsInfo syscGetResultsInfo(const char* baseFileName);

typedef struct SyscParticipantInfo {
char scHost[SYSC_STRING_LENGTH];
unsigned short scPort;
char participantName[SYSC_STRING_LENGTH];
char buildInformation[SYSC_STRING_LENGTH];
char transcriptFilename[SYSC_STRING_LENGTH];
} SyscParticipantInfo;

SyscParticipantInfo syscGetParticipantInfo(
const char* scHost,
unsigned short scPort,
const char* participantName);


SyscParticipantInfo syscGetParticipantInfoB(
const char* scHost,
unsigned short scPort,
const char* participantName,
const char* buildInformation);


SyscParticipantInfo syscGetParticipantInfoBT(
const char* scHost,
unsigned short scPort,
const char* participantName,
const char* buildInformation,
const char* transcriptFileName);

#ifdef __cplusplus
}
#endif