Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce soil model ODE solver time #55

Closed
peterson-tim-j opened this issue Sep 16, 2022 · 1 comment
Closed

Reduce soil model ODE solver time #55

peterson-tim-j opened this issue Sep 16, 2022 · 1 comment

Comments

@peterson-tim-j
Copy link
Owner

Solving the soil model ODE often consumes the majority of the model calibration time. This is because it uses an implicit solver that requires many iterations per time step.

Significant runtime improvements could likely be made if the implicit solver was changed to an explicit scheme (eg Runge Kutta 4). Furthermore, this would allow efficient vectorisation when multiple parameter sets are solved; specifically SIMD for ~<=4 parameter sets and threading across cores for >4 parameter sets. This vectorisation would significantly improve the calibration time of CMAES and DREAM (not SP-UCI) because multiple parameter sets are solved in parallel.

Possible issue with converting from an implicit to explicit solver are:

  1. reduced ODE stability, though this is unlikely to be a major issue because the soil model ODE is unlikely to be stiff.
  2. calibration response surface may become rougher and or the optimal solution may shift.

Any thoughts on this are welcome.

@peterson-tim-j
Copy link
Owner Author

Moved to discussion forum.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant