# Computational Fluid Dynamics methods

I have read some articles about the finite difference method on a cartesian orthogonal grid. I understand how it works when Dirichlet boundary conditions are used, or when Neumann boundary conditions are used on a simple boundary (for example the rectangular boundary of the simulation). What I don't understand is how to use the Neumann boundary conditions in boundaries with arbitrary shape (in a 2-dimensional cartesian orthogonal grid). Suppose I want to simulate the potential flow about a cylinder (in 2D it becomes a circle): can I use the finite difference method on a circular boundary, where that circle has been drawn on the cartesian grid (so it is approximated by a set of little squares)?