File Exchange

image thumbnail

Sylvester Matrix

version 1.1 (2.17 KB) by

SYLVESTER - Sylvester matrix of two polynomials (v3.0, june 2013)

2 Downloads

Updated

View License

S = SYLVESTER(P,Q) returns the Sylvester matrix S that is associated with the two polynomial representations P and Q, of degree Dp and Dq, respectively. S is a (Dp+Dq)-by-(Dp+Dq) square matrix. Note that the degree of the polynomial is one less the the number of elements of its representation: degree(P) = numel(P)-1.
 
SYLVESTER(P,Q, [Mp Mq]) returns a generalization by specifiying the size. The Sylvester matrix S will be a, in general non-square, (Mp+Mq)-by-K matrix, with K being the maximum of (Mp+Dp) and (Mq+Dq).
 
Examples:
      P = [1 2 3 4] ; Q = [6 7] ; % Dp = 3, Dq = 1 ;
      M = sylvester(P,Q)
       % 1 2 3 4
       % 6 7 0 0
       % 0 6 7 0
       % 0 0 6 7
 
      M = sylvester([1 0 3],[2 4],[3 1])
       % -> a non-square sylvester matrix
       % 1 0 3 0 0
       % 0 1 0 3 0
       % 0 0 1 0 3
       % 2 4 0 0 0
 
For more information, see http://en.wikipedia.org/wiki/Sylvester_matrix
 
See also gallery, toeplitz
             circulant (File Exchange)
 

Comments and Ratings (2)

Jos (10584)

Jos (10584) (view profile)

The error mentioned by Paul has been fixed in version 3.0

Paul

Paul (view profile)

Does not work but is easily corrected.
Change to : zeros(NQ-2,1)],zeros(NQ-1,1)); etc

Updates

1.1

fixed serious error resulting in non-square outcomes in some situations

MATLAB Release
MATLAB 7.6 (R2008a)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video