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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dgelss.c

?? 著名的LAPACK矩陣計算軟件包, 是比較新的版本, 一般用到矩陣分解的朋友也許會用到
?? C
?? 第 1 頁 / 共 3 頁
字號:
#include "blaswrap.h"
/*  -- translated by f2c (version 19990503).
   You must link the resulting object file with the libraries:
	-lf2c -lm   (in that order)
*/

#include "f2c.h"

/* Common Block Declarations */

struct {
    doublereal ops, itcnt;
} latime_;

#define latime_1 latime_

struct {
    doublereal opcnt[6], timng[6];
} lstime_;

#define lstime_1 lstime_

/* Table of constant values */

static integer c__6 = 6;
static integer c_n1 = -1;
static integer c__1 = 1;
static integer c__0 = 0;
static doublereal c_b74 = 0.;
static doublereal c_b145 = 1.;

/* Subroutine */ int dgelss_(integer *m, integer *n, integer *nrhs, 
	doublereal *a, integer *lda, doublereal *b, integer *ldb, doublereal *
	s, doublereal *rcond, integer *rank, doublereal *work, integer *lwork,
	 integer *info)
{
    /* Initialized data */

    static integer bdsqr = 5;
    static integer ormlq = 6;
    static integer ormqr = 2;
    static integer gebrd = 3;
    static integer gelqf = 2;
    static integer gelss = 1;
    static integer gemm = 6;
    static integer gemv = 6;
    static integer geqrf = 2;
    static integer orgbr = 4;
    static integer ormbr = 4;

    /* System generated locals */
    integer a_dim1, a_offset, b_dim1, b_offset, i__1, i__2, i__3, i__4;
    doublereal d__1;

    /* Local variables */
    static doublereal anrm, bnrm;
    static integer itau;
    static doublereal vdum[1];
    static integer i__;
    extern /* Subroutine */ int dgemm_(char *, char *, integer *, integer *, 
	    integer *, doublereal *, doublereal *, integer *, doublereal *, 
	    integer *, doublereal *, doublereal *, integer *);
    static integer iascl, ibscl;
    extern doublereal dopla_(char *, integer *, integer *, integer *, integer 
	    *, integer *);
    extern /* Subroutine */ int dgemv_(char *, integer *, integer *, 
	    doublereal *, doublereal *, integer *, doublereal *, integer *, 
	    doublereal *, doublereal *, integer *), drscl_(integer *, 
	    doublereal *, doublereal *, integer *);
    static integer chunk, minmn, maxmn, itaup, itauq;
    static doublereal sfmin;
    extern /* Subroutine */ int dcopy_(integer *, doublereal *, integer *, 
	    doublereal *, integer *);
    static integer mnthr, iwork;
    static doublereal t1, t2;
    extern doublereal dopla2_(char *, char *, integer *, integer *, integer *,
	     integer *, integer *), dopbl2_(char *, integer *,
	     integer *, integer *, integer *), dopbl3_(char *, 
	    integer *, integer *, integer *);
    extern /* Subroutine */ int dlabad_(doublereal *, doublereal *);
    static integer bl, ie, nb, il;
    extern /* Subroutine */ int dgebrd_(integer *, integer *, doublereal *, 
	    integer *, doublereal *, doublereal *, doublereal *, doublereal *,
	     doublereal *, integer *, integer *);
    extern doublereal dlamch_(char *);
    static integer mm;
    extern doublereal dlange_(char *, integer *, integer *, doublereal *, 
	    integer *, doublereal *);
    static integer bdspac;
    extern doublereal dsecnd_(void);
    extern /* Subroutine */ int dgelqf_(integer *, integer *, doublereal *, 
	    integer *, doublereal *, doublereal *, integer *, integer *), 
	    dlascl_(char *, integer *, integer *, doublereal *, doublereal *, 
	    integer *, integer *, doublereal *, integer *, integer *),
	     dgeqrf_(integer *, integer *, doublereal *, integer *, 
	    doublereal *, doublereal *, integer *, integer *), dlacpy_(char *,
	     integer *, integer *, doublereal *, integer *, doublereal *, 
	    integer *), dlaset_(char *, integer *, integer *, 
	    doublereal *, doublereal *, doublereal *, integer *), 
	    xerbla_(char *, integer *), dbdsqr_(char *, integer *, 
	    integer *, integer *, integer *, doublereal *, doublereal *, 
	    doublereal *, integer *, doublereal *, integer *, doublereal *, 
	    integer *, doublereal *, integer *), dorgbr_(char *, 
	    integer *, integer *, integer *, doublereal *, integer *, 
	    doublereal *, doublereal *, integer *, integer *);
    static doublereal bignum;
    extern integer ilaenv_(integer *, char *, char *, integer *, integer *, 
	    integer *, integer *, ftnlen, ftnlen);
    extern /* Subroutine */ int dormbr_(char *, char *, char *, integer *, 
	    integer *, integer *, doublereal *, integer *, doublereal *, 
	    doublereal *, integer *, doublereal *, integer *, integer *), dormlq_(char *, char *, integer *, 
	    integer *, integer *, doublereal *, integer *, doublereal *, 
	    doublereal *, integer *, doublereal *, integer *, integer *);
    static integer ldwork;
    extern /* Subroutine */ int dormqr_(char *, char *, integer *, integer *, 
	    integer *, doublereal *, integer *, doublereal *, doublereal *, 
	    integer *, doublereal *, integer *, integer *);
    static integer minwrk, maxwrk;
    static doublereal smlnum;
    static logical lquery;
    static doublereal eps, thr;


#define a_ref(a_1,a_2) a[(a_2)*a_dim1 + a_1]
#define b_ref(a_1,a_2) b[(a_2)*b_dim1 + a_1]


/*  -- LAPACK driver routine (instrumented to count ops, version 3.0) --   
       Univ. of Tennessee, Univ. of California Berkeley, NAG Ltd.,   
       Courant Institute, Argonne National Lab, and Rice University   
       October 31, 1999   

       Common blocks to return operation counts and timings   

    Purpose   
    =======   

    DGELSS computes the minimum norm solution to a real linear least   
    squares problem:   

    Minimize 2-norm(| b - A*x |).   

    using the singular value decomposition (SVD) of A. A is an M-by-N   
    matrix which may be rank-deficient.   

    Several right hand side vectors b and solution vectors x can be   
    handled in a single call; they are stored as the columns of the   
    M-by-NRHS right hand side matrix B and the N-by-NRHS solution matrix   
    X.   

    The effective rank of A is determined by treating as zero those   
    singular values which are less than RCOND times the largest singular   
    value.   

    Arguments   
    =========   

    M       (input) INTEGER   
            The number of rows of the matrix A. M >= 0.   

    N       (input) INTEGER   
            The number of columns of the matrix A. N >= 0.   

    NRHS    (input) INTEGER   
            The number of right hand sides, i.e., the number of columns   
            of the matrices B and X. NRHS >= 0.   

    A       (input/output) DOUBLE PRECISION array, dimension (LDA,N)   
            On entry, the M-by-N matrix A.   
            On exit, the first min(m,n) rows of A are overwritten with   
            its right singular vectors, stored rowwise.   

    LDA     (input) INTEGER   
            The leading dimension of the array A.  LDA >= max(1,M).   

    B       (input/output) DOUBLE PRECISION array, dimension (LDB,NRHS)   
            On entry, the M-by-NRHS right hand side matrix B.   
            On exit, B is overwritten by the N-by-NRHS solution   
            matrix X.  If m >= n and RANK = n, the residual   
            sum-of-squares for the solution in the i-th column is given   
            by the sum of squares of elements n+1:m in that column.   

    LDB     (input) INTEGER   
            The leading dimension of the array B. LDB >= max(1,max(M,N)).   

    S       (output) DOUBLE PRECISION array, dimension (min(M,N))   
            The singular values of A in decreasing order.   
            The condition number of A in the 2-norm = S(1)/S(min(m,n)).   

    RCOND   (input) DOUBLE PRECISION   
            RCOND is used to determine the effective rank of A.   
            Singular values S(i) <= RCOND*S(1) are treated as zero.   
            If RCOND < 0, machine precision is used instead.   

    RANK    (output) INTEGER   
            The effective rank of A, i.e., the number of singular values   
            which are greater than RCOND*S(1).   

    WORK    (workspace/output) DOUBLE PRECISION array, dimension (LWORK)   
            On exit, if INFO = 0, WORK(1) returns the optimal LWORK.   

    LWORK   (input) INTEGER   
            The dimension of the array WORK. LWORK >= 1, and also:   
            LWORK >= 3*min(M,N) + max( 2*min(M,N), max(M,N), NRHS )   
            For good performance, LWORK should generally be larger.   

            If LWORK = -1, then a workspace query is assumed; the routine   
            only calculates the optimal size of the WORK array, returns   
            this value as the first entry of the WORK array, and no error   
            message related to LWORK is issued by XERBLA.   

    INFO    (output) INTEGER   
            = 0:  successful exit   
            < 0:  if INFO = -i, the i-th argument had an illegal value.   
            > 0:  the algorithm for computing the SVD failed to converge;   
                  if INFO = i, i off-diagonal elements of an intermediate   
                  bidiagonal form did not converge to zero.   

    =====================================================================   

       Parameter adjustments */
    a_dim1 = *lda;
    a_offset = 1 + a_dim1 * 1;
    a -= a_offset;
    b_dim1 = *ldb;
    b_offset = 1 + b_dim1 * 1;
    b -= b_offset;
    --s;
    --work;

    /* Function Body   

       Test the input arguments */

    *info = 0;
    minmn = min(*m,*n);
    maxmn = max(*m,*n);
    mnthr = ilaenv_(&c__6, "DGELSS", " ", m, n, nrhs, &c_n1, (ftnlen)6, (
	    ftnlen)1);
    lquery = *lwork == -1;
    if (*m < 0) {
	*info = -1;
    } else if (*n < 0) {
	*info = -2;
    } else if (*nrhs < 0) {
	*info = -3;
    } else if (*lda < max(1,*m)) {
	*info = -5;
    } else if (*ldb < max(1,maxmn)) {
	*info = -7;
    }

/*     Compute workspace   
        (Note: Comments in the code beginning "Workspace:" describe the   
         minimal amount of workspace needed at that point in the code,   
         as well as the preferred amount for good performance.   
         NB refers to the optimal block size for the immediately   
         following subroutine, as returned by ILAENV.) */

    minwrk = 1;
    if (*info == 0 && (*lwork >= 1 || lquery)) {
	maxwrk = 0;
	mm = *m;
	if (*m >= *n && *m >= mnthr) {

/*           Path 1a - overdetermined, with many more rows than columns */

	    mm = *n;
/* Computing MAX */
	    i__1 = maxwrk, i__2 = *n + *n * ilaenv_(&c__1, "DGEQRF", " ", m, 
		    n, &c_n1, &c_n1, (ftnlen)6, (ftnlen)1);
	    maxwrk = max(i__1,i__2);
/* Computing MAX */
	    i__1 = maxwrk, i__2 = *n + *nrhs * ilaenv_(&c__1, "DORMQR", "LT", 
		    m, nrhs, n, &c_n1, (ftnlen)6, (ftnlen)2);
	    maxwrk = max(i__1,i__2);
	}
	if (*m >= *n) {

/*           Path 1 - overdetermined or exactly determined   

             Compute workspace needed for DBDSQR   

   Computing MAX */
	    i__1 = 1, i__2 = *n * 5;
	    bdspac = max(i__1,i__2);
/* Computing MAX */
	    i__1 = maxwrk, i__2 = *n * 3 + (mm + *n) * ilaenv_(&c__1, "DGEBRD"
		    , " ", &mm, n, &c_n1, &c_n1, (ftnlen)6, (ftnlen)1);
	    maxwrk = max(i__1,i__2);
/* Computing MAX */
	    i__1 = maxwrk, i__2 = *n * 3 + *nrhs * ilaenv_(&c__1, "DORMBR", 
		    "QLT", &mm, nrhs, n, &c_n1, (ftnlen)6, (ftnlen)3);
	    maxwrk = max(i__1,i__2);
/* Computing MAX */
	    i__1 = maxwrk, i__2 = *n * 3 + (*n - 1) * ilaenv_(&c__1, "DORGBR",
		     "P", n, n, n, &c_n1, (ftnlen)6, (ftnlen)1);
	    maxwrk = max(i__1,i__2);
	    maxwrk = max(maxwrk,bdspac);
/* Computing MAX */
	    i__1 = maxwrk, i__2 = *n * *nrhs;
	    maxwrk = max(i__1,i__2);
/* Computing MAX */
	    i__1 = *n * 3 + mm, i__2 = *n * 3 + *nrhs, i__1 = max(i__1,i__2);
	    minwrk = max(i__1,bdspac);
	    maxwrk = max(minwrk,maxwrk);
	}
	if (*n > *m) {

/*           Compute workspace needed for DBDSQR   

   Computing MAX */
	    i__1 = 1, i__2 = *m * 5;
	    bdspac = max(i__1,i__2);
/* Computing MAX */
	    i__1 = *m * 3 + *nrhs, i__2 = *m * 3 + *n, i__1 = max(i__1,i__2);
	    minwrk = max(i__1,bdspac);
	    if (*n >= mnthr) {

/*              Path 2a - underdetermined, with many more columns   
                than rows */

		maxwrk = *m + *m * ilaenv_(&c__1, "DGELQF", " ", m, n, &c_n1, 
			&c_n1, (ftnlen)6, (ftnlen)1);
/* Computing MAX */
		i__1 = maxwrk, i__2 = *m * *m + (*m << 2) + (*m << 1) * 
			ilaenv_(&c__1, "DGEBRD", " ", m, m, &c_n1, &c_n1, (
			ftnlen)6, (ftnlen)1);
		maxwrk = max(i__1,i__2);
/* Computing MAX */
		i__1 = maxwrk, i__2 = *m * *m + (*m << 2) + *nrhs * ilaenv_(&
			c__1, "DORMBR", "QLT", m, nrhs, m, &c_n1, (ftnlen)6, (
			ftnlen)3);
		maxwrk = max(i__1,i__2);
/* Computing MAX */
		i__1 = maxwrk, i__2 = *m * *m + (*m << 2) + (*m - 1) * 
			ilaenv_(&c__1, "DORGBR", "P", m, m, m, &c_n1, (ftnlen)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
夜夜精品浪潮av一区二区三区| 久久不见久久见免费视频7 | 久久亚洲私人国产精品va媚药| 最新日韩av在线| 久99久精品视频免费观看| 91小视频在线观看| 久久精品男人的天堂| 五月婷婷综合网| 色综合久久综合网97色综合| 欧美精品一区二区三区蜜臀| 亚洲精品成人天堂一二三| 国产成人精品网址| 精品少妇一区二区| 丝袜美腿成人在线| 欧美综合欧美视频| 中文字幕日韩欧美一区二区三区| 国产一区二区三区在线观看免费视频| 欧美日韩国产高清一区| 一区二区三区加勒比av| 成人午夜在线免费| 国产欧美日韩中文久久| 久久国产剧场电影| 日韩欧美在线1卡| 日韩激情一区二区| 欧美日本在线播放| 午夜欧美电影在线观看| 欧美在线免费观看视频| 亚洲已满18点击进入久久| 一本久久a久久精品亚洲| 亚洲欧洲中文日韩久久av乱码| 成人av网站在线观看免费| 国产精品久久久久毛片软件| 波多野洁衣一区| 亚洲欧洲韩国日本视频| 色综合视频在线观看| 亚洲色图欧美激情| 色综合天天在线| 亚洲一区二区欧美日韩| 制服丝袜亚洲色图| 精品综合免费视频观看| 久久综合精品国产一区二区三区 | 日本中文一区二区三区| 欧美一二三在线| 激情五月播播久久久精品| 国产午夜精品在线观看| 69堂亚洲精品首页| 国产一区二区三区蝌蚪| 国产综合色视频| 国产农村妇女精品| av成人免费在线| 香港成人在线视频| 欧美电影免费提供在线观看| 国产乱码精品一区二区三| 国产精品嫩草久久久久| 欧美艳星brazzers| 精品一区二区三区日韩| 一区精品在线播放| 欧美三级在线播放| 国产麻豆精品95视频| 最新国产成人在线观看| 91精品国产91久久久久久一区二区 | 国产一区二三区好的| 亚洲国产成人一区二区三区| 色婷婷亚洲综合| 久久精品国产久精国产| 国产精品成人一区二区三区夜夜夜 | 精品久久久久久久久久久久久久久 | 欧美亚洲综合色| 理论电影国产精品| 自拍偷在线精品自拍偷无码专区| 91精品午夜视频| voyeur盗摄精品| 麻豆久久一区二区| 国产精品二三区| 精品国产一区二区在线观看| 色婷婷精品久久二区二区蜜臀av| 男男视频亚洲欧美| 亚洲精品成a人| 久久久www成人免费毛片麻豆 | 粉嫩高潮美女一区二区三区| 午夜精品影院在线观看| 国产精品―色哟哟| 日韩免费电影网站| 欧美日韩国产影片| 91在线小视频| 国产成人99久久亚洲综合精品| 日韩成人精品在线观看| 亚洲免费高清视频在线| 国产欧美一区二区精品性色 | 国产精品123| 日韩avvvv在线播放| 一区二区三区蜜桃| 国产精品久久久久婷婷| 久久―日本道色综合久久| 制服丝袜亚洲精品中文字幕| 欧美亚洲综合色| 色欧美日韩亚洲| 99精品在线免费| 99久久久久久99| 国产69精品久久99不卡| 国产一区二区在线免费观看| 免费高清在线一区| 日韩高清不卡一区二区| 亚洲成人自拍偷拍| 亚洲精品va在线观看| 亚洲精品乱码久久久久久久久| 国产精品久久久久一区二区三区| 日本一区二区三区久久久久久久久不| 久久综合狠狠综合久久激情| 日韩精品一区二区三区蜜臀| 91精品福利在线一区二区三区| 91精品国产高清一区二区三区蜜臀| 欧美日韩国产在线观看| 欧美日本一区二区| 在线不卡欧美精品一区二区三区| 欧美三级中文字幕| 欧美精品久久一区| 91精品中文字幕一区二区三区| 日韩亚洲欧美一区| 日韩欧美国产综合在线一区二区三区| 国产丝袜美腿一区二区三区| 国产日韩欧美精品一区| 国产精品日韩成人| 亚洲免费毛片网站| 亚洲国产精品久久久久秋霞影院 | 亚洲女与黑人做爰| 亚洲一区二区黄色| 青青草原综合久久大伊人精品优势| 美女一区二区在线观看| 国产一区二区美女诱惑| 高清成人在线观看| 91同城在线观看| 欧美欧美欧美欧美首页| 欧美大胆一级视频| 欧美国产乱子伦 | 欧美性感一区二区三区| 3atv一区二区三区| 久久久久久毛片| 亚洲精品成a人| 久久精品理论片| 成人深夜在线观看| 欧美色精品在线视频| 欧美sm美女调教| 国产精品无码永久免费888| 亚洲精选免费视频| 日本成人中文字幕在线视频 | 日本电影欧美片| 欧美videossexotv100| 中文字幕不卡在线观看| 亚洲国产视频一区| 国产精品一品二品| 欧美日韩精品二区第二页| 久久精品一区二区三区不卡 | 亚洲美女区一区| 卡一卡二国产精品| 91啪九色porn原创视频在线观看| 91麻豆精品国产自产在线观看一区 | 不卡视频一二三| 精品欧美一区二区久久| 又紧又大又爽精品一区二区| 黄页网站大全一区二区| 色综合久久久久综合体| 精品国产一区二区三区久久久蜜月 | 欧美巨大另类极品videosbest| 国产目拍亚洲精品99久久精品| 亚洲成人av一区| caoporm超碰国产精品| 欧美大尺度电影在线| 午夜精品在线看| 日本高清不卡aⅴ免费网站| 精品久久久久久最新网址| 亚洲国产精品影院| av色综合久久天堂av综合| 久久男人中文字幕资源站| 视频一区二区国产| 欧美综合色免费| 亚洲日本成人在线观看| 国产一区二区在线影院| 日韩一卡二卡三卡国产欧美| 一区二区三区欧美日| 成人三级伦理片| 国产亚洲成av人在线观看导航 | 亚洲一区二区在线免费观看视频| 成人免费av资源| 欧美激情自拍偷拍| 黑人巨大精品欧美一区| 日韩欧美激情一区| 另类综合日韩欧美亚洲| 欧美一区国产二区| 五月天激情小说综合| 日本高清成人免费播放| 亚洲免费观看视频| 色婷婷综合久久久| 一区二区三区在线看| 色综合色狠狠综合色| 亚洲天堂成人在线观看| a4yy欧美一区二区三区| 综合久久久久综合| 欧美图区在线视频| 五月天久久比比资源色|