Thank you so much Matthew. I'll try to wrap the Jacobian inverse as a
MatShell and pass it to SLEPc.

On Mon, Nov 6, 2017 at 2:42 PM, Matthew Knepley <[email protected]> wrote:

> On Mon, Nov 6, 2017 at 2:11 PM, Bikash Kanungo <[email protected]> wrote:
>
>> Hi,
>>
>> I would like to access the approximate Jacobian in quasi-Newton solvers
>> (e.g., BFGS) to analyze its condition number. I guess for BFGS, where the
>> approximate Jacobian is built from outer products of several vectors coming
>> from current and previous gradient vectors, the approximate Jacobian might
>> not be stored explicitly as a matrix and instead the Jacobian times a
>> vector is performed in a matrix-free manner. My reason for believing so is
>> the fact that when I try to retrieve the Jacobian matrix using
>> SNESGetJacobian and feed it to SLEPc, I incur segmentation fault at
>> EPSSetOperators.
>>
>> If that's the case, is there a way to still get access to the approximate
>> Jacobian and feed it to SLEPc for eigen analysis, like with the use of
>> MatShell operations?
>>
>
> There is no code in SNESQN to apply the Jacobian, just its inverse. You
> could wrap up that code in a MatShell and hand it to SLEPc. I am not
> sure what you are looking for, but its doable. I would think there are
> analytic expressions or at least bounds for the condition number.
>
>   Thanks,
>
>      Matt
>
>
>> Thanks,
>> Bikash
>>
>> --
>> Bikash S. Kanungo
>> PhD Student
>> Computational Materials Physics Group
>> Mechanical Engineering
>> University of Michigan
>>
>>
>
>
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which their
> experiments lead.
> -- Norbert Wiener
>
> https://www.cse.buffalo.edu/~knepley/ <http://www.caam.rice.edu/~mk51/>
>



-- 
Bikash S. Kanungo
PhD Student
Computational Materials Physics Group
Mechanical Engineering
University of Michigan

Reply via email to