A struct that defines the options for the ODESolver. More...

`#include <ODE.hpp>`

## Public Attributes | |

ODEStepMode | step = ODEStepMode::BDF |

The linear multistep method used in the integration. | |

ODEIterationMode | iteration = ODEIterationMode::Newton |

The type of nonlinear solver iteration used in the integration. | |

bool | stability_limit_detection = false |

The flag that enables the STAbility Limit Detection (STALD) algorithm. More... | |

double | initial_step = 0.0 |

The initial step size to be used in the integration. More... | |

double | stop_time = 0.0 |

The value of the independent variable t past which the solution is not to proceed. More... | |

double | min_step = 0.0 |

The lower bound on the magnitude of the step size. | |

double | max_step = 0.0 |

The upper bound on the magnitude of the step size. | |

double | reltol = 1e-4 |

The scalar relative error tolerance. | |

double | abstol = 1.0e-6 |

The scalar absolute error tolerance. | |

unsigned | max_order_bdf = 5 |

The maximum order for the BDF integration scheme. More... | |

unsigned | max_order_adams = 5 |

The maximum order for the Adams integration scheme. More... | |

unsigned | max_num_steps = 500 |

The maximum allowed number of steps before reaching the final time. | |

unsigned | max_hnil_warnings = 10 |

The maximum number of warnings for `t + h = t` , with `h` being too small compared to `t` . | |

unsigned | max_num_error_test_failures = 20 |

The maximum number of error test failures. | |

unsigned | max_num_nonlinear_iterations = 3 |

The maximum number of nonlinear iterations. | |

unsigned | max_num_convergence_failures = 10 |

The maximum number of convergence failures. | |

double | nonlinear_convergence_coefficient = 0.1 |

The coefficient in the nonlinear convergence test. | |

Vector | abstols |

The vector of absolute error tolerances for each component. | |

## Detailed Description

A struct that defines the options for the ODESolver.

- See also
- ODESolver, ODEProblem

## Member Data Documentation

bool stability_limit_detection = false |

The flag that enables the STAbility Limit Detection (STALD) algorithm.

The STALD algorithm should be used when BDF method does not progress well, which can happen when the current BDF order is above 2. Using the STALD algorithm helps fixing this by reducing the current BDF order, and thus increasing its stability.

double initial_step = 0.0 |

The initial step size to be used in the integration.

An estimation is made if its value is zero.

double stop_time = 0.0 |

The value of the independent variable t past which the solution is not to proceed.

No stop time is used if its value is zero.

unsigned max_order_bdf = 5 |

The maximum order for the BDF integration scheme.

The order of the BDF method can be any integer from 1 to 5 inclusive.

unsigned max_order_adams = 5 |

The maximum order for the Adams integration scheme.

The order of the Adams method can be any integer from 1 to 12 inclusive.

The documentation for this struct was generated from the following file:

- Reaktoro/Math/ODE.hpp