summaryrefslogtreecommitdiff
path: root/src/Coxeter_triangulation/include/gudhi/Functions/Function_moment_curve_in_Rd.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Coxeter_triangulation/include/gudhi/Functions/Function_moment_curve_in_Rd.h')
-rw-r--r--src/Coxeter_triangulation/include/gudhi/Functions/Function_moment_curve_in_Rd.h96
1 files changed, 45 insertions, 51 deletions
diff --git a/src/Coxeter_triangulation/include/gudhi/Functions/Function_moment_curve_in_Rd.h b/src/Coxeter_triangulation/include/gudhi/Functions/Function_moment_curve_in_Rd.h
index d44cdf70..11b379f3 100644
--- a/src/Coxeter_triangulation/include/gudhi/Functions/Function_moment_curve_in_Rd.h
+++ b/src/Coxeter_triangulation/include/gudhi/Functions/Function_moment_curve_in_Rd.h
@@ -25,57 +25,51 @@ namespace coxeter_triangulation {
* in the d-dimensional Euclidean space.
*/
struct Function_moment_curve_in_Rd {
-public:
- /** \brief Value of the function at a specified point.
- * @param[in] p The input point. The dimension needs to coincide with the ambient dimension.
- */
- Eigen::VectorXd operator()(const Eigen::VectorXd& p) const {
- Eigen::VectorXd result(k_);
- for (std::size_t i = 1; i < d_; ++i) result(i - 1) = p(i) - p(0) * p(i - 1);
- return result;
- }
-
- /** \brief Returns the domain (ambient) dimension.. */
- std::size_t amb_d() const { return d_; };
-
- /** \brief Returns the codomain dimension. */
- std::size_t cod_d() const { return k_; };
-
- /** \brief Returns a point on the moment curve. */
- Eigen::VectorXd seed() const {
- Eigen::VectorXd result = Eigen::VectorXd::Zero(d_);
- return result;
- }
-
- /** @brief Returns the radius of the moment curve. */
- double get_radius() const{
- return r_;
- }
-
- /**
- * \brief Constructor of the function that defines an implicit moment curve
- * in the d-dimensional Euclidean space.
- *
- * @param[in] r Numerical parameter.
- * @param[in] d The ambient dimension.
- */
- Function_moment_curve_in_Rd(double r, std::size_t d) : k_(d - 1), d_(d), r_(r) {}
-
- /**
- * \brief Constructor of the function that defines an implicit moment curve
- * in the d-dimensional Euclidean space.
- *
- * @param[in] r Numerical parameter.
- * @param[in] d The ambient dimension.
- * @param[in] offset The offset of the moment curve.
- */
- Function_moment_curve_in_Rd(double r, std::size_t d, Eigen::VectorXd& offset)
- : k_(d - 1), d_(d), r_(r), off_(offset) {}
-
-private:
- std::size_t k_, d_;
- double r_;
- Eigen::VectorXd off_;
+ /** \brief Value of the function at a specified point.
+ * @param[in] p The input point. The dimension needs to coincide with the ambient dimension.
+ */
+ Eigen::VectorXd operator()(const Eigen::VectorXd& p) const {
+ Eigen::VectorXd result(k_);
+ for (std::size_t i = 1; i < d_; ++i) result(i - 1) = p(i) - p(0) * p(i - 1);
+ return result;
+ }
+
+ /** \brief Returns the domain (ambient) dimension.. */
+ std::size_t amb_d() const { return d_; };
+
+ /** \brief Returns the codomain dimension. */
+ std::size_t cod_d() const { return k_; };
+
+ /** \brief Returns a point on the moment curve. */
+ Eigen::VectorXd seed() const {
+ Eigen::VectorXd result = Eigen::VectorXd::Zero(d_);
+ return result;
+ }
+
+ /**
+ * \brief Constructor of the function that defines an implicit moment curve
+ * in the d-dimensional Euclidean space.
+ *
+ * @param[in] r Numerical parameter.
+ * @param[in] d The ambient dimension.
+ */
+ Function_moment_curve_in_Rd(double r, std::size_t d) : m_(1), k_(d - 1), d_(d), r_(r) {}
+
+ /**
+ * \brief Constructor of the function that defines an implicit moment curve
+ * in the d-dimensional Euclidean space.
+ *
+ * @param[in] r Numerical parameter.
+ * @param[in] d The ambient dimension.
+ * @param[in] offset The offset of the moment curve.
+ */
+ Function_moment_curve_in_Rd(double r, std::size_t d, Eigen::VectorXd& offset)
+ : m_(1), k_(d - 1), d_(d), r_(r), off_(offset) {}
+
+ private:
+ std::size_t m_, k_, d_;
+ double r_;
+ Eigen::VectorXd off_;
};
} // namespace coxeter_triangulation