[petsc-users] how to control snes_mf_operator
Zou (Non-US), Ling
ling.zou at inl.gov
Tue Dec 11 15:47:08 CST 2012
thank you Matt. I will try to figure it out. Non-dimensionalization is
certainly something worth to try.
Best,
Ling
On Tue, Dec 11, 2012 at 2:41 PM, Matthew Knepley <knepley at gmail.com> wrote:
> On Tue, Dec 11, 2012 at 1:40 PM, Matthew Knepley <knepley at gmail.com>
> wrote:
> > On Tue, Dec 11, 2012 at 1:34 PM, Zou (Non-US), Ling <ling.zou at inl.gov>
> wrote:
> >> Dear All,
> >>
> >> I have recently had an issue using snes_mf_operator. I've tried to
> figure it
> >> out from PETSc manual and PETSc website but didn't get any luck, so I
> submit
> >> my question here and hope some one could help me out.
> >>
> >> (1)
> >> =================================================================
> >> A little bit background here: my problem has 7 variables, i.e.,
> >>
> >> U = [U0, U1, U2, U3, U4, U5, U6]
> >>
> >> U0 is in the order of 1.
> >> U1, U2, U4 and U5 in the oder of 100.
> >> U3 and U6 are in the order of 1.e8.
> >>
> >> I believe this should be quite common for most PETSc users.
> >>
> >> (2)
> >> =================================================================
> >> My problem here is, U0, by its physical meaning, has to be limited
> between 0
> >> and 1. When PETSc starts to perturb the initial solution of U (which I
> >> believe properly set) to approximate the operation of J (dU), the U0
> get a
> >> perturbation size in the order of 100, which causes problem as U0 has
> to be
> >> smaller than 1.
> >>
> >> From my observation, this same perturbation size, say eps, is applied
> on all
> >> U0, U1, U2, etc. <=== Is this the default setting?
> >> I also guess that this eps, in the order of 100, is determined from my
> >> initial solution vector and other related PETSc parameters. <=== Is my
> >> guessing right?
> >>
> >> (3)
> >> =================================================================
> >> My question: I'd like to avoid a perturbation size ~100 on U0, i.e., I
> have
> >> to limit it to be ~0.01 (or some small number) to avoid the U0 > 1
> >> situation. Is there any way to control that?
> >> Or, is there any advanced option to control the perturbation size on
> >> different variables when using snes_mf_operator?
> >
> > Here is a description of the algorithm for calculating h. It seems to
> > me a better way to do this
> > is to non-dimensionalize first.
>
> I forgot the URL:
>
> http://www.mcs.anl.gov/petsc/petsc-dev/docs/manualpages/Mat/MatCreateMFFD.html#MatCreateMFFD
>
> Matt
>
> > Matt
> >
> >>
> >> Hope my explanation is clear. Please let me know if it is not.
> >>
> >>
> >> Best Regards,
> >>
> >> Ling
> >>
> >
> >
> >
> > --
> > 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/20121211/6be71fa2/attachment.html>
More information about the petsc-users
mailing list