> On Sep 9, 2015, at 4:07 PM, Xiangdong <[email protected]> wrote:
> 
> Each time I call my Jacobian function, it generates the Jacoiban matrix from 
> scratch by inserting entries.

    You mean you create a new matrix? With MatCreate or MatCreateXXX()? 

    Why do this? Why not just reuse the one that is passed in? It will be more 
efficient.

> The result of this assembling process gives the same nonzero pattern as in 
> the previous iteration. Can SNES/KSP track this too?

  If you are creating a new matrix, no.

  Barry

> 
> Thanks.
> 
> Xiangdong 
> 
> On Wed, Sep 9, 2015 at 5:01 PM, Barry Smith <[email protected]> wrote:
> 
>   Mat now keeps track of its nonzero pattern. If you do not change the 
> pattern by inserting values then SNES/KSP will automatically keep the same 
> pattern and optimize for it.
> 
>   Barry
> 
> > On Sep 9, 2015, at 3:57 PM, Xiangdong <[email protected]> wrote:
> >
> > Hello everyone,
> >
> > As mentioned in the 3.5 changes, MatStructure argument is removed from 
> > SNESSetJacobian(). If each time, my Jacobian always has 
> > same_nonzero_pattern. How do I pass this information to SNES or the KSP? I 
> > only find reuse same preconditioner, but not reuse same pattern.
> >
> > Thank you.
> >
> > Xiangdong
> 
> 

Reply via email to