⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zlarfx.c

📁 DTMK软件开发包,此为开源软件,是一款很好的医学图像开发资源.
💻 C
📖 第 1 页 / 共 5 页
字号:
/*<          V5 = DCONJG( V( 5 ) ) >*/
        d_cnjg(&z__1, &v[5]);
        v5.r = z__1.r, v5.i = z__1.i;
/*<          T5 = TAU*DCONJG( V5 ) >*/
        d_cnjg(&z__2, &v5);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t5.r = z__1.r, t5.i = z__1.i;
/*<          V6 = DCONJG( V( 6 ) ) >*/
        d_cnjg(&z__1, &v[6]);
        v6.r = z__1.r, v6.i = z__1.i;
/*<          T6 = TAU*DCONJG( V6 ) >*/
        d_cnjg(&z__2, &v6);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t6.r = z__1.r, t6.i = z__1.i;
/*<          V7 = DCONJG( V( 7 ) ) >*/
        d_cnjg(&z__1, &v[7]);
        v7.r = z__1.r, v7.i = z__1.i;
/*<          T7 = TAU*DCONJG( V7 ) >*/
        d_cnjg(&z__2, &v7);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t7.r = z__1.r, t7.i = z__1.i;
/*<          V8 = DCONJG( V( 8 ) ) >*/
        d_cnjg(&z__1, &v[8]);
        v8.r = z__1.r, v8.i = z__1.i;
/*<          T8 = TAU*DCONJG( V8 ) >*/
        d_cnjg(&z__2, &v8);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t8.r = z__1.r, t8.i = z__1.i;
/*<          V9 = DCONJG( V( 9 ) ) >*/
        d_cnjg(&z__1, &v[9]);
        v9.r = z__1.r, v9.i = z__1.i;
/*<          T9 = TAU*DCONJG( V9 ) >*/
        d_cnjg(&z__2, &v9);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t9.r = z__1.r, t9.i = z__1.i;
/*<          V10 = DCONJG( V( 10 ) ) >*/
        d_cnjg(&z__1, &v[10]);
        v10.r = z__1.r, v10.i = z__1.i;
/*<          T10 = TAU*DCONJG( V10 ) >*/
        d_cnjg(&z__2, &v10);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t10.r = z__1.r, t10.i = z__1.i;
