def METHOD_NAME(self, x, u, dt: float):
    next_x = x['x'] + x['v']*dt
    drag_acc = self.parameters['lumped_param'] * x['v'] * x['v']
    next_v = x['v'] + (self.parameters['g'] - drag_acc*np.sign(x['v']))*dt
    return self.StateContainer(np.array([
            np.atleast_1d(next_x),
            np.atleast_1d(next_v)  # Acceleration of gravity
        ]))