1#ifndef WEIGHTEDLOWESS_COMPUTE_HPP
2#define WEIGHTEDLOWESS_COMPUTE_HPP
7#include "sanisizer/sanisizer.hpp"
46template<
typename Data_>
48 const std::size_t num_points,
53 Data_* robust_weights,
56 std::vector<Data_> rbuffer;
57 if (robust_weights == NULL) {
58 sanisizer::resize(rbuffer, num_points);
59 robust_weights = rbuffer.data();
61 internal::fit_trend(num_points, x, windows, y, fitted, robust_weights, opt);
79template<
typename Data_>
81 const std::size_t num_points,
85 Data_*
const robust_weights,
89 compute(num_points, x, win, y, fitted, robust_weights, opt);
98template<
typename Data_>
104 fitted(sanisizer::cast<I<decltype(
fitted.size())> >(n)),
133template<
typename Data_>
135 const std::size_t num_points,
136 const Data_*
const x,
137 const Data_*
const y,
Namespace for LOWESS functions.
Definition compute.hpp:18
PrecomputedWindows< Data_ > define_windows(const std::size_t num_points, const Data_ *const x, const Options< Data_ > &opt)
Definition window.hpp:267
void compute(const std::size_t num_points, const Data_ *const x, const PrecomputedWindows< Data_ > &windows, const Data_ *const y, Data_ *const fitted, Data_ *robust_weights, const Options< Data_ > &opt)
Definition compute.hpp:47
Options for compute().
Definition Options.hpp:17
Precomputed windows for LOWESS smoothing.
Definition window.hpp:234
Results of the LOWESS smoother.
Definition compute.hpp:99
std::vector< Data_ > fitted
Definition compute.hpp:111
Results(const std::size_t n)
Definition compute.hpp:103
std::vector< Data_ > robust_weights
Definition compute.hpp:116