SquareTest
IconSquareTest
Usage
SquareTest()
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( \mathtt{signal.start\_time} < t, \mathtt{signal.offset} + \mathtt{signal.amplitude} \left( 1 + 4 \left\lfloor \mathtt{signal.frequency} \left( - \mathtt{signal.start\_time} + t \right)\right\rfloor - 2 \left\lfloor 2 \mathtt{signal.frequency} \left( - \mathtt{signal.start\_time} + t \right)\right\rfloor \right), \mathtt{signal.offset} \right) \end{align} \]
Source
component SquareTest
integrator = Integrator()
signal = Square(amplitude=1, frequency=2, start_time=0.5, offset=0.7)
relations
connect(signal.y, integrator.u)
metadata {
"JuliaSim": {
"tests": {
"case1": {
"stop": 5,
"atol": {"integrator.x": 0.001},
"expect": {
"initial": {"signal.y": 0.7},
"signals": ["signal.y", "integrator.x"],
"final": {"signal.y": 1.7, "integrator.x": 3.53706}
}
}
}
}
}
end
Flattened Source
component SquareTest integrator = Integrator() signal = Square(amplitude=1, frequency=2, start_time=0.5, offset=0.7) relations connect(signal.y, integrator.u) metadata { "JuliaSim": { "tests": { "case1": { "stop": 5, "atol": {"integrator.x": 0.001}, "expect": { "initial": {"signal.y": 0.7}, "signals": ["signal.y", "integrator.x"], "final": {"signal.y": 1.7, "integrator.x": 3.53706} } } } } } end