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

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

?? slaed3.f

?? famous linear algebra library (LAPACK) ports to windows
?? F
字號:
      SUBROUTINE SLAED3( K, N, N1, D, Q, LDQ, RHO, DLAMDA, Q2, INDX,
     $                   CTOT, W, S, INFO )
*
*  -- LAPACK routine (version 3.1) --
*     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
*     November 2006
*
*     .. Scalar Arguments ..
      INTEGER            INFO, K, LDQ, N, N1
      REAL               RHO
*     ..
*     .. Array Arguments ..
      INTEGER            CTOT( * ), INDX( * )
      REAL               D( * ), DLAMDA( * ), Q( LDQ, * ), Q2( * ),
     $                   S( * ), W( * )
*     ..
*
*  Purpose
*  =======
*
*  SLAED3 finds the roots of the secular equation, as defined by the
*  values in D, W, and RHO, between 1 and K.  It makes the
*  appropriate calls to SLAED4 and then updates the eigenvectors by
*  multiplying the matrix of eigenvectors of the pair of eigensystems
*  being combined by the matrix of eigenvectors of the K-by-K system
*  which is solved here.
*
*  This code makes very mild assumptions about floating point
*  arithmetic. It will work on machines with a guard digit in
*  add/subtract, or on those binary machines without guard digits
*  which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or Cray-2.
*  It could conceivably fail on hexadecimal or decimal machines
*  without guard digits, but we know of none.
*
*  Arguments
*  =========
*
*  K       (input) INTEGER
*          The number of terms in the rational function to be solved by
*          SLAED4.  K >= 0.
*
*  N       (input) INTEGER
*          The number of rows and columns in the Q matrix.
*          N >= K (deflation may result in N>K).
*
*  N1      (input) INTEGER
*          The location of the last eigenvalue in the leading submatrix.
*          min(1,N) <= N1 <= N/2.
*
*  D       (output) REAL array, dimension (N)
*          D(I) contains the updated eigenvalues for
*          1 <= I <= K.
*
*  Q       (output) REAL array, dimension (LDQ,N)
*          Initially the first K columns are used as workspace.
*          On output the columns 1 to K contain
*          the updated eigenvectors.
*
*  LDQ     (input) INTEGER
*          The leading dimension of the array Q.  LDQ >= max(1,N).
*
*  RHO     (input) REAL
*          The value of the parameter in the rank one update equation.
*          RHO >= 0 required.
*
*  DLAMDA  (input/output) REAL array, dimension (K)
*          The first K elements of this array contain the old roots
*          of the deflated updating problem.  These are the poles
*          of the secular equation. May be changed on output by
*          having lowest order bit set to zero on Cray X-MP, Cray Y-MP,
*          Cray-2, or Cray C-90, as described above.
*
*  Q2      (input) REAL array, dimension (LDQ2, N)
*          The first K columns of this matrix contain the non-deflated
*          eigenvectors for the split problem.
*
*  INDX    (input) INTEGER array, dimension (N)
*          The permutation used to arrange the columns of the deflated
*          Q matrix into three groups (see SLAED2).
*          The rows of the eigenvectors found by SLAED4 must be likewise
*          permuted before the matrix multiply can take place.
*
*  CTOT    (input) INTEGER array, dimension (4)
*          A count of the total number of the various types of columns
*          in Q, as described in INDX.  The fourth column type is any
*          column which has been deflated.
*
*  W       (input/output) REAL array, dimension (K)
*          The first K elements of this array contain the components
*          of the deflation-adjusted updating vector. Destroyed on
*          output.
*
*  S       (workspace) REAL array, dimension (N1 + 1)*K
*          Will contain the eigenvectors of the repaired matrix which
*          will be multiplied by the previously accumulated eigenvectors
*          to update the system.
*
*  LDS     (input) INTEGER
*          The leading dimension of S.  LDS >= max(1,K).
*
*  INFO    (output) INTEGER
*          = 0:  successful exit.
*          < 0:  if INFO = -i, the i-th argument had an illegal value.
*          > 0:  if INFO = 1, an eigenvalue did not converge
*
*  Further Details
*  ===============
*
*  Based on contributions by
*     Jeff Rutter, Computer Science Division, University of California
*     at Berkeley, USA
*  Modified by Francoise Tisseur, University of Tennessee.
*
*  =====================================================================
*
*     .. Parameters ..
      REAL               ONE, ZERO
      PARAMETER          ( ONE = 1.0E0, ZERO = 0.0E0 )
