A dedicated simulator, Poisson_CCD, has been constructed which models astronomical CCDs by solving Poisson's equation numerically and simulating charge transport within the CCD. The potentials and free carrier densities within the CCD are self-consistently solved for, giving realistic results for the charge distribution within the CCD storage wells. The simulator has been used to model the CCDs that are being used to construct the LSST digital camera. The simulator output has been validated by comparing its predictions with several different types of CCD measurements, including astrometric shifts, brighter-fatter induced pixel-pixel covariances, saturation effects, and diffusion spreading. The code is open source and freely available.