Vectorized simulate function