@ValidateLarchPlugin
def spline_eval(x, group, name='spl1', _larch=None):
    sgroup = getattr(group, "{:s}_details".format(name), None)
    if sgroup is None or not isgroup(sgroup):
        raise Warning("spline_eval: subgroup '{:s}' not found".format(name))

    knots = getattr(sgroup, 'knots')
    order = getattr(sgroup, 'order')
    coefs = getattr(sgroup, 'coefs')
    for i, val in enumerate(coefs[2:-2]):
        pname = "{:s}_c{:d}".format(name, i)
        cval = getattr(group, pname, None)
        if cval is None:
            raise Warning("spline_eval: param'{:s}' not found".format(pname))
        if isParameter(cval):
            cval = cval.value
        coefs[2+i] = cval
    setattr(sgroup, 'coefs', coefs)
    return splev(x, [knots, coefs, order])
evaluate spline at specified x values
dataset/ETHPy150Open xraypy/xraylarch/plugins/math/spline.py/spline_eval