TSAlpha2SetParams#

sets the algorithmic parameters for TSALPHA2

Synopsis#

#include "petscts.h"   
PetscErrorCode TSAlpha2SetParams(TS ts, PetscReal alpha_m, PetscReal alpha_f, PetscReal gamma, PetscReal beta)

Logically Collective

Input Parameters#

  • ts - timestepping context

  • alpha_m - algorithmic parameter

  • alpha_f - algorithmic parameter

  • gamma - algorithmic parameter

  • beta - algorithmic parameter

Options Database Keys#

  • -ts_alpha_alpha_m <alpha_m> - set alpha_m

  • -ts_alpha_alpha_f <alpha_f> - set alpha_f

  • -ts_alpha_gamma - set gamma

  • -ts_alpha_beta - set beta

Notes#

Second-order accuracy can be obtained so long as:

\[ \begin{align*} \gamma = 1/2 + \alpha_m - \alpha_f \\ \beta = 1/4 (1 + \alpha_m - \alpha_f)^2. \end{align*} \]

Unconditional stability requires: $\( \alpha_m >= \alpha_f >= 1/2. \)$

Use of this function is normally only required to hack TSALPHA2 to use a modified integration scheme. Users should call TSAlpha2SetRadius() to set the desired spectral radius of the methods (i.e. high-frequency damping) in order so select optimal values for these parameters.

See Also#

TS: Scalable ODE and DAE Solvers, TS, TSALPHA2, TSAlpha2SetRadius(), TSAlpha2GetParams()

Level#

advanced

Location#

src/ts/impls/implicit/alpha/alpha2.c

Implementations#

TSAlpha2SetParams_Alpha() in src/ts/impls/implicit/alpha/alpha2.c


Index of all TS routines
Table of Contents for all manual pages
Index of all manual pages