rxIsStiff: Check whether an ODE solving method is a purely stiff solver

View source: R/rxsolve.R

rxIsStiffR Documentation

Check whether an ODE solving method is a purely stiff solver

Description

Returns TRUE for methods that are designed exclusively for stiff systems and will never switch to a non-stiff algorithm. Solvers like "lsoda" and "liblsoda" that automatically switch between stiff and non-stiff algorithms return FALSE.

Usage

rxIsStiff(method)

Arguments

method

A character vector of method names or an integerish vector of method codes (as returned by odeMethodToInt()). Vectorised.

Details

Stiff-only methods are: "ros4" (13), "iem" (14), "cvode" (21), "ros43" (31), "ros6" (32), "backwardEuler" (33), "gauss6" (34), "iiic6" (35), "radauiia5" (36), "geng5" (37), "sdirk43" (38), "bdf" (107).

Value

A logical vector the same length as method. TRUE if the corresponding method is a purely stiff solver.

See Also

rxIsNonStiff(), rxIsImplicit(), odeMethodToInt()

Examples

rxIsStiff("bdf")                           # TRUE
rxIsStiff("lsoda")                         # FALSE (switches)
rxIsStiff("liblsoda")                      # FALSE (switches)
rxIsStiff(c("cvode", "dop853", "ros43"))   # TRUE FALSE TRUE


rxode2 documentation built on July 28, 2026, 5:08 p.m.