/*<          DO 200 J = 1, N >*/
        i__1 = *n;
        for (j = 1; j <= i__1; ++j) {
/*<    >*/
            i__2 = j * c_dim1 + 1;
            z__10.r = v1.r * c__[i__2].r - v1.i * c__[i__2].i, z__10.i = v1.r 
                    * c__[i__2].i + v1.i * c__[i__2].r;
            i__3 = j * c_dim1 + 2;
            z__11.r = v2.r * c__[i__3].r - v2.i * c__[i__3].i, z__11.i = v2.r 
                    * c__[i__3].i + v2.i * c__[i__3].r;
            z__9.r = z__10.r + z__11.r, z__9.i = z__10.i + z__11.i;
            i__4 = j * c_dim1 + 3;
            z__12.r = v3.r * c__[i__4].r - v3.i * c__[i__4].i, z__12.i = v3.r 
                    * c__[i__4].i + v3.i * c__[i__4].r;
            z__8.r = z__9.r + z__12.r, z__8.i = z__9.i + z__12.i;
            i__5 = j * c_dim1 + 4;
            z__13.r = v4.r * c__[i__5].r - v4.i * c__[i__5].i, z__13.i = v4.r 
                    * c__[i__5].i + v4.i * c__[i__5].r;
            z__7.r = z__8.r + z__13.r, z__7.i = z__8.i + z__13.i;
            i__6 = j * c_dim1 + 5;
            z__14.r = v5.r * c__[i__6].r - v5.i * c__[i__6].i, z__14.i = v5.r 
                    * c__[i__6].i + v5.i * c__[i__6].r;
            z__6.r = z__7.r + z__14.r, z__6.i = z__7.i + z__14.i;
            i__7 = j * c_dim1 + 6;
            z__15.r = v6.r * c__[i__7].r - v6.i * c__[i__7].i, z__15.i = v6.r 
                    * c__[i__7].i + v6.i * c__[i__7].r;
            z__5.r = z__6.r + z__15.r, z__5.i = z__6.i + z__15.i;
            i__8 = j * c_dim1 + 7;
            z__16.r = v7.r * c__[i__8].r - v7.i * c__[i__8].i, z__16.i = v7.r 
                    * c__[i__8].i + v7.i * c__[i__8].r;
            z__4.r = z__5.r + z__16.r, z__4.i = z__5.i + z__16.i;
            i__9 = j * c_dim1 + 8;
            z__17.r = v8.r * c__[i__9].r - v8.i * c__[i__9].i, z__17.i = v8.r 
                    * c__[i__9].i + v8.i * c__[i__9].r;
            z__3.r = z__4.r + z__17.r, z__3.i = z__4.i + z__17.i;
            i__10 = j * c_dim1 + 9;
            z__18.r = v9.r * c__[i__10].r - v9.i * c__[i__10].i, z__18.i = 
                    v9.r * c__[i__10].i + v9.i * c__[i__10].r;
            z__2.r = z__3.r + z__18.r, z__2.i = z__3.i + z__18.i;
            i__11 = j * c_dim1 + 10;
            z__19.r = v10.r * c__[i__11].r - v10.i * c__[i__11].i, z__19.i = 
                    v10.r * c__[i__11].i + v10.i * c__[i__11].r;
            z__1.r = z__2.r + z__19.r, z__1.i = z__2.i + z__19.i;
            sum.r = z__1.r, sum.i = z__1.i;
/*<             C( 1, J ) = C( 1, J ) - SUM*T1 >*/
            i__2 = j * c_dim1 + 1;
            i__3 = j * c_dim1 + 1;
            z__2.r = sum.r * t1.r - sum.i * t1.i, z__2.i = sum.r * t1.i + 
                    sum.i * t1.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 2, J ) = C( 2, J ) - SUM*T2 >*/
            i__2 = j * c_dim1 + 2;
            i__3 = j * c_dim1 + 2;
            z__2.r = sum.r * t2.r - sum.i * t2.i, z__2.i = sum.r * t2.i + 
                    sum.i * t2.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 3, J ) = C( 3, J ) - SUM*T3 >*/
            i__2 = j * c_dim1 + 3;
            i__3 = j * c_dim1 + 3;
            z__2.r = sum.r * t3.r - sum.i * t3.i, z__2.i = sum.r * t3.i + 
                    sum.i * t3.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 4, J ) = C( 4, J ) - SUM*T4 >*/
            i__2 = j * c_dim1 + 4;
            i__3 = j * c_dim1 + 4;
            z__2.r = sum.r * t4.r - sum.i * t4.i, z__2.i = sum.r * t4.i + 
                    sum.i * t4.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 5, J ) = C( 5, J ) - SUM*T5 >*/
            i__2 = j * c_dim1 + 5;
            i__3 = j * c_dim1 + 5;
            z__2.r = sum.r * t5.r - sum.i * t5.i, z__2.i = sum.r * t5.i + 
                    sum.i * t5.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 6, J ) = C( 6, J ) - SUM*T6 >*/
            i__2 = j * c_dim1 + 6;
            i__3 = j * c_dim1 + 6;
            z__2.r = sum.r * t6.r - sum.i * t6.i, z__2.i = sum.r * t6.i + 
                    sum.i * t6.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 7, J ) = C( 7, J ) - SUM*T7 >*/
            i__2 = j * c_dim1 + 7;
            i__3 = j * c_dim1 + 7;
            z__2.r = sum.r * t7.r - sum.i * t7.i, z__2.i = sum.r * t7.i + 
                    sum.i * t7.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 8, J ) = C( 8, J ) - SUM*T8 >*/
            i__2 = j * c_dim1 + 8;
            i__3 = j * c_dim1 + 8;
            z__2.r = sum.r * t8.r - sum.i * t8.i, z__2.i = sum.r * t8.i + 
                    sum.i * t8.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 9, J ) = C( 9, J ) - SUM*T9 >*/
            i__2 = j * c_dim1 + 9;
            i__3 = j * c_dim1 + 9;
            z__2.r = sum.r * t9.r - sum.i * t9.i, z__2.i = sum.r * t9.i + 
                    sum.i * t9.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( 10, J ) = C( 10, J ) - SUM*T10 >*/
            i__2 = j * c_dim1 + 10;
            i__3 = j * c_dim1 + 10;
            z__2.r = sum.r * t10.r - sum.i * t10.i, z__2.i = sum.r * t10.i + 
                    sum.i * t10.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<   200    CONTINUE >*/
/* L200: */
        }
/*<          GO TO 410 >*/
        goto L410;
