Use non-nullptr LayerRoughness to distinguish between real layer interfaces and automated slice interfaces
After SliceStack slicify()
only non-real interfaces have no roughness.
This is the new state of affairs.
Previously slices had no roughness in two cases:
- on artificial slicing due to particles + materials averaging + numSlices>1
- if the original "real" interface between user-defined layers had no roughness
And there was no way to distinguish these cases.
But the difference between them is important, because the "real" interfaces mediate in roughness propagation and may stop its replication and cross-correlation.
So now in Compute::roughMultiLayerContribution
we create a new stack of slices with rough top interfaces and then work only with it to compute auto- and cross-correlations.
Edited by Mikhail Svechnikov