def METHOD_NAME(self, probe, slabs):
    # Uniform stepping
    z = np.arange(slabs.dz/2, self.thickness.value, slabs.dz)
    # Storage for the sub-totals
    n, k = len(z), slabs.nprobe
    rho_total = np.zeros((n, k))
    mu_total = np.zeros((n, k))
    volume_total = np.zeros_like(z)
    # Accumulate the parts
    for p in self.parts:
        f, rho, mu = p.f_sld(probe, z)
        rho_total += rho
        mu_total += mu
        volume_total += f
    # Remainder is solvent
    rho, mu = probe.sld(self.solvent)
    rho_total += rho*(1-volume_total)
    mu_total += mu*(1-volume_total)
    # Add to model
    w = slabs.dz * np.ones(z.shape)
    slabs.extend(w=w, rho=rho_total, mu=mu_total)