29 #ifndef NEMOSYS_ORTHOPOLY3D_H_ 30 #define NEMOSYS_ORTHOPOLY3D_H_ 32 #include "nemosys_export.h" 61 Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor>;
64 void removeRow(Eigen::MatrixXd &matrix,
unsigned int rowToRemove);
69 const std::vector<unsigned int> &toRemove);
70 void removeRow(
const Eigen::MatrixXd &matrix,
72 const std::vector<unsigned int> &toRemove);
74 void removeColumn(Eigen::MatrixXd &matrix,
unsigned int colToRemove);
86 const Eigen::VectorXd &_sigma,
87 const std::vector<double> &_x,
88 const std::vector<double> &_y,
89 const std::vector<double> &_z);
92 orthoPoly3D(
int _order,
const std::vector<std::vector<double>> &coords);
106 Create(
int _order,
const std::vector<std::vector<double>> &coords);
107 static std::unique_ptr<orthoPoly3D>
108 CreateUnique(
int _order,
const std::vector<std::vector<double>> &coords);
117 void run1(
const Eigen::VectorXd &sigma);
120 void computeA(
const Eigen::VectorXd &sigma);
122 double operator()(
const std::vector<double> &coord);
123 double eval(
const std::vector<double> &coord);
140 std::unique_ptr<orthoPoly1D>
opx;
142 std::unique_ptr<orthoPoly1D>
opy;
144 std::unique_ptr<orthoPoly1D>
opz;
157 #endif // NEMOSYS_ORTHOPOLY3D_H_
std::unique_ptr< orthoPoly1D > opy
std::unique_ptr< orthoPoly1D > opx
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > MatrixXdRM
Eigen::VectorXd getCoeffs() const
std::vector< unsigned int > toRemove
void removeColumn(Eigen::MatrixXd &matrix, unsigned int colToRemove)
void removeRow(Eigen::MatrixXd &matrix, unsigned int rowToRemove)
std::unique_ptr< orthoPoly1D > opz