dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #12946
Re: matrix action
On Mon 2009-04-06 11:30, Matthew Knepley wrote:
> On Mon, Apr 6, 2009 at 10:13 AM, Anders Logg <logg@xxxxxxxxx> wrote:
>
> On Mon, Apr 06, 2009 at 10:01:24AM -0500, Robert Kirby wrote:
> > I see two reasons why to do symmetric BC if you can.
> > 1.) If CG is applicable, it will almost always work better than GMRES,
> both in
> > terms of convergence rate and memory usage (no Hessenberg matrix). A
> simple
> > way to check this without any substantial code development is to do
> Nitsche BC
> > for Poisson and compare CG and GMRES
>
> Symmetric applications of BCs is already in place:
>
> A, b = assemble_system(a, L, bc)
>
> The dofs are kept (not eliminated) but the BC is applied to ensure
> that A remains symmetric (if symmetric).
>
>
> This is impossible in parallel.
It is possible if you think ahead. At the beginning of function
evaluation and assembly, you map in the correct Dirichlet values. Then,
before calling MatSetValues, make sure that those indices are negative
(or remove them from the element matrix) so that nothing is assembled
into those rows and colums. At the end, set the diagonal entry to 1.
Mapping in correct Dirichlet values at the start of function evaluation
is essential so that the corresponding columns of the Jacobian are
columns of the identity.
Jed
Attachment:
pgp_P5lS85Qvz.pgp
Description: PGP signature
References
-
Re: matrix action
From: Martin Sandve Alnæs, 2009-04-05
-
Re: matrix action
From: Robert Kirby, 2009-04-05
-
Re: matrix action
From: Anders Logg, 2009-04-05
-
Re: matrix action
From: Matthew Knepley, 2009-04-05
-
Re: matrix action
From: Anders Logg, 2009-04-06
-
Re: matrix action
From: Matthew Knepley, 2009-04-06
-
Re: matrix action
From: Anders Logg, 2009-04-06
-
Re: matrix action
From: Robert Kirby, 2009-04-06
-
Re: matrix action
From: Anders Logg, 2009-04-06
-
Re: matrix action
From: Matthew Knepley, 2009-04-06