📄 zlarfx.c
字号:
t6.r = tau->r * v[5].r + tau->i * v[5].i,
t6.i = - tau->r * v[5].i + tau->i * v[5].r;
t7.r = tau->r * v[6].r + tau->i * v[6].i,
t7.i = - tau->r * v[6].i + tau->i * v[6].r;
for (j = 0; j < *m; ++j) {
i__1 = j;
sum.r = v[0].r * c[i__1].r - v[0].i * c[i__1].i,
sum.i = v[0].r * c[i__1].i + v[0].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[1].r * c[i__1].r - v[1].i * c[i__1].i,
sum.i += v[1].r * c[i__1].i + v[1].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[2].r * c[i__1].r - v[2].i * c[i__1].i,
sum.i += v[2].r * c[i__1].i + v[2].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[3].r * c[i__1].r - v[3].i * c[i__1].i,
sum.i += v[3].r * c[i__1].i + v[3].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[4].r * c[i__1].r - v[4].i * c[i__1].i,
sum.i += v[4].r * c[i__1].i + v[4].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[5].r * c[i__1].r - v[5].i * c[i__1].i,
sum.i += v[5].r * c[i__1].i + v[5].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[6].r * c[i__1].r - v[6].i * c[i__1].i,
sum.i += v[6].r * c[i__1].i + v[6].i * c[i__1].r;
i__1 = j;
c[i__1].r -= sum.r * t1.r - sum.i * t1.i,
c[i__1].i -= sum.r * t1.i + sum.i * t1.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t2.r - sum.i * t2.i,
c[i__1].i -= sum.r * t2.i + sum.i * t2.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t3.r - sum.i * t3.i,
c[i__1].i -= sum.r * t3.i + sum.i * t3.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t4.r - sum.i * t4.i,
c[i__1].i -= sum.r * t4.i + sum.i * t4.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t5.r - sum.i * t5.i,
c[i__1].i -= sum.r * t5.i + sum.i * t5.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t6.r - sum.i * t6.i,
c[i__1].i -= sum.r * t6.i + sum.i * t6.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t7.r - sum.i * t7.i,
c[i__1].i -= sum.r * t7.i + sum.i * t7.r;
}
return; /* exit zlarfx */
L350:
/* Special code for 8 x 8 Householder */
t1.r = tau->r * v[0].r + tau->i * v[0].i,
t1.i = - tau->r * v[0].i + tau->i * v[0].r;
t2.r = tau->r * v[1].r + tau->i * v[1].i,
t2.i = - tau->r * v[1].i + tau->i * v[1].r;
t3.r = tau->r * v[2].r + tau->i * v[2].i,
t3.i = - tau->r * v[2].i + tau->i * v[2].r;
t4.r = tau->r * v[3].r + tau->i * v[3].i,
t4.i = - tau->r * v[3].i + tau->i * v[3].r;
t5.r = tau->r * v[4].r + tau->i * v[4].i,
t5.i = - tau->r * v[4].i + tau->i * v[4].r;
t6.r = tau->r * v[5].r + tau->i * v[5].i,
t6.i = - tau->r * v[5].i + tau->i * v[5].r;
t7.r = tau->r * v[6].r + tau->i * v[6].i,
t7.i = - tau->r * v[6].i + tau->i * v[6].r;
t8.r = tau->r * v[7].r + tau->i * v[7].i,
t8.i = - tau->r * v[7].i + tau->i * v[7].r;
for (j = 0; j < *m; ++j) {
i__1 = j;
sum.r = v[0].r * c[i__1].r - v[0].i * c[i__1].i,
sum.i = v[0].r * c[i__1].i + v[0].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[1].r * c[i__1].r - v[1].i * c[i__1].i,
sum.i += v[1].r * c[i__1].i + v[1].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[2].r * c[i__1].r - v[2].i * c[i__1].i,
sum.i += v[2].r * c[i__1].i + v[2].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[3].r * c[i__1].r - v[3].i * c[i__1].i,
sum.i += v[3].r * c[i__1].i + v[3].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[4].r * c[i__1].r - v[4].i * c[i__1].i,
sum.i += v[4].r * c[i__1].i + v[4].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[5].r * c[i__1].r - v[5].i * c[i__1].i,
sum.i += v[5].r * c[i__1].i + v[5].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[6].r * c[i__1].r - v[6].i * c[i__1].i,
sum.i += v[6].r * c[i__1].i + v[6].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[7].r * c[i__1].r - v[7].i * c[i__1].i,
sum.i += v[7].r * c[i__1].i + v[7].i * c[i__1].r;
i__1 = j;
c[i__1].r -= sum.r * t1.r - sum.i * t1.i,
c[i__1].i -= sum.r * t1.i + sum.i * t1.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t2.r - sum.i * t2.i,
c[i__1].i -= sum.r * t2.i + sum.i * t2.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t3.r - sum.i * t3.i,
c[i__1].i -= sum.r * t3.i + sum.i * t3.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t4.r - sum.i * t4.i,
c[i__1].i -= sum.r * t4.i + sum.i * t4.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t5.r - sum.i * t5.i,
c[i__1].i -= sum.r * t5.i + sum.i * t5.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t6.r - sum.i * t6.i,
c[i__1].i -= sum.r * t6.i + sum.i * t6.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t7.r - sum.i * t7.i,
c[i__1].i -= sum.r * t7.i + sum.i * t7.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t8.r - sum.i * t8.i,
c[i__1].i -= sum.r * t8.i + sum.i * t8.r;
}
return; /* exit zlarfx */
L370:
/* Special code for 9 x 9 Householder */
t1.r = tau->r * v[0].r + tau->i * v[0].i,
t1.i = - tau->r * v[0].i + tau->i * v[0].r;
t2.r = tau->r * v[1].r + tau->i * v[1].i,
t2.i = - tau->r * v[1].i + tau->i * v[1].r;
t3.r = tau->r * v[2].r + tau->i * v[2].i,
t3.i = - tau->r * v[2].i + tau->i * v[2].r;
t4.r = tau->r * v[3].r + tau->i * v[3].i,
t4.i = - tau->r * v[3].i + tau->i * v[3].r;
t5.r = tau->r * v[4].r + tau->i * v[4].i,
t5.i = - tau->r * v[4].i + tau->i * v[4].r;
t6.r = tau->r * v[5].r + tau->i * v[5].i,
t6.i = - tau->r * v[5].i + tau->i * v[5].r;
t7.r = tau->r * v[6].r + tau->i * v[6].i,
t7.i = - tau->r * v[6].i + tau->i * v[6].r;
t8.r = tau->r * v[7].r + tau->i * v[7].i,
t8.i = - tau->r * v[7].i + tau->i * v[7].r;
t9.r = tau->r * v[8].r + tau->i * v[8].i,
t9.i = - tau->r * v[8].i + tau->i * v[8].r;
for (j = 0; j < *m; ++j) {
i__1 = j;
sum.r = v[0].r * c[i__1].r - v[0].i * c[i__1].i,
sum.i = v[0].r * c[i__1].i + v[0].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[1].r * c[i__1].r - v[1].i * c[i__1].i,
sum.i += v[1].r * c[i__1].i + v[1].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[2].r * c[i__1].r - v[2].i * c[i__1].i,
sum.i += v[2].r * c[i__1].i + v[2].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[3].r * c[i__1].r - v[3].i * c[i__1].i,
sum.i += v[3].r * c[i__1].i + v[3].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[4].r * c[i__1].r - v[4].i * c[i__1].i,
sum.i += v[4].r * c[i__1].i + v[4].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[5].r * c[i__1].r - v[5].i * c[i__1].i,
sum.i += v[5].r * c[i__1].i + v[5].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[6].r * c[i__1].r - v[6].i * c[i__1].i,
sum.i += v[6].r * c[i__1].i + v[6].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[7].r * c[i__1].r - v[7].i * c[i__1].i,
sum.i += v[7].r * c[i__1].i + v[7].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[8].r * c[i__1].r - v[8].i * c[i__1].i,
sum.i += v[8].r * c[i__1].i + v[8].i * c[i__1].r;
i__1 = j;
c[i__1].r -= sum.r * t1.r - sum.i * t1.i,
c[i__1].i -= sum.r * t1.i + sum.i * t1.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t2.r - sum.i * t2.i,
c[i__1].i -= sum.r * t2.i + sum.i * t2.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t3.r - sum.i * t3.i,
c[i__1].i -= sum.r * t3.i + sum.i * t3.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t4.r - sum.i * t4.i,
c[i__1].i -= sum.r * t4.i + sum.i * t4.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t5.r - sum.i * t5.i,
c[i__1].i -= sum.r * t5.i + sum.i * t5.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t6.r - sum.i * t6.i,
c[i__1].i -= sum.r * t6.i + sum.i * t6.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t7.r - sum.i * t7.i,
c[i__1].i -= sum.r * t7.i + sum.i * t7.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t8.r - sum.i * t8.i,
c[i__1].i -= sum.r * t8.i + sum.i * t8.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t9.r - sum.i * t9.i,
c[i__1].i -= sum.r * t9.i + sum.i * t9.r;
}
return; /* exit zlarfx */
L390:
/* Special code for 10 x 10 Householder */
t1.r = tau->r * v[0].r + tau->i * v[0].i,
t1.i = - tau->r * v[0].i + tau->i * v[0].r;
t2.r = tau->r * v[1].r + tau->i * v[1].i,
t2.i = - tau->r * v[1].i + tau->i * v[1].r;
t3.r = tau->r * v[2].r + tau->i * v[2].i,
t3.i = - tau->r * v[2].i + tau->i * v[2].r;
t4.r = tau->r * v[3].r + tau->i * v[3].i,
t4.i = - tau->r * v[3].i + tau->i * v[3].r;
t5.r = tau->r * v[4].r + tau->i * v[4].i,
t5.i = - tau->r * v[4].i + tau->i * v[4].r;
t6.r = tau->r * v[5].r + tau->i * v[5].i,
t6.i = - tau->r * v[5].i + tau->i * v[5].r;
t7.r = tau->r * v[6].r + tau->i * v[6].i,
t7.i = - tau->r * v[6].i + tau->i * v[6].r;
t8.r = tau->r * v[7].r + tau->i * v[7].i,
t8.i = - tau->r * v[7].i + tau->i * v[7].r;
t9.r = tau->r * v[8].r + tau->i * v[8].i,
t9.i = - tau->r * v[8].i + tau->i * v[8].r;
t10.r = tau->r * v[9].r + tau->i * v[9].i,
t10.i = - tau->r * v[9].i + tau->i * v[9].r;
for (j = 0; j < *m; ++j) {
i__1 = j;
sum.r = v[0].r * c[i__1].r - v[0].i * c[i__1].i,
sum.i = v[0].r * c[i__1].i + v[0].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[1].r * c[i__1].r - v[1].i * c[i__1].i,
sum.i += v[1].r * c[i__1].i + v[1].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[2].r * c[i__1].r - v[2].i * c[i__1].i,
sum.i += v[2].r * c[i__1].i + v[2].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[3].r * c[i__1].r - v[3].i * c[i__1].i,
sum.i += v[3].r * c[i__1].i + v[3].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[4].r * c[i__1].r - v[4].i * c[i__1].i,
sum.i += v[4].r * c[i__1].i + v[4].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[5].r * c[i__1].r - v[5].i * c[i__1].i,
sum.i += v[5].r * c[i__1].i + v[5].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[6].r * c[i__1].r - v[6].i * c[i__1].i,
sum.i += v[6].r * c[i__1].i + v[6].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[7].r * c[i__1].r - v[7].i * c[i__1].i,
sum.i += v[7].r * c[i__1].i + v[7].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[8].r * c[i__1].r - v[8].i * c[i__1].i,
sum.i += v[8].r * c[i__1].i + v[8].i * c[i__1].r;
i__1 += *ldc;
sum.r += v[9].r * c[i__1].r - v[9].i * c[i__1].i,
sum.i += v[9].r * c[i__1].i + v[9].i * c[i__1].r;
i__1 = j;
c[i__1].r -= sum.r * t1.r - sum.i * t1.i,
c[i__1].i -= sum.r * t1.i + sum.i * t1.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t2.r - sum.i * t2.i,
c[i__1].i -= sum.r * t2.i + sum.i * t2.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t3.r - sum.i * t3.i,
c[i__1].i -= sum.r * t3.i + sum.i * t3.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t4.r - sum.i * t4.i,
c[i__1].i -= sum.r * t4.i + sum.i * t4.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t5.r - sum.i * t5.i,
c[i__1].i -= sum.r * t5.i + sum.i * t5.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t6.r - sum.i * t6.i,
c[i__1].i -= sum.r * t6.i + sum.i * t6.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t7.r - sum.i * t7.i,
c[i__1].i -= sum.r * t7.i + sum.i * t7.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t8.r - sum.i * t8.i,
c[i__1].i -= sum.r * t8.i + sum.i * t8.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t9.r - sum.i * t9.i,
c[i__1].i -= sum.r * t9.i + sum.i * t9.r;
i__1 += *ldc;
c[i__1].r -= sum.r * t10.r - sum.i * t10.i,
c[i__1].i -= sum.r * t10.i + sum.i * t10.r;
}
return; /* exit zlarfx */
}
} /* zlarfx_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -