MC03NX - SLICOT Library Routine Documentation

## MC03NX

### Construction of a pencil sE-A related to a given polynomial matrix

[Specification] [Arguments] [Method] [References] [Comments] [Example]

Purpose

      Given an MP-by-NP polynomial matrix of degree dp
                                     dp-1            dp
      P(s) = P(0) + ... + P(dp-1) * s     + P(dp) * s            (1)

      the routine composes the related pencil s*E-A where

          | I              |           | O          -P(dp) |
          |   .            |           | I .           .   |
      A = |     .          |  and  E = |   . .         .   |.    (2)
          |       .        |           |     . O       .   |
          |         I      |           |       I  O -P(2)  |
          |           P(0) |           |          I -P(1)  |

      ==================================================================
      REMARK: This routine is intended to be called only from the SLICOT
              routine MC03ND.
      ==================================================================

Specification

          SUBROUTINE MC03NX( MP, NP, DP, P, LDP1, LDP2, A, LDA, E, LDE )
    C     .. Scalar Arguments ..
          INTEGER           DP, LDA, LDE, LDP1, LDP2, MP, NP
    C     .. Array Arguments ..
          DOUBLE PRECISION  A(LDA,*), E(LDE,*), P(LDP1,LDP2,*)

Arguments

Input/Output Parameters

      MP      (input) INTEGER
              The number of rows of the polynomial matrix P(s).
              MP >= 0.

      NP      (input) INTEGER
              The number of columns of the polynomial matrix P(s).
              NP >= 0.

      DP      (input) INTEGER
              The degree of the polynomial matrix P(s).  DP >= 1.

      P       (input) DOUBLE PRECISION array, dimension (LDP1,LDP2,DP+1)
              The leading MP-by-NP-by-(DP+1) part of this array must
              contain the coefficients of the polynomial matrix P(s)
              in (1) in increasing powers of s.

      LDP1    INTEGER
              The leading dimension of array P.  LDP1 >= MAX(1,MP).

      LDP2    INTEGER
              The second dimension of array P.   LDP2 >= MAX(1,NP).

      A       (output) DOUBLE PRECISION array, dimension
              (LDA,(DP-1)*MP+NP)
              The leading DP*MP-by-((DP-1)*MP+NP) part of this array
              contains the matrix A as described in (2).

      LDA     INTEGER
              The leading dimension of array A.  LDA >= MAX(1,DP*MP).

      E       (output) DOUBLE PRECISION array, dimension
              (LDE,(DP-1)*MP+NP)
              The leading DP*MP-by-((DP-1)*MP+NP) part of this array
              contains the matrix E as described in (2).

      LDE     INTEGER
              The leading dimension of array E.  LDE >= MAX(1,DP*MP).

Numerical Aspects

      None.

Further Comments

      None

Example

Program Text

      None

Program Data

      None

Program Results

      None

Return to Supporting Routines index