RationalPolynomialMatrixShift.java
01 /*
02  * $Id: RationalPolynomialMatrixShift.java,v 1.5 2006/08/30 03:45:26 koga Exp $
03  *
04  * Copyright (C) 2004 Koga Laboratory. All rights reserved.
05  *
06  */
07 package matxbook.chap17;
08 
09 import org.mklab.nfc.matrix.Matrix;
10 import org.mklab.nfc.matrix.RationalPolynomialMatrix;
11 import org.mklab.nfc.scalar.Polynomial;
12 import org.mklab.nfc.scalar.RationalPolynomial;
13 import org.mklab.tool.matrix.Simplify;
14 
15 
16 /**
17  * 有理多項式行列の係数をシフトするサンプルです。
18  @author koga
19  @version $Revision: 1.5 $, 2004/04/20
20  */
21 public class RationalPolynomialMatrixShift {
22 
23   /**
24    * メインメソッド
25    
26    @param args コマンドライン引数
27    */
28   @SuppressWarnings("nls")
29   public static void main(String[] args) {
30     Polynomial s = new Polynomial("s");
31     RationalPolynomial a11 = new RationalPolynomial(1, s.add(1));
32     RationalPolynomial a12 = new RationalPolynomial(0);
33     RationalPolynomial a21 = new RationalPolynomial(0);
34     RationalPolynomial a22 = new RationalPolynomial(s, s.power(2).add(3));
35     RationalPolynomialMatrix a = new RationalPolynomialMatrix(new RationalPolynomial[][] { {a11, a12}{a21, a22}});
36 
37     Matrix b = Simplify.simplify((RationalPolynomialMatrix)a.shiftHigher());
38     b.print("b");
39     Matrix c = ((RationalPolynomialMatrix)b).shiftLower();
40     c.print("c");
41   }
42 }