The method I found, which seems to be the most commonly used for simulating surfaces, involves constructing a slab and doing a structural optimization by freezing a few of its lowermost layers.
What confuses me is, how thick should such layers be? Also how many layers should be frozen?