/*<       ELSE >*/
    } else {

/*        Form  C * H, where H has order n. */

/*<    >*/
        switch (*n) {
            case 1:  goto L210;
            case 2:  goto L230;
            case 3:  goto L250;
            case 4:  goto L270;
            case 5:  goto L290;
            case 6:  goto L310;
            case 7:  goto L330;
            case 8:  goto L350;
            case 9:  goto L370;
            case 10:  goto L390;
        }

/*        Code for general N */

/*        w := C * v */

/*<    >*/
        zgemv_("No transpose", m, n, &c_b2, &c__[c_offset], ldc, &v[1], &c__1,
                 &c_b1, &work[1], &c__1, (ftnlen)12);

/*        C := C - tau * w * v' */

/*<          CALL ZGERC( M, N, -TAU, WORK, 1, V, 1, C, LDC ) >*/
        z__1.r = -tau->r, z__1.i = -tau->i;
        zgerc_(m, n, &z__1, &work[1], &c__1, &v[1], &c__1, &c__[c_offset], 
                ldc);
/*<          GO TO 410 >*/
        goto L410;
/*<   210    CONTINUE >*/
L210:

/*        Special code for 1 x 1 Householder */

/*<          T1 = ONE - TAU*V( 1 )*DCONJG( V( 1 ) ) >*/
        z__3.r = tau->r * v[1].r - tau->i * v[1].i, z__3.i = tau->r * v[1].i 
                + tau->i * v[1].r;
        d_cnjg(&z__4, &v[1]);
        z__2.r = z__3.r * z__4.r - z__3.i * z__4.i, z__2.i = z__3.r * z__4.i 
                + z__3.i * z__4.r;
        z__1.r = 1. - z__2.r, z__1.i = 0. - z__2.i;
        t1.r = z__1.r, t1.i = z__1.i;
/*<          DO 220 J = 1, M >*/
        i__1 = *m;
        for (j = 1; j <= i__1; ++j) {
/*<             C( J, 1 ) = T1*C( J, 1 ) >*/
            i__2 = j + c_dim1;
            i__3 = j + c_dim1;
            z__1.r = t1.r * c__[i__3].r - t1.i * c__[i__3].i, z__1.i = t1.r * 
                    c__[i__3].i + t1.i * c__[i__3].r;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<   220    CONTINUE >*/
/* L220: */
        }
/*<          GO TO 410 >*/
        goto L410;
/*<   230    CONTINUE >*/
L230:

/*        Special code for 2 x 2 Householder */

/*<          V1 = V( 1 ) >*/
        v1.r = v[1].r, v1.i = v[1].i;
/*<          T1 = TAU*DCONJG( V1 ) >*/
        d_cnjg(&z__2, &v1);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t1.r = z__1.r, t1.i = z__1.i;
/*<          V2 = V( 2 ) >*/
        v2.r = v[2].r, v2.i = v[2].i;
/*<          T2 = TAU*DCONJG( V2 ) >*/
        d_cnjg(&z__2, &v2);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t2.r = z__1.r, t2.i = z__1.i;
/*<          DO 240 J = 1, M >*/
        i__1 = *m;
        for (j = 1; j <= i__1; ++j) {
/*<             SUM = V1*C( J, 1 ) + V2*C( J, 2 ) >*/
            i__2 = j + c_dim1;
            z__2.r = v1.r * c__[i__2].r - v1.i * c__[i__2].i, z__2.i = v1.r * 
                    c__[i__2].i + v1.i * c__[i__2].r;
            i__3 = j + (c_dim1 << 1);
            z__3.r = v2.r * c__[i__3].r - v2.i * c__[i__3].i, z__3.i = v2.r * 
                    c__[i__3].i + v2.i * c__[i__3].r;
            z__1.r = z__2.r + z__3.r, z__1.i = z__2.i + z__3.i;
            sum.r = z__1.r, sum.i = z__1.i;
/*<             C( J, 1 ) = C( J, 1 ) - SUM*T1 >*/
            i__2 = j + c_dim1;
            i__3 = j + c_dim1;
            z__2.r = sum.r * t1.r - sum.i * t1.i, z__2.i = sum.r * t1.i + 
                    sum.i * t1.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<             C( J, 2 ) = C( J, 2 ) - SUM*T2 >*/
            i__2 = j + (c_dim1 << 1);
            i__3 = j + (c_dim1 << 1);
            z__2.r = sum.r * t2.r - sum.i * t2.i, z__2.i = sum.r * t2.i + 
                    sum.i * t2.r;
            z__1.r = c__[i__3].r - z__2.r, z__1.i = c__[i__3].i - z__2.i;
            c__[i__2].r = z__1.r, c__[i__2].i = z__1.i;
/*<   240    CONTINUE >*/
/* L240: */
        }
/*<          GO TO 410 >*/
        goto L410;
/*<   250    CONTINUE >*/
L250:

/*        Special code for 3 x 3 Householder */

/*<          V1 = V( 1 ) >*/
        v1.r = v[1].r, v1.i = v[1].i;
/*<          T1 = TAU*DCONJG( V1 ) >*/
        d_cnjg(&z__2, &v1);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t1.r = z__1.r, t1.i = z__1.i;
/*<          V2 = V( 2 ) >*/
        v2.r = v[2].r, v2.i = v[2].i;
/*<          T2 = TAU*DCONJG( V2 ) >*/
        d_cnjg(&z__2, &v2);
        z__1.r = tau->r * z__2.r - tau->i * z__2.i, z__1.i = tau->r * z__2.i 
                + tau->i * z__2.r;
        t2.r = z__1.r, t2.i = z__1.i;
/*<          V3 = V( 3 ) >*/
        v3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -