JitterTime
JitterTime is a spin-off from the Matlab toolbox Jitterbug (Lincoln and Cervin, 2002) and can be used for calculating the performance of a controller under non-ideal timing conditions. Examples of such conditions include delay and jitter due to CPU and network scheduling, lost samples or lost controls due to packet loss or execution overruns, and aperiodic behavior due to clock drift, asynchronous nodes, and random sampling. Both Jitterbug and JitterTime evaluate a quadratic cost function for a mixed continuous-time/discrete-time linear system driven by white noise. The main difference is the timing model. In Jitterbug, the timing of the discrete systems are governed by random delays with specified probability density functions. This allows the total system to be treated as a jump-linear system, and covariance can be calculated by solving a set of linear equations. In JitterTime, however, the timing is arbitrary and completely driven by the user. This allows for more complex timing scenarios to be analyzed, including scheduling algorithms with long-term timing dependencies and asynchronous execution in distributed control systems.