[petsc-users] snes options for rough solution

Matthew Knepley knepley at gmail.com
Mon Dec 12 15:20:44 CST 2016


On Mon, Dec 12, 2016 at 2:29 AM, Praveen C <cpraveen at gmail.com> wrote:

> Hello Matt
>
> I have attached the detailed output.
>
> Fenics automatically computes Jacobian, so I think Jacobian should be
> correct. I am not able to run the Fenics code without giving the Jacobian.
> I am currently writing a C code where I can test this.
>
> This equation is bit weird. Its like this
>
> u_t = ( K u_x)_x
>
> K = u / sqrt(u_x^2 + eps^2)
>

I do not understand how to show parabolicity in this case. However, I have
a more fundamental misunderstanding. In your code, I see

  R0 = idt*(u-uold)*v*dx + K0*ux*vx*dx

for the residual, which looks like

R0 = u_t + K u_x

to me. Where is the extra derivative you show above?

Thanks,

Matt


> If u > 0, then this is a nonlinear parabolic eqn. Problem is that eps = h
> (mesh size), so at extrema, it is like
>
> u_t = (u/eps)*u_xx
>
> and (1/eps) is approximating a delta function.
>
> Best
> praveen
>
> On Mon, Dec 12, 2016 at 12:41 PM, Matthew Knepley <knepley at gmail.com>
> wrote:
>
>> On Mon, Dec 12, 2016 at 1:04 AM, Matthew Knepley <knepley at gmail.com>
>> wrote:
>>
>>> On Mon, Dec 12, 2016 at 12:56 AM, Praveen C <cpraveen at gmail.com> wrote:
>>>
>>>> Increasing number of snes iterations, I get convergence.
>>>>
>>>> So it is a problem of initial guess being too far from the solution of
>>>> the nonlinear equation.
>>>>
>>>> Solution can be seen here
>>>>
>>>> https://github.com/cpraveen/fenics/blob/master/1d/cosmic_ray
>>>> /cosmic_ray.ipynb
>>>>
>>>
>> Also, how is this a parabolic equation? It looks like u/|u'| to me, which
>> does not look parabolic at all.
>>
>>   Matt
>>
>>
>>> Green curve is solution after two time steps.
>>>>
>>>> It took about 100 snes iterations in first time step and about 50 in
>>>> second time step.
>>>>
>>>> I use exact Jacobian and direct LU solve.
>>>>
>>>
>>> I do not believe its the correct Jacobian. Did you test it as I asked?
>>> Also run with
>>>
>>>   -snes_monitor -ksp_monitor_true_residual -snes_view
>>> -snes_converged_reason
>>>
>>> and then
>>>
>>>   -snes_fd
>>>
>>> and send all the output
>>>
>>>    Matt
>>>
>>>
>>>> Thanks
>>>> praveen
>>>>
>>>
>>>
>>>
>>> --
>>> 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/20161212/a74c1a24/attachment.html>


More information about the petsc-users mailing list