[petsc-users] Question about using MatSNESMFWPSetComputeNormU
Matthew Knepley
knepley at gmail.com
Thu Aug 18 11:44:29 CDT 2016
On Thu, Aug 18, 2016 at 11:42 AM, 최경준 <kyungjun.choi92 at gmail.com> wrote:
> Thanks for your helpful answers.
>
> Here's another question...
>
> As I read some example PETSc codes, I noticed that there should be a
> preconditioning matrix (e.g. approx. jacobian matrix) when using
> MatCreateSNESMF().
>
> I mean,
> after calling MatCreateSNESMF(snes, A, ier),
> there should be another matrix preA(preconditioning matrix) to use
> SNESSetJacobian(snes, A, preA, FormJacobian, ctx, ier).
>
>
> 1) Is there any way that I can use matrix-free method without making
> preconditioning matrix?
>
Don't use a preconditioner. As you might expect, this does not often work
out well.
> 2) I have a reference code, and the code adopts
>
> MatFDColoringCreate()
> and finally uses
> SNESComputeJacobianDefaultColor() at FormJacobian stage.
>
> But I can't see the inside of the fdcolor and I'm curious of this
> mechanism. Can you explain this very briefly or tell me an example code
> that I can refer to. ( I think none of PETSc example code is using
> fdcolor..)
>
This is the default, so there is no need for all that code. We use naive
graph 2-coloring. I think there might be a review article by Alex Pothen
about that.
Thanks,
Matt
>
> Best,
>
> Kyungjun.
>
> 2016-08-19 0:54 GMT+09:00 Matthew Knepley <knepley at gmail.com>:
>
>> On Thu, Aug 18, 2016 at 10:39 AM, 최경준 <kyungjun.choi92 at gmail.com> wrote:
>>
>>> 1) I wanna know the difference between applying option with command line
>>> and within source code.
>>> From my experience, command line option helps set other default settings
>>> that I didn't applied, I guess.
>>>
>>
>> The command line arguments are applied to an object when
>> *SetFromOptions() is called, so in this case
>> you want SNESSetFromOptions() on the solver. There should be no
>> difference from using the API.
>>
>>
>>> 2) I made a matrix-free matrix with MatCreateSNESMF function, and every
>>> time I check my snes context with SNESView,
>>>
>>> Mat Object: 1 MPI processes
>>> type: mffd
>>> rows=11616, cols=11616
>>> Matrix-free approximation:
>>> err=1.49012e-08 (relative error in function evaluation)
>>> The compute h routine has not yet been set
>>>
>>> at the end of line shows there's no routine for computing h value.
>>> I used MatMFFDWPSetComputeNormU function, but it didn't work I think.
>>> Is it ok if I leave the h value that way? Or should I have to set h
>>> computing routine?
>>>
>>
>> I am guessing you are calling the function on a different object from the
>> one that is viewed here.
>> However, there will always be a default function for computing h.
>>
>> Thanks,
>>
>> Matt
>>
>>
>>> Kyungjun.
>>>
>>> 2016-08-18 23:18 GMT+09:00 Matthew Knepley <knepley at gmail.com>:
>>>
>>>> On Thu, Aug 18, 2016 at 8:35 AM, 최경준 <kyungjun.choi92 at gmail.com> wrote:
>>>>
>>>>> Hi, I'm trying to set my SNES matrix-free with Walker & Pernice way of
>>>>> computing h value.
>>>>>
>>>>> I found above command (MatSNESMFWPSetComputeNormU) but my fortran
>>>>> compiler couldn't fine any reference of that command.
>>>>>
>>>>> I checked Petsc changes log, but there weren't any mentions about that
>>>>> command.
>>>>>
>>>>> Should I have to include another specific header file?
>>>>>
>>>>
>>>> We have this function
>>>>
>>>> http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpage
>>>> s/Mat/MatMFFDWPSetComputeNormU.html
>>>>
>>>> but I would recommend using the command line option
>>>>
>>>> *-mat_mffd_compute_normu*
>>>>
>>>> Thanks,
>>>>
>>>> Matt
>>>>
>>>> Thank you always.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> 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
>>>>
>>>
>>>
>>
>>
>> --
>> 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
>>
>
>
--
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160818/66628d0d/attachment.html>
More information about the petsc-users
mailing list