[petsc-users] printing help

Blaise A Bourdin bourdin at lsu.edu
Wed Jan 15 21:58:15 CST 2014


On Jan 15, 2014, at 8:00 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:

> 
> On Jan 15, 2014, at 6:56 PM, Blaise A Bourdin <bourdin at lsu.edu> wrote:
> 
>> 
>> On Jan 15, 2014, at 5:26 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>> 
>>> 
>>> On Jan 15, 2014, at 4:32 PM, Jed Brown <jed at jedbrown.org> wrote:
>>> 
>>>> Barry Smith <bsmith at 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. 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









More information about the petsc-users mailing list