Numerical simulation of two-dimensional flows over a circular cylinder using the immersed boundary method