Skip to content

Commit 796cd68

Browse files
author
Onur R. Bingol
committed
Fix errors in compute_knot_vector
1 parent 6f378b4 commit 796cd68

File tree

1 file changed

+6
-12
lines changed

1 file changed

+6
-12
lines changed

geomdl/fitting.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -235,22 +235,16 @@ def compute_knot_vector(degree, num_points, params):
235235
:return: knot vector
236236
:rtype: list
237237
"""
238-
# Number of start and end knots
239-
m_ends = degree + 1
240-
# Number of middle knots
241-
m_compute = len(num_points) - degree - 1
242-
243238
# Start knot vector
244-
kv = [0.0 for _ in range(m_ends)]
239+
kv = [0.0 for _ in range(degree + 1)]
245240

246-
# Use averaging method (Eqn 9.8) to compute middle knots in the knot vector
247-
if m_compute > 0:
248-
for i in range(m_compute):
249-
temp_kv = (1.0 / degree) * sum([params[j] for j in range(i + 1, i + degree + 1)])
250-
kv.append(temp_kv)
241+
# Use averaging method (Eqn 9.8) to compute internal knots in the knot vector
242+
for i in range(num_points - degree - 1):
243+
temp_kv = (1.0 / degree) * sum([params[j] for j in range(i + 1, i + degree + 1)])
244+
kv.append(temp_kv)
251245

252246
# End knot vector
253-
kv += [1.0 for _ in range(m_ends)]
247+
kv += [1.0 for _ in range(degree + 1)]
254248

255249
return kv
256250

0 commit comments

Comments
 (0)