수색…


통사론

  1. zy = interp1 (x, y);
  2. zy = interp1 (x, y, 'method');
  3. zy = interp1 (x, y, 'method', 'extrapolation');
  4. zy = interp1 (x, y, zx);
  5. zy = interp1 (x, y, zx, 'method');
  6. zy = interp1 (x, y, zx, 'method', 'extrapolation');

종별 보간 2 차원

데이터를 초기화합니다.

[X,Y] = meshgrid(1:2:10);
Z = X.*cos(Y) - Y.*sin(X);

표면은 다음과 같습니다. interp2-data

이제 보간 할 점을 설정합니다.

[Vx,Vy] = meshgrid(1:0.25:10); 

가장 가까운 보간법을 수행 할 수 있습니다.

Vz = interp2(X,Y,Z,Vx,Vy,'nearest');

interp2- 가장 가까운

선형 보간,

Vz = interp2(X,Y,Z,Vx,Vy,'linear');

interp2-linear

3 차 보간법

Vz = interp2(X,Y,Z,Vx,Vy,'cubic');

또는 스플라인 보간 :

Vz = interp2(X,Y,Z,Vx,Vy,'spline');

interp2- 스플라인

종별 보간법 1 차원

다음 데이터를 사용합니다.

x = 1:5:50;
y = randi([-10 10],1,10);

interp1-data

여기에서 xy 는 데이터 요소의 좌표이고 z 는 정보가 필요한 점입니다.

z = 0:0.25:50;

z의 y 값을 찾는 한 가지 방법은 조각 별 선형 보간법입니다.

z_y = interp1(x,y,z,'linear');

interp1-linear

이로써 두 인접 점 사이의 선을 계산하고 점이 선의 요소가된다고 가정하여 z_y 를 얻 z_y .

interp1 은 가장 가까운 보간법과 같은 다른 옵션도 제공합니다.

z_y = interp1(x,y,z, 'nearest');

인터 나라 1 부근

다음 보간,

z_y = interp1(x,y,z, 'next');

interp1-next

이전 보간,

z_y = interp1(x,y,z, 'previous');

interp1 이전

모양 유지 입체 보간법,

z_y = interp1(x,y,z, 'pchip');

interp1-p 칩

3 차 회선, z_y = interp1 (x, y, z, 'v5 큐빅');

interp1-v5cubic

스플라인 보간

z_y = interp1(x,y,z, 'spline');

interp1- 스플라인

이로써 근단, 다음 및 이전 보간법이 조각 별 상수 보간입니다.

다항식 보간법

보간 할 데이터를 초기화합니다.

x = 0:0.5:10;
y = sin(x/2);

이것은 [0,10] 간격의 데이터에 대한 기본 함수가 사인 곡선임을 의미합니다. 이제 근사화 다항식의 계수가 계산됩니다.

p1 = polyfit(x,y,1);
p2 = polyfit(x,y,2);
p3 = polyfit(x,y,3);
p5 = polyfit(x,y,5);
p10 = polyfit(x,y,10);

여기서 x 는 x 값이고 y 는 데이터 포인트의 y 값이고 세 번째 숫자는 다항식의 차수 / 차수입니다. 이제 보간 함수를 계산할 그리드를 설정합니다.

zx = 0:0.1:10;

y 값을 계산합니다.

zy1 = polyval(p1,zx);
zy2 = polyval(p2,zx);
zy3 = polyval(p3,zx);
zy5 = polyval(p5,zx);
zy10 = polyval(p10,zx);

다항식의 차수가 증가하면 샘플의 근사 오차가 작아지는 것을 알 수 있습니다.

폴리 -1-3

이 예에서 직선의 근사가 큰 오차를 갖는 반면, 차수 3 다항식은이 intervall에서 sinus 함수를 비교적 근사 적으로 근사합니다.

폴리 5 + 10

차수 5 및 차수 10 다항식의 보간법은 근사 오차가 거의 없습니다.

그러나 샘플의 성능을 고려하지 않으면 너무 많은 주문이 지나친 경향이있어 샘플에서 나빠질 수 있습니다. 우리가 설정 한

zx = -10:0.1:40;
p10 = polyfit(X,Y,10);
p20 = polyfit(X,Y,20);

zy10 = polyval(p10,zx);
zy20 = polyval(p20,zx);

줄거리를 살펴보면 샘플 성능이 떨어지는 것은 주문 1에 가장 적합하다는 것을 알 수 있습니다

outOfSample1-3

학위가 높아짐에 따라 계속 악화되고 있습니다.

여기에 이미지 설명을 입력하십시오.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow