i'm thinking the problem is resonance .. could be from the inputted motion or, if there is nothing in the motion and you go to a smaller time step than the input motion, the way OpenSees interpolates the data points (linearly betwwen 2 known points).
The problem occurs even if I input a rectangular pulse. The solution looks nice for dt = 0.05 but diverges for dt = 0.02 or lower (faster for lower values).
Plus, I have damping so the solution, even if there is resonance, wouldnt explode undefinitely.