You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于Modelica Fluid库修改无摩擦管道模型仿真未达预期

无摩擦管道模型构建及仿真异常问题

模型修改内容

我基于dynamicPipe模型构建无摩擦管道模型,具体修改如下:

1. 修改dynamicPipe模型代码

extends PartialStraightPipe_noFric(final port_a_exposesState = (modelStructure == ModelStructure.av_b) or (modelStructure == ModelStructure.av_vb), final port_b_exposesState = (modelStructure == ModelStructure.a_vb) or (modelStructure == ModelStructure.av_vb));
  // extending PartialTwoPortFlow
  extends PartialTwoPortFlow_noFric(final lengths = fill(length/n, n), final crossAreas = fill(crossArea, n), final dimensions = fill(4*crossArea/perimeter, n), final roughnesses = fill(roughness, n), final dheights = height_ab*dxs);
  // Wall heat transfer

2. 替换PartialStraightPipe_noFric和PartialTwoPortFlow_noFric中的FlowModel

// Pressure loss model
replaceable model FlowModel = Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow constrainedby PartialStaggeredFlowModel_noFric "Wall friction, gravity, momentum flow"

3. 修改PartialStaggeredFlowModel_noFric的动量平衡逻辑

// Momentum balances
if momentumDynamics == Modelica.Fluid.Types.Dynamics.SteadyState then
  zeros(m) = Ib_flows - Fs_p;
else
  der(Is) = Ib_flows - Fs_p;
end if;

4. 移除dynamicPipe能量方程中的摩擦项

示例修改代码:

Wb_flows[1] = vs[1]*crossAreas[1]*(mediums[2].p - mediums[1].p)/2;

存在的问题

模型编译已通过,但在带指定泵的测试场景中,修改管道长度或直径时,流量值仍会发生变化。按照无摩擦管道的预期,流量不应受这些参数影响,目前仿真未达到预期效果。

内容的提问来源于stack exchange,提问作者pionao

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 06:12:47