Hello, I want to set a TS object for the time integration of my FV CFD solver.

The equation is M dQ/dt = f(Q) where M is a diagonal mass matrix filled with the cell volumes from my FV discretisation. I've read the PETSc manual and I found some interesting mails in the petsc-users archive, but I still do not understand something.

To me, there is three ways I could set my TS :

   1. F(t, x, x') = Mx' - f(x)   and G(t, x) = 0 (default)
   2. F(t, x, x') = Mx'          and G(t, x) = f(x)
   3. F(t, x, x') = x' (default) and G(t, x) = M^{-1} f(x)

From
(https://lists.mcs.anl.gov/pipermail/petsc-dev/2017-October/021545.html), I think that unless I'm using an IMEX method, whatever F and G, it does F <-- F - G internally, but I would like to be sure.


Will there be a difference be if I use an explicit method, as Euler or RK ? What about implicit method such as BEuler or Theta methods ?

If I use an implicit method (beuler), what happens if I don't give F' and/or G' ? Are their matrix-vector product approximated with finite difference ?

What I understand is that for implicit-explicit methods, "G is treated explicitly while F is treated implicitly". In this case, am I right to assume it's useless to give the RHS Jacobian ? Then, when is G' used ?

If I do not use an IMEX method, are the 3 formulations equivalent ?


Thank you for your help


Pierre Seize


Reply via email to