TS: high-order with Galerkin spatial discretization, semi-explicit index-1 DAE

Jed Brown jed at 59A2.org
Wed Mar 18 17:27:39 CDT 2009


On Wed 2009-03-18 13:59, Matthew Knepley wrote:
> I cannot understand why you cannot use TSSetMatrices()

TSSetMatrices is only for linear problems and doesn't generalize nicely
to nonlinear problems, especially with matrix-free methods.  The
functionality I'm looking for involves a possibly variable, possibly
singular (with huge null space for DAE), possibly nonlinear (as with fully
implicit moving mesh schemes) Alhs.  With my high-order Galerkin scheme,
Alhs can only be available as MatShell (so MatAXPY is hard to implement)
because an assembled Alhs would be an order of magnitude denser than the
preconditioning matrix associated with the unshifted Jacobian (J=F' if
we are solving Alhs(u,t) u_t = F(u,t)).

This can all be handled in a way that would work nicely with JFNK and
avoid storing Alhs in any form, but I think the user's function
evaluation and matrix assembly needs to provide shifted versions (such
as 1/dt*Alhs-J where J = F'(u)).  The shift is usually a trivial amount
of work during function evaluation and matrix assembly.  Preconditioners
can still be lagged effectively as long as the shift does not change
rapidly.  Even if the shift does change rapidly, reassembling the
preconditioning matrix could still often be avoided by just doing a
lumped shift (function evaluation and matrix-free Jacobians can change
the shift, using a consistent mass matrix, at zero cost).

Is this more clear?

Jed
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20090318/220d63eb/attachment.sig>


More information about the petsc-dev mailing list