[petsc-users] FW: 'Preconditioning' with lower-order method

Mark Adams mfadams at lbl.gov
Sun Mar 3 11:09:44 CST 2024


On Sun, Mar 3, 2024 at 11:42 AM Zou, Ling via petsc-users <
petsc-users at mcs.anl.gov> wrote:

> Original email may have been sent to the incorrect place.
>
> See below.
>
>
>
> -Ling
>
>
>
> *From: *Zou, Ling <lzou at anl.gov>
> *Date: *Sunday, March 3, 2024 at 10:34 AM
> *To: *petsc-users <petsc-users-bounces at mcs.anl.gov>
> *Subject: *'Preconditioning' with lower-order method
>
> Hi all,
>
>
>
> I am solving a PDE system over a spatial domain. Numerical methods are:
>
>    - Finite volume method (both 1st and 2nd order implemented)
>    - BDF1 and BDF2 for time integration.
>
> What I have noticed is that 1st order FVM converges much faster than 2nd
> order FVM, regardless the time integration scheme. Well, not surprising
> since 2nd order FVM introduces additional non-linearity.
>
>
>
> I’m thinking about two possible ways to speed up 2nd order FVM, and would
> like to get some thoughts or community knowledge before jumping into code
> implementation.
>
>
>
> Say, let the 2nd order FVM residual function be *F*2(*x*) = 0; and the 1st
> order FVM residual function be *F*1(*x*) = 0.
>
>    1. Option – 1, multi-step for each time step
>
> Step 1: solving *F*1(*x*) = 0 to obtain a temporary solution * x*1
>
> Step 2: feed *x*1 as an initial guess to solve *F*2(*x*) = 0 to obtain
> the final solution.
>
> [Not sure if gain any saving at all]
>
>
>

>    1. Option -2, dynamically changing residual function F(x)
>
> In pseudo code, would be something like.
>
>
>
You can try it. I would doubt the linear version (1) would help. This is
similar to "defect correction" but not the same.

The nonlinear version (2) is something you could try.
I've seen people switch nonlinear solvers like this but not operators.
You could try it.

Mark

> snesFormFunction(SNES snes, Vec u, Vec f, void *)
>
> {
>
>   if (snes.nl_it_no < 4) // 4 being arbitrary here
>
>     f = F1(u);
>
>   else
>
>     f = F2(u);
>
> }
>
>
>
> I know this might be a bit crazy since it may crash after switching
> residual function, still, any thoughts?
>
>
>
> Best,
>
>
>
> -Ling
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20240303/3b49e7f0/attachment-0001.html>


More information about the petsc-users mailing list