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?

-- 
You received this question notification because you are a member of
DOLFIN Team, which is an answer contact for DOLFIN.

_______________________________________________
Mailing list: https://launchpad.net/~dolfin
Post to     : dolfin@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dolfin
More help   : https://help.launchpad.net/ListHelp

Reply via email to