Dear all,

In my application, I am doing quite a lot of assignments between 
NumericVector instances (which always are PetscVector instances in my 
case), and since I am lazily most of the time working in opt mode, I 
didn't realize that I was sometimes assigning vectors of different 
type, that is in particular

v = w

where v is a parallel vector and w is a ghosted vector.

I now ran my application in devel mode for some other reasons and 
noted that this violates an assert.  Well, on the other hand, there 
seems to me no principal problem in doing such an assignment since v 
requires less information than w provides.  Therefore, I would suggest 
to explicitely allow assignments of this type here.  In particular, in 
opt mode, this seemed to work quite well (effectively, it just does 
VecCopy() in this case).

If you guys agree, I would change PetscVector::operator= accordingly 
after asking in the petsc-users list whether this is an allowed 
operation or, if not, what else operation would be appropriate at this 
point (unless Jed should just comment on this right away, in which 
case I wouldn't have to ask...).

Best Regards,

Tim

-- 
Dr. Tim Kroeger
tim.kroe...@mevis.fraunhofer.de            Phone +49-421-218-7710
tim.kroe...@cevis.uni-bremen.de            Fax   +49-421-218-4236
www.mevis.fraunhofer.de/~tim

Fraunhofer MEVIS, Institute for Medical Image Computing
Universitaetsallee 29, 28359 Bremen, Germany


------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to