|
IFEM
90A354
|
Spline interpolation/projection schemes. More...
Functions | |
| void | interpolate (const std::vector< double > ¶ms, const std::vector< double > &points, const std::vector< double > &tangent_points, const Go::BsplineBasis &basis, std::vector< double > &coefs) |
| Global spline interpolation method. More... | |
| void | quasiinterpolate (const std::vector< double > ¶ms, const std::vector< double > &points, const std::vector< double > &tangent_points, const Go::BsplineBasis &basis, int index, std::vector< double > &coefs) |
| Local spline approximation method (Quasi-Interpolation). More... | |
| void | leastsquare_approximation (const std::vector< double > ¶ms, const std::vector< double > ¶msweights, const std::vector< double > &points, const std::vector< double > &tangent_points, const Go::BsplineBasis &basis, std::vector< double > &coefs) |
| Global spline approximation method (Least-Square Fit). More... | |
Spline interpolation/projection schemes.
| void SplineInterpolator::interpolate | ( | const std::vector< double > & | params, |
| const std::vector< double > & | points, | ||
| const std::vector< double > & | tangent_points, | ||
| const Go::BsplineBasis & | basis, | ||
| std::vector< double > & | coefs | ||
| ) |
Global spline interpolation method.
| [in] | params | Parameters for the data points. Its size is equal to the total number of data points. |
| [in] | points | The data points. Its size is equal to the total number of data points multiplied with the spatial dimension. (NB: The algorithm deduces the spatial dimension to use by dividing the size of points with the size of params). |
| [in] | tangent_points | Tangents associated with those data points that are referred to in params. Its size is equal to the total number of datapoints that has tangents, multiplied by the dimension of the space. |
| [in] | basis | The basis of the B-spline |
| [out] | coefs | Control point values of the generated spline curve. (Its basis can be obtained by calling the basis() method). |
References DenseMatrix::solve().
| void SplineInterpolator::leastsquare_approximation | ( | const std::vector< double > & | params, |
| const std::vector< double > & | paramsweights, | ||
| const std::vector< double > & | points, | ||
| const std::vector< double > & | tangent_points, | ||
| const Go::BsplineBasis & | basis, | ||
| std::vector< double > & | coefs | ||
| ) |
Global spline approximation method (Least-Square Fit).
| [in] | params | Parameters for the data points |
| [in] | paramsweights | Parameter Gauss weights |
| [in] | points | Data points evaluated at the Gauss points |
| [in] | tangent_points | Tangents associated with those data points that are referred to in params |
| [in] | basis | The basis of the B-spline |
| [out] | coefs | Control point values of the generated spline curve |
References DenseMatrix::getMat(), and DenseMatrix::solve().
Referenced by ASMs2D::projectSolutionLeastSquare(), and ASMs3D::projectSolutionLeastSquare().
| void SplineInterpolator::quasiinterpolate | ( | const std::vector< double > & | params, |
| const std::vector< double > & | points, | ||
| const std::vector< double > & | tangent_points, | ||
| const Go::BsplineBasis & | basis, | ||
| int | index, | ||
| std::vector< double > & | coefs | ||
| ) |
Local spline approximation method (Quasi-Interpolation).
| [in] | params | Parameters for the data points. Its size is equal to the local number of data points. |
| [in] | points | The local data points |
| [in] | tangent_points | Tangents associated with those data points that are referred to in params |
| [in] | index | Index of control point to extract in the sliding window |
| [in] | basis | The basis of the B-spline |
| [out] | coefs | Local control point values of the generated spline curve |
References DenseMatrix::solve().