AdaptiveStepControlConfig

class cubie.integrators.step_control.adaptive_step_controller.AdaptiveStepControlConfig(precision: type[float16] | type[float32] | type[float64] | dtype[float16] | dtype[float32] | dtype[float64], n: int = 1, timestep_memory_location: str = 'local', dt_min: float = 1e-06, dt_max: float | None = 1.0, atol: float | Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes] = array([1.e-06]), rtol: float | Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes] = array([1.e-06]), algorithm_order: int = 1, min_gain: float = 0.3, max_gain: float = 2.0, safety: float = 0.9, deadband_min: float = 1.0, deadband_max: float = 1.2)[source]

Bases: BaseStepControllerConfig

Configuration for adaptive step controllers.

Notes

Parameters influencing compilation should live here so that device functions are rebuilt when they change.

algorithm_order: int
atol: ndarray
property deadband_max: float

Return the upper gain threshold for the unity deadband.

property deadband_min: float

Return the lower gain threshold for the unity deadband.

property dt0: float

Return the initial step size.

property dt_max: float

Return the maximum permissible step size.

property dt_min: float

Return the minimum permissible step size.

property is_adaptive: bool

Return True because the controller adapts step size.

property max_gain: float

Return the maximum gain factor.

property min_gain: float

Return the minimum gain factor.

rtol: ndarray
property safety: float

Return the safety scaling factor.

property settings_dict: dict[str, object]

Return the configuration as a dictionary.