In this tutorial the first loop in the code makes an UT array. Or, at least it's supposed to.
Looking at this code using the debugger with breaks set at 32 and 34 I get the following results for the loop indexes: k=1, j=2, i=2 for the first iteration of the code.
Line 32 shows the factor, line 34 shows the code to zero out the following columns below the index element.
At line 32: factor = A(2,1)/A(1,1) is evaluated at the given index values which is OK. A(1,1) to normalize the row and A(2,1) to get rid of the first col in the following row.
At line 34 we get A(i,j)=A(i,j)-factor*A(k,j) which resolves to
A(2,2)=A(2,2)-factor*A(1,2)using the i, j, k values.
This code should resolve to A(2,1)=A(2,1) - factor * A(1,1) to set A(2,1) to zero, the rest of the loop changes the other elements in this row by the same factor. So this loop is screwed up. If I change the code so A(2,1) is used where it should, the element is now zero, but the code shows an index error when I run it. So I'll have to monkey around with the code to make the UT array, but there is definitely a problem with this example!
And the last loop back substitutes to get the solution: I hope the last loop works as I have not tried it yet! Since
I modified the original code to make debugging simpler: I hard wired in the A and b arrays, and deleted the back substitution section, so I can focus only on the UT matrix code.
There is a link to post questions about problems on the tutorial page, and it looks like it posts to this forum, but when I do post a message I can't find the post. So I am making this post directly here where I know it will be posted and I can see the results.