FMU CouplingParticipant Data Model Settings

Contains settings that define the FMU participant.

FMU participants are named according to the same convention that is used for Ansys participants: <ParticipantType>-#, where:

"ParticipantType" is the type of participant, and
"#" is an index (starting with 1) indicating the order in which the participant was loaded.

Note:  FMU and Ansys participants are indexed in the same sequence.


DisplayName (setting)

Participant name to be shown in user-facing communications.

ParticipantType (setting)

Indicates the type of coupling participant. For FMU participants, the only possible value is FMU.

ParticipantFileLoaded (setting)

Indicates the .fmu file used to add the participant. If this file is located in the coupling working directory, only the filename is needed. Otherwise, the path to the file's location must be provided.

LoggingOn (setting)

Indicates whether debug logging is enabled for the FMU participant.

Possible values:

  • False: Disabled (default value)

    A transcript tab is not displayed in the System Coupling GUI for the participant.

  • True: Enabled

    A transcript tab is displayed in the System Coupling GUI for the participant.

    A log file with the base name of the FMU is written to the root level of the analysis. For example, if the FMU is named myFMU.fmu, the log file is named myFMU.log. The first line of the file is a timestamp in the format of date, time, then time zone. For example:

    9/8/2023 2:57:33 PM Eastern Daylight Time

    The timestamp indicates when the log file was started.

CanSerializeFmuState (setting)

Indicates whether restart information is written for the FMU (during a restart step).

Possible values:

  • False: Disabled (default value)

  • True: Enabled

    It will only be True if CanSerializeFMUstate is True in the FMU setup. In the FMI standard, this also means that CanGetAndSetFMUstate is also True.

CanGetAndSetFmuState (setting)

Indicates whether the FMU can get and set its state.

Possible values:

  • False: Disabled (default value)

  • True: Enabled

    If CanSerializeFMUstate is True in the FMU setup, this also means that CanGetAndSetFMUstate is also True.


    Note:  FMUs can only perform iterations if canGetAndSetFMUstate is True, since FMUs are required to rewind to the beginning of the step for every iteration. To do this, the initial state for the step must be saved (prior to the start of the first iteration) and that state set in the FMU at the beginning of each iteration. If the option is False, then this is not possible.

    If the value is set to False, the following validation warning is displayed:

    Cosimulation is defined with multiple iterations but participant
    ParticipantName does not support multiple iterations. This
    participant will only update its variables during the first
    coupling iteration of each step.

Input Variables (setting)

Specifies the variables for which the participant can receive data.

Blank values are permitted.

OutputVariables (setting)

Specifies the variables for which the participant can send data.

Blank values are permitted.

UpdateControl (singleton)

Settings defined under the UpdateControl singleton control the frequency with which the participant performs updates during the execution of a coupled analysis.


Note:  Every participant performs an update during the first iteration of each run (that is, during the first step of both initial and restarted coupling runs), regardless its UpdateControl settings.


UpdateControl singleton contents:

Option (setting)

Specifies how often the participant will perform updates.

Possible values:

  • ProgramControlled (default value)

    The FMU participant performs an update for every coupling iteration of each coupling step (default value).

    However, if the FMU participant cannot get and set its internal state, it updates only for the first coupling iteration of each coupling step.

  • EveryIteration

    The FMU participant updates for every coupling iteration of each coupling step. This is the same behavior as ProgramControlled when the FMU can get and set its internal state.

Variable (object)

Contains settings that define the details for each of the variables for which the participant can send or receive data.

FMU variables are named according to a naming convention based on the variable data type: <DataType>_#, where "#" is an integer-valued reference value used internally by the FMU to identify the variable. Variable names therefore must not be changed by the user, as the name of the variable itself is used to identify it within the FMU.

Variable object contents:

DisplayName (setting)

Variable name to be displayed in user-facing communications.

Optional. If not specified, the variable object name is used.

DataType (setting)

Data type of the variable being transferred.

Required.

Possible values:

  • Real

  • Integer

  • Logical

  • String

  • Enumeration

Settings available when the variable's DataType is set to Real:

RealInitialValue (setting)

Starting value of the variable's real data.

Accepts real values. Default value is 0.0.

RealMin (setting)

Minimum allowable value of the variable's real data.

Accepts real values lesser than or equal to the RealMax value.

Optional. Blank values are permitted. If no value is provided, a minimum boundary is not enforced.

RealMax (setting)

Maximum allowable value of the variable's real data.

Accepts real values greater than or equal to the RealMin value.

Optional. Blank values are permitted. If no value is provided, a maximum boundary is not enforced.

