/** * @param spreadFunction The spread function, not null * @param name The name of the curve * @param curves The curves, not null, contains more than one curve */ public SpreadDoublesCurve( final CurveSpreadFunction spreadFunction, final String name, final DoublesCurve... curves) { super(name); ArgumentChecker.notNull(curves, "curves"); ArgumentChecker.isTrue(curves.length > 1, "curves"); ArgumentChecker.notNull(spreadFunction, "spread operator"); _curves = curves; _spreadFunction = spreadFunction; _f = spreadFunction.evaluate(curves); }