[petsc-users] TS_SSP implementation for co-dependent variables

Jed Brown jed at jedbrown.org
Wed Oct 9 17:39:52 CDT 2019


Manuel Valera <mvalera-w at sdsu.edu> writes:

> Thanks for the answer, I will read the mentioned example, but to clarify
> for Barry I will schematize the process:
>
> At time n, the program need to do all of these at once:
>
>    1. Solve T as a function of u,v,w
>    2. Solve S as a function of u,v,w
>    3. Solve rho density as a function of T,S
>    4. Derivate a correction of the velocity fields from the density
>    5. Solve u,v,w being corrected by the density field
>
> What I have implemented so far:
>
>    1. Advance TS1 to solve for T
>    2. Advance TS2 to solve for S
>    3. Solve rho and calculate correction
>    4. Advance TS3 to solve for u,v,w
>
> Or, altenatively:
>
>    1. Advance TS to solve for T,S,u,v,w at the same time.
>    2. Solve rho and calculate correction
>
> Both implementation are lacking the feedback from the T,S <-> rho <->
> Velocities interaction, and is creating problems when using a bigger DT.
>
> All the systems from the first numeration are different algorithms, and
> each TS in the 2nd numeration generate a different RHS.
>
> What Jed is suggesting is to create an overarching routine that does all
> that is the first list under one single step?

TSSSP isn't SSP or high order with ad-hoc coupling procedures such as
the above.  If you're in a parameter regime that is stiff (e.g., typical
regime in which barotropic splitting is popular), I would suggest
putting the semi-implicit component into a preconditioner or
Rosenbrock-W Jacobian approximation so that you can preserve the
desirable accuracy and stability properties of the method.


More information about the petsc-users mailing list