Skip to content

Commit f99e804

Browse files
committed
merge trick replacing if i == j.
1 parent 3ebdf9e commit f99e804

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/stdlib_linalg_matrix_functions.fypp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ contains
6161
c = 0.5_${rk}$
6262
allocate (E, source=A2) ; allocate (Q, source=A2)
6363
do concurrent(i=1:n, j=1:n)
64-
E(i, j) = c*E(i, j) ; if (i == j) E(i, j) = 1.0_${rk}$ + E(i, j) ! E = I + c*A2
65-
Q(i, j) = -c*Q(i, j) ; if (i == j) Q(i, j) = 1.0_${rk}$ + Q(i, j) ! Q = I - c*A2
64+
E(i, j) = merge(1.0_${rk}$ + c*E(i, j), c*E(i, j), i == j)
65+
Q(i, j) = merge(1.0_${rk}$ - c*Q(i, j), -c*Q(i, j), i == j)
6666
enddo
6767

6868
! Iteratively compute the Pade approximation.

0 commit comments

Comments
 (0)