On Jan 15, 2014, at 9:58 PM, Blaise A Bourdin <bour...@lsu.edu> wrote:
> > On Jan 15, 2014, at 8:00 PM, Barry Smith <bsm...@mcs.anl.gov> wrote: > >> >> On Jan 15, 2014, at 6:56 PM, Blaise A Bourdin <bour...@lsu.edu> wrote: >> >>> >>> On Jan 15, 2014, at 5:26 PM, Barry Smith <bsm...@mcs.anl.gov> wrote: >>> >>>> >>>> On Jan 15, 2014, at 4:32 PM, Jed Brown <j...@jedbrown.org> wrote: >>>> >>>>> Barry Smith <bsm...@mcs.anl.gov> writes: >>>>>> To change this we would need to introduce a way of tracking >>>>>> alreadyprinted per class and per prefix instead of per object. It >>>>>> is unlikely we will change this. We recommend not using >>>>>> VecSetFromOptions() and MatSetFromOptions() in real applications >>>>> >>>>> We really have to do something about the repeated Vec and Mat help when >>>>> there is no prefix. This is by far the most important case. >>>> >>>> Hmm, do we even want people calling VecSetFromOptions() and >>>> MatSetFromOptions()? Especially for more than 1 or 2 “master” items which >>>> will have different prefixes anyways. I don’t think we want calls to >>>> VecSetFromOptions() and MatSetFromOptions() from within other PETSc >>>> classes (except for possible a single master item) that is controlled from >>>> for example a DM. >>> >>> That makes a lot of sense, but when Vecs are created from a Mat or a DM, >>> the call to VecSetFromOptions serves a purpose. In particular, it does the >>> call to VecSetType. How do I get the VecType from a DM? >> >> DMSet/GetMatType() and DMSet/GetVecType() -dm_mat_type -dm_vec_type note >> that these will only print one message for each dm. >> >> Note also that if you have a SNES, KSP, PC, or Mat lying around it is better >> call KSPGetVecs() or MatGetVecs() instead of using VecCreate() since the KSP >> or Mat make sure to provide the Vec with the right layout. > > I am stuck with 3.3 until I find time to port my code to dmplex and to work > on dmplex IO (last time I checked, some essential informations were lost when > using the VTS file format). > The sieve implementation DMGetLocal/GlobalVector calls VecSetFromOptions. %^$&$%^$ Matt :-) > It should be easy to patch now that I know how to get the proper Vec type. > > Blaise > >> >> >> >>> >>> Blaise >>> >>> -- >>> Department of Mathematics and Center for Computation & Technology >>> Louisiana State University, Baton Rouge, LA 70803, USA >>> Tel. +1 (225) 578 1612, Fax +1 (225) 578 4276 >>> http://www.math.lsu.edu/~bourdin > > -- > Department of Mathematics and Center for Computation & Technology > Louisiana State University, Baton Rouge, LA 70803, USA > Tel. +1 (225) 578 1612, Fax +1 (225) 578 4276 > http://www.math.lsu.edu/~bourdin