import numpy  # This is the numpy library, which is used for numerical operations
from refl1d.names import Material, Experiment, NeutronProbe, FitProblem, silicon, air

# Alternatively, you can import them all, using:
from refl1d.names import *
# but this is not recommended for anything but simple scripts,
# and may cause linting issues in your IDE.

nickel = Material("Ni")

sample = silicon(0, 5) | nickel(100, 5) | air

T = numpy.linspace(0, 5, 100)

probe = NeutronProbe(T=T, dT=0.01, L=4.75, dL=0.0475)

M = Experiment(probe=probe, sample=sample)

M.simulate_data(5)

problem = FitProblem(M)
