Closed langestefan closed 1 week ago
This is a great question, and I should definitely add this information to the docs! I am not that active on the discourse, I rather prefer #sciml-sysbio
channel on the Julia Slack.
So is this package really meant for systems biology then? I thought that was just the data format part. (my problem is from a completely different field)
The short answer is that this package is a general package for setting up parameter estimation problems for ODE models in Julia (as seen in this tutorial where the model is defined as a ModelingToolkit ODESystem
). I am just a bit biased towards the #sciml-sysbio
channel as my research field is systems biology :)
For the longer answer, you are correct that the PEtab standard format, which this package can import (and actually translates problems into behind the scenes when problems are defined in Julia), is primarily for systems biology since models are expected to be in the SBML format. However, parameter estimation problem setups in systems biology, and by extension the PEtab standard, can vary a lot. Therefore, the PEtab standard covers many different scenarios that can also be encountered in other fields, where the only real difference is that the dynamic model is not a systems biology ODE model. To make the package accessible to other field is actually a main reason why I made it possible to define the model in Julia using ODESystem
(originally, the package only supported importing the standard format). Given this, it also makes sense to ask questions about the package in the #sciml-bridged
channel.
The only real consequence of not having a systems biology model is that the default ODE solver might not be optimal. In my field, models are often stiff, which is reflected in the default ODE solver (more on this here). If your dynamic model is not stiff, you can improve performance by using a composite solver when creating a PEtabODEProblem
:
model = PEtabModel(...)
osolver = ODESolver(AutoVern7(Rodas5P()))
prob = PEtabODEProblem(model; ode_solver=osolver)
Your question is a good and valid one I did not think to much about before, and I will add a section to the documentation on considerations for other fields. I hope this somewhat lengthy answer addresses your question!
I see, thanks a lot for your elaborate answer. Good to hear this package is intended for general-purpose parameter estimation problems.
Hello,
Thanks for the great package, I watched your presentation at Juliacon Eindhoven and I am very eager to try it and apply it to my problem.
In case I run into issues (which I think are user error), what is the best place to ask questions? Some github repositories use discussions, but I can imagine you prefer discourse.?