이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

residue

부분 분수 전개(부분 분수 분해)

구문

[r,p,k] = residue(b,a)
[b,a] = residue(r,p,k)

설명

예제

[r,p,k] = residue(b,a)는 두 다항식의 비에서 부분 분수 전개의 나머지, 극점, 직접 항(Direct Term)을 구합니다. 여기서 전개는 다음과 같은 형식입니다.

b(s)a(s)=bmsm+bm1sm1++b1s+b0ansn+an1sn1++a1s+a0=rnspn+...+r2sp2+r1sp1+k(s).

residue에 대한 입력값은 다항식 b = [bm ... b1 b0]a = [an ... a1 a0]의 계수로 구성된 벡터입니다. 출력값은 나머지 r = [rn ... r2 r1], 극점 p = [pn ... p2 p1], 다항식k입니다. 교재에 나오는 대부분의 문제에서 k0 또는 상수입니다.

예제

[b,a] = residue(r,p,k)는 부분 분수 전개를 다시 두 다항식의 비로 변환하고 ba의 계수를 반환합니다.

예제

모두 축소

residue를 사용하여 다음 다항식 비 F(s)에서 부분 분수 전개를 구합니다.

b = [-4 8];
a = [1 6 8];
[r,p,k] = residue(b,a)
r = 2×1

   -12
     8

p = 2×1

    -4
    -2

k =

     []

이는 다음과 같은 부분 분수 전개를 나타냅니다.

residue를 사용하여 부분 분수 전개를 다시 다항식 계수로 변환합니다.

[b,a] = residue(r,p,k)
b = 1×2

    -4     8

a = 1×3

     1     6     8

이 결과는 원래 분수 F(s)를 나타냅니다.

분자와 분모의 차수와 같은 경우 출력값 k는 0이 아닐 수 있습니다.

복소수 근을 갖고 분자와 분모의 차수가 동일한 두 다항식의 비F(s)에서 부분 분수 전개를 구합니다. 여기서 F(s)는 다음과 같습니다.

b = [2 1 0 0];
a = [1 0 1 1];
[r,p,k] = residue(b,a)
r = 3×1 complex

   0.5354 + 1.0390i
   0.5354 - 1.0390i
  -0.0708 + 0.0000i

p = 3×1 complex

   0.3412 + 1.1615i
   0.3412 - 1.1615i
  -0.6823 + 0.0000i

k = 2

residue는 복소수 근, 극점, 상수 항(k)을 반환하여 다음과 같은 부분 분수 전개를 나타냅니다.

분자의 차수가 분모의 차수보다 큰 경우 출력값 ks에 관한 다항식의 계수를 나타내는 벡터입니다.

residue를 사용하여 F(s)에서 다음 부분 분수 전개를 수행합니다.

b = [2 0 0 1 0];
a = [1 0 1];
[r,p,k] = residue(b,a)
r = 2×1 complex

   0.5000 - 1.0000i
   0.5000 + 1.0000i

p = 2×1 complex

   0.0000 + 1.0000i
   0.0000 - 1.0000i

k = 1×3

     2     0    -2

k는 다항식 를 나타냅니다.

입력 인수

모두 축소

분자 다항식의 계수로, s의 내림차순으로 다항식의 계수를 표현한 숫자 벡터로 지정됩니다.

데이터형: single | double
복소수 지원 여부:

분모 다항식의 계수로, s의 내림차순으로 다항식의 계수를 표현한 숫자 벡터로 지정됩니다.

데이터형: single | double
복소수 지원 여부:

출력 인수

모두 축소

부분 분수 전개의 나머지로, 숫자로 구성된 열 벡터로 반환됩니다.

부분 분수 전개의 극점으로, 숫자로 구성된 열 벡터로 반환됩니다.

직접 항으로, s의 내림차순으로 다항식의 계수를 지정한 숫자로 구성된 행 벡터로 반환됩니다.

세부 정보

모두 축소

부분 분수 전개

차수가 각각 n과 m인 두 다항식 b와 a로 구성된 분수 F(s)가 있다고 가정하겠습니다.

F(s)=b(s)a(s)=bnsn++b2s2+b1s+b0amsm++a2s2+a1s+a0.

분수 F(s)는 단분수의 합으로 나타낼 수 있습니다.

b(s)a(s)=rmspm+rm1spm1++r0sp0+k(s)

이 합을 F의 부분 분수 전개라고 합니다. 값 rm,...,r1은 나머지, 값 pm,...,p1은 극점, k(s)는 s에 관한 다항식입니다. 교재에 나오는 대부분의 문제에서 k(s)는 0 또는 상수입니다.

극점 개수 n은 다음과 같습니다.

n = length(a)-1 = length(r) = length(p)

length(b) < length(a)인 경우 직접 항(Direct Term) 벡터는 비어 있습니다. 그렇지 않으면 다음과 같습니다.

length(k) = length(b)-length(a)+1

p(j) = ... = p(j+m-1)이 중복도 m의 극점인 경우 전개에

rjspj+rj+1(spj)2++rj+m1(spj)m.

형식의 항이 포함됩니다.

알고리즘

residue는 먼저 roots를 사용하여 극점을 얻습니다. 그런 다음, 분수가 진분수가 아니면 다항식의 장제법(Long Division)을 수행하는 deconv를 사용하여 직접 항 k를 구합니다. 마지막으로, residue는 개별 근을 제거한 상태에서 다항식의 값을 구하여 나머지를 결정합니다. 근이 반복되는 경우, resi2가 반복되는 근 위치에서 나머지를 계산합니다.

수치적으로, 다항식 비의 부분 분수 전개를 구하면 불량 조건 문제가 나타납니다. 분모 다항식 a(s)가 중근을 갖는 다항식에 가까운 경우, 데이터의 작은 변화(예: 반올림 오차)가 결과 극점 및 나머지에 가늠할 수 없는 큰 변화를 일으킬 수 있습니다. 상태공간 또는 영/극점 표현을 사용하여 문제를 구성하는 것이 좋습니다.

참고 문헌

[1] Oppenheim, A.V. and R.W. Schafer. Digital Signal Processing. Prentice-Hall, 1975, p. 56.

참고 항목

| |

R2006a 이전에 개발됨