Main Content

aptknt

허용되는 매듭 시퀀스

구문

knots = aptknt(tau,k)
[knots,k] = aptknt(tau,k)

설명

knots = aptknt(tau,k) tauk개 이상의 요소를 갖고, 감소하지 않으며, 모든 i에 대해 tau(i)<tau(i+k-1)을 충족하는 경우 데이터 지점 tau에서 위수가 k인 스플라인 보간에 적합한 매듭 시퀀스를 반환합니다. 이 경우 위수가 k이고 매듭 시퀀스 knots를 가지면서 해당 지점에서 주어진 값과 일치하는 스플라인은 정확히 1개 존재합니다. 그 이유는 반환된 시퀀스 knots가 다음과 같은 Schoenberg-Whitney 조건을 충족하기 때문입니다.

knots(i) < tau(i) < knots(i+k),        i=1:length(tau)

여기서 등식은 양 끝 매듭에서만 성립하며, 각각은 정확한 중복도 k를 갖습니다.

tau의 요소가 k개 미만인 경우 k는 값 length(tau)로 축소됩니다. tau가 감소하거나 tau(i)가 임의의 i에 대해 tau(i+k-1)과 같을 경우 오류가 발생합니다.

[knots,k] = aptknt(tau,k) 는 사용된 실제 k도 반환합니다(이는 입력값 klength(tau) 중에서 작은 값과 동일합니다).

예제

tau가 균일한 간격을 갖고(예: 임의의 n>=4에 대해 linspace(a,b,n)) ytau와 동일한 크기의 시퀀스인 경우 sp = spapi(aptknt(tau,4),tau,y)는 not-a-knot 끝점 조건을 갖는 3차 스플라인 보간을 제공합니다. 이는 spline(tau,y)로 생성되는 3차 스플라인과 동일하나, ppform이 아닌 B-form 형식입니다.

주의

tau가 매우 비균일한 경우 지점 tau에서 데이터에 대한 보간을 위해 결과 매듭 시퀀스를 사용하면 만족스럽지 않은 결과가 나올 수 있습니다.

알고리즘

aveknt(tau,k)로 제공되는, 시퀀스 tau(k-1)점 평균 sum(tau(i+1:i+k-1))/(k-1)ktau(1)ktau(end)에 의해 확장됩니다. 즉, 이 명령은 tau의 요소가 k개 이상이고 k 가 1보다 큰 경우 augknt([tau(1),aveknt(tau,k),tau(end)],k)와 동일한 결과를 제공합니다.

참고 항목

| | |