Solvers
TSRK(subtype), explicit Runge-KuttaTSRosW(subtype), linearly implicit Rosenbrock-WTSImplicit(subtype; order), backward Euler, Crank-Nicolson, theta and BDFTSIRK(nstages), Gauss-Legendre implicit Runge-Kutta of order2 * nstagesTSARKIMEX(subtype), additive Runge-Kutta IMEX, for aSplitODEProblemTSDAE(subtype), the same implicit methods applied to aDAEProblemTSMPRK(slow, subtype), multirate partitioned Runge-KuttaTSBasicSymplectic(subtype), symplectic splitting methods for aDynamicalODEProblemorSecondOrderODEProblemTSAlpha2(), generalized-alpha for aSecondOrderODEProblemTSGeneric(ts_type), a pass-through to any other PETScTSTypeby name
Each has a docstring covering its subtypes, whether it adapts and what it requires, so ?TSRosW at the REPL is the reference. One default worth knowing: PETSc's BDF is order 2, so pass TSImplicit("bdf"; order = 5) when comparing against a higher-order method. Every solver takes petsc_options, a vector of command-line style tokens passed to PETSc for that solve, which are parsed after the options this package sets and so take precedence.