Settings available when the variable's DataType is set to Integer:

IntegerInitialValue (setting)

Starting value of the variable's integer data.

Accepts integer values. Default value is 0.

IntegerMin (setting)

Minimum allowable value of the variable's integer data.

Accepts integer values lesser than or equal to the IntegerMax value.

Optional. Blank values are permitted. If no value is provided, a minimum boundary is not enforced.

IntegerMax (setting)

Maximum allowable value of the variable's integer data.

Accepts integer values greater than or equal to the IntegerMin value.

Optional. Blank values are permitted. If no value is provided, a maximum boundary is not enforced.

Settings available when the variable's DataType is set to Logical:

LogicalInitialValue (setting)

Starting value of the parameter's logical data.

Accepts logical (Boolean) values.

Possible values:

  • True (default value)

  • False

Settings available when the variable's DataType is set to String:

StringInitialValue (setting)

Starting value of the variable's string data.

Accepts string values. Default value is None.

Settings available when the variable's DataType is set to Enumeration:

EnumerationInitialValue (setting)

Starting value of the variable's enumeration data.

Accepts integer values. Default value is 0.

EnumerationMin (setting)

Minimum allowable value of the variable's enumeration data.

Accepts integer values lesser than or equal to the EnumerationMax value.

Optional. Blank values are permitted. If no value is provided, a minimum boundary is not enforced.

EnumerationMax (setting)

Maximum allowable value of the variable's enumeration data.

Accepts integer values greater than or equal to the EnumerationMin value.

Optional. Blank values are permitted. If no value is provided, a maximum boundary is not enforced.

FMUParameter (object)

Contains settings that define the details for each of the parameters for which the participant can send or receive data.

FMU variables are named according to a naming convention based on the parameter data type: <DataType>_#, where "#" is an integer-valued reference value used internally by the FMU to identify the parameter. Parameter names therefore must not be changed by the user, as the name of the parameter itself is used to identify it within the FMU.

Unlike variables, FMU parameters are typically not changed during the co-simulation. FMU parameters are not included in the interface and so cannot be used as connections, inputs, outputs, etc.

FMUParameter object contents:

DisplayName (setting)

Parameter name to be displayed in user-facing communications.

Optional. If not specified, the parameter object name is used.

DataType (setting)

Data type of the parameter being transferred.

Required.

Possible values:

  • Real

  • Integer

  • Logical

  • String

  • Enumeration

Settings available when the parameter's DataType is set to Real:

RealValue (setting)

Starting value of the parameter's real data.

Accepts real values. Default value is 0.0.

RealMin (setting)

Minimum allowable value of the parameter's real data.

Accepts real values lesser than or equal to the RealMax value.

Optional. Blank values are permitted. If no value is provided, a minimum boundary is not enforced.

RealMax (setting)

Maximum allowable value of the parameter's real data.

Accepts real values greater than or equal to the RealMin value.

Optional. Blank values are permitted. If no value is provided, a maximum boundary is not enforced.

Settings available when the parameter's DataType is set to Integer:

IntegerValue (setting)

Starting value of the parameter's integer data.

Accepts integer values. Default value is 0.

IntegerMin (setting)

Minimum allowable value of the parameter's integer data.

Accepts integer values lesser than or equal to the IntegerMax value.

Optional. Blank values are permitted. If no value is provided, a minimum boundary is not enforced.

IntegerMax (setting)

Maximum allowable value of the parameter's integer data.

Accepts integer values greater than or equal to the IntegerMin value.

Optional. Blank values are permitted. If no value is provided, a maximum boundary is not enforced.

Settings available when the parameter's DataType is set to Logical:

LogicalValue (setting)

Starting value of the parameter's logical data.

Accepts logical (Boolean) values.

Possible values:

  • True (default value)

  • False

Settings available when the parameter's DataType is set to String:

StringValue (setting)

Starting value of the parameter's string data.

Accepts string values. Default value is None.

Settings available when the parameter's DataType is set to Enumeration:

EnumerationInitialValue (setting)

Starting value of the parameter's enumeration data.

Accepts integer values. Default value is 0.

EnumerationMin (setting)

Minimum allowable value of the parameter's enumeration data.

Accepts integer values lesser than or equal to the EnumerationMax value.

Optional. Blank values are permitted. If no value is provided, a minimum boundary is not enforced.

EnumerationMax (setting)

Maximum allowable value of the parameter's enumeration data.

Accepts integer values greater than or equal to the EnumerationMin value.

Optional. Blank values are permitted. If no value is provided, a maximum boundary is not enforced.