指定通过常规区域进行的数据交换

常规协同仿真区指定与 FMU 交换数据的一组 Simcenter STAR-CCM+ 边界或区域。

通过链接规范从 FMU 导入的值存储为单个值。有关更多信息,请参见 FMU 区参考和 FMU 链接参考。


导入时,Simcenter STAR-CCM+ 根据 FMU 输入和输出变量自动填充导出的值区和导入的场节点。

Simcenter STAR-CCM+ 还会分别根据 FMU 参数和局部变量填充参数和跟踪值节点,这些节点位于[链接 1] > 条件节点下。由于参数和局部变量仅适用于 FMU,因此它们不会通过协同仿真区进行交换。

常规协同仿真区需要命名约定,指定的命名约定结构化由 Simcenter STAR-CCM+ 用于解析 FMU 变量名称:

  1. 选择用户库 > [导入的库]节点,然后将变量命名约定设为结构化。
    包含分隔符的结构化变量名称被视为分层名称。Simcenter STAR-CCM+ 使用分层名称创建区域(但参数名称始终被视为平面字符串)。根据变量的类型,Simcenter STAR-CCM+ 将创建以下节点:
    FMU 变量类型 变量名称示例 Simcenter STAR-CCM+ 导入/导出的值节点
    输入 component1.force [链接 1] > 区域 > component1 > 条件 > 导出的值 > force
    输出 component1.displacement [链接 1] > 区域 > component1 > 条件 > 导入的场 > displacement
    参数 component1.parameter1 [链接 1] > 条件 > 参数 > component1.parameter1
    局部变量 component1.local1 [链接 1] > 条件 > 跟踪值 > component1.local1
  2. 选择[导入的库]节点,然后设置以下属性:
    属性 设置
    名称解析方向 要指定在变量名称中确定分层的方向,选择向前(默认)或反转。
    分层分隔符 指定定义分层分隔符的字符(默认为 "...")。
指定通过该区域与 FMU 交换数据的模型部件(区域或边界)。将边界和区域分配给某个区的过程类似。例如,要将边界指派给某个区:
  1. 展开相关的边界节点,区域 > [区域] > 边界 > [边界]。
  2. 选择[边界] > 物理条件 > 外部程序耦合指定节点,并将外部程序耦合指定设为相关的协同仿真区。


完成在某个协同仿真区下导入的场的定义。
  1. 对于[链接 1] > 区域 > [区域] > 条件 > 导入的场节点下的各个节点,选择[导入的场]节点,并通过设置场模板属性指定导入数据的映射位置。
  2. 对于每个区域导入的场,Simcenter STAR-CCM+ 创建一个场函数,名为 Co-Simulation: [Field Name](协同仿真:[场名称])。使用这些场函数可设置相关的边界条件。例如,可以使用导入的位移来设置边界处的变形规范。
使用协同仿真区域时,以下值仍直接在链接下设置:
  1. 对于[链接 1] > 条件 > 导入的值节点下的每个节点,选择相应的[链接 1] > 值 > 初始化值 > [导入的值]节点,然后指定恒定的初始化值。
    Simcenter STAR-CCM+ 使用名称 [链接 1][FMU 变量名称] 来存储导入的值。可以在写入表达式时引用此值。
要完成已导出值的定义:
  1. 展开导出的值节点(在该链接下或在某个协同仿真区下)。
  2. 对于每个导出的值 > [导出的值]节点,将值设为要导出至 FMU 的单值物理量。根据 FMU 所需的数据类型,使用以下某一方法:
    数据类型 在 Simcenter STAR-CCM+ 中设置值的方法
    整型 键入整数。不能使用表达式。
    理想 提供计算为单个值的任何表达式。由于 FMU 变量为空间不变量,因此 Simcenter STAR-CCM+ 必须导出单值数据。要将空间相关场转换为单值,可以使用报告。在 Simcenter STAR-CCM+ 中,所有报告自动生成在每次迭代时返回报告值的场函数。可以将此单值场函数导出至 FMU 模型。

    尽管可以导出 FMU 支持的任何数据类型(实数、整数、布尔、字符串、枚举),但通常会导出类型为实数的标量。

    枚举 从下拉菜单中选择一个选项(FMU 模型描述文件包含决定可用方法的枚举类型定义)
    字符串 键入字符串。不能使用表达式。
    布尔运算 激活复选框为 true,停用复选框为 false。
    通过展开已导入库节点下的相关节点,可以将任何 FMU 变量和类型定义的数据类型可视化:



如果 FMU 模型包含可调参数,则可以在 Simcenter STAR-CCM+ 中设置它们。要删除参数:
  1. 选择相关的[链接 1] > 条件 > 参数 > [参数]节点,然后设置参数值。
    根据参数数据类型,可以使用为导出的值概况的相同步骤,以不同的方式指定参数值。
要运行协同仿真:
  1. 单击 (运行)。
    Simcenter STAR-CCM+ 将加载 FMI 库并运行协同仿真。
    对于 FMI 版本 3.0,从 FMU(通过 fmi3DoStep)发送到 Simcenter STAR-CCM+ 的终止信号会触发停止准则 > FMI 停止准则,从而终止 FMU。如果尝试继续运行模拟,输出窗口中将显示以下警告消息:
    Partner FMU for [Link 1] is not ready to step. Please clear the solution before restarting the simulation.

    显示此警告消息时,可以逐步完成仿真。但是,FMU 不会运行,导入的 FMU 值保持不变。