To compute the elastic moduli of the various microstructure models considered, we used a finite-element method that is specially designed to handle arbitrary voxel-based models (Garboczi & Day, 1995). A detailed description of the method, and the actual codes are available (Garboczi, 1998). In principle, the method provides an exact solution to the equations of elasticity for a body subjected to a macroscopic strain. The resultant average stress in the body is used to calculate the various elastic moduli. In practice, the accuracy of the results are limited by discretisation errors (how well a continuum model can be resolved) and statistical noise (the sample size is never 'infinite'). The number of voxels used depends on computer memory and speed. In this study a maximum of 128 x 128 x 128 voxels are used. The memory requirements are approximately 230 bytes per voxel. There was clearly a trade-off between small, well-resolved samples and large, poorly-resolved samples. For each of the models, we conducted a series of tests to find the best sample size. The sample size was approximately five times the pore size. The discretisation errors tended to be around a few percent, and 5-10 independent samples were used to reduce statistical errors to the same order.