summaryrefslogtreecommitdiff
path: root/src/Tangential_complex/include/gudhi/Tangential_complex.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Tangential_complex/include/gudhi/Tangential_complex.h')
-rw-r--r--src/Tangential_complex/include/gudhi/Tangential_complex.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/Tangential_complex/include/gudhi/Tangential_complex.h b/src/Tangential_complex/include/gudhi/Tangential_complex.h
index e748d3b7..90c164e2 100644
--- a/src/Tangential_complex/include/gudhi/Tangential_complex.h
+++ b/src/Tangential_complex/include/gudhi/Tangential_complex.h
@@ -1303,7 +1303,9 @@ class Tangential_complex {
, bool normalize_basis = true
, Orthogonal_space_basis *p_orth_space_basis = NULL
) {
- unsigned int num_pts_for_pca = static_cast<unsigned int> (std::pow(GUDHI_TC_BASE_VALUE_FOR_PCA, m_intrinsic_dim));
+// unsigned int num_pts_for_pca = static_cast<unsigned int> (std::pow(GUDHI_TC_BASE_VALUE_FOR_PCA, m_intrinsic_dim));
+ unsigned int num_pts_for_pca = (std::min)(static_cast<unsigned int> (std::pow(GUDHI_TC_BASE_VALUE_FOR_PCA, m_intrinsic_dim)),
+ static_cast<unsigned int> (m_points.size()));
// Kernel functors
typename K::Construct_vector_d constr_vec =
@@ -1392,7 +1394,9 @@ class Tangential_complex {
// on it. Note that most points are duplicated.
Tangent_space_basis compute_tangent_space(const Simplex &s, bool normalize_basis = true) {
- unsigned int num_pts_for_pca = static_cast<unsigned int> (std::pow(GUDHI_TC_BASE_VALUE_FOR_PCA, m_intrinsic_dim));
+// unsigned int num_pts_for_pca = static_cast<unsigned int> (std::pow(GUDHI_TC_BASE_VALUE_FOR_PCA, m_intrinsic_dim));
+ unsigned int num_pts_for_pca = (std::min)(static_cast<unsigned int> (std::pow(GUDHI_TC_BASE_VALUE_FOR_PCA, m_intrinsic_dim)),
+ static_cast<unsigned int> (m_points.size()));
// Kernel functors
typename K::Construct_vector_d constr_vec =