以重复的旋转角度缓存滑动交界面

Simcenter STAR-CCM+ 可用于存储和加载固定区域和旋转区域之间滑动交界面的交界面相交数据。接口必须是基于指标的连接接口。由于在某些情况下,交点计算过程可能成为串行计算的瓶颈,因此交界面缓存可以显著缩短模拟时间。

边界交界面缓存仅适用于静止区域与旋转区域之间的滑动交界面。它与具有不同旋转速率的两个旋转区域之间的交界面不兼容。

相交数据根据旋转区域的旋转角度存储。要确保区域位置在整个模拟过程中周期性重复,必须选择旋转速率和时间步,以便旋转角度序列产生周期性旋转。

在以下缓存命中示例中,逆时针旋转一圈经设计分为 10 个时间步,因此在接下来的旋转中会出现重复位置。从第二次旋转开始,交界面不再需要新的交点。

旋转角度 第一次革命 第二次革命
0°

(初始化)

记录 1

缓存命中 1

36° 记录 2

缓存命中 2

72° 记录 3

缓存命中 3

108° 记录 4

缓存命中 4

144° 记录 5

缓存命中 5

180° 记录 6

缓存命中 6

216° 记录 7

缓存命中 7

252° 记录 8

缓存命中 8

288° 记录 9

缓存命中 9

324° 记录 10

缓存命中 10

输出窗口中将显示每个缓存记录和每个缓存命中结果:

TimeStep 12:时间 6.000000e-02 边界接口缓存:LOAD: Interface 1 @ {part2=1.88496, part3=4.39823} radians (10 records, 4 hits) Boundary Interface Caching: LOAD: Interface 2 @ {part2=1.88496, part3=4.39823} radians (10 records, 4 hits) Boundary Interface Caching: 总内存(20 个接口记录):0.695 MB TimeStep 13: 时间 6.500000e-02 边界接口缓存:LOAD: Interface 1 @ {part2=2.51327, part3=3.76991} radians (10 records, 5 hits) Boundary Interface Caching: LOAD: Interface 2 @ {part2=2.51327, part3=3.76991} radians (10 records, 5 hits) Boundary Interface Caching: 总内存(20 个接口记录):0.695 MB
  1. 对于每个交界区域,选择区域 > [区域] > 物理条件 > 运动指定选项节点,然后将选项设为相应的运动(一个区域为固定运动,另一个区域为旋转运动)。
    边界交界面缓存仅适用于固定/旋转区域之间的交界面。

    有关如何规定刚体旋转运动的说明,请参见定义运动。可以通过运动指定或直接旋转运动来应用旋转。

为了避免无用的缓存记录并实现更多缓存命中,Simcenter STAR-CCM+ 要求选择适当的旋转速率,从而使角度序列为周期旋转。
  1. 右键单击自动化 > 参数节点并选择新建 > 标量。
    建议将以下模拟物理量定义为标量参数:
    变量参数单位值
    旋转速率 (RPS)${rotRateRPS}无量纲

    建议设置不使用单位 rps 的转数,以避免不必要的单位转换。

    20(示例)
    2п${twoPi}无量纲8*atan(1.0)

    该表达式提供了 2п 值的最大精度,这对于从 rps 转换为弧度/秒而言是必需的。

    对于运动指定和直接旋转设置,当使用旋转速率表达式时,Simcenter STAR-CCM+ 要求使用 SI 单位弧度/秒。使用表达式 ${rotRateRPS}*${twoPi},单位为弧度/秒。

    运动指定中的旋转

    直接旋转

激活边界交界面缓存之前,确保将交界面连接设为“基于指标”。
  1. 选择交界面 > [交界面] > 节点,并确保连接为基于指标。
  2. 要支持边界交界面缓存,首先从交界面管理器节点激活属性,然后为要缓存的每个交界面激活“边界交界面缓存”:
    1. 选择交界面节点,然后激活边界交界面缓存。


    2. 要为每个交界面个体激活“边界交界面缓存”,选择交界面 > [交界面] > 物理条件 > 边界交界面缓存节点,然后激活已启用。


      最大步数指定缓存记录的最大数量。

为避免冗余缓存记录,应指定时间步,以使角度序列在后续旋转中周期性地重复。
  1. 右键单击自动化 > 参数节点并选择新建 > 标量。
    建议将以下模拟物理量定义为标量参数:
    变量参数单位值
    每转的时间步数${nsteps}无量纲360(示例)

    根据模拟物理选择此数字。

    时间步长${dt}时间1.0/(${nsteps}*${rotRateRPS})
    注不使用表达式可能会导致角精度损失,从而减少缓存命中次数。
  2. 要定义与旋转运动相对应的时间步,选择求解器 > 隐式非稳态节点,然后将时间步设为 ${dt}。
如果需要新的缓存记录(例如在修改了时间步或旋转速率等模拟参数之后),可以清除现有的缓存交界面数据,这些数据不再与新的模拟参数一致。可以全局清除所有接口的缓存数据,也可以单独清除每个接口的缓存数据:
  1. 要清除接口缓存:
    1. 要全局清除所有交界面缓存,右键单击交界面节点,然后选择清除所有交界面缓存。
    2. 要为每个交界面单独清除交界面缓存,右键单击交界面 > [交界面]节点,然后选择清除交界面缓存。
    注缓存不会通过清除求解清除。切记在修改模拟参数后清除过期缓存记录。