$(instance)PulseTest Icon

PulseTest

Usage

PulseTest()

Behavior

\[ \begin{align} \mathtt{signal.y}\left( t \right) &= \mathtt{integrator.u}\left( t \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{signal.y}\left( t \right) &= ifelse\left( t > \mathtt{signal.start\_time}, ifelse\left( t \leq \mathtt{signal.start\_time} + \mathtt{signal.duty\_cycle} \mathtt{signal.period}, \mathtt{signal.amplitude}, \mathtt{signal.offset} \right), \mathtt{signal.offset} \right) \end{align} \]

Source

component PulseTest
  integrator = Integrator()
  signal = Pulse(amplitude=1.5, duty_cycle=0.5, offset=0.75, period=0.75, start_time=0.5)
relations
  connect(signal.y, integrator.u)
metadata {
  "JuliaSim": {
    "tests": {
      "case1": {
        "stop": 3,
        "expect": {
          "initial": {"signal.y": 0.75},
          "signals": ["signal.y", "integrator.x"],
          "final": {"signal.y": 0.75, "integrator.x": 2.24999999}
        }
      }
    }
  }
}
end
Flattened Source
component PulseTest
  integrator = Integrator()
  signal = Pulse(amplitude=1.5, duty_cycle=0.5, offset=0.75, period=0.75, start_time=0.5)
relations
  connect(signal.y, integrator.u)
metadata {
  "JuliaSim": {
    "tests": {
      "case1": {
        "stop": 3,
        "expect": {
          "initial": {"signal.y": 0.75},
          "signals": ["signal.y", "integrator.x"],
          "final": {"signal.y": 0.75, "integrator.x": 2.24999999}
        }
      }
    }
  }
}
end

Test Cases

Test Case case1

Signal `signal.y` for test `case1` of `PulseTest`

Signal `integrator.x` for test `case1` of `PulseTest`

  • Examples
  • Experiments
  • Analyses