On Tuesday, 12 August 2008, Matthew Knepley wrote: > If you ignore entries for the rows and columns associated with BCs, but do > not > eliminate them from the ordering, do you remember to put something on the > diagonal of the Jacobian?
Thank you for the heads up. Indeed my initial intention was to eliminate the lines completely from the matrix structure (i.e. I preallocate zero non-zero entries for these lines), but after checking my code more attentively, I found that was failing to do it correctly because of a subtle error. Unfortunately, even after fixing this error and thus eliminating the lines completely, I can't manage to do this Dirichlet elimination work. This time, the LU preconditioner complains that the matrix has an empty row (which I thought should be permitted). I examined the aij.c code a bit and could tell (to my humble understanding) that using matrices with completely empty rows should work for iterative solvers -- at least the MatMult method does seem to ignore empty lines completely -- but I didn't do actual tests yet. Shouldn't it also be possible to eliminate lines completely even when using direct solving? -- Cristian Tibirna (1-418-) 656-2131 / 4340 Laval University - Quebec, CAN ... http://www.giref.ulaval.ca/~ctibirna Research professional at GIREF ... ctibirna at giref.ulaval.ca
