void operator()( Tag way, FitFunctionFactoryImplementation& repository, const fit_window::Plane& data, bool mle, Container& target ) { if (target.get() == nullptr && is_appropriate(way, data.window_width)) { std::vector<std::unique_ptr<nonlinfit::plane::Term<Tag>>> evaluators; for (auto& kernel : repository.kernels) { evaluators.push_back(create_evaluator(*kernel, way)); } if (repository.use_background) { evaluators.push_back(create_evaluator(*repository.background, way)); } target.reset(PlaneFunction<Tag>::create(std::move(evaluators), data, mle).release()); } }
HaWpBasisVector<N> evaluate_basis(CMatrix<D,N> const& grid) const { return create_evaluator(grid).all(); }