Building structures¶
Guide to assembling stratified stacks in refloxide: homogeneous slabs, mixed materials, callable depth laws, named functional forms, phase transitions, diffusion profiles, and multi-layer stacking.
This section replaces the former single-page “Built-in slabs” guide.
Figure builders live in
docs/guides/builtin_slabs/build_figures.py.
Regenerate figures:
Depth panels: left = sharp, right = erf-broadened interfacial roughness
(display convention; kernel Nevot–Croce is unchanged). Reflectivity panels use
refloxide.tmm.uniaxial_reflectivity at 284.4 eV over
\(q \in [0.008,\,0.275]\,\mathrm{\AA}^{-1}\) (near the full accessible window at
this energy).
Shared preamble used on every child page:
from refloxide.model import MaterialSLD, FreeUniTensor, Mix, ReflectModel
from refloxide.profiles import (
Diffusion,
SecondOrderTransition,
DepthProfile,
Spline,
Polynomial,
CallableField,
CallableDepthProfile,
)
vac = MaterialSLD("", 0, name="vacuum")(0, 0)
si = MaterialSLD("Si", 2.33, name="si")(0, 3.0)
mat = FreeUniTensor(energies=[284.4], name="film")
mat_a = FreeUniTensor(energies=[284.4], name="a")
mat_b = FreeUniTensor(energies=[284.4], name="b")
mat_c = FreeUniTensor(energies=[284.4], name="c")
Contents¶
| Page | What it covers |
|---|---|
| Homogeneous slabs | Free vs material tensors; uni (4) vs bi (6) diagonals |
| Mixed slabs | Binary MixRule comparison and linear \(N=1,2,3\) mixes |
| Functional forms | Named/callable fields on \(\phi\), orientation, or free \(\delta\)/\(\beta\) |
| Splines | Knotted \(\phi(z)\) and free-optical Splines |
| Polynomials | Polynomial \(\phi(z)\) and free \(\delta_o\)/\(\delta_e\) |
| Callable profiles | User callables on any channel or full tensors |
| Phase transitions | SecondOrderTransition on \(\gamma\), \(\phi\), \(\langle\cos^2\gamma\rangle\) |
| Diffusion | Couple vs exponential diffusion kinds |
| Stacking examples | Multi-layer stacks, incl. free-optical Poly/Spline/\(\cos\) stack |