def step(self, y, u, t, h):
		"""
		This is called by solve, but can be called by the user who wants to
		run through an integration with a control force.

		y - state at t
		u - control inputs at t
		t - time
		h - step size
		"""
		k1 = h * self.func(t, y, u)
		k2 = h * self.func(t + .5*h, y + .5*h*k1, u)
		k3 = h * self.func(t + .5*h, y + .5*h*k2, u)
		k4 = h * self.func(t + h, y + h*k3, u)
		return y + (k1 + 2*k2 + 2*k3 + k4) / 6.0