Skip to content

SciML/MinimallyDisruptiveCurves.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

203 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MinimallyDisruptiveCurves

Tests Documentation Codecov ColPrac: Contributor's Guide on Collaborative Practices for Community Packages PkgEval

This is a toolbox implementing the algorithm introduced in [1]. Documentation, examples, and user guide are found here.

A Python version using Diffrax and Jax is here. It's less tested and necessarily uses a slightly worse curve evolution algorithm due to more limited callback functionalities in the Python ODE solvers.

The package is a model analysis tool. It finds functional relationships between model parameters that best preserve model behaviour.

  • You provide a differentiable cost function that maps parameters to 'how bad the model behaviour is'. You also provide a locally optimal set of parameters θ*.

  • The package will generate curves in parameter space, emanating from θ*. Each point on the curve corresponds to a set of model parameters. These curves are 'minimally disruptive' with respect to the cost function (i.e. model behaviour).

  • These curves can be used to better understand interdependencies between model parameters, as detailed in the documentation.

[1] Raman, Dhruva V., James Anderson, and Antonis Papachristodoulou. "Delineating parameter unidentifiabilities in complex models." Physical Review E 95.3 (2017): 032314.

About

Finds relationships between the parameters of a mathematical model

Resources

License

Code of conduct

Contributing

Security policy

Stars

52 stars

Watchers

10 watching

Forks

Sponsor this project

 

Packages

 
 
 

Contributors

Languages