Skip to main content
. 2019 Dec 13;19(24):5523. doi: 10.3390/s19245523
Algorithm 2 Sampling Node Selection
Input:N, M, Ti(i=1,,N), Di(i=1,,N), t0, L, T, K, {k1,,kNk}(k=1,,K), ri(i=1,,N), w1, w2
Output:s1,,sM
  1. /* Calculating time dimension curvaturec¯i */

  2. for eachi{1,,N}do

  3. s(t)=CubicSpline(Ti,Di) (t[t0(L1)T,t0T])

  4. for eachl{L2,,2}do

  5. Ml=s(t0lT)

  6. ci(t0lT)=|Ml|/(1+(s(t0lT))2)3/2

  7. end for

  8. c¯i=(l=2L2ci(t0lT))/(L3)

  9. end for

  10. /* CalculatingspatialdimensioncurvaturekG(pi) */

  11. for eachk{1,,K}do

  12. for eachi{k1,,kNk}do

  13. /* Estimating the normal vectorvmin */

  14. N˜i={pi1,,pim,pi}={pj|pipj<ri}

  15. p¯i=(pi1++pim)/m

  16. C=(pi1p¯i)2++(pimp¯i)2

  17. vmin=MinEigenvector(C)

  18. /* Determining the set of neighborsNi */

  19. P(pi)=Project(N˜i,pi)

  20. Ti=Delaunay(P(pi))

  21. Ni={pj|pj is the neighbor of pi in Ti}

  22. /* Calculating Gaussian curvature */

  23. Ti=TriGrid(pi,Ni)

  24. θ=SumAngle(Ti)

  25. Amixed=AreaMixed(pi)

  26. kG(pi)=(2πθ)/Amixed

  27. end for

  28. end for

  29. for eachi{1,,N}do

  30. kCi=w1c¯i+w2kG(pi)

  31. end for

  32. {s1,,sM}=SelectMax(kC1,,kCN,M)

  33. returns1,,sM