如何随时间更改参数值?

How to change a parameter value over time?

我需要在模拟中随时间更改可变参数的值。 IE。在模拟的第一个 30s 之后,我需要 exp(400ms),直到 60s,我需要 exp(800ms),在 60s exp(2s) 之后,我需要 interArrivalTime

对于可变参数,有一个非常简单的技巧。将 ? : 运算符与 simTime() NED 函数一起使用:

**.interArrivalTime = simTime() < 30s ? exponetntial(400ms) : exponential(800ms)

或者您甚至可以将它们链接为 ?: 运算符从左到右求值:

**.interArrivalTime = exponential(simTime() < 30s ? 400ms : simTime() < 60s ? 800ms : 2s)

会给出:

  • exponential(400ms) 低于 30s
  • exponential(800ms)3060s
  • 之间
  • exponential(2s)60s
  • 之后