systems.base.numerical_integration.get_implementing_library

systems.base.numerical_integration.get_implementing_library(
    method,
    backend,
    is_stochastic=False,
)

Get which library/package implements this method.

Returns

Name Type Description
str One of: ‘scipy’, ‘diffeqpy’, ‘torchdiffeq’, ‘torchsde’, ‘diffrax’, ‘manual’, ‘unknown’

Examples

>>> get_implementing_library('LSODA', 'numpy', is_stochastic=False)
'scipy'
>>> get_implementing_library('Tsit5', 'numpy', is_stochastic=False)
'diffeqpy'
>>> get_implementing_library('euler', 'torch', is_stochastic=True)
'torchsde'
>>> get_implementing_library('euler', 'numpy', is_stochastic=False)
'manual'
>>> get_implementing_library('rk4', 'jax', is_stochastic=False)
'manual'