diff options
author | Andreas Heinisch <andreas.heinisch@yahoo.de> | 2021-05-12 10:33:14 +0200 |
---|---|---|
committer | Andreas Heinisch <andreas.heinisch@yahoo.de> | 2021-06-26 10:38:12 +0200 |
commit | e6442b39836f9856aa7b87d1a840158f0cb7d9c4 (patch) | |
tree | d82c74375e458c4a36ffc811b0c01549be5fa4b2 | |
parent | 79bd4eb98535197d3177f262bce94d35badab4f4 (diff) |
tdf#110993 - Corrected spline calculation
The algorithm in Numerical Recipies in C, 2nd edition in Section 3.3,
page 166 states a division rather than a multiplication.
Change-Id: I2530c506bc48726539e3de99016892e50d6bb87e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115465
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
-rw-r--r-- | chart2/source/view/charttypes/Splines.cxx | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/chart2/source/view/charttypes/Splines.cxx b/chart2/source/view/charttypes/Splines.cxx index 774d5fc1d7ac..338179b2827c 100644 --- a/chart2/source/view/charttypes/Splines.cxx +++ b/chart2/source/view/charttypes/Splines.cxx @@ -198,7 +198,7 @@ void lcl_SplineCalculation::Calculate() ( m_fYpN - ( m_aPoints[ n ].second - m_aPoints[ n - 1 ].second ) / xDiff ); } - m_aSecDerivY[ n ] = ( un - qn * u[ n - 1 ] ) * ( qn * m_aSecDerivY[ n - 1 ] + 1.0 ); + m_aSecDerivY[ n ] = ( un - qn * u[ n - 1 ] ) / ( qn * m_aSecDerivY[ n - 1 ] + 1.0 ); // note: the algorithm in [1] iterates from n-1 to 0, but as size_type // may be (usually is) an unsigned type, we can not write k >= 0, as this |