Whenever you find that the simulation results of a variable-step solver depend on the maximum step size, you should consider that you may have made a modeling mistake regarding the timing of discrete events.
In your model, the problem is your improper usage of the Transport Delay block to delay a discrete pulse train. Please have a look at the note in the online help for this block:
Note The Transport Delay should not be used to delay non-smooth signals such as rectangular or triangular signals because the solver is not guaranteed to make a simulation step at the precise instants required to accurately reproduce the discontinuities in the delayed signal.
- To generate phase-shifted rectangular or triangular signals, use the Pulse Generator or the Triangular Wave Generator and set the Phase delay parameter appropriately.
- To delay arbitrary signals that only change at discrete instants, use the Pulse Delay.
So, to fix your model,
- replace the Transport Delay blocks with Pulse Delay blocks,
- set the Max step size parameter of the variable-step solver to something large (e.g. "1"),
- (optional, to get smoother looking curves) set the Refine factor to e.g. "10".