Randy, Why not just call MatTranspose(A,A2,ierr) call MatTranspose(P,P2,ierr) KSPSetOperators(ksp,A2,P2... etc?
On Mon, 25 Sep 2006, Randall Mackie wrote: > If one calls KSPSolveTranspose, how does PETSc actually do the solve? > Does it simply use the transpose of the pre-computed preconditioner > as the preconditioner for the Transpose solve, or does it recompute > the ILU of the transpose matrix? I suspect they are not the same. It uses MatMultTranspose() and PCApplyTranspose(). So, no it does not refactor the matrix. Barry > > As posted in earlier emails, the preconditioned and true residual numbers > don't seem correct to me, but the results are fine (I have other ways > to check the results). > > I've tried taking the transpose of the matrix within my Fortran > code, but I'm not quite sure how to get this to work. It requires > passing of a NULL pointer, but it's not clear how to do this > in Fortran. > > What I would like to do is to get the transpose of my matrix within > my code, and then do a KSPSolve on that to confirm whether the > residual numbers I'm getting from KSPSolveTranspose are correct. > > Any pointers on doing this would be appreciated. > > Randy > >
