From ad64650fda913cfd8e3e2f8fa1ad65c1791e0008 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Del=20Pino?= <stephane.delpino44@gmail.com> Date: Fri, 11 Jun 2021 11:29:32 +0200 Subject: [PATCH] Add access function to the ith element of the sequence --- src/analysis/SturmSequence.cpp | 2 +- src/analysis/SturmSequence.hpp | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/analysis/SturmSequence.cpp b/src/analysis/SturmSequence.cpp index bda7f5fa5..f4af48ce8 100644 --- a/src/analysis/SturmSequence.cpp +++ b/src/analysis/SturmSequence.cpp @@ -22,7 +22,7 @@ SturmSequence::SturmSequence(Polynomial1D&& p0) } size_t -SturmSequence::numberOfSignChanges(const double x) +SturmSequence::numberOfSignChanges(const double x) const { std::vector<double> values; values.reserve(m_sequence.size()); diff --git a/src/analysis/SturmSequence.hpp b/src/analysis/SturmSequence.hpp index 5445cb65f..e7377ffcf 100644 --- a/src/analysis/SturmSequence.hpp +++ b/src/analysis/SturmSequence.hpp @@ -11,6 +11,14 @@ class SturmSequence std::vector<Polynomial1D> m_sequence; public: + PUGS_INLINE + const Polynomial1D& + p(const size_t i) const + { + Assert(i < m_sequence.size()); + return m_sequence[i]; + } + PUGS_INLINE size_t size() const @@ -18,7 +26,7 @@ class SturmSequence return m_sequence.size(); } - size_t numberOfSignChanges(const double x); + size_t numberOfSignChanges(const double x) const; SturmSequence(const Polynomial1D& p0); SturmSequence(Polynomial1D&& p0); -- GitLab