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

Single parameter global sensitivity analysis #48

Open
ftavella opened this issue Feb 27, 2024 · 2 comments
Open

Single parameter global sensitivity analysis #48

ftavella opened this issue Feb 27, 2024 · 2 comments
Assignees
Labels
enhancement New feature or request

Comments

@ftavella
Copy link
Collaborator

It would be great to have a function that given a particular protein interaction network and a particular parameter set, returns the period and amplitude values for a single parameter change. This will be used to replicate the results in Tsai et al. 2008, Figure 3. We can start from a known point in parameter set that oscillates and from there, span both directions to find the critical points where oscillations stop. Once we have both critical points, we can simulate parameters in-between to obtain the behavior of period and amplitude as a function of the changed parameter.

Functions that will be needed:

  • find_critical_point(model, parameter_set, selected_parameter_name, direction; hyperparameters=DEFAULT_BISECTION_HYPERPARAMETERS)
  • simulate_pin_from_parameter_sets(model, parameter_sets; hyperparameters=DEFAULT_PIN_HYPERPARAMETERS)
  • pin_single_parameter_variation(model, parameter_set, parameter_name; hyperparameters=DEFAULT_PIN_HYPERPARAMETERS)
@ftavella ftavella added the enhancement New feature or request label Feb 27, 2024
@ftavella ftavella self-assigned this Feb 27, 2024
@ftavella
Copy link
Collaborator Author

ftavella commented Feb 27, 2024

We will also need a function that simulates a given model for a particular parameter set:
-simulate_pin_model(model, parameter_set; hyperparameters=DEFAULT, initial_condition=NaN, simulation_time=NaN)
In the future, this function can be used to eliminate duplicated code in our codebase.
This function will be different from simulate_ODEs() because it doesn't create an Ensemble of simulations but rather a single one.

@ftavella
Copy link
Collaborator Author

Another option is to use BifurcationKit.jl to get a bifurcation diagram and from there get the information we want. I'm currently trying to write up a minimal example of this to see if we could wrap BifurcationKit.jl nicely to provide an easy way for users to get a single parameter scan for a protein interaction network

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant