A GPU-based 2D shallow water quality model