Hello, all! I know this will be another easy one, but I just want to be absolutely sure I am doing the right thing. The LAPACK Cholesky factorization function (DPOTRF) documentation says the following:
"If UPLO = 'U', the leading N-by-N upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced."
Now, I know that Fortran arrays are stored in column-major order (meaning the column entries are adjacent in memory), and I would like the diagonal elements accessing the array from my C++ code.
Therefore, clearly A[0] = A[0,0] (the first diagonal element).
However, if the lower triangular part of the matrix is not referenced, what about A[1,1]? Is A[(N + 1] = A[1,1] and A[N] = A[1,0] = 0? Or, since the lower triangular are not referenced, is A[N] = A[1,1]? And then A[2N - 1] = A[2,2]?
Basically, does "not referenced" mean "not present", and thus the entries are offset accordingly, preserving memory? Or does "not referenced" mean contains junk data, but is present for a place holder?
Thank you for any insight!
Best,
Susan

