**3. Method**

.

In the beginning, both the 50- and 1-layers were regarded as geometry models for crystal simulation and considered as 3D and 2D RVE models, as shown in Figure 2a. Note that stress/strain throughout this article means either stress or strain conditions. The results from the 2D RVE are compared with the surface of the corresponding 3D RVE to analyze the difference in stress/strain values. First, the stress/strain on the 2D layer result with respect to the difference in stress/strain between the 3D and 2D layer results is considered. Based on the least square method, the linear equation for this can be written as follows:

$$y\_{1i} = a\_1 x\_{1i} + b\_1, \quad i = 1, 2, 3 \dots \dots \dots 10,000 \tag{3}$$

$$a\_1 = \frac{\sum\_{i=1}^{10,000} \left( f\_{1i} - \overline{f\_1} \right) \left( f\_{\text{er0i}} - \overline{f\_{\text{er0}}} \right)}{\sum\_{i=1}^{10,000} \left( f\_{1i} - \overline{f\_1} \right)^2}, \ b\_1 = \overline{f\_{\text{er0}}} - a\_1 \overline{f\_1}, \ i = 1, 2, 3 \dots \dots \dots 10,000 \tag{4}$$

where i is the number of elements on the top surface, and there are 100 × 100 voxels on both 2D and 3D layers. Where *f*1i is stress/strain for 2D layer result; *f*1 is average stress/strain for 2D layer result; *f*50i is stress/strain for 3D layer result; *f*er0i is the difference in stress/strain between 3D and 2D layer results (*f*er0i = *f*50i − *f*1i), which indicates the difference of non-revised (original 2D) stress/strain; and *f*er0 is the average difference in stress/strain between 3D and 2D layer results.

Through this method, the corresponding *y*1i, *a*1, and *b*1 can be obtained. Hence, the first revised stress/strain (*f*r1i) and the different first revised stress/strain (*f*er1i) can be derived:

$$f\_{\rm r1i} = f\_{\rm 1i} + y\_{\rm 1i}, \; \mathbf{i} = \mathbf{1}, \mathbf{2}, \mathbf{3} \dots \dots \mathbf{10}, \mathbf{00} \mathbf{0} \tag{5}$$

$$f\_{\rm er1i} = f\_{50i} - f\_{\rm r1i} \ \mathrm{i} = 1,2,3 \ldots \ldots \ldots 10,000 \tag{6}$$

where *f*er1i can be calculated by the difference in stress/strain between the 3D layer and the first revised 2D layer result. However, if the error of the first revision is not convergent, the second iteration will be carried out.

Next, the difference in stress/strain between the 3D and 2D layer results is considered with respect to the different first revised stress/strain. Based on the least square method, the linear equation can be obtained as follows:

$$y\_{2\text{i}} = a\_2 x\_{2\text{i}} + b\_2, \text{ i } = 1, 2, 3 \dots \dots \dots 10,000 \tag{7}$$

$$a\_2 = \frac{\sum\_{i=1}^{10,000} \left( f\_{\text{er0i}} - \overline{f\_{\text{er0}}} \right) \left( f\_{\text{er1i}} - \overline{f\_{\text{er1}}} \right)}{\sum\_{i=1}^{10,000} \left( f\_{\text{er0i}} - \overline{f\_{\text{er0}}} \right)^2}, b\_2 = \overline{f\_{\text{er1}}} - a\_2 \overline{f\_{\text{er0}}}, \text{ i } = 1, 2, 3, \dots, \dots \text{ } 10,000 \qquad \text{(8)}$$

Through this method, the corresponding *y*2*i* and *x*2*i* can be obtained. Hence, the second revised stress/strain (*f*r2i) and the different second revised stress/strain (*f*er2i) can be derived:

$$f\_{\rm r2i} = f\_{\rm r1i} + y\_{\rm 2i}, \; \mathbf{i} = 1, 2, 3, \dots, \; 10,000 \tag{9}$$

$$f\_{\text{er2i}} = f\_{\text{50i}} - f\_{\text{r2i}} \text{ i } = 1, 2, 3 \dots \dots \dots 10,000 \tag{10}$$

*f*er2i can be calculated by the difference in stress/strain between the 3D layer and the second revised stress/strain. Finally, based on the least square method, a general linear equation can be obtained in the series form of m-iteration. The difference in the m-2 revised stress/strain (x-axis) is considered with respect to the different m-1 (y-axis) revised stress/strain. This equation can be written as follows:

$$y\_{\rm mi} = a\_{\rm m} x\_{\rm mi} + b\_{\rm m}, \; i = 1, 2, 3 \dots \dots \dots 10,000, \mathbf{m} = 2, 3, 4, \dots \tag{11}$$

$$a\_{\mathbf{m}} = \frac{\sum\_{i=1}^{10,00} (f\_{\text{er}(\mathbf{m}-2)i} - \overline{f\_{\text{er}(\mathbf{m}-2)}})(f\_{\text{er}(\mathbf{m}-1)} - \overline{f\_{\text{er}(\mathbf{m}-1)}})}{\sum\_{i=1}^{10,00} (f\_{\text{er}(\mathbf{m}-2)i} - \overline{f\_{\text{er}(\mathbf{m}-2)}})^2}, \ b\_{\mathbf{m}} = \overline{f\_{\text{er}(\mathbf{m}-1)}} - a\_{\mathbf{m}} \overline{f\_{\text{er}(\mathbf{m}-2)}} \tag{12}$$

Through this method, the corresponding *y*mi and *x*mi can be obtained. Hence, the m revised stress/strain (*f*rmi) and the different m revised stress/strain (*f*ermi) can be derived as:

$$f\_{\rm rmi} = f\_{\rm r(m-1)i} + y\_{\rm mi}, \; i = 1, 2, 3 \dots \dots \dots 10,000, \; m = 2, 3, 4, \dots \tag{13}$$

$$f\_{\rm erri} = f\_{\rm 50i} - f\_{\rm rmi}, \; \mathbf{i} = 1, 2, 3 \dots \dots \; 10,000, \; \mathbf{m} = 2, 3, 4, \dots \tag{14}$$

*f*ermi can be calculated by the difference in stress/strain between the 3D layer and the m revised stress/strain.
