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