全球FlexSim系统仿真中文论坛

搜索
12
返回列表 发新帖
楼主: shane
打印 上一主题 下一主题

如何让分解器中容量发往多个下游

[复制链接]
11#
FanQin 发表于 2019-3-27 17:05:15 | 只看该作者
本帖最后由 FanQin 于 2019-3-27 17:11 编辑 # O: p% p) w  Y) Y5 ~/ ~
shane 发表于 2019-3-27 16:53
1 J  ^- m+ ]# e我是打算这样子写代码实现的,但是不知道哪里出问题了
代码逻辑错了,你这边需要用到三个输出端口,但是这个代码只适用于两个输出端口,建议用port by case;
12#
 楼主| shane 发表于 2019-3-27 17:32:45 | 只看该作者
FanQin 发表于 2019-3-27 17:05/ |$ j1 F0 Q$ K; |
代码逻辑错了,你这边需要用到三个输出端口,但是这个代码只适用于两个输出端口,建议用port by case;

% T7 W* }( G- \/ I# c啊没事了,我发现哪里出问题了。if后面少加了一个()。4 l" w4 M/ H( \3 d, q8 q$ ?* O
这样子就可以实现了
; W5 w- k: A: V; ntreenode  item = parnode(1);
3 ^7 l2 v0 \* R8 g' M' ptreenode  current = ownerobject(c);
. m, F6 x, f# t: h- T3 W+ f/**默认分解器选项*/
, J2 K, K# z- ?2 A& e  S* ^( n3 G4 p% }if(getvarnum(current,"unpack"))1 z4 f$ i; h9 V' @. ~' B3 j
{( g. W/ L  f- q: Z* U! M
  if(getrank(parnode(1)) == 1)
5 {  u  C! @! D    return 1;
7 c& {3 C$ r5 n, n$ Y, d0 _   else
& I/ f- P/ S' w" l$ M. E   if (content(outobject(current, 2))<getvarnum(outobject(current, 2),"maxcontent"))
& e9 ?1 I+ N6 [7 [    return 2;) U9 C! W5 ~1 A" m+ Y
   if (content(outobject(current, 2))==getvarnum(outobject(current, 2),"maxcontent"))9 k+ [" _- ]1 {/ t  r9 [4 n. g
    return 3;. V0 n" U7 e' ^/ R
}
1 O3 h* V+ }, Y. @& h0 l1 m; {. N. welse, |' |- x/ s# a" s4 n# h9 c: @
  return 0;
13#
zjj0605 发表于 2019-4-3 17:39:08 | 只看该作者
感谢楼主的分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-6-28 01:26 , Processed in 0.075284 second(s), 12 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表