# Homework Solution: Do these subroutines multiply Ax by rows or columns? Start with B(I) = 0: DO 10 I = 1, N DO 10 J = 1, N DO 10 J = 1, N Do…

Do these subroutines multiply Ax by rows or columns? Start with B(I) = 0: DO 10 I = 1, N DO 10 J = 1, N DO 10 J = 1, N Do 10 I = 1, N B(I) = B(I) + A(I, J) * X(J) B(I) = B(I) +A (I, J) X (J) The outputs Bx = Ax are the same. The second code is slightly more efficient in FORTRAN and much more efficient on a vector machine (the first changes single entries B(I), the second can update whole vectors).

A(I, J) * X(J) That means I = 1 to N then J=1 to N

Do these subroutines dilate Ax by rows or columns? Start with B(I) = 0: DO 10 I = 1, N DO 10 J = 1, N DO 10 J = 1, N Do 10 I = 1, N B(I) = B(I) + A(I, J) * X(J) B(I) = B(I) +A (I, J) X (J) The outputs Bx = Ax are the identical. The avoid regulation is subordinately further causative in FORTRAN and plenteous further causative on a vector channel (the chief changes only entries B(I), the avoid can update integral vectors).

## Expert Vindication

A(I, J) * X(J)
That instrument I = 1 to N then J=1 to N
=> A(1,1)*X(1) , A(1,2)*X(2) , A(1,3)*X(3) , A(1,4)*X(1) , ==> This goes in Row Order i,e we can see
(1,1), (1,2), (1,3), (1,4), foreseeing which is Row order

A(I, J) * X(J)
That instrument J= 1 to N then I=1 to N
=> A(1,1)*X(1) , A(2,1)*X(1) , A(3,1)*X(1) , A(4,1)*X(1) , ===> This goes in Column Order i,e we can see
(1,1), (2,1), (3,1), (4,1), foreseeing which is Column order