亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? qrdecomposition.java

?? Jama includes matrix operator class... and linear Algebra... it s cool
?? JAVA
字號:
package Jama;
import Jama.util.*;

/** QR Decomposition.
<P>
   For an m-by-n matrix A with m >= n, the QR decomposition is an m-by-n
   orthogonal matrix Q and an n-by-n upper triangular matrix R so that
   A = Q*R.
<P>
   The QR decompostion always exists, even if the matrix does not have
   full rank, so the constructor will never fail.  The primary use of the
   QR decomposition is in the least squares solution of nonsquare systems
   of simultaneous linear equations.  This will fail if isFullRank()
   returns false.
*/

public class QRDecomposition implements java.io.Serializable {

/* ------------------------
   Class variables
 * ------------------------ */

   /** Array for internal storage of decomposition.
   @serial internal array storage.
   */
   private double[][] QR;

   /** Row and column dimensions.
   @serial column dimension.
   @serial row dimension.
   */
   private int m, n;

   /** Array for internal storage of diagonal of R.
   @serial diagonal of R.
   */
   private double[] Rdiag;

/* ------------------------
   Constructor
 * ------------------------ */

   /** QR Decomposition, computed by Householder reflections.
   @param A    Rectangular matrix
   @return     Structure to access R and the Householder vectors and compute Q.
   */

   public QRDecomposition (Matrix A) {
      // Initialize.
      QR = A.getArrayCopy();
      m = A.getRowDimension();
      n = A.getColumnDimension();
      Rdiag = new double[n];

      // Main loop.
      for (int k = 0; k < n; k++) {
         // Compute 2-norm of k-th column without under/overflow.
         double nrm = 0;
         for (int i = k; i < m; i++) {
            nrm = Maths.hypot(nrm,QR[i][k]);
         }

         if (nrm != 0.0) {
            // Form k-th Householder vector.
            if (QR[k][k] < 0) {
               nrm = -nrm;
            }
            for (int i = k; i < m; i++) {
               QR[i][k] /= nrm;
            }
            QR[k][k] += 1.0;

            // Apply transformation to remaining columns.
            for (int j = k+1; j < n; j++) {
               double s = 0.0; 
               for (int i = k; i < m; i++) {
                  s += QR[i][k]*QR[i][j];
               }
               s = -s/QR[k][k];
               for (int i = k; i < m; i++) {
                  QR[i][j] += s*QR[i][k];
               }
            }
         }
         Rdiag[k] = -nrm;
      }
   }

/* ------------------------
   Public Methods
 * ------------------------ */

   /** Is the matrix full rank?
   @return     true if R, and hence A, has full rank.
   */

   public boolean isFullRank () {
      for (int j = 0; j < n; j++) {
         if (Rdiag[j] == 0)
            return false;
      }
      return true;
   }

   /** Return the Householder vectors
   @return     Lower trapezoidal matrix whose columns define the reflections
   */

   public Matrix getH () {
      Matrix X = new Matrix(m,n);
      double[][] H = X.getArray();
      for (int i = 0; i < m; i++) {
         for (int j = 0; j < n; j++) {
            if (i >= j) {
               H[i][j] = QR[i][j];
            } else {
               H[i][j] = 0.0;
            }
         }
      }
      return X;
   }

   /** Return the upper triangular factor
   @return     R
   */

   public Matrix getR () {
      Matrix X = new Matrix(n,n);
      double[][] R = X.getArray();
      for (int i = 0; i < n; i++) {
         for (int j = 0; j < n; j++) {
            if (i < j) {
               R[i][j] = QR[i][j];
            } else if (i == j) {
               R[i][j] = Rdiag[i];
            } else {
               R[i][j] = 0.0;
            }
         }
      }
      return X;
   }

   /** Generate and return the (economy-sized) orthogonal factor
   @return     Q
   */

   public Matrix getQ () {
      Matrix X = new Matrix(m,n);
      double[][] Q = X.getArray();
      for (int k = n-1; k >= 0; k--) {
         for (int i = 0; i < m; i++) {
            Q[i][k] = 0.0;
         }
         Q[k][k] = 1.0;
         for (int j = k; j < n; j++) {
            if (QR[k][k] != 0) {
               double s = 0.0;
               for (int i = k; i < m; i++) {
                  s += QR[i][k]*Q[i][j];
               }
               s = -s/QR[k][k];
               for (int i = k; i < m; i++) {
                  Q[i][j] += s*QR[i][k];
               }
            }
         }
      }
      return X;
   }