*     ..
*     .. Local Scalars ..
      INTEGER            I, II, IQ2, J, N12, N2, N23
      REAL               TEMP
*     ..
*     .. External Functions ..
      REAL               SLAMC3, SNRM2
      EXTERNAL           SLAMC3, SNRM2
*     ..
*     .. External Subroutines ..
      EXTERNAL           SCOPY, SGEMM, SLACPY, SLAED4, SLASET, XERBLA
*     ..
*     .. Intrinsic Functions ..
      INTRINSIC          MAX, SIGN, SQRT
*     ..
*     .. Executable Statements ..
*
*     Test the input parameters.
*
      INFO = 0
*
      IF( K.LT.0 ) THEN
         INFO = -1
      ELSE IF( N.LT.K ) THEN
         INFO = -2
      ELSE IF( LDQ.LT.MAX( 1, N ) ) THEN
         INFO = -6
      END IF
      IF( INFO.NE.0 ) THEN
         CALL XERBLA( 'SLAED3', -INFO )
         RETURN
      END IF
*
*     Quick return if possible
*
      IF( K.EQ.0 )
     $   RETURN
*
*     Modify values DLAMDA(i) to make sure all DLAMDA(i)-DLAMDA(j) can
*     be computed with high relative accuracy (barring over/underflow).
*     This is a problem on machines without a guard digit in
*     add/subtract (Cray XMP, Cray YMP, Cray C 90 and Cray 2).
*     The following code replaces DLAMDA(I) by 2*DLAMDA(I)-DLAMDA(I),
*     which on any of these machines zeros out the bottommost
*     bit of DLAMDA(I) if it is 1; this makes the subsequent
*     subtractions DLAMDA(I)-DLAMDA(J) unproblematic when cancellation
*     occurs. On binary machines with a guard digit (almost all
*     machines) it does not change DLAMDA(I) at all. On hexadecimal
*     and decimal machines with a guard digit, it slightly
*     changes the bottommost bits of DLAMDA(I). It does not account
*     for hexadecimal or decimal machines without guard digits
*     (we know of none). We use a subroutine call to compute
*     2*DLAMBDA(I) to prevent optimizing compilers from eliminating
*     this code.
*
      DO 10 I = 1, K
         DLAMDA( I ) = SLAMC3( DLAMDA( I ), DLAMDA( I ) ) - DLAMDA( I )
   10 CONTINUE
*
      DO 20 J = 1, K
         CALL SLAED4( K, J, DLAMDA, W, Q( 1, J ), RHO, D( J ), INFO )
*
*        If the zero finder fails, the computation is terminated.
*
         IF( INFO.NE.0 )
     $      GO TO 120
   20 CONTINUE
*
      IF( K.EQ.1 )
     $   GO TO 110
      IF( K.EQ.2 ) THEN
         DO 30 J = 1, K
            W( 1 ) = Q( 1, J )
            W( 2 ) = Q( 2, J )
            II = INDX( 1 )
            Q( 1, J ) = W( II )
            II = INDX( 2 )
            Q( 2, J ) = W( II )
   30    CONTINUE
         GO TO 110
      END IF
*
*     Compute updated W.
*
      CALL SCOPY( K, W, 1, S, 1 )
*
*     Initialize W(I) = Q(I,I)
*
      CALL SCOPY( K, Q, LDQ+1, W, 1 )
      DO 60 J = 1, K
         DO 40 I = 1, J - 1
            W( I ) = W( I )*( Q( I, J ) / ( DLAMDA( I )-DLAMDA( J ) ) )
   40    CONTINUE
         DO 50 I = J + 1, K
            W( I ) = W( I )*( Q( I, J ) / ( DLAMDA( I )-DLAMDA( J ) ) )
   50    CONTINUE
   60 CONTINUE
      DO 70 I = 1, K
         W( I ) = SIGN( SQRT( -W( I ) ), S( I ) )
   70 CONTINUE
