$(instance)LimiterTest Icon

LimiterTest

Usage

LimiterTest()

Behavior

\[ \begin{align} \mathtt{in.y}\left( t \right) &= \mathtt{integrator.u}\left( t \right) \\ \mathtt{integrator.y}\left( t \right) &= \mathtt{limiter.u}\left( t \right) \\ \mathtt{limiter.y}\left( t \right) &= max\left( min\left( \mathtt{limiter.u}\left( t \right), \mathtt{limiter.u\_max} \right), \mathtt{limiter.u\_min} \right) \\ \frac{\mathrm{d} \mathtt{integrator.x}\left( t \right)}{\mathrm{d}t} &= \mathtt{integrator.k} \mathtt{integrator.u}\left( t \right) \\ \mathtt{integrator.y}\left( t \right) &= \mathtt{integrator.x}\left( t \right) \\ \mathtt{in.y}\left( t \right) &= ifelse\left( \mathtt{in.start\_time} < t, \mathtt{in.offset} + \mathtt{in.amplitude} \sin\left( \mathtt{in.phase} + 6.2832 \mathtt{in.frequency} \left( - \mathtt{in.start\_time} + t \right) \right), \mathtt{in.offset} \right) \end{align} \]

Source

component LimiterTest
  limiter = Limiter(u_max=3, u_min=-3)
  integrator = Integrator()
  in = Sine(amplitude=4*pi, frequency=1)
relations
  connect(in.y, integrator.u)
  connect(integrator.y, limiter.u)
metadata {
  "JuliaSim": {
    "tests": {
      "case1": {
        "stop": 1,
        "expect": {"signals": ["limiter.y"], "final": {"limiter.y": 0.000086636022}}
      }
    }
  }
}
end
Flattened Source
component LimiterTest
  limiter = Limiter(u_max=3, u_min=-3)
  integrator = Integrator()
  in = Sine(amplitude=4*pi, frequency=1)
relations
  connect(in.y, integrator.u)
  connect(integrator.y, limiter.u)
metadata {
  "JuliaSim": {
    "tests": {
      "case1": {
        "stop": 1,
        "expect": {"signals": ["limiter.y"], "final": {"limiter.y": 0.000086636022}}
      }
    }
  }
}
end

Test Cases

Test Case case1

Signal `limiter.y` for test `case1` of `LimiterTest`

  • Examples
  • Experiments
  • Analyses