- Peter
On Fri, Sep 3, 2010 at 6:46 PM, Garth N. Wells <gnw20@xxxxxxxxx
<mailto:gnw20@xxxxxxxxx>> wrote:
Look at SystemAssembler. It preserves any symmetries.
Garth
On 04/09/10 00:44, Peter Brune wrote:
New question #124031 on DOLFIN:
https://answers.launchpad.net/dolfin/+question/124031
I have gotten into a problem where it's important for the
symmetry of
my operator to be preserved during the application of boundary
conditions. I was able to quickly write up an implementation of
them
that, when applied, made the following changes to A and b to create
A_bc and b_bc (I still have to think about exactly what to do with
the nonlinear x) where x_boundary is given as boundary conditions.
the subscripts _boundary and _interior refer to the part of the
vector or operator restricted to the boundary (both in rows and
columns).
b_bc = (b - A(x_boundary + zero_interior))_interior + x_boundary
A_bc
= A_interior + I_boundary
Is there any particular reason that DOLFIN does it just by setting
certain rows to the identity? I'm trying to use solvers and
preconditioners that only work on symmetric problems, so the present
way of doing things won't work. I asked around about this with
respect to matrix properties and apparently the way I described
above
(or variants) is the only way you can really prove anything about.
This includes weak application.
My implementation works, but given that there is no reliable column
access on the matrix classes it is potentially broken in parallel.
Is there any reason why there are no facilities for column
get/set in
the matrix interface?
_______________________________________________
Mailing list: https://launchpad.net/~dolfin
<https://launchpad.net/%7Edolfin>
Post to : dolfin@xxxxxxxxxxxxxxxxxxx
<mailto:dolfin@xxxxxxxxxxxxxxxxxxx>
Unsubscribe : https://launchpad.net/~dolfin
<https://launchpad.net/%7Edolfin>
More help : https://help.launchpad.net/ListHelp