[petsc-users] Getting access to matrix rows without and setting values simultaneously

Jed Brown jed at 59A2.org
Thu Jun 16 10:40:07 CDT 2011


On Thu, Jun 16, 2011 at 17:34, Matthew Knepley <knepley at gmail.com> wrote:

> Yes, you can do MF applications of A' A. You could just make a MatShell
> that called MatMult and MatMultTranspose.
>

MatShell is not necessary, just use MatCreateTranspose().

http://www.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-dev/docs/manualpages/Mat/MatCreateTranspose.html

But I think Alexander is clear on that part.


> For modifying the matrix, MatGetRow() IF you are using an AIJ matrix,
> return a pointer directly to the values.
>

This is only for SeqAIJ.


Alexander, could you clarify where in the Gauss-Newton procedure you
outlined is the dense matrix on which you need to do the nonlinear row
operation?

Also, the matrix A'*A has a huge null space. What sort of regularization are
you using.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20110616/9c5bc937/attachment.htm>


More information about the petsc-users mailing list