   /** Least squares solution of A*X = B
   @param B    A Matrix with as many rows as A and any number of columns.
   @return     X that minimizes the two norm of Q*R*X-B.
   @exception  IllegalArgumentException  Matrix row dimensions must agree.
   @exception  RuntimeException  Matrix is rank deficient.
   */

   public Matrix solve (Matrix B) {
      if (B.getRowDimension() != m) {
         throw new IllegalArgumentException("Matrix row dimensions must agree.");
      }
      if (!this.isFullRank()) {
         throw new RuntimeException("Matrix is rank deficient.");
      }
      
      // Copy right hand side
      int nx = B.getColumnDimension();
      double[][] X = B.getArrayCopy();

      // Compute Y = transpose(Q)*B
      for (int k = 0; k < n; k++) {
         for (int j = 0; j < nx; j++) {
            double s = 0.0; 
            for (int i = k; i < m; i++) {
               s += QR[i][k]*X[i][j];
            }
            s = -s/QR[k][k];
            for (int i = k; i < m; i++) {
               X[i][j] += s*QR[i][k];
            }
         }
      }
      // Solve R*X = Y;
      for (int k = n-1; k >= 0; k--) {
         for (int j = 0; j < nx; j++) {
            X[k][j] /= Rdiag[k];
         }
         for (int i = 0; i < k; i++) {
            for (int j = 0; j < nx; j++) {
               X[i][j] -= X[k][j]*QR[i][k];
            }
         }
      }
      return (new Matrix(X,n,nx).getMatrix(0,n-1,0,nx-1));
   }
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
fc2成人免费人成在线观看播放| 亚洲成人一区二区在线观看| 久久电影网站中文字幕| 日韩天堂在线观看| 精品一区二区三区蜜桃| 国产午夜三级一区二区三| 国产精品综合久久| 最新久久zyz资源站| 色久优优欧美色久优优| 亚洲综合在线五月| 91精品久久久久久蜜臀| 国产做a爰片久久毛片| 国产人成一区二区三区影院| 色综合天天天天做夜夜夜夜做| 亚洲精品你懂的| 欧美一区二区视频免费观看| 国产一区免费电影| 亚洲视频每日更新| 欧美一级欧美三级| 成人精品国产福利| 亚洲gay无套男同| 久久久久久久久伊人| 91丝袜美女网| 免费欧美日韩国产三级电影| 国产三级一区二区| 欧美丝袜丝交足nylons图片| 久久超碰97人人做人人爱| 国产精品免费人成网站| 欧美区一区二区三区| 国产精品亚洲一区二区三区在线| 日韩美女视频一区二区| 日韩女优视频免费观看| 91原创在线视频| 九色综合国产一区二区三区| 亚洲人成人一区二区在线观看| 日韩三级高清在线| 99国产欧美另类久久久精品| 美女网站在线免费欧美精品| 《视频一区视频二区| 日韩视频永久免费| 色嗨嗨av一区二区三区| 国产一区二区三区蝌蚪| 亚洲不卡在线观看| 国产精品久久久久婷婷| 日韩久久久精品| 在线观看区一区二| 成人精品视频.| 精品一区二区三区免费观看| 午夜欧美电影在线观看| 亚洲欧美在线视频| 久久九九久久九九| 制服丝袜亚洲播放| 日本乱人伦aⅴ精品| 成人中文字幕在线| 黄色资源网久久资源365| 亚洲电影一区二区| 亚洲免费av高清| 日韩一区日韩二区| 欧美高清在线一区| 国产欧美日韩另类视频免费观看| 欧美成人在线直播| 91麻豆精品国产91久久久资源速度| 99精品1区2区| 91丝袜高跟美女视频| 不卡的电影网站| 国产91丝袜在线18| 国产精品一区在线观看你懂的| 青青草国产精品97视觉盛宴| 亚洲国产欧美在线人成| 亚洲精品高清视频在线观看| 日韩码欧中文字| 国产精品国产三级国产aⅴ中文| 久久精品亚洲麻豆av一区二区 | 亚洲少妇30p| 中文字幕精品一区| 国产精品九色蝌蚪自拍| 国产午夜精品一区二区三区嫩草| 26uuu另类欧美| 精品国产123| 欧美精品一区二区久久婷婷| 日韩精品一区二区三区老鸭窝| 日韩三级免费观看| 久久无码av三级| 久久久www成人免费毛片麻豆| 久久女同性恋中文字幕| 国产欧美一区二区在线| 国产精品久久久久久久久果冻传媒| 国产欧美精品区一区二区三区| 国产亚洲欧美激情| 国产精品久久久久久一区二区三区 | 国产精品免费人成网站| 国产精品女同一区二区三区| 中文字幕一区二区三区色视频 | 奇米精品一区二区三区四区 | 国产免费成人在线视频| 中文字幕av在线一区二区三区| 欧美韩日一区二区三区| 亚洲男同1069视频| 天天影视涩香欲综合网 | 亚洲成人激情av| 日本亚洲电影天堂| 国产高清久久久久| www.日韩大片| 欧美日韩免费观看一区三区| 欧美一区二区三区在| 久久精品亚洲国产奇米99| 国产精品萝li| 婷婷成人激情在线网| 国产精品18久久久久久vr| 97se亚洲国产综合自在线 | 欧美性生活大片视频| 欧美一三区三区四区免费在线看| 日韩精品中文字幕在线不卡尤物| 国产亚洲精久久久久久| 亚洲精品一二三四区| 日日夜夜精品视频免费| 国产精品一区二区在线看| 91亚洲精品一区二区乱码| 欧美日韩情趣电影| 国产日韩欧美电影| 亚洲成人自拍偷拍| 国产一区二区女| 在线观看免费成人| 久久九九全国免费| 日本视频免费一区| proumb性欧美在线观看| 欧美一区二区三区婷婷月色| 国产精品乱子久久久久| 日韩专区中文字幕一区二区| 成人精品一区二区三区中文字幕| 91精品国产一区二区人妖| 1024精品合集| 国产剧情av麻豆香蕉精品| 欧美理论片在线| 亚洲欧美激情插| 国产一区二区三区免费观看| 欧美日韩性生活| 亚洲色图都市小说| 国产伦精一区二区三区| 欧美日韩一本到| 亚洲少妇最新在线视频| 国产精品123| 久久综合久久综合久久| 午夜精品久久久久久久| 91麻豆精品在线观看| 国产欧美视频一区二区| 男人的天堂亚洲一区| 欧洲精品一区二区| 亚洲精品免费电影| 成人黄动漫网站免费app| 精品日韩一区二区三区| 日韩中文字幕区一区有砖一区| 97se亚洲国产综合在线| 国产精品久久久久一区| 高清国产一区二区| 久久无码av三级| 国产综合色视频| 欧美mv日韩mv亚洲| 精品综合久久久久久8888| 欧美一级黄色录像| 日韩av电影一区| 欧美高清性hdvideosex| 午夜精品在线看| 欧美久久高跟鞋激| 午夜电影一区二区| 欧美日韩第一区日日骚| 亚洲第一av色| 91精品久久久久久久久99蜜臂| 日精品一区二区三区| 日韩一区二区在线观看视频 | 国产日韩欧美精品一区| 韩国精品在线观看| 2022国产精品视频| 国产a区久久久| 欧美国产综合色视频| 成人动漫一区二区| 亚洲人123区| 欧美日韩国产一级二级| 日韩不卡一区二区| 日韩写真欧美这视频| 久久99这里只有精品| 国产日韩av一区二区| 国产999精品久久| 中文字幕在线观看不卡视频| 99国产精品久久久久| 亚洲狼人国产精品| 7777精品伊人久久久大香线蕉的 | 国产麻豆精品在线观看| 国产精品欧美综合在线| 99久久er热在这里只有精品15| 亚洲精品视频自拍| 欧美久久免费观看| 国产一区二区免费在线| 综合亚洲深深色噜噜狠狠网站| 色综合一区二区三区| 全国精品久久少妇| 国产欧美日韩另类一区| 91成人在线精品| 日韩不卡一区二区三区| 国产日产亚洲精品系列|