TODO: Integrate content from reflectometry tutorial

The Define materials stance defines four materials in terms of their scattering length density (SLD). The arguments of the constructor-like global function MaterialBySLD are name, real_sld, imag_sld. Both real_sld and imag_sld are in units of inverse square angstroms.

SLD values for a wide variety of materials can be found on https://sld-calculator.appspot.com and https://www.ncnr.nist.gov/resources/activation. By convention, imag_sld is treated as negative, which corresponds to attenuation of the signal. In this example, all imaginary parts are zero.

The Define layers stance defines four types of layers. The arguments of the constructor Layer are material and thickness in nanometer. If no thickness is provided, then the layer is semi-infinite.

The Define sample stance constructs a sample by pilig up the above defined layers from top (vacuum) to bottom (substrate). Samples are always of type MultiLayer.