*3.1. DVC*

The DVC technique is used to quantify the internal displacements and strain field throughout a sample volume. This technique focuses on movement and re-distribution of microstructural features of the sample volume in response to compaction via e.g., uniaxial stress. A complete description of the DVC technique can be found in [20–22].

The DVC technique requires volume images of a sample in reference (unloaded) and deformed (loaded) states. These volume images are then divided into sub-volumes that are independently correlated, and mapped into global deformation and strain fields. The DVC analysis was carried out using the software LaVision Davis (LaVision Inc., Ypsilanti, MI, USA) 8.4, where a multi-grid differential correlation approach was used, with final sub-volume size of 32 × 32 × 32 voxels and 75% overlap.

#### *3.2. Porosity, Density and SSA*

The reconstructed 3D images were first filtered by a median filter to remove noise in the images. After filtering, the volume data was segmented using a threshold obtained with the Otsu method [23]. The filtering and thresholding algorithms segmen<sup>t</sup> the grayscale images to binary images containing the voxels composed of either ice or air. Furthermore, these binary images were then used to determine density, SSA and porosity distribution of the snow volume. The Otsu segmentation method was previously shown to be subject to systematic bias in the estimation of density and SSA [15].

Porosity can be defined as the ratio between the volume of the pore space (Ve) to the total volume of the sample (Vt). In order to determine the volume of pore space, first volume of ice crystals (Vi) is determined based on the segmented grayscale images [24,25]. Subtraction of Vi dataset from Vt dataset then gives the required Ve dataset and calculation of porosity is in the form

$$
\varphi = \frac{\mathbf{V\_c}}{\mathbf{V\_t}} \ast 100 = \frac{\mathbf{V\_t} - \mathbf{V\_i}}{\mathbf{V\_t}} \ast 100 \text{ [in } \%\text{]}.\tag{1}
$$

**Figure 3.** Concepts of porosity calculation: (**a**) in this study, H (height of bed) is 4.23 mm at an unloaded state while h (section height) and d (section distance) are 0.47 mm; (**b**) an example of loaded state; (**c**) an example of unloaded state. Note that area with lines in Figure 3b,c represents the moving punch and the gap between the moving punch and sample holder is 0.05 mm.

Porosity distribution of the investigated volume was calculated for the whole volume and for discretized sections of the volume. In this study, the number of discretized sections varies with the applied load, see Figure 3a. For example, snow volume at unloaded state was divided into 9 sections. In addition, section height and distance were maintained constant during the discretization at all load states. Equation (2) was then used to calculate porosity within each of these sections and for the whole volume.

The density of the snow sample is calculated from the volume of the ice crystals (Vi) and the total volume of the snow sample (Vt) [13,26]. It is given in the form:

$$
\varphi\_{\text{SINW}} = \frac{V\_{\text{i}}}{V\_{\text{t}}} \ast \varphi\_{\text{ice}} \text{ [in kg\,\text{m}^{-3}]} \,, \tag{2}
$$

where ρice = 917 kg m–3.

Specific surface area (SSA) is calculated from the volume fraction of ice crystals (Vi) and area of ice crystals (Ai). It is given in the form:

$$\text{SSA} = \frac{\text{A}\_{\text{i}}}{\text{V}\_{\text{i}}} \text{ [in mm}^{-1}\text{]}.\tag{3}$$

The calculated SSA, density and porosity values from the micro-CT data at four loading states are presented in Section 4.3.