*
*     Compute eigenvectors of the modified rank-1 modification.
*
      DO 100 J = 1, K
         DO 80 I = 1, K
            S( I ) = W( I ) / Q( I, J )
   80    CONTINUE
         TEMP = SNRM2( K, S, 1 )
         DO 90 I = 1, K
            II = INDX( I )
            Q( I, J ) = S( II ) / TEMP
   90    CONTINUE
  100 CONTINUE
*
*     Compute the updated eigenvectors.
*
  110 CONTINUE
*
      N2 = N - N1
      N12 = CTOT( 1 ) + CTOT( 2 )
      N23 = CTOT( 2 ) + CTOT( 3 )
*
      CALL SLACPY( 'A', N23, K, Q( CTOT( 1 )+1, 1 ), LDQ, S, N23 )
      IQ2 = N1*N12 + 1
      IF( N23.NE.0 ) THEN
         CALL SGEMM( 'N', 'N', N2, K, N23, ONE, Q2( IQ2 ), N2, S, N23,
     $               ZERO, Q( N1+1, 1 ), LDQ )
      ELSE
         CALL SLASET( 'A', N2, K, ZERO, ZERO, Q( N1+1, 1 ), LDQ )
      END IF
*
      CALL SLACPY( 'A', N12, K, Q, LDQ, S, N12 )
      IF( N12.NE.0 ) THEN
         CALL SGEMM( 'N', 'N', N1, K, N12, ONE, Q2, N1, S, N12, ZERO, Q,
     $               LDQ )
      ELSE
         CALL SLASET( 'A', N1, K, ZERO, ZERO, Q( 1, 1 ), LDQ )
      END IF
*
*
  120 CONTINUE
      RETURN
