preCICE v3.1.1
Loading...
Searching...
No Matches
Bspline.hpp
Go to the documentation of this file.
1#pragma once
2#include <Eigen/Core>
3
4namespace precice::math {
5
6class Bspline {
7
8public:
17 Bspline(Eigen::VectorXd ts, const Eigen::MatrixXd &xs, int splineDegree);
18
27 Eigen::VectorXd interpolateAt(double t) const;
28
29private:
30 Eigen::VectorXd _knots; // Cache to store previously computed knots
31 Eigen::MatrixXd _ctrls; // Cache to store previously computed control points
32 double _tsMin; // The minimal time of the bspline
33 double _tsMax; // The maximal time of the bspline
34 int _ndofs; // The degrees of freedom of the data
35};
36} // namespace precice::math
Eigen::Vector2d ts
Eigen::MatrixXd _ctrls
Definition Bspline.hpp:31
Eigen::VectorXd _knots
Definition Bspline.hpp:30
Eigen::VectorXd interpolateAt(double t) const
Samples the B-Spline interpolation.
Definition Bspline.cpp:58
Bspline(Eigen::VectorXd ts, const Eigen::MatrixXd &xs, int splineDegree)
Initialises the B-Spline interpolation with the given data (x0,t0), (x1,t1), ..., (xn,...
Definition Bspline.cpp:14
provides general mathematical constants and functions.
Definition barycenter.cpp:9