*
*     End of SLAED3
*
      END

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品粉嫩超白一线天av| 视频在线观看一区| 成人综合婷婷国产精品久久| 精品国产伦一区二区三区免费| 国产精品激情偷乱一区二区∴| 豆国产96在线|亚洲| 精品精品欲导航| 国产揄拍国内精品对白| 欧美韩国日本不卡| 粉嫩在线一区二区三区视频| 国产精品午夜在线| 一本大道久久a久久综合婷婷| 亚洲免费av高清| 亚洲国产精品黑人久久久| 国产盗摄一区二区| 亚洲综合小说图片| 欧美一区二区三区电影| 国产精品一品二品| 亚洲一区日韩精品中文字幕| 欧美一区三区四区| 成人精品高清在线| 日韩影视精彩在线| 中文子幕无线码一区tr| 欧美人牲a欧美精品| 国产精品一区在线观看乱码| 亚洲日本va在线观看| 精品处破学生在线二十三| 91网站黄www| 精品写真视频在线观看| 亚洲一区二区三区四区在线观看| 精品国产免费人成电影在线观看四季 | 欧美一级二级三级乱码| 成人精品国产一区二区4080| 性做久久久久久免费观看| 亚洲欧洲性图库| 久久众筹精品私拍模特| 久久蜜桃一区二区| 日韩亚洲欧美综合| 91色九色蝌蚪| 97se狠狠狠综合亚洲狠狠| 精品亚洲porn| 极品少妇xxxx精品少妇| 麻豆成人久久精品二区三区小说| 亚洲日本在线观看| 中文字幕精品在线不卡| 久久综合一区二区| 精品日本一线二线三线不卡| 欧美中文字幕一区二区三区| 91视视频在线观看入口直接观看www| 久久超碰97人人做人人爱| 午夜精品爽啪视频| 丝瓜av网站精品一区二区| 亚洲一二三四久久| 亚洲午夜一区二区三区| 亚洲欧美视频在线观看| 日韩一区中文字幕| 国产永久精品大片wwwapp| 国产成+人+日韩+欧美+亚洲 | 亚洲欧洲精品一区二区精品久久久| 久久一区二区三区四区| 国产精品网站在线观看| 亚洲免费av高清| 久久精品国产精品青草| 国产成人av福利| 欧美亚洲自拍偷拍| 日韩精品一区二区三区蜜臀| 日本一区二区三区高清不卡| 亚洲色图第一区| 精品一区二区三区在线视频| 国产69精品久久久久毛片| 91国产丝袜在线播放| 日韩免费看的电影| 亚洲少妇30p| 久久精品国产77777蜜臀| www.激情成人| 久久综合一区二区| 亚洲欧美日韩在线| 国内精品写真在线观看| 色吊一区二区三区| 国产精品私人自拍| 日本中文字幕一区二区视频| 不卡av在线免费观看| 精品av久久707| 一区二区三区国产| 高潮精品一区videoshd| 日韩精品一区二区三区在线观看| 亚洲欧美欧美一区二区三区| 国内精品视频666| 久久婷婷久久一区二区三区| 亚洲一区二区在线观看视频 | 国产专区综合网| 日韩精品影音先锋| 蜜臀av性久久久久蜜臀aⅴ流畅| 日本道精品一区二区三区| 亚洲日本青草视频在线怡红院| 成人av在线一区二区三区| 日本一区二区成人| 91老师国产黑色丝袜在线| 亚洲色图一区二区三区| 欧美在线观看禁18| 午夜精品免费在线观看| 国产在线精品一区二区夜色| 亚洲日本免费电影| 国产精品自拍毛片| 欧美日韩国产一区二区三区地区| 国产精品久久久一区麻豆最新章节| 午夜久久福利影院| 国产精品二三区| 国产精品午夜久久| 成人av在线一区二区| 亚洲色图在线看| 日韩一区二区三区四区五区六区| 依依成人综合视频| 99久久综合精品| 久久五月婷婷丁香社区| 亚洲自拍偷拍欧美| 99久久国产综合精品色伊| 日韩欧美中文字幕公布| 精品久久国产97色综合| 蜜臀av一区二区| 欧美午夜精品电影| 日韩福利视频网| 成人性生交大片免费看中文| 国产欧美一区二区精品忘忧草| 国产成人av一区二区三区在线观看| 欧美久久久久中文字幕| 国产在线观看免费一区| 亚洲婷婷综合久久一本伊一区| 欧美一级久久久| 国内成人免费视频| 亚洲女厕所小便bbb| 欧美精品在线一区二区三区| 精品亚洲成a人在线观看 | 亚洲一区在线观看视频| 色综合天天综合网国产成人综合天 | 精品一区二区影视| 亚洲男人的天堂av| 日韩欧美在线影院| 色诱视频网站一区| 狠狠色狠狠色综合| 天堂一区二区在线免费观看| 26uuu色噜噜精品一区| 亚洲精品大片www| 欧美日韩亚洲高清一区二区| 成人精品电影在线观看| 粉嫩嫩av羞羞动漫久久久 | 成人免费观看视频| 天堂成人国产精品一区| 午夜不卡av在线| 亚洲精品中文字幕在线观看| 亚洲欧洲美洲综合色网| 亚洲免费观看高清完整版在线观看 | 欧美性生活一区| 欧美日韩免费一区二区三区| 在线观看av不卡| 6080午夜不卡| 国产欧美一区二区三区鸳鸯浴| 国产欧美va欧美不卡在线| 亚洲青青青在线视频| 亚洲国产一区二区a毛片| 亚洲国产精品人人做人人爽| 强制捆绑调教一区二区| 国产精品一级二级三级| 日本福利一区二区| 国产精品视频第一区| 亚洲女人小视频在线观看| 日韩黄色免费电影| 国产69精品久久久久毛片| 99久久er热在这里只有精品66| 91精品蜜臀在线一区尤物| 中文字幕av在线一区二区三区| 一区二区三区在线影院| 国产一区三区三区| 国产很黄免费观看久久| 99综合电影在线视频| 日韩欧美一二三四区| 国产精品亲子伦对白| 麻豆国产91在线播放| a4yy欧美一区二区三区| 久久精品在这里| 蜜桃久久av一区| 欧美麻豆精品久久久久久| 日精品一区二区| 欧美亚洲高清一区二区三区不卡| 国产精品毛片大码女人| 97久久久精品综合88久久| 一区二区三区小说| 欧美精品国产精品| 免费精品99久久国产综合精品| 日韩欧美成人午夜| 国产另类ts人妖一区二区| 久久免费精品国产久精品久久久久 | 欧美另类变人与禽xxxxx| 国产日韩精品一区| 精品午夜一区二区三区在线观看| 欧美视频在线观看一区二区| 欧美国产日韩亚洲一区| 高清国产午夜精品久久久久久| 久久伊人中文字幕| 黄网站免费久久|